:root{--ink:#182728;--paper:#f3f4ef;--accent:#ee5038;--scroll:0px}html{scroll-behavior:smooth;touch-action:pan-y}body{background:var(--paper);overscroll-behavior-y:contain}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #176d8a;outline-offset:4px}.header{position:sticky;top:12px;z-index:20;margin:12px 2vw 0;padding:17px 24px;border:1px solid #ffffffb0;border-radius:20px;background:#f7f9f0b8;backdrop-filter:blur(22px);box-shadow:0 8px 30px #223d3510}.brand{position:relative;padding-left:42px}.brand:before{content:'';position:absolute;left:0;top:0;width:32px;height:32px;background:url('favicon.svg') center/contain no-repeat}.header nav{gap:22px}.header .contact-link{display:none}.basket-trigger{background:var(--ink);color:white;border:0;border-radius:40px;padding:12px 19px;white-space:nowrap}.basket-trigger b{display:inline-grid;place-items:center;min-width:22px;min-height:22px;margin-left:7px;background:var(--accent);border-radius:50%}.hero{position:relative;display:block;min-height:1060px;overflow:hidden;padding-top:95px;background:radial-gradient(ellipse at 75% 45%,#cbded9 0,transparent 55%),radial-gradient(at 10% 10%,#ece4d2,transparent 45%)}.hero-copy{position:relative;z-index:3;max-width:850px}.hero h1{font-size:clamp(50px,5.7vw,92px);line-height:1.18;letter-spacing:-.06em}.hero h1 em{color:var(--accent);font-style:normal}.hero .intro{max-width:550px;line-height:1.9}.hero-image{display:none}.hero-foot{position:absolute;bottom:22px;left:5vw;right:5vw}.flat-lay{position:absolute;inset:280px -4% 30px 30%;perspective:1400px;transform:translateY(calc(var(--scroll)*-.08));pointer-events:none}.lay-card{position:absolute;width:37%;height:530px;top:130px;border:7px solid #fff;border-radius:13px;background:#fff;overflow:hidden;box-shadow:0 35px 55px #233d3b35;pointer-events:auto;transition:transform .9s,box-shadow .9s}.lay-card span{display:block;font-size:8px;padding:7px;color:#a2a49a;white-space:nowrap}.lay-card b{font-weight:500;margin-left:12px;color:#444}.lay-card img{width:100%;display:block}.lay-0{left:0;transform:rotate(-14deg) rotateX(17deg) translateY(95px)}.lay-1{left:31%;transform:rotate(6deg) rotateX(17deg);z-index:2}.lay-2{left:61%;transform:rotate(20deg) rotateX(17deg) translateY(90px)}.lay-card:hover{transform:rotate(0) rotateX(0) translateY(-25px) scale(1.07);z-index:4;box-shadow:0 50px 90px #18393760}.lay-card:after,.card-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 10%,#ffffff55 30%,transparent 50%);transform:translateX(-110%);transition:transform 1.3s;pointer-events:none}.lay-card:hover:after,.card-visual:hover:after{transform:translateX(100%)}.lay-sticker{position:absolute;bottom:60px;left:8%;z-index:5;width:125px;height:125px;display:grid;place-content:center;background:#f4fa74;box-shadow:0 12px 30px #0002;border-radius:50%;font-size:18px;font-weight:800;text-align:center;transform:rotate(-15deg)}.work{padding-top:100px}.grid{gap:65px 28px;align-items:start}.card{border-radius:20px;opacity:.25;transform:translateY(55px) scale(.97);transition:opacity .8s,transform .8s;transition-delay:calc(var(--order)*70ms)}.card.in-view{opacity:1;transform:none}.card:nth-child(3n+2){margin-top:75px}.card-visual{height:490px;aspect-ratio:auto;border:8px solid #fff;border-radius:17px;box-shadow:0 15px 35px #1d352510;overflow:hidden;isolation:isolate}.card-visual img{display:block;width:100%;height:auto;min-height:100%;object-fit:cover;object-position:top;transform:translateY(0);transition:transform 1s ease}.card-visual.scroll-preview img{transform:translateY(var(--travel,0px))!important;transition:transform var(--duration,14s) linear}.card-visual .open{z-index:2;border:1px solid #ffffff90;background:#fff9;backdrop-filter:blur(14px);color:#172d28;border-radius:40px}.card-line{margin-top:20px}.card h3{font-size:22px}.card>p{min-height:2.8em}.card-footer{font-size:12px}.basket-card{margin-top:17px;border-top:1px solid #20342c25;padding-top:16px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.basket-card small{display:block;color:#6a746c;font-size:10px;margin-top:5px}.basket-card button{border:1px solid #34473a40;background:transparent;border-radius:30px;padding:10px 13px;white-space:nowrap}.basket-card button[aria-pressed=true]{background:var(--ink);color:white}.filters button{border-radius:30px}.toolbar{position:sticky;top:95px;z-index:10;background:#f3f4efd9;backdrop-filter:blur(18px);padding:12px;border-radius:20px}.studio{border-radius:28px;margin:30px 3vw 60px;overflow:hidden;background:var(--ink);color:#f3f4ef}.studio .button{background:#eef579;color:#132d22}.studio h2{font-size:clamp(34px,4vw,66px)}.section-heading,.studio{transform:translateY(35px);opacity:.5;transition:opacity 1s,transform 1s}.section-heading.in-view,.studio.in-view{opacity:1;transform:none}#detail{border-radius:24px}#detail-image{height:340px;object-fit:cover;object-position:top}.app-tools{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:25px 5vw;border-top:1px solid #152a2420}.app-tools button{border:1px solid #18302933;background:#fff6;padding:10px 14px;border-radius:30px}.app-tools p{width:100%;margin:0;font-size:12px;color:#53645b}.app-version{margin-left:auto;font:12px monospace}.quote-dialog{width:min(940px,94vw);max-height:90dvh;padding:0;border:1px solid white;border-radius:24px;background:#f8faf5;box-shadow:0 30px 100px #0e241950}.quote-dialog::backdrop{background:#11262188;backdrop-filter:blur(12px)}.quote-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:20px 28px;background:#f8faf5ee;backdrop-filter:blur(20px);border-bottom:1px solid #152b2320}.quote-head h2{font-size:23px;margin:0}.quote-head button{border:0;background:transparent;font-size:30px}.quote-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;padding:28px}.basket-item{display:flex;gap:12px;padding:15px 0;border-bottom:1px solid #19362320;align-items:center}.basket-item img{width:68px;height:90px;object-fit:cover;object-position:top;border-radius:7px}.basket-item div{flex:1}.basket-item strong,.basket-item span{display:block;font-size:12px;margin-top:5px}.basket-item small{font:10px monospace}.basket-item button{border:0;background:transparent;font-size:22px}.quote-note{font-size:12px;line-height:1.8;color:#5e6e64}.quote-form{display:grid;gap:14px}.quote-form label{font-size:12px;line-height:1.7}.quote-form input:not([type=checkbox]),.quote-form textarea,.quote-form select{display:block;width:100%;margin-top:5px;border:1px solid #aebbb1;border-radius:9px;padding:11px;background:#fff;font:16px inherit;min-width:0}.quote-form textarea{min-height:100px;resize:vertical}.quote-form .pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quote-form .consent{display:flex;gap:9px;align-items:flex-start}.consent input{margin-top:5px}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.quote-form button[type=submit]{padding:15px;border:0;border-radius:30px;background:var(--ink);color:white;font-weight:600}.quote-form button:disabled{opacity:.4}.quote-status{font-size:13px;line-height:1.8;overflow-wrap:anywhere}.quote-status a{color:#195f58;text-decoration:underline}#toast{position:fixed;bottom:25px;left:50%;z-index:100;max-width:90vw;width:max-content;transform:translate(-50%,120px);transition:transform .35s;background:#162d26ed;color:white;backdrop-filter:blur(15px);border-radius:35px;padding:15px 24px;box-shadow:0 8px 30px #0003;pointer-events:none}#toast.show{transform:translate(-50%,0)}#update-box{position:fixed;bottom:20px;right:20px;z-index:99;max-width:310px;background:#f0f67b;padding:18px;border-radius:16px;box-shadow:0 10px 40px #0002;font-size:13px}#update-box button{margin-top:10px;border:0;background:var(--ink);color:white;padding:9px 15px;border-radius:30px}#pull-indicator{position:fixed;top:10px;left:50%;transform:translate(-50%,-70px);z-index:100;background:var(--ink);color:white;padding:12px 24px;border-radius:35px;font-size:12px;pointer-events:none}#portrait-hint{display:none}.still *,.still *:before,.still *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.still .card,.still .section-heading,.still .studio{opacity:1;transform:none}.still .flat-lay{transform:none}.still .scroll-preview img{transform:none!important}
@media(min-width:1500px){.card-visual{height:600px}}
@media(max-width:900px){.hero{min-height:980px}.flat-lay{inset:440px 0 70px 0}.lay-card{height:400px;top:25px;width:34%}.lay-0{left:0}.lay-1{left:32%}.lay-2{left:65%}.lay-sticker{left:8%;bottom:0}.card-visual{height:430px}.card:nth-child(3n+2){margin-top:0}.card:nth-child(2n){margin-top:60px}.header nav{gap:12px}.header nav>a{display:none}.toolbar{top:90px;position:relative}.quote-layout{gap:20px;padding:20px}}
@media(max-width:600px){.header{top:8px;padding:13px 15px;margin:8px 12px;border-radius:16px}.header .brand{font-size:16px;padding-left:30px}.header .brand:before{width:24px;height:24px}.header .brand span{font-size:6px}.header nav{gap:8px}.basket-trigger{font-size:11px;padding:9px 11px}.hero{padding-top:55px;min-height:950px}.hero h1{font-size:48px}.hero .intro{font-size:14px;max-width:330px}.flat-lay{inset:435px -15% 90px -15%}.lay-card{height:330px;width:36%;border-width:5px}.lay-0{left:2%;transform:rotate(-15deg) translateY(65px)}.lay-1{left:31%;transform:rotate(5deg)}.lay-2{left:63%;transform:rotate(18deg) translateY(70px)}.lay-sticker{width:95px;height:95px;font-size:14px;left:20%;bottom:-15px}.hero-foot{font-size:7px;flex-direction:column;gap:5px}.work{padding-top:60px}.grid{gap:45px}.card:nth-child(n){margin-top:0}.card-visual{height:540px}.card>p{min-height:0}.card h3{font-size:24px}.quote-layout{grid-template-columns:1fr}.quote-head{padding:16px 20px}.quote-head h2{font-size:20px}.basket-item img{height:60px}.basket-item{padding:10px 0}.quote-form .pair{gap:10px}.quote-dialog{max-height:94dvh}.studio{margin:20px 12px}.app-tools{gap:8px}.app-tools button{font-size:11px}.app-version{width:100%;margin:5px 0}.app-tools p{font-size:11px}}
@media(orientation:landscape) and (max-height:500px) and (display-mode:standalone){#portrait-hint{display:block;position:fixed;bottom:12px;left:12px;background:#182728;color:white;padding:10px 15px;border-radius:20px;font-size:12px;z-index:80}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.card,.section-heading,.studio{opacity:1;transform:none}.flat-lay{transform:none}.card-visual.scroll-preview img{transform:none!important}}

.header .basket-trigger{background:var(--ink);color:white;padding:10px 16px}.header{flex-wrap:nowrap}.header nav{width:auto}.quote-form input:not([type=checkbox]),.quote-form textarea,.quote-form select{font:16px system-ui,sans-serif}
@media(max-width:600px){.header{gap:8px}.header nav{width:auto}.header .basket-trigger{padding:8px 10px}.header .brand span{letter-spacing:.3px}}

@media(max-width:600px){.hero h1 em{font-size:clamp(30px,9.5vw,42px);letter-spacing:-.055em}.hero-copy{max-width:100%}}

.case-story-link{display:block;font-size:12px;margin-top:15px;text-decoration:underline;text-underline-offset:4px}.story-teaser{margin-top:25px;padding-top:20px;border-top:1px solid #bdc7bc}.story-teaser h3{font-size:20px}.story-teaser li,.story-teaser p{font-size:14px}.related-inline{display:flex;gap:12px;flex-wrap:wrap;font-size:12px}.related-inline a{border-bottom:1px solid #b4c4b5}
