*{box-sizing:border-box}
html,body,#root{margin:0;min-height:100%;width:100%}
/* A gentle native landing near the cover, with free scrolling past it. */
html{scroll-snap-type:y proximity}
.site-header,.ds-cover,.ds-solution{scroll-snap-align:start;scroll-snap-stop:normal}
@media(prefers-reduced-motion:reduce){html{scroll-snap-type:none}}
body{font-family:Inter,Arial,sans-serif;background:#fff;color:#111}
a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid #4bade9;outline-offset:6px}
.skip-link{position:absolute;top:-60px;left:20px;background:white;padding:12px;z-index:20}.skip-link:focus{top:12px}
.site-header{height:clamp(110px,11.875vw,185px);padding:0 3.55%;display:flex;align-items:center;gap:4vw;background:#fff;position:relative;z-index:2}
.brand{display:block;margin-right:auto;flex-shrink:0;width:clamp(130px,10vw,190px)}.brand img{width:100%;display:block;aspect-ratio:143 / 53;height:auto}
nav{display:flex;align-items:center;gap:3.4vw}nav a{white-space:nowrap;font-size:clamp(13px,1.12vw,20px);padding:7px 0;border-bottom:1px solid transparent}nav a:hover,nav a.active{border-color:currentColor}
.socials{display:flex;gap:15px;align-items:center}.socials a{width:18px;display:flex;align-items:center}.socials svg{width:100%;height:18px;object-fit:contain}
/* Figma 184:27 / cover 190:49: 1440 x 846, starting at y=169.
   Keep the source crop and photograph aspect ratio; shorter viewports crop the sofa, not the VR boards. */
.ds-cover{position:relative;width:100%;height:min(58.75vw,100svh);overflow:hidden;background:#000;color:#fff;container-type:size}
.ds-cover-scene{position:absolute;left:-.03%;top:-7.943vw;display:block;width:100.03%;height:auto;max-width:none}
.ds-cover-shade{position:absolute;left:0;top:.236407%;width:30.277778%;height:99.763593%;background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,0));pointer-events:none}
.ds-cover h1{position:absolute;left:6.805556%;top:50%;margin:0;font-size:min(5.555556cqw,9.456265cqh);font-weight:600;line-height:1.21;letter-spacing:0}
.ds-cover-description{position:absolute;left:6.805556%;top:72.931442%;margin:0;font-size:min(1.25cqw,2.12766cqh);font-weight:600;line-height:1.21}
.ds-cover-meta{position:absolute;left:6.805556%;top:77.777778%;margin:0;font-size:min(1.111111cqw,1.891253cqh);font-weight:400;line-height:1.21;white-space:nowrap}
/* Keep the original pixels before y=5570 and after y=6683; the solution is a responsive section. */
.ds-case-study{position:relative;width:100%;aspect-ratio:1440 / 4555;overflow:hidden;background:#fff}
.ds-case-study>img{display:block;width:100%;height:auto;transform:translateY(-13.87939286%)}
@media(max-width:900px){.site-header{gap:20px;flex-wrap:wrap;height:auto;min-height:130px;padding:20px 5%}.brand{width:130px}.socials{margin-left:auto}nav{order:3;width:100%;justify-content:space-between;gap:12px}nav a{font-size:13px}}
@media(max-width:600px){nav{flex-wrap:wrap;justify-content:flex-start;column-gap:20px;row-gap:2px}nav a{font-size:12px}.site-header{min-height:150px}}

.ds-case-after{aspect-ratio:1440 / 630}
.ds-case-after>img{transform:translateY(-91.3852044305%)}
/* Fit heading and the entire original solution asset into one viewport. */
.ds-solution{height:100svh;display:grid;grid-template-rows:auto minmax(0,1fr);gap:clamp(12px,2svh,24px);padding:clamp(16px,3svh,40px) 3.402778%;background:#000;color:#fff}
.ds-solution-heading{min-width:0}
.ds-solution-label{margin:0 0 clamp(8px,1.5svh,16px);font-size:12px;line-height:16px;letter-spacing:1.2px;color:#6a7282}
.ds-solution h2{margin:0;font-size:clamp(28px,min(4.166667vw,6svh),60px);font-weight:500;line-height:1.1;letter-spacing:.2637px}
.ds-solution-description{margin:clamp(8px,1.8svh,20px) 0 0;font-size:clamp(12px,min(1.388889vw,2.5svh),20px);line-height:1.4;color:#99a1af;letter-spacing:-.4492px}
.ds-solution-art{min-height:0;min-width:0;display:flex;justify-content:center;align-items:center}
.ds-solution-art img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;border-radius:12px}
@media(max-width:600px) and (orientation:portrait){.ds-solution{height:auto;min-height:0;padding:24px 5%;gap:20px}.ds-solution-art img{height:auto}.ds-solution-description{font-size:14px}}
