:root{--violet:#4d2a7c;--violet-dark:#302043;--violet-soft:#eee8f3;--paper:#fbf9fc;--ink:#241b2d;--muted:#706778;--line:#e8e2eb;--lime:#d9e79a}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.container{max-width:1190px}.site-nav{position:sticky;top:0;z-index:1000;background:rgba(251,249,252,.68);backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%);border-bottom:1px solid rgba(77,42,124,.12);box-shadow:0 8px 30px rgba(48,32,67,.055)}.site-nav .navbar{min-height:88px;padding-top:8px;padding-bottom:8px}.logo{width:155px;height:auto;display:block}.navbar-nav{gap:clamp(12px,2vw,28px);align-items:center}.nav-link{font-size:14px;font-weight:600;color:var(--ink)!important;padding-inline:0!important}.nav-link:hover{color:var(--violet)!important}.nav-cta,.btn-primary{display:inline-flex;align-items:center;gap:12px;border:0;border-radius:99px;background:var(--violet);color:#fff;padding:13px 20px;font-size:14px;font-weight:700;transition:.2s}.nav-cta:hover,.btn-primary:hover{background:#39205e;color:#fff;transform:translateY(-1px)}.lang-switch{display:flex;gap:7px;align-items:center;font-size:12px;font-weight:800;color:#93889d}.lang-switch a{color:#82778c;text-decoration:none}.lang-switch a.active,.lang-switch a:hover{color:var(--violet)}.navbar-toggler{border:1px solid var(--line);border-radius:10px;padding:9px 12px}.navbar-toggler:focus{box-shadow:0 0 0 3px #4d2a7c22}.hero{padding:76px 0 68px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--violet);font-size:11px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase}.eyebrow:before{content:"";width:23px;height:2px;background:var(--violet)}h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.045em}h1{font-size:clamp(49px,6vw,78px);line-height:.99;font-weight:700;margin:24px 0}h1 em{font-style:normal;color:var(--violet)}.hero-copy{max-width:550px;color:var(--muted);font-size:18px;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:22px;margin-top:30px}.text-link{font-size:14px;font-weight:700;color:var(--violet)}.hero-media{height:520px;position:relative}.hero-media img{height:100%;width:100%;object-fit:cover;border-radius:12px 140px 12px 12px}.hero-stamp{position:absolute;bottom:26px;left:-35px;background:var(--lime);padding:16px 20px;border-radius:7px;color:var(--violet-dark);font-weight:700;font-size:13px;box-shadow:0 12px 30px #30204322}.hero-caption{position:absolute;right:20px;top:20px;color:white;font-size:11px;letter-spacing:1px;text-transform:uppercase;text-shadow:0 1px 12px #000}.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0}.ticker-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.ticker span{font-size:13px;color:var(--muted)}.ticker b{color:var(--ink);font-weight:700}.section{padding:100px 0}.intro-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:start}.section h2{font-size:clamp(38px,4.6vw,58px);line-height:1.06;font-weight:650;margin:15px 0}.intro-text{font-size:19px;line-height:1.8;color:var(--muted);padding-top:25px;max-width:690px}.intro-text strong{color:var(--ink);font-weight:600}.offers{background:#f0ebf4}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}.section-head p{max-width:380px;color:var(--muted);margin:0 0 7px}.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.offer{padding:30px;background:white;border:1px solid #e9e1ed;border-radius:10px;min-height:265px;transition:.25s}.offer:hover{transform:translateY(-5px);box-shadow:0 18px 45px #30204312}.offer-num{font-size:11px;color:#8c729e;font-weight:800;letter-spacing:1.5px}.offer h3{font-size:24px;line-height:1.18;margin:38px 0 12px}.offer p{color:var(--muted);margin:0;line-height:1.7}.work{background:var(--violet-dark);color:white}.work .eyebrow{color:#d6c2e8}.work .eyebrow:before{background:#c69ddb}.work .section-head p{color:#cfc5d6}.work h2{max-width:760px}.work-lead{font-size:18px;line-height:1.7;color:#d6ccdf;max-width:720px;margin:14px 0 42px}.work-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.case{grid-column:span 4;background:white;color:var(--ink);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.case:nth-child(1){grid-column:span 5}.case:nth-child(2){grid-column:span 3}.case:nth-child(3){grid-column:span 4}.case-img{height:220px;width:100%;object-fit:cover;background:#f4eff7}.case-body{padding:24px;display:flex;flex-direction:column;flex:1}.case-tag{color:var(--violet);font-size:10px;font-weight:800;letter-spacing:1.3px;text-transform:uppercase}.case-brand{height:42px;display:flex;align-items:center;gap:10px;margin-bottom:15px;color:var(--violet-dark);font:700 14px Manrope,sans-serif}.case-brand img{width:34px;height:34px;object-fit:contain}.case-brand.schulz img{width:148px;height:34px}.case-brand.electrofy img{width:132px;height:30px;object-fit:contain}.case h3{font-size:25px;line-height:1.14;margin:14px 0 12px}.case p{font-size:14px;color:var(--muted);line-height:1.7;margin:0 0 17px}.case ul{padding-left:18px;color:var(--muted);font-size:13px;line-height:1.7;margin:0 0 22px}.case-link{margin-top:auto;color:var(--violet);font-size:13px;font-weight:800}.case-link:hover{color:#271440}.approach{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.approach-panel{background:var(--violet-soft);border-radius:14px;padding:38px}.approach-panel h3{font-size:28px;margin:0 0 14px}.approach-panel p{color:var(--muted);line-height:1.75}.pill-list{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.pill{background:white;border:1px solid #e1d6e9;border-radius:100px;padding:8px 12px;font-size:12px;font-weight:700;color:var(--violet)}.contact{background:var(--lime);padding:76px 0}.contact-row{display:flex;align-items:center;justify-content:space-between;gap:35px}.contact h2{font-size:clamp(36px,4vw,52px);margin:12px 0}.contact p{max-width:580px;color:#52495b;font-size:17px}.contact .btn-primary{background:var(--violet-dark);white-space:nowrap}.footer{background:#21172c;color:#f7f1fb;padding:46px 0 25px}.footer-grid{display:flex;justify-content:space-between;gap:35px}.footer-logo{width:145px}.footer p{color:#c8becf;font-size:14px;line-height:1.8;margin:18px 0 0}.footer-links{display:flex;gap:20px;align-items:start;font-size:13px;color:#e8deed}.footer-bottom{border-top:1px solid #493b55;margin-top:34px;padding-top:18px;color:#aa9fb2;font-size:12px}.mobile-contact{display:none}
@media(max-width:991.98px){.site-nav .navbar{min-height:76px}.navbar-collapse{padding:16px 0 20px}.navbar-nav{align-items:stretch;gap:4px}.nav-link{padding:10px 0!important}.nav-cta{margin-top:8px;align-self:flex-start}.lang-switch{margin-top:12px}.hero{padding-top:52px}.hero-grid{grid-template-columns:1fr 1fr;gap:30px}.hero-media{height:430px}.case,.case:nth-child(n){grid-column:span 6}.case:nth-child(3){grid-column:span 12}.case:nth-child(3) .case-img{height:280px}.intro-grid{gap:45px}.approach{gap:35px}}
@media(max-width:700px){.container{padding-inline:22px}.logo{width:133px}.hero{padding:42px 0 55px}.hero-grid{grid-template-columns:1fr;gap:34px}.hero h1{font-size:clamp(48px,12vw,68px)}.hero-copy{font-size:16px}.hero-media{height:380px;margin-left:12px}.hero-media img{border-top-right-radius:90px}.hero-stamp{left:-12px;bottom:16px}.ticker-row{gap:14px}.ticker span{width:44%;font-size:12px}.section{padding:72px 0}.intro-grid,.approach{grid-template-columns:1fr;gap:18px}.intro-text{padding-top:0;font-size:17px}.section-head{display:block}.section-head p{margin-top:16px}.offer-grid{grid-template-columns:1fr}.offer{min-height:0;padding:24px}.offer h3{margin:25px 0 10px}.work-lead{font-size:16px}.work-grid{display:grid;grid-template-columns:1fr}.case,.case:nth-child(n){grid-column:auto}.case-img,.case:nth-child(3) .case-img{height:220px}.approach-panel{padding:26px}.contact{padding:58px 0}.contact-row{display:block}.contact .btn-primary{margin-top:12px}.footer-grid{display:block}.footer-links{margin-top:26px}.mobile-contact{display:inline-flex}.desktop-contact{display:none}}

/* Art direction: bold aubergine, sharp citrus and oversized editorial typography */
.hero { background: var(--violet-dark); color: #fff; padding: 72px 0 78px; overflow: hidden; position: relative; }
.hero:after { content: ""; position: absolute; width: 410px; height: 410px; border: 1px solid #ffffff18; border-radius: 50%; right: -180px; top: -220px; box-shadow: 0 0 0 38px #ffffff08, 0 0 0 78px #ffffff06; pointer-events: none; }
.hero-grid { position: relative; z-index: 1; }
.hero .eyebrow { color: var(--lime); }
.hero .eyebrow:before { background: var(--lime); }
.hero h1 { font-size: clamp(54px, 7vw, 94px); max-width: 760px; line-height: .94; letter-spacing: -.065em; }
.hero h1 em { color: var(--lime); }
.hero .hero-copy { color: #e0d7e8; max-width: 570px; }
.hero .text-link { color: #fff; }
.hero .btn-primary { background: var(--lime); color: var(--violet-dark); }
.hero .btn-primary:hover { background: #e7ff91; color: var(--violet-dark); }
.hero-media { height: 570px; }
.hero-media img { border: 8px solid #ffffff12; border-radius: 8px 155px 8px 8px; box-shadow: 0 24px 70px #160c2080; }
.hero-stamp { background: var(--lime); transform: rotate(-3deg); left: -48px; }
.ticker { background: #fff; }
.offers { background: #f0ebf4; }
.offer { border: 0; border-radius: 4px; border-top: 4px solid var(--violet); box-shadow: 0 10px 34px #3020430a; }
.offer:nth-child(2) { border-color: #9b6fc1; }
.offer:nth-child(3) { border-color: #c9e25b; }
.work { background: #f7f4f8; color: var(--ink); }
.work .eyebrow { color: var(--violet); }
.work .eyebrow:before { background: var(--violet); }
.work .section-head p, .work-lead { color: var(--muted); }
.work .section-head { margin: 18px 0 16px; }
.work-grid { gap: 20px; }
.case,.case:nth-child(n) { grid-column: span 4; border-radius: 5px; box-shadow: 0 16px 50px #30204312; }
.case:nth-child(1) { margin-top: 48px; }
.case:nth-child(2) { margin-top: 0; }
.case:nth-child(3) { margin-top: 72px; }
.case-img { height: 248px; }
.case-body { padding: 26px; }
.case h3 { font-size: 28px; }
.case-link { padding-top: 10px; border-top: 1px solid var(--line); }
.contact { background: var(--lime); }
.contact .eyebrow { color: var(--violet-dark); }
.contact .eyebrow:before { background: var(--violet-dark); }
@media(max-width:991.98px) { .hero-media { height: 430px; } .case:nth-child(n) { grid-column: span 6; margin-top: 0; } .case:nth-child(3) { grid-column: span 12; } }
@media(max-width:700px) { .hero { padding: 46px 0 58px; } .hero h1 { font-size: clamp(52px, 13vw, 74px); } .hero-media { height: 360px; } .hero-stamp { left: -12px; } .case:nth-child(n),.case:nth-child(3) { grid-column: auto; margin-top: 0; } .case-img { height: 220px; } }


.deep-dive { background: #fff; }
.deep-grid { display:grid; grid-template-columns: .95fr 1.05fr; gap:60px; align-items:center; }
.deep-photo { position:relative; }
.deep-photo img { display:block; width:100%; height:470px; object-fit:cover; border-radius:8px 110px 8px 8px; }
.photo-label { position:absolute; left:-18px; bottom:20px; padding:13px 18px; background:var(--lime); color:var(--violet-dark); font-size:12px; font-weight:800; border-radius:4px; }
.deep-copy h2 { font-size:clamp(38px,4.4vw,56px); line-height:1.04; margin:15px 0; }
.deep-copy>p { color:var(--muted); line-height:1.8; }
.flow-list { list-style:none; padding:0; margin:28px 0 0; counter-reset: flow; }
.flow-list li { counter-increment:flow; display:grid; grid-template-columns:42px 1fr; gap:14px; padding:16px 0; border-top:1px solid var(--line); }
.flow-list li:before { content:"0" counter(flow); color:var(--violet); font-weight:800; font-size:12px; padding-top:3px; }
.flow-list strong { display:block; font-size:15px; margin-bottom:3px; }
.flow-list span { color:var(--muted); font-size:13px; line-height:1.6; }
.process { background:var(--violet-soft); }
.process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:#dcd1e4; border:1px solid #dcd1e4; margin-top:36px; }
.process-item { background:var(--violet-soft); padding:25px 22px 28px; min-height:185px; }
.process-item span { font-size:11px; font-weight:800; color:var(--violet); letter-spacing:1px; }
.process-item h3 { font-size:20px; margin:25px 0 8px; }
.process-item p { font-size:13px; color:var(--muted); margin:0; line-height:1.65; }
@media(max-width:850px){.deep-grid{grid-template-columns:1fr;gap:30px}.deep-photo img{height:370px}.process-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.deep-photo img{height:300px}.process-grid{grid-template-columns:1fr}.process-item{min-height:0}.process-item h3{margin-top:14px}}


.engineering { background:#fff; }
.engineering-head { display:flex; justify-content:space-between; align-items:end; gap:32px; margin-bottom:38px; }
.engineering-head h2 { font-size:clamp(38px,4.6vw,58px); line-height:1.05; margin:15px 0 0; }
.engineering-head>p { max-width:410px; color:var(--muted); margin:0 0 7px; }
.engineering-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
.engineering-card { padding:28px; background:var(--paper); min-height:245px; }
.engineering-icon { display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--violet-soft); color:var(--violet); font:700 18px monospace; }
.engineering-card h3 { font-size:20px; margin:22px 0 9px; }
.engineering-card p { color:var(--muted); font-size:14px; line-height:1.7; margin:0; }
.tech-tags { display:flex; gap:7px; flex-wrap:wrap; margin-top:17px; }
.tech-tags span { background:#f0eaf4; color:var(--violet); border-radius:99px; padding:5px 9px; font-size:10px; font-weight:800; }
@media(max-width:800px){.engineering-head{display:block}.engineering-head>p{margin-top:16px}.engineering-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.engineering-grid{grid-template-columns:1fr}.engineering-card{min-height:0;padding:23px}}


.engineering { position:relative; overflow:hidden; background:linear-gradient(135deg,#f2edf6 0%,#fbf9fc 55%,#eee8f3 100%); }
.engineering:before { content:""; position:absolute; width:420px; height:420px; border:1px solid #4d2a7c12; border-radius:50%; top:-220px; right:-90px; box-shadow:0 0 0 45px #4d2a7c06,0 0 0 95px #4d2a7c04; }
.engineering .container { position:relative; }
.stack-line { display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin:26px 0 30px; padding:15px 18px; background:#302043; color:#fff; border-radius:5px; font-size:11px; font-weight:800; letter-spacing:.6px; }
.stack-line i { display:block; width:4px; height:4px; border-radius:50%; background:#c8a6df; }
.engineering-grid { counter-reset:eng; gap:12px; background:transparent; border:0; }
.engineering-card { counter-increment:eng; min-height:260px; position:relative; overflow:hidden; padding:27px; background:rgba(255,255,255,.82); border:1px solid #e4d9eb; border-radius:8px; box-shadow:0 8px 24px #30204308; transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease; }
.engineering-card:after { content:"0" counter(eng); position:absolute; right:17px; top:9px; color:#4d2a7c0b; font:800 54px/1 Manrope,sans-serif; letter-spacing:-5px; pointer-events:none; }
.engineering-card:hover { transform:translateY(-5px); box-shadow:0 20px 42px #30204316; border-color:#c8b4d5; }
.engineering-icon { width:45px; height:45px; border-radius:13px; background:linear-gradient(145deg,#f1e9f7,#e5d7ef); color:var(--violet); font-size:16px; box-shadow:inset 0 0 0 1px #4d2a7c0c; }
.engineering-card h3 { font-size:20px; letter-spacing:-.6px; margin:21px 0 9px; }
.engineering-card p { max-width:330px; }
.tech-tags span { background:#f2edf6; border:1px solid #e8dfef; }
.engineering-card:nth-child(9) { background:var(--violet); border-color:var(--violet); color:#fff; }
.engineering-card:nth-child(9) h3 { color:#fff; }
.engineering-card:nth-child(9) p { color:#e6dced; }
.engineering-card:nth-child(9):after { color:#ffffff12; }
.engineering-card:nth-child(9) .engineering-icon { background:var(--lime); color:var(--violet-dark); }
.engineering-card:nth-child(9) .tech-tags span { color:#fff; background:#ffffff17; border-color:#ffffff26; }
@media(max-width:560px){.stack-line{gap:9px;font-size:10px}.engineering-card{min-height:0}}


/* Visual accents */
.hero { background-image: radial-gradient(ellipse at 3% 100%,#563783 0,transparent 40%),linear-gradient(115deg,#302043 0%,#251633 100%); }
.hero:before { content:""; position:absolute; left:43%; top:5%; width:150px; height:150px; border:1px solid #ffffff20; border-radius:50%; box-shadow:0 0 0 22px #ffffff08,0 0 0 46px #ffffff05; pointer-events:none; }
.hero-media { isolation:isolate; }
.hero-media:before { content:""; position:absolute; z-index:-1; inset:22px -20px -18px 22px; border:1px solid #d9e79a88; border-radius:10px 150px 10px 10px; }
.hero-tech-badge { position:absolute; right:-22px; bottom:34px; display:flex; align-items:center; gap:9px; padding:12px 15px; border:1px solid #ffffff55; border-radius:6px; background:rgba(37,22,51,.8); color:white; backdrop-filter:blur(12px); font-size:11px; font-weight:700; box-shadow:0 10px 28px #160c2040; }
.badge-dot { width:8px; height:8px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 4px #d9e79a22; }
.section-head h2,.engineering-head h2 { position:relative; }
.section-head h2:after { content:""; display:block; width:54px; height:4px; margin-top:18px; border-radius:4px; background:var(--lime); }
.offer:nth-child(1) { background:linear-gradient(145deg,#fff 55%,#f5eff9); }
.offer:nth-child(2) { background:linear-gradient(145deg,#fff 55%,#f1eaf6); }
.offer:nth-child(3) { background:linear-gradient(145deg,#fff 55%,#f8f8ed); }
.case { transition:transform .25s ease,box-shadow .25s ease; }
.case:hover { transform:translateY(-7px); box-shadow:0 26px 56px #30204320; }
.case-img { transition:transform .5s ease; }
.case:hover .case-img { transform:scale(1.025); }
.contact { position:relative; overflow:hidden; }
.contact:after { content:"uniquo"; position:absolute; right:-12px; bottom:-76px; color:#3020430a; font:800 clamp(100px,18vw,240px)/1 Manrope,sans-serif; letter-spacing:-.09em; pointer-events:none; }
.contact-row { position:relative; z-index:1; }
@media(max-width:700px){.hero-tech-badge{right:-8px;bottom:18px;font-size:10px}.hero-media:before{inset:14px -10px -12px 14px}.hero:before{left:70%;width:100px;height:100px}}
@media(prefers-reduced-motion:reduce){.case,.case-img,.offer,.nav-cta,.btn-primary{transition:none}}

.back-to-top{position:fixed;right:24px;bottom:24px;z-index:1050;width:48px;height:48px;border:0;border-radius:50%;background:var(--violet);color:#fff;font-size:24px;line-height:1;box-shadow:0 8px 24px #30204333;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease,background .2s ease}
.back-to-top:hover{background:var(--violet-dark)}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.back-to-top:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
@media(max-width:700px){.back-to-top{right:16px;bottom:16px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}html{scroll-behavior:auto}}
