@font-face{font-family:WMS Sans;src:url('/_publishing/brand/manrope-latin.woff2') format('woff2');font-weight:400 800;font-display:swap}
:root{--paper:#fcfcf9;--ink:#142a35;--muted:#5b6b70;--line:#dce2e1;--cyan:#00b9d0;--gutter:clamp(24px,4vw,64px);--content:1360px;--reading:840px;--radius:26px;--image-radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'WMS Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}a:focus-visible,button:focus-visible{outline:2px solid #00a0b2;outline-offset:8px}::selection{background:#96e0df;color:var(--ink)}[hidden]{display:none!important}
.arrow{display:block;width:22px;height:22px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.skip{position:fixed;left:20px;top:-100px;z-index:10;padding:14px;background:white}.skip:focus{top:15px}
/* One full-width header shell on the hero, services and editorial pages. */
.wms-scroll-marker{display:block;width:1px;height:1px;margin-bottom:-1px;pointer-events:none}
.header,.home .header{--header-height:104px;--header-float-width:min(calc(100% - var(--gutter)*2 - 20px),1200px);--header-float-height:64px;--header-float-padding:20px;--header-float-logo:90px;display:block;position:sticky;top:0;z-index:8;width:100%;max-width:none;height:var(--header-height);padding:0;margin:0;pointer-events:none}.home .header{margin-bottom:calc(-1 * var(--header-height))}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;width:calc(100% - var(--gutter)*2);min-height:var(--header-height);margin-inline:auto;padding-inline:0;border:1px solid transparent;border-radius:0;background:transparent;pointer-events:auto;transition:width var(--motion-morph) var(--ease-brand),min-height var(--motion-morph) var(--ease-brand),padding var(--motion-morph) var(--ease-brand),transform var(--motion-morph) var(--ease-brand),border-radius var(--motion-morph) var(--ease-brand),background-color var(--motion-morph) var(--ease-brand),border-color var(--motion-morph) var(--ease-brand),box-shadow var(--motion-morph) var(--ease-brand)}
.brand img{width:106px;height:auto;display:block;transition:width var(--motion-morph) var(--ease-brand)}.header nav{display:flex;gap:32px;align-items:center;font-size:13px}.header nav a{display:flex;align-items:center;gap:12px;min-height:44px}.header nav a:hover{text-decoration:underline;text-underline-offset:6px}.header .arrow{width:18px;height:18px}.header nav .header-contact{padding:8px 17px;border:1px solid #142a3540;border-radius:100px;white-space:nowrap;transition:background-color var(--motion-morph) var(--ease-brand),color var(--motion-morph) var(--ease-brand),border-color var(--motion-morph) var(--ease-brand)}.header nav .header-contact:hover{text-decoration:none}
.header[data-floating="true"] .header-inner{width:var(--header-float-width);min-height:var(--header-float-height);padding-inline:var(--header-float-padding);transform:translateY(12px);border-radius:22px;border-color:#d5dedc;background:#fcfcf9f5;box-shadow:0 8px 28px -14px #142a3540}.header[data-floating="true"] .brand img{width:var(--header-float-logo)}.header[data-floating="true"] .header-contact{background:var(--ink);color:var(--paper);border-color:var(--ink)}
@supports(animation-timeline:scroll(root block)){.header-inner{animation:wms-header-float linear both;animation-timeline:scroll(root block);animation-range:0px 64px}.header .brand img{animation:wms-header-logo linear both;animation-timeline:scroll(root block);animation-range:0px 64px}.header .header-contact{animation:wms-header-contact linear both;animation-timeline:scroll(root block);animation-range:0px 64px}}
@keyframes wms-header-float{to{width:var(--header-float-width);min-height:var(--header-float-height);padding-inline:var(--header-float-padding);transform:translateY(12px);border-radius:22px;border-color:#d5dedc;background:#fcfcf9f5;box-shadow:0 8px 28px -14px #142a3540}}@keyframes wms-header-logo{to{width:var(--header-float-logo)}}@keyframes wms-header-contact{to{background:var(--ink);color:var(--paper);border-color:var(--ink)}}
html{scroll-padding-top:104px}.skip{z-index:12}
@media(max-width:640px){.header,.home .header{--header-height:84px;--header-float-width:calc(100% - var(--gutter)*2 - 8px);--header-float-height:60px;--header-float-padding:12px;--header-float-logo:76px}.header-inner{gap:10px}.header nav{gap:12px}.header nav .header-contact{padding:6px 11px}.header .brand img{width:82px}}
@media(prefers-reduced-motion:reduce){.header *{animation:none!important;transition:none!important}}
/* A single full-bleed scene. All words and navigation are HTML, never painted into WebGL. */
.water-hero{position:relative;min-height:620px;height:100svh;max-height:1250px;isolation:isolate;overflow:hidden}.water-scene{position:absolute;inset:0;z-index:-1;background:linear-gradient(#b9d7df 0%,#e8ede6 47%,#f3f0df 53%,#84b5bd 54%,#276d80 66%,#103b51 100%)}.water-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 75%,#08273725);pointer-events:none}#water-canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity .65s}.water-ready #water-canvas{opacity:1}
.water-hero h1{position:relative;margin:0;padding:0 var(--gutter);top:clamp(155px,20svh,270px);font:500 clamp(100px,13vw,218px)/.88 Arial,Helvetica,sans-serif;letter-spacing:-.08em;max-width:1000px;will-change:transform;pointer-events:none;color:#082936}
.hero-bottom{position:absolute;left:var(--gutter);right:var(--gutter);bottom:42px;display:flex;justify-content:space-between;align-items:center;color:#fffef6}
.light-link,.text-link{display:inline-flex;align-items:center;gap:30px;min-height:46px;font-size:13px;line-height:1.5;border-bottom:1px solid currentColor;padding:8px 0}.light-link{color:#fffef6;text-shadow:0 1px 12px #08273790}.text-link:hover{color:#097584}
.motion-toggle{width:40px;height:40px;display:grid;place-items:center;background:#0a344929;color:inherit;border:1px solid #f4f5ef70;border-radius:50%;cursor:pointer}.motion-toggle:hover{background:#0a344960}.motion-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.water-toggle-glyph{transition:d var(--motion-morph) var(--ease-brand)}.motion-toggle[aria-label="Play water motion"] .water-toggle-glyph{d:path("M8 6L8 12L8 18M8 6L17 12L8 18")}
/* Portfolio: one compact system for products, representation and culture. */
body{font-weight:500}
h2,h3,p{margin:0}h2,h3{font-family:'WMS Sans',sans-serif;letter-spacing:-.045em;line-height:1.18;font-weight:700}
.wrap{width:100%;max-width:var(--content);margin-inline:auto;padding-inline:var(--gutter)}
.header nav{font-weight:600}
.group-intro{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;padding-block:74px 65px}
.group-intro h2{font-size:clamp(38px,4.3vw,62px);line-height:1.08;letter-spacing:-.05em}
.group-intro p{font-size:18px;line-height:1.65;max-width:455px}
.quiet-link{display:inline-flex;gap:14px;align-items:center;min-height:44px;font-size:13px;font-weight:600;line-height:1.5}
.quiet-link .arrow{width:17px;height:17px}.quiet-link:hover{text-decoration:underline;text-underline-offset:5px}.group-intro .quiet-link{margin-top:16px}
.division{display:grid;grid-template-columns:.85fr 1.15fr;align-items:start;gap:7%;padding:clamp(30px,4vw,56px);border-radius:26px}
.division+.division{margin-top:32px}
.division-intro{padding-top:7px}.division-intro h2{font-size:34px;max-width:370px}.division-intro p{font-size:16px;line-height:1.7;margin-top:20px;max-width:340px}
.products-division{background:#edf0ee}
.product-collection{display:grid;gap:12px;min-width:0}
.product-detail{border-radius:18px;overflow:hidden}.chale-detail{background:#efe5d6;color:#613c42}.prism-detail{background:#cfE8e0;color:#15373c}
.product-detail summary{min-height:86px;display:flex;align-items:center;gap:16px;cursor:pointer;list-style:none;padding:22px 26px}
.product-detail summary>img{width:auto;height:36px;max-width:160px;display:block}.prism-detail summary>img{height:64px;max-width:170px;margin-block:-16px}
.product-detail .plus{margin-left:auto}.product-face{display:block;width:35px;height:35px;margin-left:auto}.product-face+.plus{margin-left:0}
.chale-face{width:35px;height:35px;display:block;overflow:visible;transform-origin:center}
.chale-face.is-animated{animation:chale-breathe 6s ease-in-out infinite}.chale-face.is-animated .chale-eyes{transform-box:fill-box;transform-origin:center;animation:chale-blink 7.2s ease-in-out infinite}
@keyframes chale-breathe{50%{transform:scale(1.025)}}@keyframes chale-blink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.1)}}
.product-detail-body{padding:0 26px 26px;display:grid;grid-template-columns:1fr .95fr;gap:20px;align-items:start}
.product-detail h3{font-size:22px;line-height:1.2;letter-spacing:-.035em;margin-block:3px 12px;font-weight:650}.product-detail p{font-size:14px;line-height:1.65;max-width:220px}
.pill-link{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:42px;border:1px solid currentColor;border-radius:30px;padding:10px 17px;font-size:12px;font-weight:600;line-height:1.5;transition:background .2s}
.pill-link .arrow{width:15px;height:15px}.pill-link:hover{background:#ffffff50}.product-detail .pill-link{margin-top:22px}
.product-detail figure{margin:0;min-width:0}.product-detail figure>img{display:block;width:100%;height:auto;border-radius:8px;box-shadow:0 3px 10px #092b3210}.product-detail figcaption{font-size:9px;line-height:1.5;margin-top:9px;opacity:.8}
.prism-detail .product-detail-body{grid-template-columns:1fr}.prism-detail .product-detail-body>div{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.prism-detail .product-detail-body h3{grid-row:1/3}.prism-detail .pill-link{width:fit-content;margin-top:14px}.prism-detail figure{margin-top:4px}.prism-detail figure>img{max-height:215px;object-fit:cover;object-position:top}
summary::-webkit-details-marker{display:none}summary:focus-visible{outline:2px solid #009aaa;outline-offset:3px}
.plus{position:relative;display:block;width:29px;height:29px;border:1px solid currentColor;border-radius:50%;flex:0 0 auto;opacity:.8}.plus:before,.plus:after{content:'';position:absolute;left:8px;right:8px;top:13px;background:currentColor;height:1px}.plus:after{rotate:90deg;transition:rotate .2s}details[open] .plus:after{rotate:0deg}
.neon-division{background:#0d202c;color:#f7fafc;align-items:center}
.neon-logo{display:block;width:210px;max-width:85%;height:auto;margin-left:-3px;margin-bottom:24px}
.neon-division .division-intro{padding:0}.neon-division h2{font-size:28px;line-height:1.22;max-width:290px}.neon-division .division-intro p{color:#c7d3d9;font-size:15px;margin-top:18px}.neon-division .pill-link{background:#f7fafc;color:#0d202c;border-color:#f7fafc;margin-top:26px}.neon-division .pill-link:hover{background:#d5edef}
.representation-list{display:grid;gap:12px;min-width:0}.representation-list details{background:#b5dfeb;color:#102f3a;border-radius:17px}.representation-list details:nth-child(2){background:#d2e8e9}.representation-list details:nth-child(3){background:#95c9d6}.representation-list details:nth-child(4){background:#dde8ef}
.representation-list summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:82px;padding:22px 24px;list-style:none;font-size:18px;font-weight:650;line-height:1.3;letter-spacing:-.025em;cursor:pointer}.representation-list details>div{padding:0 24px 22px}.representation-list p{font-size:14px;line-height:1.7}.representation-list .quiet-link{margin-top:12px;font-size:12px}.capability-links{display:grid;gap:4px;margin-top:12px}.capability-links a{font-size:12px;min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:12px}.capability-links .arrow{width:15px;height:15px}.capability-links a:hover{text-decoration:underline;text-underline-offset:4px}
.work{padding-block:64px}.section-heading{margin-bottom:26px}.section-heading h2{font-size:30px}.work-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6%}.work-feature-image{border-radius:18px;overflow:hidden}.work-feature-image img{display:block;width:100%;height:auto}.work-feature-copy{max-width:365px}.work-feature-copy h3{font-size:29px}.work-feature-copy p{font-size:15px;line-height:1.65;margin-top:16px}.work-feature-copy>span:not(.quiet-link){display:block;font-size:11px;color:var(--muted);margin-top:15px}.work-feature-copy .quiet-link{margin-top:14px}.work-feature:hover .quiet-link{text-decoration:underline;text-underline-offset:5px}
.culture{padding-bottom:65px}.culture-division{background:#f1eee8;align-items:center}.culture-division h2{font-size:32px}.culture-division p{font-size:15px}.culture-list a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 0;border-bottom:1px solid #d4d1c9}.culture-list a:first-child{padding-top:0}.culture-list a:last-child{border-bottom:0;padding-bottom:0}.culture-list h3{font-size:22px}.culture-list p{font-size:12px;margin-top:7px;color:#63665f}.culture-list .arrow{width:20px;height:20px;transition:translate .2s}.culture-list a:hover .arrow{translate:3px -3px}
/* Service groups stay compact until a visitor opens one. */
.wms-services{padding-block:60px 0}.wms-services .section-heading{display:flex;align-items:center;justify-content:space-between;gap:30px}.wms-services .section-heading p{font-size:15px;line-height:1.6;color:var(--muted);max-width:300px}.service-groups{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.service-group-column{display:grid;gap:16px}.service-group{border:1px solid var(--line);border-radius:18px;background:#f4f6f3}.service-group summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;cursor:pointer;padding:24px;font-size:20px;font-weight:650;letter-spacing:-.035em;line-height:1.3;min-height:90px}.service-group>div{padding:0 24px 22px}.service-group ul{list-style:none;margin:0 0 12px;padding:0}.service-group li{font-size:14px;line-height:1.6;padding:10px 0;border-top:1px solid var(--line)}.service-group .quiet-link{font-size:12px}.culture{background:#f1eee8;padding-block:50px;margin-bottom:0}.culture-division{padding:0;border-radius:0;background:none}.culture-list{padding-left:0}
@media(max-width:640px){.wms-services{padding-top:42px}.wms-services .section-heading{display:block}.wms-services .section-heading p{font-size:14px;margin-top:13px}.service-groups{grid-template-columns:1fr;gap:12px}.service-group summary{font-size:20px;min-height:80px;padding:22px}.service-group>div{padding:0 22px 20px}.service-group li{font-size:13px}.culture{padding-block:34px}.culture .culture-division{padding:0;border-radius:0;gap:28px}.culture .division-intro h2{max-width:270px}}
.work .section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.project-cards{display:grid;grid-template-columns:1fr 1fr;gap:36px 28px}.project-cards .work-feature{display:flex;flex-direction:column;align-items:stretch;gap:22px}.project-cards .work-feature-copy{max-width:100%}.project-cards-single{display:block}.project-cards-single .work-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6%}.project-cards .work-feature-image{background:#edf0ee;aspect-ratio:16/10}.project-cards .work-feature-image img{width:100%;height:100%;object-fit:contain}.editorial-arrow{display:inline-block;width:16px;height:16px;flex:0 0 auto}
@media(max-width:640px){.project-cards{grid-template-columns:1fr}.project-cards-single .work-feature{grid-template-columns:1fr;gap:24px}}
/* Small shared footer; brand destinations do not compete with the page. */
.footer{border-top:1px solid var(--line);padding-block:36px 16px}
.footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr .8fr;gap:5%;padding-bottom:30px}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.footer-brand img{width:105px;height:auto;display:block}.footer-brand>span{font-size:12px;color:var(--muted)}.footer-brand .quiet-link{font-size:12px;min-height:36px}
.footer-main nav h2{font-size:13px;font-weight:600;letter-spacing:0;margin:2px 0 15px;color:var(--muted)}.footer-main nav a{display:flex;align-items:center;min-height:36px;font-size:13px;width:fit-content}.footer a:hover{text-decoration:underline;text-underline-offset:4px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;border-top:1px solid var(--line);padding-top:13px;font-size:12px;line-height:1.6;color:var(--muted)}.footer-bottom nav{display:flex;gap:22px}.footer-bottom a{min-height:40px;display:inline-flex;align-items:center}.back-top{gap:10px}.back-top .arrow{width:14px;height:14px}
/* Service pages use the same contained scale and brand context. */
.back-link{display:inline-flex;gap:10px;align-items:center;min-height:44px;font-size:12px;line-height:1.5}.back-link .arrow{width:16px;height:16px}.back-link:hover{text-decoration:underline;text-underline-offset:5px}
.service-cover{width:calc(100% - var(--gutter)*2);max-width:1232px;background:#edf0ee;border-radius:24px;color:var(--ink);padding:32px 40px 40px;margin-top:8px}
.service-context{display:flex;align-items:center;justify-content:space-between;gap:24px}.service-provider{background:#0d202c;border-radius:8px;padding:4px 10px}.service-provider img{width:130px;height:auto;display:block}
.service-cover h1{font:700 clamp(38px,4.5vw,66px)/1.12 'WMS Sans',sans-serif;letter-spacing:-.05em;max-width:800px;margin:32px 0 24px;text-wrap:balance}
.service-cover-bottom{display:flex;justify-content:space-between;align-items:end;gap:40px}.service-cover-bottom>p{font-size:16px;line-height:1.65;max-width:480px}.service-cover .text-link{white-space:nowrap;font-size:12px;gap:20px}
.capability-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;padding-block:62px}.capability-intro h2{font-size:30px}.capability-intro p{font-size:14px;line-height:1.7;color:var(--muted);max-width:300px;margin-top:18px}.capability-intro .text-link{margin-top:18px;font-size:12px;gap:20px}.capability-list{min-width:0}.capability{border-top:1px solid var(--line)}.capability:last-child{border-bottom:1px solid var(--line)}.capability summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;font-size:18px;font-weight:650;line-height:1.4;padding-block:20px}.capability p{font-size:14px;color:var(--muted);line-height:1.65;padding:0 45px 22px 0}.capability .plus{width:25px;height:25px}.capability .plus:before,.capability .plus:after{left:6px;right:6px;top:11px}
.service-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px 8%;padding-block:20px 35px;border-top:1px solid var(--line)}.service-nav a{display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:48px;font-size:12px}.service-nav a[aria-current],.service-nav a:hover{text-decoration:underline;text-underline-offset:5px}.service-nav .arrow{width:15px;height:15px}
.training-reference{display:flex;gap:28px;align-items:center;padding-block:30px;background:#edf0ee;margin-bottom:40px}.training-reference>img{width:32%;height:auto;border-radius:10px}.training-reference h2{font-size:28px;margin-block:12px}.training-reference p,.training-reference span{font-size:12px}.training-reference>.arrow{margin-left:auto}
/* Project stories share the newsroom's reading measure and image treatment. */
.project-opening{padding-top:32px;padding-bottom:36px;max-width:calc(var(--reading) + var(--gutter)*2)}
.project-heading{margin-top:24px}.project-heading h1{font:700 clamp(36px,4.3vw,56px)/1.12 'WMS Sans',sans-serif;letter-spacing:-.05em;margin:0 0 20px}
.project-heading p{font-size:20px;line-height:1.5;font-weight:600;margin:0 0 18px;max-width:600px}.project-heading span{font-size:12px;color:var(--muted);line-height:1.7}
.project-gallery{width:calc(100% - var(--gutter)*2);max-width:var(--reading);margin:0 auto 42px;padding:0;position:relative}.slide-stage figure{margin:0}.slide-zoom{display:block;cursor:zoom-in;border-radius:var(--image-radius);overflow:hidden}.slide-stage img{display:block;width:100%;height:auto}.slide-stage figcaption{color:var(--muted);font-size:12px;line-height:1.5;margin-top:16px}
.gallery-controls{display:flex;justify-content:space-between;align-items:center;margin:16px auto 0;color:var(--muted);font-size:12px}.gallery-controls>div{display:flex;gap:10px}.gallery-controls button{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:none;color:var(--ink);cursor:pointer}.gallery-controls button:hover{background:#edf0ee}
.project-story,.project-practice{max-width:calc(var(--reading) + var(--gutter)*2);padding-block:18px 32px}.project-story h2,.project-practice h2{font-size:28px;margin-bottom:20px}.project-story p,.project-practice p{font-size:17px;line-height:1.75;max-width:70ch}.project-practice .text-link{margin-top:18px}
.workshop-days{max-width:calc(var(--reading) + var(--gutter)*2);display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-block:4px 36px}.workshop-day{padding:28px;background:#edf0ee;border-radius:var(--image-radius)}.workshop-day:nth-child(2){background:#e4eff0}.workshop-day time{display:flex;gap:8px;font-size:12px;line-height:1.5;color:var(--muted);margin-bottom:24px}.workshop-day time strong{font:inherit}.workshop-day h2{font-size:23px;margin-bottom:14px}.workshop-day p{font-size:14px;line-height:1.7}.workshop-platforms{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.workshop-platforms span{font-size:11px;border:1px solid #16334430;border-radius:30px;padding:7px 10px;line-height:1.5}
.project-contact{max-width:calc(var(--reading) + var(--gutter)*2);padding-block:18px 64px}.project-contact>a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:28px}.project-contact h2{font-size:28px}.project-contact .arrow{width:28px;height:28px}
@media(min-width:1600px){.water-hero h1{max-width:1100px}}
@media(max-width:1000px){.header nav{gap:26px}.division{gap:6%;padding:32px;grid-template-columns:.85fr 1.15fr}.division-intro h2{font-size:29px}.division-intro p{font-size:15px}.product-detail summary{padding:20px;min-height:77px}.product-detail-body{grid-template-columns:1fr;padding:0 20px 22px;gap:22px}.product-detail-body>div{display:grid;grid-template-columns:1fr auto;column-gap:18px}.product-detail-body h3,.product-detail-body p{grid-column:1}.product-detail-body .pill-link{grid-column:2;grid-row:1/3;align-self:center;margin:0;white-space:nowrap}.product-detail figure>img{max-height:180px;object-fit:contain;object-position:left}.prism-detail .product-detail-body>div{display:block}.prism-detail .product-detail-body h3{font-size:20px}.prism-detail .pill-link{margin-top:16px}.prism-detail figure>img{max-height:190px;object-fit:cover}.neon-logo{width:190px}.neon-division h2{font-size:26px}.neon-division .division-intro p{font-size:14px}.representation-list summary{font-size:16px;padding:20px;min-height:78px}.representation-list details>div{padding:0 20px 20px}.representation-list .plus{width:25px;height:25px}.representation-list .plus:before,.representation-list .plus:after{left:6px;right:6px;top:11px}.footer-main{gap:4%}}
@media(max-width:800px){.water-hero{min-height:620px}.water-hero h1{font-size:17vw;top:21svh}.group-intro{gap:8%;padding-block:58px}.group-intro h2{font-size:42px}.group-intro p{font-size:16px}.division{grid-template-columns:.75fr 1.25fr;padding:28px;gap:6%}.division-intro h2{font-size:27px}.division-intro p{font-size:14px}.product-detail-body>div{display:block}.product-detail .pill-link{margin-top:18px}.product-detail figure>img{max-height:180px;object-position:center}.neon-logo{width:165px}.neon-division h2{font-size:23px}.neon-division .pill-link{font-size:11px;padding-inline:14px;gap:10px}.representation-list summary{font-size:15px;padding:18px;min-height:76px}.representation-list details>div{padding-inline:18px}.work-feature-copy h3{font-size:25px}.work-feature-copy p{font-size:14px}.work{padding-block:52px}.culture{padding-block:42px}.culture-list h3{font-size:20px}.footer-main{grid-template-columns:1.4fr 1fr 1fr;gap:30px}.footer-main nav:last-child{grid-column:2}.footer-bottom{flex-wrap:wrap}.footer-bottom .back-top{margin-left:auto}}
@media(max-width:640px){
 :root{--gutter:22px}.brand img{width:82px}.header nav{gap:12px;font-size:11px}.header nav a{gap:8px}.header nav a[href$="#about"],.header nav a[href$="#our-world"]{display:none}.header .arrow{width:16px;height:16px}
 .water-hero{height:100svh;min-height:650px;max-height:960px}.water-hero h1{font-size:22vw;top:21svh;letter-spacing:-.075em}.hero-bottom{bottom:30px}.light-link{font-size:12px;gap:25px}.motion-toggle{width:36px;height:36px}
 .group-intro{grid-template-columns:1fr;gap:22px;padding-block:44px}.group-intro h2{font-size:40px}.group-intro h2 br{display:none}.group-intro p{font-size:15px;max-width:360px}.group-intro .quiet-link{margin-top:10px;font-size:12px}
 .division{grid-template-columns:1fr;gap:28px;padding:24px 20px;border-radius:21px}.division+.division{margin-top:22px}.division-intro{padding:0}.division-intro h2{font-size:27px}.division-intro p{font-size:14px;margin-top:13px;max-width:360px}
 .product-detail summary{padding:20px;min-height:76px}.product-detail summary>img{height:32px}.prism-detail summary>img{height:60px;margin-block:-16px}.product-detail-body{padding:0 20px 22px}.product-detail-body h3{font-size:20px}.product-detail p{font-size:13px;max-width:260px}.product-detail .pill-link{font-size:11px;margin-top:17px}.product-detail figure>img{max-height:220px;object-fit:contain;object-position:left}.product-detail figcaption{font-size:9px}.prism-detail figure>img{max-height:180px;object-fit:cover;object-position:top left}
 .neon-logo{width:185px;margin:0 0 20px}.neon-division h2{font-size:26px;max-width:290px}.neon-division .division-intro p{font-size:14px}.neon-division .pill-link{margin-top:20px;font-size:11px}.representation-list{gap:10px}.representation-list summary{font-size:16px;padding:18px;min-height:76px}.representation-list p{font-size:13px}.representation-list details>div{padding-bottom:18px}.representation-list .quiet-link,.capability-links a{font-size:11px}
 .work{padding-block:42px}.section-heading{margin-bottom:22px}.section-heading h2{font-size:27px}.work-feature{grid-template-columns:1fr;gap:24px}.work-feature-image{border-radius:15px}.work-feature-copy h3{font-size:24px}.work-feature-copy p{font-size:14px;margin-top:12px}.work-feature-copy>span:not(.quiet-link){margin-top:12px;font-size:11px}.work-feature-copy .quiet-link{font-size:12px;margin-top:10px}
 .culture{padding-block:34px}.culture-division{gap:25px}.culture-list h3{font-size:21px}.culture-list p{font-size:12px}.culture-list a{padding-block:22px}
 .footer{padding-block:28px 16px}.footer-main{grid-template-columns:1fr 1fr;gap:28px 18px;padding-bottom:25px}.footer-main nav:last-child{grid-column:auto}.footer-brand img{width:92px}.footer-brand>span{font-size:10px;line-height:1.7;max-width:130px}.footer-brand{gap:12px}.footer-main nav h2{font-size:11px;margin-bottom:10px}.footer-main nav a{font-size:12px;min-height:40px}.footer-brand .quiet-link{font-size:11px}.footer-bottom{gap:6px 18px;font-size:11px}.footer-bottom>span{width:100%;font-size:11px}.footer-bottom nav{gap:15px}.footer-bottom .back-top{gap:7px}
 .service-cover{padding:22px;margin-top:0;border-radius:20px}.service-context{gap:12px}.service-context .back-link{font-size:10px;gap:7px}.service-provider{padding:3px 7px}.service-provider img{width:90px}.service-cover h1{font-size:clamp(32px,9vw,44px);line-height:1.14;margin-block:28px 20px}.service-cover-bottom{display:block}.service-cover-bottom>p{font-size:14px}.service-cover .text-link{font-size:11px;margin-top:16px}
 .capability-section{grid-template-columns:1fr;gap:30px;padding-block:42px}.capability-intro h2{font-size:28px}.capability-intro p{font-size:13px;margin-top:15px;max-width:340px}.capability-intro .text-link{font-size:11px;margin-top:12px}.capability summary{font-size:18px;gap:15px;padding-block:20px}.capability p{font-size:13px;padding-right:20px}.service-nav{grid-template-columns:1fr;gap:0;padding-block:15px 25px}.service-nav a{font-size:11px;min-height:50px}.training-reference{flex-wrap:wrap;gap:20px;margin-bottom:30px}.training-reference>img{width:100%}.training-reference h2{font-size:27px}.training-reference p,.training-reference span{font-size:11px}
 .project-opening{padding-top:18px;padding-bottom:28px}.project-heading{margin-top:18px}.project-heading h1{font-size:38px}.project-heading p{font-size:18px}.project-gallery{margin-bottom:32px}.project-story,.project-practice{padding-block:12px 28px}.project-story h2,.project-practice h2{font-size:26px}.project-story p,.project-practice p{font-size:16px}.workshop-days{grid-template-columns:1fr;gap:16px;padding-bottom:28px}.workshop-day{padding:24px}.workshop-day h2{font-size:23px}.project-contact{padding-block:12px 44px}.project-contact h2{font-size:26px}

}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.water-hero h1{transform:none!important}.culture-list a:hover .arrow{translate:none}}

/* One continuous client strip; the second copy is decorative. */
.clients{padding-block:32px 48px}client-marquee{display:block;--logo-width:160px;--logo-gap:56px}.clients-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px}.clients-heading h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.045em;font-weight:500}.clients-heading-end{display:flex;align-items:center;gap:20px}.clients-heading p{font-size:14px;color:var(--muted)}
.client-motion-toggle{display:none;flex:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);cursor:pointer}.client-motion-toggle:hover{background:#edf1ee}.client-motion-toggle:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.client-motion-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.client-toggle-glyph{transition:d var(--motion-morph) var(--ease-brand)}client-marquee[data-paused="true"] .client-toggle-glyph{d:path("M8 6L8 12L8 18M8 6L17 12L8 18")}
.client-marquee-viewport{overflow:hidden;border-block:1px solid var(--line)}.client-marquee-track{display:flex;width:100%}.client-logos{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:24px var(--logo-gap);width:100%;padding:26px 0;margin:0;flex:none}.client-logos li{width:var(--logo-width);height:68px;display:flex;align-items:center;justify-content:center;flex:none}.client-logos img{width:auto;height:auto;max-width:100%;max-height:48px;object-fit:contain}.client-logos li[data-client="Publicis West Africa"] img,.client-logos li[data-client="Zoomlion"] img{max-height:62px}.client-logos li[data-client="Exness"] img{border-radius:4px}.client-logos-copy{display:none}
client-marquee[data-ready] .client-motion-toggle{display:flex}client-marquee[data-ready] .client-marquee-viewport{mask-image:linear-gradient(to right,transparent,#000 36px,#000 calc(100% - 36px),transparent)}client-marquee[data-ready] .client-logos{display:flex;flex-wrap:nowrap;justify-content:space-around;width:max-content;min-width:100%;padding-right:var(--logo-gap);animation:client-drift var(--marquee-duration,66s) linear infinite}client-marquee[data-paused="true"] .client-logos,client-marquee:not([data-visible="true"]) .client-logos{animation-play-state:paused}
@keyframes client-drift{to{transform:translateX(-100%)}}
@media(hover:hover){client-marquee:hover .client-logos{animation-play-state:paused}}
@media(max-width:640px){.clients{padding-block:24px 30px}client-marquee{--logo-width:120px;--logo-gap:38px}.clients-heading{align-items:start;margin-bottom:16px;gap:14px}.clients-heading h2{font-size:27px}.clients-heading-end{gap:0}.clients-heading p{display:none}.client-logos{padding-block:18px}.client-logos li{height:62px}.client-logos img{max-height:42px}.client-logos li[data-client="Publicis West Africa"] img,.client-logos li[data-client="Zoomlion"] img{max-height:54px}client-marquee[data-ready] .client-marquee-viewport{mask-image:linear-gradient(to right,transparent,#000 20px,#000 calc(100% - 20px),transparent)}}
@media(prefers-reduced-motion:reduce){client-marquee[data-ready] .client-motion-toggle{display:none}client-marquee[data-ready] .client-marquee-viewport{mask-image:none}client-marquee[data-ready] .client-logos{animation:none;transform:none;flex-wrap:wrap;width:100%;min-width:0;padding-right:0;justify-content:center;gap:24px}client-marquee[data-ready] .client-logos-copy{display:none}}

/* Shared Honkish motion: continuity on repeated actions, no overshoot. */
:root{--ease-brand:cubic-bezier(.22,1,.36,1);--ease-tray:cubic-bezier(.32,.72,0,1);--motion-morph:280ms;--motion-leave:180ms;--motion-open:460ms;--motion-close:300ms;--motion-press:90ms}
:is(.product-detail,.representation-list details,.service-group,.capability)[data-transitioning]{overflow:hidden;will-change:height}.product-collection,.representation-list,.service-groups{overflow-anchor:none}
summary .plus:after{transition:rotate var(--motion-morph) var(--ease-brand)}details[data-expanded="false"] .plus:after{rotate:90deg}details[data-expanded="true"] .plus:after{rotate:0deg}
:is(.product-detail,.representation-list details,.service-group,.capability) summary{transition:background-color var(--motion-morph) var(--ease-brand)}
:is(.pill-link,.motion-toggle,.client-motion-toggle){transition:background-color var(--motion-morph) var(--ease-brand),transform 240ms var(--ease-brand)}
:is(.pill-link,.motion-toggle,.client-motion-toggle):active{transform:scale(.97);transition-duration:var(--motion-press)}
a .arrow{transition:translate var(--motion-morph) var(--ease-brand)}
@media(hover:hover){a:hover>.arrow[data-direction="out"],a:hover .quiet-link>.arrow[data-direction="out"]{translate:3px -3px}a:hover>.arrow[data-direction="right"]{translate:3px 0}a:hover>.arrow[data-direction="left"]{translate:-3px 0}a:hover>.arrow[data-direction="down"]{translate:0 3px}a:hover>.arrow[data-direction="up"]{translate:0 -3px}summary:hover{background-color:#ffffff16}}
@media(prefers-reduced-motion:reduce){a:hover .arrow{translate:none!important}:is(.pill-link,.motion-toggle,.client-motion-toggle):active{transform:none}}

.slide-stage{display:grid;overflow:hidden}.slide-stage figure{grid-area:1/1;min-width:0}.gallery-controls button{transition:background-color var(--motion-morph) var(--ease-brand),transform 240ms var(--ease-brand)}.gallery-controls button:active{transform:scale(.97);transition-duration:var(--motion-press)}@media(prefers-reduced-motion:reduce){.gallery-controls button:active{transform:none}}
