 :root{--navy:#04101d;--blue:#1683ff;--cyan:#9bd1f7;--text:#f7fbff;--muted:#afc7d9;--line:rgba(105,213,255,.26)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--text);font-family:Manrope,system-ui,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.shell{width:min(1180px,calc(100% - 48px));margin:auto}.kicker{font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan)}
h2{font:700 clamp(1.6rem,3vw,2.5rem)/1.15 Syne,sans-serif;letter-spacing:-.025em}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:12px 24px;border:1px solid var(--line);border-radius:999px;font-weight:800;background:#0b2033}.button.primary{background:#0875d9;border-color:#1683ff;color:white}a:focus-visible,summary:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}.button:hover{background:#175174}.button.primary:hover{background:#005eb8}
.skip-link{position:fixed;top:10px;left:10px;z-index:100;padding:12px;background:white;color:#04101d;transform:translateY(-200%)}.skip-link:focus{transform:none}#kontakt{scroll-margin-top:110px}.service-faq{margin-block:48px}.service-faq details{border-bottom:1px solid var(--line);padding:20px 0}.service-faq summary{cursor:pointer;font-weight:800;color:#fff}.service-faq p{max-width:780px;color:var(--muted)}.service-contact-note{color:var(--muted);max-width:750px}.service-image.photo{object-fit:cover}.service-image.portrait{height:440px}.service-hero .kicker{color:var(--cyan)}.service-content a:not(.button){color:var(--cyan)}
@media(max-width:750px){.shell{width:calc(100% - 32px)}.service-image.portrait{height:340px}.service-links .button{width:100%;text-align:center}.service-tile,.service-steps{padding:24px}.service-header .shell{padding-block:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.service-header{position:sticky;top:0;z-index:50;background:#061523f2;border-bottom:1px solid var(--line)}
.service-header .shell{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:18px}
.service-brand{font:700 1.5rem Syne,sans-serif;color:white;text-decoration:none}
.service-flags{display:flex;gap:10px}.service-flags a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);font-size:24px;text-decoration:none}.service-flags [aria-current]{border:3px solid var(--cyan)}
.service-hero{padding:70px 0 55px;background:linear-gradient(135deg,#102d46,#071522)}
.service-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.service-hero h1{font:700 clamp(2.3rem,4.5vw,4.5rem)/1.08 Syne,sans-serif;margin:20px 0;color:#fff;letter-spacing:-.04em}
.service-hero p{color:var(--muted);line-height:1.8}.service-image{width:100%;height:380px;object-fit:contain;background:#0b2033;border-radius:24px}
.service-content{padding:64px 0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:30px 0}
.service-tile{padding:28px;border:1px solid var(--line);border-radius:22px;background:#10263b}
.service-tile h3{font:700 1.4rem Syne,sans-serif;margin:0 0 14px}.service-tile p{color:var(--muted);line-height:1.75}
.service-steps{padding:32px;border:1px solid var(--line);border-radius:24px;margin-block:30px}
.service-steps li{margin:16px 0;color:var(--muted);line-height:1.7}.service-links{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}
.service-footer{padding:38px 0;border-top:1px solid var(--line);color:var(--muted)}.service-footer a{color:var(--cyan)}
.service-home-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-block:30px}.service-home-links a{padding:20px;border:1px solid var(--line);border-radius:18px;background:#10263b;color:var(--cyan);font-weight:700;text-decoration:none}
@media(max-width:750px){.service-layout,.service-grid{grid-template-columns:1fr}.service-hero{padding-top:40px}.service-image{height:280px}.service-home-links{grid-template-columns:1fr 1fr}.service-header .shell{gap:10px}.service-brand{font-size:1.15rem}}

.service-image.photo{object-fit:cover}.service-image.portrait{height:440px}@media(max-width:750px){.service-image.portrait{height:340px}}

.service-switcher{border-bottom:1px solid var(--line);background:#061523}.service-switcher .shell{display:flex;gap:8px;padding-block:12px;flex-wrap:wrap}.service-switcher a{padding:9px 16px;border-radius:999px;color:var(--muted);font-size:.85rem;font-weight:700}.service-switcher a[aria-current]{background:#193c58;color:#fff;box-shadow:inset 0 0 0 1px #69d5ff55}.service-switcher a:hover{color:#fff;background:#16364e}
.service-hero{position:relative;background:radial-gradient(ellipse at 85% 30%,#17476b66,transparent 65%),linear-gradient(135deg,#0c253b,#071522)}.service-hero:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#1683ff,#69d5ff,transparent)}.service-layout>div{min-width:0}.service-image{display:block;height:440px;border:1px solid var(--line);box-shadow:0 24px 70px #0005}.service-image.thermal-image{object-fit:contain;background:#061523}.service-tile{background:linear-gradient(145deg,#122d44,#0c2032)}.service-tile p{margin-bottom:0}.service-benefits{padding-block:40px;margin-top:36px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.benefit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:32px}.benefit-number{color:var(--cyan);font:700 1rem Syne,sans-serif}.benefit-grid h3{font:700 1.25rem Syne,sans-serif}.benefit-grid p{color:var(--muted);line-height:1.75}.service-steps ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding-left:22px}.service-steps li{padding-right:12px}#kontakt{padding:40px;background:linear-gradient(120deg,#113654,#0a2035);border-color:#69d5ff66}#kontakt h2{max-width:720px;margin:12px 0 20px}.service-related .button{flex:1;min-width:220px;font-size:.9rem}.service-faq summary{padding-right:20px}.service-footer .shell{line-height:1.9}
@media(max-width:750px){.service-hero h1{font-size:clamp(2rem,9vw,3.2rem)}.service-layout{gap:30px}.service-image{height:320px}.benefit-grid,.service-steps ol{grid-template-columns:1fr;gap:18px}.service-steps ol{padding-left:22px}.service-steps li{margin:6px 0}.service-switcher .shell{display:grid;grid-template-columns:1fr 1fr;gap:6px}.service-switcher a{text-align:center;font-size:.76rem;padding:9px 6px}.service-benefits{padding-block:30px}.service-content{padding:40px 0}#kontakt{padding:26px}.service-flags{gap:6px}.service-flags a{width:38px;height:38px;font-size:22px}.service-header .shell{gap:8px}.service-brand{font-size:1.1rem}}

.page-jumps{display:flex;flex-wrap:wrap;gap:10px;padding-block:22px;border-bottom:1px solid var(--line)}.page-jumps a{padding:8px 15px;border:1px solid var(--line);border-radius:999px;font-size:.85rem;font-weight:700;color:var(--cyan)}.page-block{padding-block:36px;scroll-margin-top:110px}.page-block h2{max-width:800px}.usecase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.usecase-grid article{padding:25px;border:1px solid var(--line);border-radius:18px;background:#0c2235}.usecase-grid h3,.ai-session h3{font:700 1.15rem Syne,sans-serif;margin:0 0 12px}.usecase-grid p,.ai-session p{color:var(--muted);line-height:1.75;margin-bottom:0}.page-note{color:var(--muted);font-size:.9rem;margin-top:22px;max-width:860px}.delivery-list{display:grid;grid-template-columns:1fr 1fr;gap:16px;list-style:none;padding:0;margin-top:26px}.delivery-list li{padding:22px 24px;border-left:2px solid var(--cyan);background:#0e2a40;color:#d7e9f5}.page-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}.page-gallery figure{margin:0}.page-gallery a{display:block;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#061523}.page-gallery img{display:block;width:100%;height:260px;object-fit:contain}.page-gallery figcaption{padding:14px 2px;color:var(--muted);font-size:.85rem}.brief-block{padding:32px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(130deg,#102c44,#091e30);margin-block:30px}.brief-block p,.brief-list{color:var(--muted)}.brief-list li{padding:7px 0}.copy-brief{font-family:inherit;color:white;cursor:pointer}.copy-status{min-height:1.5em;font-size:.85rem}.extra-faq details{padding:20px 0;border-bottom:1px solid var(--line)}.extra-faq summary{font-weight:800;cursor:pointer}.extra-faq p{color:var(--muted);max-width:780px}.ai-session{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-block:28px}.ai-session article{padding:26px;border:1px solid var(--line);border-radius:18px;background:#0f2c43}.page-lightbox{width:94vw;max-width:1400px;height:90svh;padding:45px 15px 15px;border:1px solid var(--line);border-radius:20px;background:#04101d}.page-lightbox::backdrop{background:#000d}.page-lightbox img{width:100%;height:100%;object-fit:contain}.lightbox-close{position:absolute;top:8px;right:14px;width:40px;height:36px;background:#143c59;border:1px solid var(--line);border-radius:10px;color:white;font-size:26px;cursor:pointer}
@media(max-width:900px){.usecase-grid{grid-template-columns:1fr 1fr}.page-gallery{grid-template-columns:1fr 1fr}}@media(max-width:600px){.usecase-grid,.delivery-list,.page-gallery,.ai-session{grid-template-columns:1fr}.page-gallery img{height:320px}.page-block{padding-block:26px}.brief-block{padding:24px}.page-jumps{gap:7px}.page-jumps a{padding:7px 11px;font-size:.76rem}}

.tour-example{height:560px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#061523}.tour-example iframe{width:100%;height:100%;border:0}@media(max-width:600px){.tour-example{height:420px}}

.service-header .shell:first-child{padding-bottom:12px}.subpage-navigation{display:flex;align-items:center;gap:12px;padding:0 0 14px;position:relative}.subpage-navigation>a,.subpage-services summary{display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 16px;border:1px solid var(--line);border-radius:999px;font-size:.85rem;font-weight:700;cursor:pointer}.subpage-services summary{list-style:none;background:#0d3154;color:white}.subpage-services summary::-webkit-details-marker{display:none}.subpage-contact{margin-left:auto;background:#0d3154;color:white}.subpage-service-list{position:absolute;left:0;right:0;top:calc(100% - 4px);z-index:60;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:18px;background:#071a2b;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 40px #0006;max-height:65svh;overflow:auto}.subpage-service-list a{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#102b41;color:#d6ecfb;font-size:.86rem;line-height:1.4}.subpage-service-list a[aria-current]{background:#174d75;border-color:var(--cyan);color:white}.subpage-service-list a:hover{background:#194362}.service-flags img{display:block;object-fit:cover;border-radius:2px}.service-content section,.page-block,#kontakt{scroll-margin-top:160px}.service-hero p{overflow-wrap:anywhere}.service-layout,.service-grid,.usecase-grid,.benefit-grid,.ai-session,.page-gallery{min-width:0}.service-layout>*{min-width:0}.service-tile h3,.usecase-grid h3,.benefit-grid h3{overflow-wrap:anywhere}.service-header .shell{min-width:0}.service-brand{white-space:nowrap}.service-related .button{overflow-wrap:anywhere}
@media(max-width:600px){.subpage-service-list{grid-template-columns:1fr 1fr;padding:12px;gap:8px}.subpage-service-list a{padding:12px 10px;font-size:.78rem}.subpage-navigation{gap:8px}.subpage-navigation>a,.subpage-services summary{padding:8px 12px;font-size:.78rem}.service-header .shell:first-child{padding-bottom:10px}.service-flags a{flex-shrink:0}.service-flags img{width:24px;height:18px}.service-brand{font-size:1.05rem}.page-gallery img{height:auto;max-height:400px;aspect-ratio:3/2;object-fit:contain}}

.portfolio-images{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.portfolio-images figure{margin:0}.portfolio-image{padding:0;width:100%;border:1px solid #456580;border-radius:20px;overflow:hidden;background:#102338;cursor:zoom-in}.portfolio-image img{display:block;width:100%;height:300px;object-fit:contain;background:#102338}.portfolio-dialog{padding:16px;border:1px solid #638eb1;border-radius:18px;background:#081725;color:white;max-width:94vw;max-height:94vh}.portfolio-dialog::backdrop{background:#000c}.portfolio-dialog img{display:block;max-width:85vw;max-height:78vh;object-fit:contain}.portfolio-dialog button{display:block;margin-left:auto;padding:12px 18px;background:#153955;color:white;border:1px solid #638eb1;border-radius:12px}@media(max-width:700px){.portfolio-images{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portfolio-image img{height:auto;aspect-ratio:1;object-fit:contain}}

.text-only-service .service-layout{grid-template-columns:minmax(0,1fr);max-width:1000px}.text-only-service .service-hero p{max-width:780px}.text-only-service .service-hero h1{max-width:960px}.text-only-service .service-hero{padding-bottom:56px}

.customer-hero{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:56px;align-items:center}.customer-summary{background:linear-gradient(145deg,#17476b88,#10283e);border:1px solid #5799c566;border-radius:24px;padding:30px}.customer-summary h2{font-size:1.35rem;line-height:1.3;margin-top:0}.customer-summary ul{list-style:none;padding:0}.customer-summary li{padding:14px 0;border-bottom:1px solid var(--line);line-height:1.6}.customer-summary li:before{content:'✓';color:var(--cyan);margin-right:10px}.customer-summary p{font-size:.85rem}.customer-intro{font-size:1.16rem}.customer-external{display:inline-block;margin-top:24px;color:var(--cyan)}.customer-content{padding-block:28px}.customer-content .page-block{padding-block:48px;margin:0;border-bottom:1px solid var(--line)}.customer-content .page-block>h2,.customer-delivery h2,.customer-contact h2{font:700 clamp(1.8rem,3vw,2.7rem)/1.15 Syne,sans-serif;letter-spacing:-.025em;max-width:850px}.customer-delivery{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.customer-delivery ul{margin:0;padding:0;list-style:none}.customer-delivery li{padding:18px 20px;margin-bottom:12px;border:1px solid var(--line);border-radius:16px;background:#102b41;line-height:1.65}.customer-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.customer-steps span{color:var(--cyan);font-weight:800}.customer-steps h3{margin:16px 0 10px}.customer-steps p{color:var(--muted);line-height:1.75}.customer-content .usecase-grid{gap:18px}.customer-contact{margin-block:36px;padding:40px;border-radius:24px}.customer-contact>p{max-width:700px;color:var(--muted);line-height:1.75}.customer-content .page-jumps{flex-wrap:wrap}.customer-content .page-jumps a{white-space:normal}.customer-content .brief-block{background:#0c2337;border-radius:20px;margin-top:32px;padding:32px}.customer-content .service-related .button{flex:1;min-width:200px}.customer-hero>*{min-width:0}@media(max-width:800px){.customer-hero,.customer-delivery{grid-template-columns:1fr;gap:28px}.customer-summary{padding:24px}.customer-steps{grid-template-columns:1fr;gap:20px}.customer-content .page-block{padding-block:32px}.customer-content .brief-block{padding:24px}.customer-contact{padding:26px}.customer-content .service-links .button{min-width:0;max-width:100%;overflow-wrap:anywhere}}

.customer-delivery>.page-note{grid-column:1/-1;margin:0;max-width:900px}

/* Readable related services at every viewport. */
.customer-content .service-related .service-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.customer-content .service-related .service-links .button{display:flex;min-width:0;width:100%;min-height:88px;padding:22px 24px;border-radius:18px;justify-content:flex-start;text-align:left;font-size:1rem;line-height:1.55;white-space:normal;word-break:normal;overflow-wrap:normal;hyphens:none;background:linear-gradient(135deg,#12334d,#0a2033)}
@media(max-width:800px){.customer-content .service-related .service-links{grid-template-columns:1fr}.customer-content .service-related .service-links .button{min-height:68px;padding:18px 22px}}
