html{-webkit-text-size-adjust:100%;text-size-adjust:100%}html,body{max-width:100%}img,svg,video,canvas,iframe{max-width:100%}html .container,html .nav-shell,html .mp-stack,html .hx-inner{max-width:100%}html .desktop-nav{min-width:0}html .brandmark{flex:0 1 auto;overflow:hidden}html .nav-actions{flex:0 0 auto}html .page-title,html .section-title,html .hero-title,html .mp-id h3,html .award-name,html .eco-role{overflow-wrap:break-word}@media (min-width:941px) and (max-width:1520px){html .nav-shell{gap:14px;padding:9px 10px 9px 15px}html .site-header .brand-rotator{display:none}html .brandmark-logo{width:clamp(120px,10.4vw,146px)}html .brandmark-logo.is-wordmark{width:clamp(122px,10.6vw,148px)}html .brandmark-logo.is-animated{width:clamp(124px,10.8vw,150px)}html .desktop-nav{gap:1px;flex-wrap:nowrap}html .nav-link,html .nav-trigger{padding:10px 9px;font-size:12.5px;white-space:nowrap}html .nav-trigger{gap:5px}html .nav-trigger svg{width:11px}html .nav-actions{gap:6px}html .nav-actions .btn{min-height:44px;padding:0 15px;font-size:12.8px;gap:7px;white-space:nowrap}html .nav-actions .btn svg{width:15px;height:15px}html .circle-btn{width:40px;height:40px}html .mega-menu{top:calc(100% + 8px);padding:10px;border-radius:22px}html .mx-feature{min-height:248px;padding:20px}html .mx-feature strong{margin-top:12px;font-size:clamp(19px,1.6vw,23px)}html .mx-stats{padding-top:16px;gap:14px}html .mx-link{padding:9px 10px;column-gap:10px}html .mx-link b{font-size:13.4px}html .mx-link span{font-size:11.5px}html .mx-link em{width:30px;height:30px;font-size:10.5px}html .mx-h{margin:4px 10px 6px}}@media (min-width:941px) and (max-width:1320px){html .desktop-nav .nav-link.hide-mid{display:none}}@media (min-width:861px) and (max-height:860px){html .hero.hero--torus{--hero-h:clamp(496px,86svh,700px);--hero-pb:clamp(38px,6svh,72px)}html .hero{--hx-h:clamp(496px,86svh,700px)}html .hx-inner{padding-top:118px}html .hero-title{font-size:clamp(26px,2.7vw,37px)}html .hero-copy{margin-top:18px;font-size:clamp(14.5px,1.05vw,16.5px)}html .hero-actions{margin-top:20px}html .hx-stat{width:min(280px,24vw);padding:15px 17px}html .section{padding:96px 0}html .section-tight{padding:68px 0}html .service-sticky,html .intro-sticky{top:104px}}@media (min-width:861px) and (min-height:561px) and (max-height:860px){html .mp-card{height:min(540px,calc(100svh - 126px));min-height:392px;top:calc(94px + var(--n,0) * 10px)}html .mp-grid{padding:clamp(22px,3vw,40px) clamp(24px,4vw,56px)}html .mp-photo{width:clamp(210px,21vw,320px)}}@media (min-width:861px) and (max-height:700px){html .hero.hero--torus{--hero-h:clamp(460px,90svh,620px)}html .hx-inner{padding-top:104px}}@media (min-width:861px) and (min-height:561px) and (max-height:700px){html .mp-card{height:min(480px,calc(100svh - 112px));min-height:360px}}@media (min-width:1025px) and (max-height:900px){html .mp{padding-top:clamp(44px,4.6vw,72px);padding-bottom:clamp(32px,3.4vw,56px)}html .mp-stack{gap:clamp(36px,6vh,84px);margin-top:clamp(20px,2.4vw,34px)}html .mp-card{top:calc(92px + var(--n,0) * 8px);height:min(560px,calc(100svh - 118px));min-height:340px}html .mp-inner{-webkit-transform:translate3d(0,0,0) scale(calc(1 - var(--p,0) * .03)) rotate(calc(var(--p,0) * -.6deg));transform:translate3d(0,0,0) scale(calc(1 - var(--p,0) * .03)) rotate(calc(var(--p,0) * -.6deg))}html .mp-grid{gap:clamp(18px,2.6vw,42px);padding:clamp(20px,2.6vw,38px) clamp(22px,3.2vw,52px)}html .mp-left,html .mp-right{min-height:0;overflow:hidden}html .mp-desc{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden;font-size:13.5px}html .mp-id h3{font-size:clamp(22px,2.1vw,30px)}html .mp-right b{font-size:clamp(21px,1.8vw,27px)}html .mp-right span{margin-top:4px;font-size:13px;max-width:24ch}html .mp-right small{font-size:11.5px}html .mp-go{min-height:44px;font-size:13.5px}html .mp-photo{width:clamp(200px,20vw,320px);height:min(88%,calc(clamp(200px,20vw,320px) * 1.32))}html .mp-foot{margin-top:clamp(22px,2.6vw,36px)}}@media (min-width:1025px) and (max-height:720px){html .mp-card{top:calc(86px + var(--n,0) * 6px);height:min(500px,calc(100svh - 106px));min-height:310px}html .mp-desc{-webkit-line-clamp:4}html .mp-grid{padding:clamp(16px,2.2vw,30px) clamp(20px,2.8vw,44px)}}@media (min-width:941px){html .mini-menu-wrap{max-width:100%}html .mini-menu-label{max-width:34vw;overflow:hidden;text-overflow:ellipsis}}@media (max-width:1180px) and (pointer:coarse){html .desktop-nav{display:none}html .nav-actions .btn{display:none}html .menu-toggle{display:inline-grid}html .nav-shell{grid-template-columns:1fr auto}html .site-header .brand-rotator{display:none}}@media (min-width:681px) and (max-width:1024px){html .nav-shell{width:calc(100vw - 28px)}html .mp-grid{grid-template-columns:minmax(0,1fr) clamp(200px,27vw,300px);gap:18px clamp(20px,3vw,34px);padding:clamp(22px,3.2vw,34px)}html .mp-left{grid-column:1;grid-row:1}html .mp-photo{grid-column:2;grid-row:1 / span 2;align-self:stretch;width:100%;height:100%}html .mp-right{grid-column:1;grid-row:2;flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:12px 22px}html .mp-right b{font-size:24px}html .mp-right span{max-width:22ch}html .mp-id h3{font-size:clamp(22px,3vw,30px)}html .mp-desc{max-width:40ch}html .mp-go{margin-left:auto}html .awards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html .eco-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html .testimonial-card{flex-basis:clamp(300px,52vw,400px)}html .rf-cell{width:clamp(140px,17vw,180px);height:clamp(92px,11vw,112px)}}@media (min-width:681px) and (max-width:940px){html .hx-inner{padding-top:124px}html .hero-title{font-size:clamp(30px,5vw,40px);max-width:18ch}html .hero-copy{max-width:56ch;font-size:16px}html .project-stack{grid-template-columns:repeat(2,minmax(0,1fr))}html .project-card{min-height:400px}html .project-card.small{min-height:280px}html .eco-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html .footer-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}html .contact-grid{gap:36px}html .gd-rail,html .cl-rows,html .pr-rail,html .testi-marquee{width:calc(100vw - 20px);max-width:100%}}@media (min-width:681px) and (max-width:834px) and (orientation:portrait){html .mp-card{position:relative;top:auto;height:auto;min-height:0}html .mp-inner{transform:none;-webkit-transform:none;will-change:auto}html .mp-shade{display:none}html .mp-grid{grid-template-columns:1fr;gap:18px;height:auto;padding:22px 20px 24px}html .mp-left,html .mp-right,html .mp-photo{grid-column:1;grid-row:auto}html .mp-photo{order:-1;width:100%;height:auto;aspect-ratio:16 / 10}html .mp-stack{gap:16px}}@media (max-width:860px){html .hero.hero--torus .hero-slide.active > .hx-inner{display:flex;flex-direction:column;justify-content:flex-end}html .hero--torus .hx-inner{padding-bottom:clamp(30px,6svh,58px)}html .hero--torus .hero-title{max-width:16ch}}@media (max-width:680px){html .hero.hero--torus{--hero-h:max(492px,calc(100svh - 128px))}html .hero--torus .hx-inner{padding:96px 0 clamp(26px,5svh,46px)}html .hero-title{font-size:clamp(27px,7.6vw,35px);line-height:1.06;letter-spacing:-.032em;max-width:15ch}html .hero-kicker{margin-bottom:9px;font-size:12.5px}html .hero-copy{margin-top:14px;max-width:36ch;font-size:14.6px;line-height:1.6}html .hero-actions{margin-top:18px;gap:8px;flex-wrap:nowrap}html .hero-actions .btn{flex:1 1 0;min-width:0;min-height:50px;padding:0 10px;font-size:13.6px;white-space:nowrap}html .hero-tagrow{gap:6px}}@media (max-width:380px){html .hero-title{font-size:clamp(24px,7.4vw,30px)}html .hero-actions{flex-wrap:wrap}html .hero-actions .btn{flex:1 1 100%}}@media (max-width:1180px){html body.menu-open{position:fixed;left:0;right:0;width:100%;overflow:hidden}html .mobile-drawer{padding:calc(94px + env(safe-area-inset-top)) 16px calc(26px + env(safe-area-inset-bottom));background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;overscroll-behavior:contain}@supports (background:color-mix(in srgb,red 50%,transparent)){html .mobile-drawer{background:color-mix(in srgb,var(--bg) 96%,transparent);-webkit-backdrop-filter:blur(26px);backdrop-filter:blur(26px)}}html .mobile-nav{width:min(560px,100%);margin:0 auto}html .mobile-brand{gap:8px;padding-bottom:14px;margin-bottom:2px}html .mobile-brand .brandmark-logo{width:144px}html .mobile-nav > a,html .mobile-accordion-trigger{min-height:52px;padding:11px 2px;font-size:clamp(17px,4.6vw,21px);font-weight:640;letter-spacing:-.03em}html .mobile-nav > a span,html .mobile-accordion-trigger span{font-size:15px;font-weight:600;color:var(--muted)}html .mobile-nav > a:active{color:var(--accent-deep)}html .mobile-accordion-panel{display:grid;grid-template-columns:1fr 1fr;gap:6px}html .mobile-accordion.open .mobile-accordion-panel{max-height:900px;padding:4px 0 16px}html .mobile-accordion-panel a{display:flex;align-items:center;min-height:46px;margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface-solid);font-size:13.5px;font-weight:620;line-height:1.25;color:var(--text-soft)}html .mobile-accordion-panel a:last-child{grid-column:1 / -1;padding-bottom:10px;border-color:var(--accent);color:var(--accent-deep);font-weight:750}html .mobile-contact{margin-top:24px;gap:8px}html .mobile-contact .btn{min-height:52px;font-size:14.5px}html .mobile-direct{margin-top:18px;font-size:12.5px;line-height:1.7}}html .menu-toggle .mt-ico{width:21px;height:21px;display:block;overflow:visible}html .menu-toggle .mt-ico rect{-webkit-transform-box:fill-box;transform-box:fill-box;-webkit-transform-origin:center;transform-origin:center;transition:-webkit-transform .34s var(--ease),opacity .2s ease;transition:transform .34s var(--ease),opacity .2s ease}html .menu-toggle .mt-l1{-webkit-transform:translateY(-.6px);transform:translateY(-.6px)}html .menu-toggle .mt-l3{-webkit-transform:translateY(.6px);transform:translateY(.6px)}html .menu-toggle[aria-expanded="true"] .mt-l1{-webkit-transform:translateY(5px) rotate(45deg);transform:translateY(5px) rotate(45deg)}html .menu-toggle[aria-expanded="true"] .mt-l2{opacity:0;-webkit-transform:scaleX(.2);transform:scaleX(.2)}html .menu-toggle[aria-expanded="true"] .mt-l3{-webkit-transform:translateY(-5px) rotate(-45deg);transform:translateY(-5px) rotate(-45deg)}html .menu-toggle[aria-expanded="true"]{background:var(--text);border-color:var(--text);color:var(--bg)}@media (prefers-reduced-motion: reduce){html .menu-toggle .mt-ico rect{transition:none}}html .site-header{z-index:120}@media (max-width:1180px){html .mobile-brand{gap:10px}html .mnav-tag{font-size:11px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}html .mnav-quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 4px}html .mnav-quick .mq{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:78px;padding:12px 6px;border:1px solid var(--line);border-radius:16px;background:var(--surface-solid);text-align:center;transition:border-color .22s,background-color .22s,transform .22s var(--ease)}html .mnav-quick .mq b{font-size:12px;font-weight:750;letter-spacing:-.01em;color:var(--text)}html .mnav-quick .mq i{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--surface-2);color:var(--accent-deep)}html .mnav-quick .mq i svg{width:18px;height:18px}html .mnav-quick .mq:active{-webkit-transform:scale(.97);transform:scale(.97)}html .mnav-quick .is-wa i{background:rgba(37,211,102,.14);color:#1fa855}html .mnav-h{margin:22px 0 2px;padding:0 2px;font-size:10.5px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}html .mnav-h + a{border-top:1px solid var(--line)}html .mobile-drawer .mobile-nav > *{opacity:0;-webkit-transform:translateY(10px);transform:translateY(10px)}html .mobile-drawer.open .mobile-nav > *{opacity:1;-webkit-transform:none;transform:none;transition:opacity .38s var(--ease),-webkit-transform .38s var(--ease);transition:opacity .38s var(--ease),transform .38s var(--ease)}html .mobile-drawer.open .mobile-nav > :nth-child(1){transition-delay:.02s}html .mobile-drawer.open .mobile-nav > :nth-child(2){transition-delay:.05s}html .mobile-drawer.open .mobile-nav > :nth-child(3){transition-delay:.08s}html .mobile-drawer.open .mobile-nav > :nth-child(4){transition-delay:.10s}html .mobile-drawer.open .mobile-nav > :nth-child(5){transition-delay:.12s}html .mobile-drawer.open .mobile-nav > :nth-child(6){transition-delay:.14s}html .mobile-drawer.open .mobile-nav > :nth-child(7){transition-delay:.16s}html .mobile-drawer.open .mobile-nav > :nth-child(8){transition-delay:.18s}html .mobile-drawer.open .mobile-nav > :nth-child(n+9){transition-delay:.2s}@media (prefers-reduced-motion: reduce){html .mobile-drawer .mobile-nav > *{opacity:1;-webkit-transform:none;transform:none}html .mobile-drawer.open .mobile-nav > *{transition:none}}html .mobile-nav > a span{font-size:16px;color:var(--line-strong);transition:transform .25s var(--ease),color .25s}html .mobile-nav > a:active span{color:var(--accent);-webkit-transform:translateX(3px);transform:translateX(3px)}html .mobile-accordion-trigger span{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border:1px solid var(--line);border-radius:50%;font-size:17px;font-weight:600;line-height:1;color:var(--text-soft);transition:background-color .22s,color .22s,border-color .22s}html .mobile-accordion.open .mobile-accordion-trigger span{background:var(--accent);border-color:var(--accent);color:#fff}html .mobile-direct a{display:block}}@media (max-width:359px){html .mnav-quick{grid-template-columns:1fr 1fr}html .mnav-quick .mq:last-child{grid-column:1 / -1;flex-direction:row;min-height:56px}}@media (max-width:399px){html .mobile-accordion-panel{grid-template-columns:1fr}html .mobile-nav > a,html .mobile-accordion-trigger{min-height:48px;font-size:18px}}@media (max-width:940px) and (max-height:520px){html .mobile-drawer{padding-top:calc(80px + env(safe-area-inset-top))}html .mobile-nav > a,html .mobile-accordion-trigger{min-height:44px;font-size:16px;padding:8px 2px}html .mobile-brand{display:none}}@media (max-width:1180px){html .tl-grid,html .mp-stack,html .testimonials-shell,html .rl-shell,html .gloss-clusters,html .gx-chips,html .mobile-accordion-panel{scroll-snap-type:x proximity;overscroll-behavior-x:contain;-ms-scroll-chaining:none}html .tl-grid,html .testimonials-shell,html .rl-shell,html .mp-stack{touch-action:pan-x pan-y}html .tl-grid,html .testimonials-shell,html .rl-shell{overflow-y:hidden}}@media (max-width:760px){html .mp-stack{gap:14px}html .mp-photo{width:100%;height:auto;aspect-ratio:3 / 2;border-radius:15px;touch-action:pan-y}html .mp-grid{padding:14px 14px 18px;gap:14px}html .mp-id h3{font-size:clamp(21px,6vw,27px)}html .mp-desc{font-size:13.5px}html .mp-dots{bottom:10px;gap:7px}html .mp-dots button{width:7px;height:7px}html .mp-dots button.is-on{width:20px}html .mp-right b{font-size:21px}html .mp-go{min-height:48px}}@media (max-width:420px){html .mp-photo{aspect-ratio:4 / 3}html .mp-right{gap:10px 16px}html .mp-right span{font-size:13px}}@media (hover:none){html .mp-dots button{background:rgba(255,255,255,.7)}html .iw-gal figure::after{opacity:.9}}@media (min-width:835px) and (min-height:561px),(min-width:761px) and (max-width:834px) and (min-height:561px) and (orientation:landscape){html .mp-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);grid-template-areas:"photo left" "photo right";column-gap:clamp(26px,3.4vw,58px);row-gap:clamp(12px,1.8vh,20px);padding:clamp(16px,1.7vw,24px) clamp(22px,3.2vw,50px) clamp(20px,2.4vw,38px) clamp(16px,1.7vw,24px)}html .mp-photo{grid-area:photo;order:0;align-self:stretch;width:100%;height:100%;min-height:0;aspect-ratio:auto;border-radius:20px}html .mp-track img{object-position:50% 40%}html .mp-left{grid-area:left;justify-content:flex-start;gap:clamp(10px,1.5vh,16px);min-height:0;padding-top:clamp(6px,1.2vw,20px);overflow:visible}html .mp-id{order:-1}html .mp-id h3{font-size:clamp(22px,2.3vw,36px)}html .mp-desc{max-width:44ch;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}html .mp-right{grid-area:right;display:grid;grid-template-columns:auto minmax(0,1fr);align-content:end;align-items:start;gap:clamp(12px,1.8vh,18px) clamp(20px,2.4vw,36px);min-height:0;overflow:visible}html .mp-right > div:nth-child(3){grid-column:1 / -1}html .mp-right b{margin-top:4px;font-size:clamp(20px,1.6vw,26px)}html .mp-right span{max-width:none;margin-top:4px}html .mp-right .mp-go{grid-column:1 / -1;justify-self:start;margin:clamp(2px,.8vh,8px) 0 0}}@media (min-width:861px) and (min-height:561px) and (max-height:760px){html .mp-desc{-webkit-line-clamp:3}}@media (min-width:835px) and (max-width:1100px) and (min-height:561px),(min-width:761px) and (max-width:834px) and (min-height:561px) and (orientation:landscape){html .mp-photo{align-self:center;height:auto;max-height:100%;aspect-ratio:4 / 3}}
