/* MessKontur v25 – focused homepage upgrade */

/* Loader: Matterport-inspired rotating scan stage */
#mk-loader{background:#08091b!important}
#mk-loader .mk-loader-grid{opacity:.92;background-size:42px 42px!important}
#mk-loader .mk-stage{width:min(620px,92vw)!important;height:430px!important;display:grid!important;place-items:center!important;perspective:1200px;overflow:visible}
#mk-loader .mk-tachy,#mk-loader .mk-laser-origin,#mk-loader .mk-laser,#mk-loader .mk-readout,#mk-loader .mk-floor{display:none!important}
.mp-loader-card.side{display:none!important}
.mp-loader-card.main{position:relative!important;width:340px!important;height:340px!important;border:0!important;border-radius:50%!important;overflow:visible!important;background:radial-gradient(circle at 50% 48%,rgba(124,58,237,.12),rgba(10,11,30,.18) 43%,transparent 70%)!important;box-shadow:none!important;display:grid!important;place-items:center!important;transform:none!important;isolation:isolate}
.mp-loader-card.main:before{content:''!important;position:absolute!important;inset:-8px!important;border-radius:50%!important;background:conic-gradient(from 0deg,transparent 0 18deg,#ec4899 18deg 54deg,transparent 54deg 112deg,#8b5cf6 112deg 144deg,transparent 144deg 205deg,#c026d3 205deg 250deg,transparent 250deg 313deg,#a78bfa 313deg 337deg,transparent 337deg 360deg)!important;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 12px),#000 calc(100% - 11px));mask:radial-gradient(farthest-side,transparent calc(100% - 12px),#000 calc(100% - 11px));filter:drop-shadow(0 0 8px rgba(236,72,153,.55));animation:mkLoaderOrbit 10s linear infinite!important;z-index:0!important;opacity:1!important}
.mp-loader-card.main:after{content:''!important;position:absolute!important;inset:26px!important;border:1px solid rgba(167,139,250,.5)!important;border-radius:50%!important;background:repeating-conic-gradient(from 0deg,rgba(236,72,153,.85) 0 1.2deg,transparent 1.2deg 6deg)!important;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 2px));animation:mkLoaderOrbitReverse 16s linear infinite!important;z-index:1!important;opacity:.78!important}
.mp-loader-card.main .mp-camera{position:relative!important;z-index:4!important;width:112px!important;height:178px!important;border-radius:28px!important;background:linear-gradient(145deg,#30323b 0%,#111219 58%,#242630 100%)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset -12px 0 18px rgba(0,0,0,.28),0 28px 50px rgba(0,0,0,.52),0 0 35px rgba(124,58,237,.18)!important;animation:mkCameraFloat 4.8s ease-in-out infinite!important;transform-style:preserve-3d}
.mp-loader-card.main .mp-camera:before{content:''!important;position:absolute!important;left:50%!important;top:46px!important;transform:translateX(-50%)!important;width:48px!important;height:48px!important;border-radius:50%!important;background:radial-gradient(circle at 46% 43%,#dbeafe 0 5%,#76a9e8 7% 11%,#1b2940 13% 23%,#05070d 25% 48%,#464a55 50% 59%,#090a10 61%)!important;border:2px solid #454955!important;box-shadow:0 0 0 5px rgba(0,0,0,.24),0 0 22px rgba(236,72,153,.2)!important}
.mp-loader-card.main .mp-camera:after{content:''!important;position:absolute!important;left:50%!important;bottom:-63px!important;transform:translateX(-50%)!important;width:29px!important;height:68px!important;border-radius:8px!important;background:linear-gradient(#292c34,#090a0e)!important;box-shadow:0 13px 16px rgba(0,0,0,.35)!important}
.mp-camera-wing{position:absolute!important;left:50%!important;top:65px!important;transform:translateX(-50%) translateZ(-2px)!important;width:145px!important;height:52px!important;border-radius:17px!important;background:linear-gradient(90deg,#15171e,#30333d 22%,#101118 50%,#30333d 78%,#15171e)!important;z-index:-1!important;box-shadow:0 16px 30px rgba(0,0,0,.34)!important}
.mp-loader-card.main .mp-camera .mp-camera-wing:after{content:'';position:absolute;left:-118px;top:21px;width:118px;height:2px;background:linear-gradient(90deg,transparent,#c026d3 38%,#ec4899);box-shadow:0 0 7px #ec4899,0 0 18px rgba(192,38,211,.55);transform-origin:right center;animation:mkScanBeam 3.8s ease-in-out infinite}
#mk-loader .mk-loader-title{display:none!important}
#mk-loader .mk-loader-sub{margin-top:8px!important;font-size:clamp(.72rem,1.8vw,.9rem)!important;letter-spacing:.2em!important}
#mk-loader .mk-loader-sub:before{content:'SCAN WIRD GELADEN';display:block;margin-bottom:8px;color:#fff;font:700 clamp(1.15rem,3vw,1.55rem) 'Space Grotesk',sans-serif;letter-spacing:.18em}
#mk-loader .mk-progress{margin-top:20px!important;width:min(360px,72vw)!important}
@keyframes mkLoaderOrbit{to{transform:rotate(360deg)}}
@keyframes mkLoaderOrbitReverse{to{transform:rotate(-360deg)}}
@keyframes mkCameraFloat{0%,100%{transform:translateY(0) rotateY(-5deg)}50%{transform:translateY(-7px) rotateY(5deg)}}
@keyframes mkScanBeam{0%,100%{transform:rotate(-4deg) scaleX(.72);opacity:.38}50%{transform:rotate(5deg) scaleX(1);opacity:.95}}
@media(max-width:720px){#mk-loader .mk-stage{height:360px!important;transform:none!important}.mp-loader-card.main{width:285px!important;height:285px!important}.mp-loader-card.main .mp-camera{transform:scale(.9);animation:mkCameraFloatMobile 4.8s ease-in-out infinite!important}#mk-loader .mk-loader-sub{margin-top:2px!important}@keyframes mkCameraFloatMobile{0%,100%{transform:translateY(0) scale(.9) rotateY(-4deg)}50%{transform:translateY(-5px) scale(.9) rotateY(4deg)}}}
@media(prefers-reduced-motion:reduce){.mp-loader-card.main:before,.mp-loader-card.main:after,.mp-loader-card.main .mp-camera,.mp-loader-card.main .mp-camera .mp-camera-wing:after{animation:none!important}}

/* Homepage service grid */
.page-home .mk-v25-services-intro{max-width:760px;margin:0 auto 30px;text-align:center}
.page-home .svc-card .service-card-media{display:block;height:150px;border-radius:12px;overflow:hidden;margin-bottom:16px;background:linear-gradient(145deg,#111229,#19163d)}
.page-home .svc-card .service-card-media img{width:100%;height:100%;object-fit:cover}
.page-home .svc-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.page-home .svc-card{display:flex;flex-direction:column;min-height:325px}
.page-home .svc-card p{min-height:0;flex:1}
.page-home .service-outcomes{display:flex!important;flex-wrap:wrap;gap:6px;margin:0 0 15px}
.page-home .service-outcomes span{padding:5px 8px;border-radius:999px;background:rgba(124,58,237,.08);border:1px solid rgba(124,58,237,.12);color:#5b4c77;font-size:.68rem;font-weight:700}
@media(max-width:950px){.page-home .svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.page-home .svc-grid{grid-template-columns:1fr!important}.page-home .svc-card{min-height:0}.page-home .svc-card .service-card-media{height:170px}}

/* Matterport homepage stage */
.mk-matterport-home{padding:92px 0;background:#050509;color:#fff;overflow:hidden}
.mk-matterport-home .wrap{max-width:1280px}
.mk-matterport-head{display:grid;grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);gap:48px;align-items:center;margin-bottom:38px}
.mk-matterport-kicker{font:700 .72rem 'Space Grotesk',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#f05ac0}
.mk-matterport-head h2{font-size:clamp(2.35rem,4.5vw,4.4rem);line-height:1.02;margin:12px 0 18px}
.mk-matterport-head p{color:#c6c3d2;font-size:1.03rem;line-height:1.72;max-width:58ch}
.mk-tech-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.mk-tech-tags span{padding:7px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.04);font-size:.72rem;color:#dedbea}
.mk-mp-wrap{overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.1);background:#0d0d14;box-shadow:0 34px 85px rgba(0,0,0,.48)}
.mk-mp-frame{position:relative;width:100%;aspect-ratio:16/8.7;min-height:460px;display:grid;place-items:center;background:radial-gradient(circle at 78% 18%,rgba(236,72,153,.19),transparent 32%),radial-gradient(circle at 18% 74%,rgba(124,58,237,.18),transparent 34%),#0a0a10}
.mk-mp-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mk-mp-consent{text-align:center;max-width:650px;padding:40px 26px}.mk-mp-consent .cube{width:68px;height:68px;margin:0 auto 20px;border:1px solid rgba(236,72,153,.38);border-radius:20px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(124,58,237,.18),rgba(236,72,153,.12));font-size:2rem}
.mk-mp-consent h3{font-size:1.55rem;margin-bottom:10px}.mk-mp-consent p{color:#aaa7b8;line-height:1.65;margin-bottom:20px}.mk-mp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border:0;border-radius:999px;background:linear-gradient(100deg,#7c3aed,#c026d3 55%,#ec4899);color:#fff;font:700 .9rem 'Space Grotesk',sans-serif;cursor:pointer;box-shadow:0 14px 38px rgba(192,38,211,.26)}
.mk-mp-caption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-top:1px solid rgba(255,255,255,.08);color:#9f9cab;font-size:.78rem}.mk-mp-caption b{color:#fff}.mk-mp-caption a{color:#f472b6}
@media(max-width:900px){.mk-matterport-head{grid-template-columns:1fr}.mk-mp-frame{min-height:360px}}
@media(max-width:560px){.mk-matterport-home{padding:64px 0}.mk-matterport-head{gap:22px}.mk-matterport-head h2{font-size:2.35rem}.mk-mp-frame{min-height:330px;aspect-ratio:4/5}.mk-mp-caption{align-items:flex-start;flex-direction:column}}

/* Muster section */
.mk-muster-home{padding:88px 0;background:#f7f7fb;color:#17172a}.mk-muster-home .wrap{max-width:1240px}.mk-muster-head{text-align:center;max-width:760px;margin:0 auto 38px}.mk-muster-head h2{color:#17172a;font-size:clamp(2rem,3.8vw,3.2rem);margin:10px 0}.mk-muster-head p{color:#5d5b70}.mk-muster-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.mk-muster-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #e8e7f0;border-radius:18px;background:#fff;box-shadow:0 16px 42px rgba(27,20,54,.08);transition:.22s}.mk-muster-card:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(27,20,54,.13)}.mk-plan-preview{position:relative;height:205px;overflow:hidden;background:#f2f1f6;padding:18px}.mk-plan-sheet{position:absolute;inset:16px 18px;background:#fff;border:1px solid #dddbe7;box-shadow:0 10px 25px rgba(25,18,55,.09);transform:rotate(-1deg);overflow:hidden}.mk-plan-grid{position:absolute;inset:14px;background-image:linear-gradient(#d9d7e0 1px,transparent 1px),linear-gradient(90deg,#d9d7e0 1px,transparent 1px);background-size:31px 31px;opacity:.55}.mk-room{position:absolute;border:2px solid #2c2c36;background:rgba(124,58,237,.16)}.woflv .r1{left:8%;top:12%;width:42%;height:35%;background:rgba(236,72,153,.20)}.woflv .r2{right:9%;top:12%;width:34%;height:50%;background:rgba(124,58,237,.18)}.woflv .r3{left:8%;bottom:10%;width:58%;height:34%;background:rgba(192,38,211,.12)}.din277 .r1{left:8%;top:12%;width:34%;height:65%;background:rgba(77,166,255,.20)}.din277 .r2{left:46%;top:12%;width:45%;height:31%;background:rgba(124,58,237,.17)}.din277 .r3{left:46%;bottom:12%;width:45%;height:38%;background:rgba(251,191,36,.18)}.mieter .r1{left:8%;top:12%;width:45%;height:67%;background:rgba(236,72,153,.18)}.mieter .r2{right:8%;top:12%;width:34%;height:31%;background:rgba(34,197,94,.16)}.mieter .r3{right:8%;bottom:12%;width:34%;height:38%;background:rgba(124,58,237,.19)}.fm .r1{left:8%;top:12%;width:84%;height:22%;background:rgba(124,58,237,.12)}.fm .r2{left:8%;top:38%;width:40%;height:42%;background:rgba(236,72,153,.12)}.fm .r3{right:8%;top:38%;width:40%;height:42%;background:rgba(14,165,233,.13)}.mk-plan-label{position:absolute;left:14px;bottom:12px;padding:5px 8px;background:#151527;color:#fff;border-radius:7px;font-size:.63rem;font-weight:700;letter-spacing:.04em}.mk-muster-body{padding:20px 19px 19px;display:flex;flex:1;flex-direction:column}.mk-muster-body h3{color:#17172a;font-size:1.04rem;line-height:1.25;margin-bottom:8px}.mk-muster-body p{color:#666378;font-size:.84rem;line-height:1.55;flex:1}.mk-muster-body a{margin-top:15px;color:#bd2aa5;font-weight:700;font-size:.82rem}
@media(max-width:1000px){.mk-muster-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.mk-muster-home{padding:64px 0}.mk-muster-grid{grid-template-columns:1fr}.mk-plan-preview{height:220px}}


/* Direct service links remain visible before the service cards load. */
.home-services .home-service-paths{margin-top:.8rem}
.home-services .home-service-paths a{color:#6325c0;text-decoration:underline;text-underline-offset:3px;font-weight:600}
.home-services .home-service-paths a:hover,.home-services .home-service-paths a:focus-visible{color:#9a1bb2}
