/* Bright future direction. Keep content readable over the visual effects. */
body{background:#fbfdff}main{position:relative;isolation:isolate}main:before{content:'';position:absolute;z-index:-1;inset:0 0 auto;height:1080px;pointer-events:none;background:radial-gradient(ellipse at 83% 25%,#b7eaff66,transparent 39%),radial-gradient(ellipse at 92% 3%,#ffe8bb44,transparent 23%),linear-gradient(160deg,#fff 35%,#f4faff 80%,#fff)}.preview-note{background:#edf6ff}.site-header{background:#ffffffbd;border-bottom-color:#dbeafa8c;backdrop-filter:blur(22px) saturate(150%)}.site-header.scrolled{box-shadow:0 8px 40px -28px #006ac2aa}.brand-symbol{filter:drop-shadow(0 3px 7px #0078d42b)}.nav-contact{color:#006bc4}.reading-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:35;pointer-events:none}.reading-progress span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#0078d4,#60d8ff 75%,#f5ad3d);box-shadow:0 0 10px #24b9ff80}.hero{position:relative;padding-top:64px}.hero h1{color:#102c4d;text-shadow:0 8px 26px #68b9f412}.hero-context{color:#476984}.hero-context .small-dot{box-shadow:0 0 0 5px #f5ad3d18}.button-primary{background:linear-gradient(120deg,#0078d4,#087fe0 60%,#048ccb);box-shadow:0 8px 25px -11px #0078d49c,inset 0 1px 0 #96d8ff99;border:1px solid #1488dd;border-radius:9px;position:relative;overflow:hidden}.button-primary:before{content:'';position:absolute;inset:-60% auto -60% -80%;width:50%;background:linear-gradient(90deg,transparent,#ffffff4d,transparent);transform:skewX(-25deg);transition:left .65s}.button-primary:hover:before{left:135%}.button-primary:hover{background:#0078d4;box-shadow:0 11px 26px -8px #0078d476}.hero-audience{border-left:0;padding:17px 20px;border:1px solid #c9e4f6;border-radius:12px;background:linear-gradient(120deg,#fff9,#edf8ff99);box-shadow:inset 0 1px 0 #fff,0 12px 30px -23px #2d72935c}.hero-audience>div{position:relative;padding-left:15px}.hero-audience>div:before{content:'';position:absolute;left:0;top:7px;width:4px;height:14px;background:#0078d4;border-radius:4px;box-shadow:0 0 10px #0078d442}.hero-visual{position:relative}.architecture-art{overflow:clip;perspective:1100px;min-width:0;isolation:isolate}.system-art{position:relative;z-index:2;transform:rotateX(var(--art-rx,0deg)) rotateY(var(--art-ry,0deg));transition:transform .45s ease-out;filter:drop-shadow(0 17px 22px #3c8eca12)}.layer{opacity:.9}.hero-visual[data-stage] .layer{filter:drop-shadow(0 5px 6px #0078d418)}.hero-visual[data-stage="business"] .layer-base,.hero-visual[data-stage="architecture"] .layer-middle,.hero-visual[data-stage="software"] .layer-top{filter:drop-shadow(0 3px 3px #53c9ffb3) drop-shadow(0 8px 8px #0078d43b)}.label-software rect,.label-business rect,.label-architecture rect{fill:#fffffff2}.art-grid{inset:5% -8% 0;background-image:linear-gradient(#81c7f025 1px,transparent 1px),linear-gradient(90deg,#81c7f025 1px,transparent 1px);background-size:34px 34px;transform:perspective(550px) rotateX(52deg) rotateZ(-24deg);mask-image:radial-gradient(ellipse,#000 15%,transparent 67%);opacity:1}.holo-halo{position:absolute;z-index:0;inset:4% 1% 0;pointer-events:none;background:radial-gradient(ellipse at var(--spot-x,55%) var(--spot-y,50%),#86dfff55,transparent 60%);border-radius:50%}.holo-halo i{position:absolute;left:11%;right:0;top:18%;height:60%;border:1px solid #5cbcf13d;border-radius:50%;transform:rotate(-27deg)}.holo-halo i:nth-child(2){inset:26% 3% 5% 11%;height:auto;border-color:#fff;border-width:2px;box-shadow:0 0 16px #64cfff50;transform:rotate(21deg)}.holo-halo i:nth-child(3){inset:26% -2% 13% 15%;height:auto;transform:rotate(-12deg);border-color:#8fd5fa33}.system-selector{background:#fff9;border:1px solid #cce6f7;border-radius:10px;padding:3px;box-shadow:0 8px 20px -16px #2464973d;gap:3px;justify-content:stretch}.system-selector button{flex:1;border-radius:7px;border:0;margin:0;padding:12px 8px;transition:background .25s,box-shadow .25s,color .25s}.system-selector button[aria-pressed="true"]{background:#0078d4;color:white;box-shadow:0 3px 10px #0078d43b}.system-selector button[aria-pressed="true"] span{color:#d9f2ff}.stage-caption{padding:23px 4px 0}.external-explanation{border:1px solid #efdbb7;background:#fffaf0b3}.experience-strip{position:relative;background:linear-gradient(100deg,#edf7ff,#f8fcff);border-block:1px solid #d9ebf8}.experience-inner>div{color:#4d6a84}.section-heading h2{color:#102e50}.services{position:relative}.service-layout{align-items:stretch}.service-content{position:relative;background:radial-gradient(circle at var(--spot-x,80%) var(--spot-y,0%),#afe6ff73,transparent 52%),linear-gradient(135deg,#fff,#eff8ff);border:1px solid #c6e1f4;border-radius:18px;box-shadow:0 20px 60px -38px #1b72aa85,inset 0 1px 0 #fff;isolation:isolate}.service-content:after{content:'';position:absolute;width:200px;height:200px;border:1px solid #62bbf144;border-radius:50%;right:-90px;bottom:-80px;z-index:-1;box-shadow:0 0 0 24px #d6effb44,0 0 0 55px #effaff80}.service-tab{border-bottom-color:#d3e6f5;transition:padding-left .25s,background .25s}.service-tab[aria-selected="true"]{padding-left:13px;background:linear-gradient(90deg,#e9f6ff80,transparent)}.service-icon{filter:drop-shadow(0 4px 8px #0078d428)}.service-watermark{color:#bbdff566;font-size:115px;right:20px;top:10px}.technology-list span{border:1px solid #b8d9ef;background:#ffffffbf;padding:5px 11px;border-radius:6px}.technology-list{gap:8px}.integration-note{background:#f1f8fc80;border-left:2px solid #94d8fb;padding:15px 20px;border-radius:0 9px 9px 0}.integration-mark{color:#58a7d7}.projects{position:relative;background:radial-gradient(ellipse at 50% 38%,#fff 3%,#eef9ff 55%,#e6f2fc);border-block:1px solid #d3e9f7}.projects:before{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(#6db2df3d .7px,transparent .7px);background-size:24px 24px;mask-image:linear-gradient(transparent,#000 40%,transparent)}.projects .section-heading{position:relative;z-index:1}.project-carousel{position:relative}.gallery-floor{position:absolute;left:50%;top:270px;width:min(1120px,130%);height:390px;transform:translateX(-50%) perspective(900px) rotateX(62deg);pointer-events:none;background-image:linear-gradient(#7abbe32b 1px,transparent 1px),linear-gradient(90deg,#7abbe32b 1px,transparent 1px);background-size:42px 42px;mask-image:radial-gradient(ellipse,#000 28%,transparent 70%)}.gallery-floor i{position:absolute;inset:20% 8%;border:2px solid #66cfff9c;border-radius:50%;box-shadow:0 0 18px #79d7ff40,inset 0 0 16px #79d7ff40}.gallery-floor i:nth-child(2){inset:9% 0;border-width:1px;border-color:#a3cfe559;box-shadow:none}.orbit-stage{height:680px;perspective:1600px}.orbit-card{width:610px;min-height:580px;border-radius:18px;border:1px solid #c2e0f3;background:linear-gradient(150deg,#fff,#f8fcff);box-shadow:0 25px 55px -24px #15569057,inset 0 1px 0 #fff}.orbit-card[data-position="0"]{box-shadow:0 25px 55px -24px #15569057,0 0 0 5px #ffffff70,0 0 35px -15px #4acbff80}.orbit-card[data-position="1"],.orbit-card[data-position="-1"]{opacity:.78}.orbit-art{height:250px;background:#e6f5ff;isolation:isolate}.orbit-art img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1);transform:scale(1.015);user-select:none;pointer-events:none}.orbit-card[data-position="0"] .orbit-art img{transform:scale(1.035)}.orbit-art:after{content:'';position:absolute;inset:auto 0 0;height:45px;background:linear-gradient(transparent,#fff);pointer-events:none}.scene-scan{position:absolute;top:-100%;bottom:-100%;width:15%;left:-40%;transform:rotate(24deg);background:linear-gradient(90deg,transparent,#ffffff94,transparent);opacity:0;pointer-events:none}.orbit-card[data-position="0"] .scene-scan{animation:scene-light 1.5s ease-out .25s both}@keyframes scene-light{0%{left:-40%;opacity:0}20%{opacity:.7}100%{left:130%;opacity:0}}.orbit-copy{padding:23px 34px 28px}.orbit-copy h3{font-size:30px}.orbit-kind{color:#53778e}.orbit-controls{position:relative;z-index:5}.orbit-controls button{border-color:#a9d4f1;box-shadow:0 5px 20px -10px #0078d44d}.orbit-selectors button{background:#ffffffa3;backdrop-filter:blur(8px);border-color:#c0dff3}.orbit-selectors button[aria-current="true"]{box-shadow:0 4px 16px #0078d430}.orbit-draft{max-width:680px}.process{position:relative}.process-panel{background:radial-gradient(ellipse at 100% 0,#bfeaff55,transparent 60%),#f5faff;border:1px solid #cce4f5;border-radius:16px;padding:32px;box-shadow:0 16px 45px -32px #286da95c}.process-progress{top:0;left:24px;width:calc(100% - 48px);height:2px;background:#dfedf7}.process-progress span{background:linear-gradient(90deg,#0078d4,#59cfff);box-shadow:0 0 9px #2ec5ff5e}.process-number{font-size:15px}.process-steps button[aria-selected="true"] .step-indicator{box-shadow:0 0 0 5px #d7effe,0 0 19px #3bb6ff66}.maintenance{background:linear-gradient(100deg,#f0f8fe,#fff);border:1px solid #d0e6f5;border-radius:12px}.photography{padding-top:16px}.photo-placeholder{border:1px solid #e3e2dc;box-shadow:0 18px 38px -33px #665c4966}.contact{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(140deg,#e7f5ff,#f6fcff 56%,#e1f1fc);border-top:1px solid #cee7f7}.contact-layout form{padding:32px;background:#ffffffa1;border:1px solid #fff;border-radius:18px;backdrop-filter:blur(14px);box-shadow:0 24px 60px -36px #377fba60}.contact-portal{width:135px;height:98px;position:relative;margin-bottom:28px}.contact-portal i{position:absolute;inset:17px 20px;border:2px solid #7bcffa;border-radius:50%;background:transparent;transform:rotate(-25deg);box-shadow:0 0 12px #6bd6ff30,inset 0 0 12px #6bd6ff30}.contact-portal i:nth-child(2){inset:9px 12px;border-color:#a7d6f3;border-width:1px;box-shadow:none}.contact-portal span{position:absolute;width:29px;height:29px;top:35px;left:53px;border-radius:7px;transform:rotate(-22deg);background:linear-gradient(140deg,#ffdf95,#eea62e);box-shadow:4px 5px 0 #d48e27,0 10px 24px #f4b64560}input,textarea{background:#ffffffd4;border-color:#bedef2;border-radius:8px;box-shadow:inset 0 2px 4px #5da1d206}input:focus,textarea:focus{box-shadow:0 0 0 3px #62caff22}.site-footer{background:#fbfdff}.reveal-target{opacity:1;transform:none}.reveal-target.reveal-waiting{opacity:0;transform:translate3d(0,30px,0)}.reveal-target{transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1);transition-delay:var(--reveal-delay,0ms)}.reveal-target:focus-within{opacity:1;transform:none}@media(min-width:1101px){.contact-layout{gap:65px;grid-template-columns:.85fr 1.15fr}}
@media(max-width:1100px){.hero{padding-top:46px}.orbit-card{width:560px}.orbit-stage{height:680px}.orbit-copy h3{font-size:28px}.orbit-art{height:235px}.contact-layout{gap:35px}.contact-layout form{padding:26px}.process-panel{padding:28px}.hero-audience{padding:16px}.system-selector button{padding-inline:7px}}
@media(max-width:780px){main:before{height:1600px;background:radial-gradient(ellipse at 90% 48%,#b7eaff55,transparent 50%),#fff}.hero{padding-top:30px}.hero-audience{gap:18px;padding:19px 15px}.hero-audience>div{padding-left:12px}.holo-halo{inset:5% 0}.art-grid{inset:5% 0 0}.system-art{transform:none!important}.service-content{border-radius:14px}.service-tab[aria-selected="true"]{padding-left:8px}.service-watermark{font-size:90px}.gallery-floor{top:250px;width:145%;height:310px}.orbit-card{width:470px;min-height:590px}.orbit-stage{height:675px}.orbit-art{height:205px}.orbit-copy{padding:24px}.orbit-copy h3{font-size:26px}.orbit-description{font-size:16px}.process-panel{padding:27px}.contact-layout form{padding:24px}.contact-portal{margin-bottom:20px}.contact h2{font-size:48px}.contact-layout{gap:32px}.reveal-target.reveal-waiting{transform:translate3d(0,20px,0)}.scene-scan{display:none}}
@media(max-width:400px){.hero-audience{padding:18px 15px}.system-selector button{font-size:13px;padding:11px 5px}.system-selector button span{font-size:10px;margin-right:5px}.stage-caption h2{font-size:21px}.stage-caption>p{font-size:16px}.orbit-card{min-height:600px;max-width:calc(100% - 46px)}.orbit-stage{height:670px}.orbit-art{height:190px}.orbit-copy{padding:21px}.orbit-copy h3{font-size:23px}.orbit-description{font-size:15px}.orbit-tags{font-size:11px}.contact-layout form{padding:21px 17px}.contact-layout .form-row{display:block}.process-panel{padding:24px}.hero-context{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-target,.reveal-target.reveal-waiting{opacity:1!important;transform:none!important;transition:none!important}.system-art{transform:none!important}.scene-scan{display:none}.button-primary:before{display:none}*{animation:none!important;transition:none!important}}
@media print{.reveal-target.reveal-waiting{opacity:1;transform:none}.reading-progress{display:none}}
/* Clear disclosure controls without plus signs. */
.disclosure-icon{width:20px;height:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}
.text-button[aria-expanded="true"] .disclosure-icon{transform:rotate(180deg)}
.menu-icon{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}
.menu-icon path{transform-origin:12px 12px;transition:transform .25s ease,opacity .2s ease}
.menu-toggle[aria-expanded="true"] .menu-icon path:nth-child(1){transform:translateY(5px) rotate(45deg);transform-origin:12px 7px}
.menu-toggle[aria-expanded="true"] .menu-icon path:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] .menu-icon path:nth-child(3){transform:translateY(-5px) rotate(-45deg);transform-origin:12px 17px}
.integration-link{width:28px;height:28px;flex-shrink:0;fill:none;stroke:#469ed3;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* Separate service choices, with the same company blue for both. */
.hero-offers{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:32px}
.hero-offer{display:flex;flex-direction:column;align-items:flex-start;position:relative;min-width:0;padding:21px 18px 18px;border:1px solid #bddcf2;border-radius:12px;background:linear-gradient(145deg,#fff,#eff8ff);box-shadow:0 9px 25px -20px #0078d47a;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}
.hero-offer:hover{border-color:#0078d4;box-shadow:0 12px 24px -17px #0078d48c;transform:translateY(-3px)}
.hero-offer:focus-visible{outline:3px solid #0078d4;outline-offset:4px}
.offer-icon{width:30px;height:30px;stroke:#0078d4;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;fill:none;margin-bottom:17px}
.hero-offer h2{font:600 19px/1.35 var(--heading);letter-spacing:-.45px;color:#142b49}
.hero-offer p{font-size:15px;line-height:1.5;color:#536e89;margin:12px 0 18px}
.offer-link{display:flex;align-items:center;justify-content:space-between;gap:9px;width:100%;margin-top:auto;color:#006bbd;font-size:13px;line-height:1.4;font-weight:600;padding-top:12px;border-top:1px solid #d5e8f5}
.offer-link>span{font-size:20px;line-height:1}
@media(max-width:1100px) and (min-width:781px){.hero-offers{grid-template-columns:1fr;gap:12px}.hero-offer{padding:17px 18px 17px 65px}.offer-icon{position:absolute;top:19px;left:19px;width:27px;height:27px}.hero-offer h2{font-size:18px}.hero-offer p{margin:7px 0 10px}.offer-link{padding-top:8px}}
@media(max-width:500px){.hero-offers{grid-template-columns:1fr;gap:14px;margin-top:28px}.hero-offer{padding:20px 20px 20px 68px}.offer-icon{position:absolute;left:20px;top:22px;width:27px;height:27px}.hero-offer h2{font-size:19px}.hero-offer p{margin:9px 0 13px}}
@media(prefers-reduced-motion:reduce){.hero-offer{transition:none}.hero-offer:hover{transform:none}}

/* The service choices share a full row when the hero columns become narrow. */
.hero{grid-template-areas:"copy visual" "offers visual";row-gap:32px}
.hero-copy{grid-area:copy}
.hero-visual{grid-area:visual;min-width:0}
.hero-offers{grid-area:offers;margin-top:0;align-self:start}
@media(min-width:781px) and (max-width:1100px){
  .hero{grid-template-areas:"copy visual" "offers offers";align-items:start;row-gap:36px}
  .hero-offers{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .hero-offer{padding:23px 23px 21px 66px}
  .hero-offer .offer-icon{top:24px;left:22px}
  .hero-offer h2{min-height:2.7em}
}
@media(max-width:780px){.hero{grid-template-areas:"copy" "offers" "visual";row-gap:30px}.hero-offers{margin-top:0}}

/* Keep real application screenshots still and free of decorative overlays. */
.orbit-art--screenshot svg{display:block;width:100%;height:100%;overflow:hidden;pointer-events:none}
.orbit-art--screenshot:after{display:none}

.orbit-art--screenshot img,.orbit-card[data-position="0"] .orbit-art--screenshot img{transform:none;transition:none;object-position:top}

/* Frame the useful part of each original archive screenshot. */
.project-competition img,.orbit-card[data-position="0"] .project-competition img{object-position:bottom}
.project-cvh img,.orbit-card[data-position="0"] .project-cvh img{object-position:center}
.project-varazdin{background:#edf3f8}
.project-varazdin img,.orbit-card[data-position="0"] .project-varazdin img{object-fit:contain;object-position:center}

.photo-real{height:330px;border-radius:12px;overflow:hidden;border:1px solid #d3e6f5}.photo-real img{display:block;width:100%;height:100%;object-fit:cover}
@media(max-width:680px){.photo-real{height:auto;aspect-ratio:16/10}}

/* Experience areas are descriptive copy, not navigation. */
.experience-inner .experience-summary{flex:1;max-width:590px;font:400 17px/1.65 var(--body);color:#4d6a84;text-wrap:pretty}
@media(max-width:680px){.experience-inner{flex-direction:column;gap:12px}.experience-inner .experience-summary{font-size:15px;max-width:36ch}.experience-inner>p:first-child br{display:none}.experience-inner>p:first-child strong:before{content:" "}}
