/* MZ Business Suite: shared UI */
:root{--mz-ink:#0E0F13;--mz-paper:#F6F5F1;--mz-surface:#fff;--mz-muted:#5B5E68;--mz-line:#E2E0D8;--mz-accent:#2563EB;--mz-soft:#E4ECFD;--mz-gap:24px}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
:focus-visible{outline:2px solid var(--mz-accent);outline-offset:3px}
[id]{scroll-margin-top:96px}

/* Slider */
.mz-slider{position:relative;min-width:0}
.mz-slider .mz-track{display:flex;gap:var(--mz-gap);overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-x:contain;width:100%;padding:0!important;margin:0}
.mz-slider .mz-track::-webkit-scrollbar{display:none}
.mz-slider .mz-track>*{flex:0 0 100%!important;max-width:100%!important;scroll-snap-align:start;min-width:0}
.mz-slider.mz-per-2 .mz-track>*{flex-basis:calc((100% - var(--mz-gap))/2)!important;max-width:calc((100% - var(--mz-gap))/2)!important}
.mz-slider.mz-per-3 .mz-track>*{flex-basis:calc((100% - 2*var(--mz-gap))/3)!important;max-width:calc((100% - 2*var(--mz-gap))/3)!important}
@media (max-width:1024px){.mz-slider.mz-per-3 .mz-track>*{flex-basis:calc((100% - var(--mz-gap))/2)!important;max-width:calc((100% - var(--mz-gap))/2)!important}}
@media (max-width:767px){.mz-slider.mz-per-2 .mz-track>*,.mz-slider.mz-per-3 .mz-track>*{flex-basis:86%!important;max-width:86%!important}}
.mz-slider.is-dragging .mz-track{scroll-snap-type:none;scroll-behavior:auto;cursor:grabbing}
.mz-slider.is-dragging .mz-track *{pointer-events:none;user-select:none}
.mz-slider-ui{display:flex;align-items:center;gap:12px;margin-top:28px;width:100%}
.mz-dots{display:flex;gap:8px;flex:1;flex-wrap:wrap}
.mz-dot{width:24px;height:4px;border-radius:4px;border:0;padding:0;background:currentColor;opacity:.22;cursor:pointer;transition:opacity .25s,width .25s}
.mz-dot[aria-current=true]{opacity:1;width:44px}
.mz-arrow{width:48px;height:48px;flex:0 0 48px;border-radius:50%;border:1.5px solid currentColor;background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer;padding:0;transition:background .2s,border-color .2s,color .2s}
.mz-arrow:hover{background:var(--mz-accent);border-color:var(--mz-accent);color:#fff}
.mz-arrow svg{display:block}
.mz-on-dark .mz-slider-ui,.mz-on-dark.mz-slider .mz-slider-ui{color:#fff}

/* Cards */
.mz-card{display:flex;flex-direction:column;background:var(--mz-surface);border:1px solid var(--mz-line);border-radius:22px;overflow:hidden;height:100%;color:var(--mz-ink);transition:border-color .25s,transform .25s}
.mz-card:hover{border-color:var(--mz-ink);transform:translateY(-3px)}
.mz-card-media{display:block;aspect-ratio:4/3;background:var(--mz-soft);overflow:hidden}
.mz-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}
.mz-card:hover .mz-card-media img{transform:scale(1.03)}
.mz-card-body{display:flex;flex-direction:column;gap:10px;padding:22px 24px 26px}
.mz-card-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font:500 13px/1.4 'DM Sans',sans-serif;color:var(--mz-muted)}
.mz-card-title{margin:0;font:700 22px/1.2 'Syne',sans-serif;letter-spacing:-.3px}
.mz-card-title a{color:inherit;text-decoration:none}
.mz-card-title a::after{content:'';position:absolute;inset:0}
.mz-card{position:relative}
.mz-card p{margin:0;font:400 15px/1.6 'DM Sans',sans-serif;color:var(--mz-muted)}
.mz-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--mz-soft);color:var(--mz-accent);font:600 12px/1.2 'DM Sans',sans-serif;letter-spacing:.2px}
.mz-badge.is-dark{background:var(--mz-ink);color:#fff}
.mz-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--mz-gap)}
@media (max-width:1024px){.mz-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){.mz-grid{grid-template-columns:1fr}}

/* Inquiry form */
.mz-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;font-family:'DM Sans',sans-serif}
.mz-form .mz-full{grid-column:1/-1}
@media (max-width:767px){.mz-form{grid-template-columns:1fr}}
.mz-form label{display:flex;flex-direction:column;gap:8px;font-weight:600;font-size:14px;color:inherit}
.mz-form input,.mz-form select,.mz-form textarea{width:100%;border:1px solid var(--mz-line);border-radius:10px;background:var(--mz-paper);color:var(--mz-ink);padding:13px 14px;font:400 16px/1.4 'DM Sans',sans-serif}
.mz-form input:focus,.mz-form select:focus,.mz-form textarea:focus{outline:none;border-color:var(--mz-accent);box-shadow:0 0 0 3px var(--mz-soft)}
.mz-form textarea{min-height:140px;resize:vertical}
.mz-form .mz-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.mz-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;background:var(--mz-accent);color:#fff;padding:15px 30px;font:600 16px/1 'DM Sans',sans-serif;cursor:pointer;transition:background .2s}
.mz-btn:hover{background:var(--mz-ink);color:#fff}
.mz-notice{grid-column:1/-1;padding:14px 16px;border-radius:10px;font-weight:500}
.mz-notice.ok{background:#E3F4EA;color:#14532D}
.mz-notice.err{background:#FDE8E8;color:#7F1D1D}
/* Override theme button resets */
.mz-slider .mz-slider-ui button.mz-arrow{color:inherit!important;border:1.5px solid currentColor!important;background:transparent!important;border-radius:50%!important;padding:0!important;box-shadow:none!important}
.mz-slider .mz-slider-ui button.mz-arrow:hover,.mz-slider .mz-slider-ui button.mz-arrow:focus-visible{background:var(--mz-accent)!important;border-color:var(--mz-accent)!important;color:#fff!important}
.mz-slider .mz-slider-ui button.mz-dot{border:0!important;padding:0!important;background:currentColor!important;color:inherit!important;border-radius:4px!important;min-height:0!important;box-shadow:none!important}
.mz-slider .mz-slider-ui{color:var(--mz-ink)}
.mz-slider.mz-on-dark .mz-slider-ui{color:#fff}
.mz-form button.mz-btn{border:0!important;background:var(--mz-accent)!important;color:#fff!important;border-radius:999px!important}
.mz-form button.mz-btn:hover{background:var(--mz-ink)!important}
.mz-card .mz-card-title a{color:var(--mz-ink)!important;text-decoration:none!important}
.mz-card:hover .mz-card-title a{color:var(--mz-accent)!important}
.mz-slider .mz-slider-ui button.mz-dot{opacity:.35}
.mz-slider .mz-slider-ui button.mz-dot[aria-current=true]{opacity:1}
.mz-wa-btn .elementor-button-icon svg{fill:#25D366;transition:fill .2s}
.mz-wa-btn .elementor-button:hover .elementor-button-icon svg{fill:#0E0F13}

/* ===== Slider v2 effects ===== */
.mz-slider .mz-track{position:relative}
/* Fade */
.mz-slider.mz-fx-fade .mz-track{display:grid!important;overflow:hidden;scroll-snap-type:none}
.mz-slider.mz-fx-fade .mz-track>*{grid-area:1/1;max-width:100%!important;opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s,transform .9s ease;transform:scale(1.015)}
.mz-slider.mz-fx-fade .mz-track>.is-active{opacity:1;visibility:visible;transform:none;z-index:1}
.mz-slider.mz-fx-fade.is-dragging .mz-track{cursor:grabbing}
/* Center focus */
.mz-slider.mz-center .mz-track{scroll-snap-type:x mandatory;padding:0 18%!important;scroll-padding:0 18%}
.mz-slider.mz-center .mz-track>*{flex-basis:64%!important;max-width:64%!important;scroll-snap-align:center;transform:scale(.9);opacity:.45;transition:transform .5s ease,opacity .5s ease}
.mz-slider.mz-center .mz-track>.is-active{transform:none;opacity:1}
@media (max-width:767px){.mz-slider.mz-center .mz-track{padding:0 7%!important;scroll-padding:0 7%}.mz-slider.mz-center .mz-track>*{flex-basis:86%!important;max-width:86%!important}}
/* Marquee */
.mz-marquee-viewport{overflow:hidden;width:100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.mz-marquee-viewport.is-static{overflow-x:auto}
.mz-slider.mz-marquee .mz-track{display:flex;flex-wrap:nowrap;width:max-content;overflow:visible;scroll-snap-type:none;gap:var(--mz-gap)}
.mz-slider.mz-marquee .mz-track>*{flex:0 0 auto!important;max-width:none!important}
.mz-track.is-running{animation:mz-marquee linear infinite}
.mz-marquee-viewport:hover .mz-track.is-running,.mz-marquee-viewport:focus-within .mz-track.is-running{animation-play-state:paused}
@keyframes mz-marquee{to{transform:translateX(calc(-50% - var(--mz-gap)/2))}}
/* Thumbs */
.mz-slider .mz-slider-ui button.mz-thumb{width:72px;height:54px;padding:0!important;border-radius:10px!important;overflow:hidden;border:2px solid transparent!important;background:rgba(127,127,127,.15)!important;opacity:.55;cursor:pointer;transition:opacity .2s,border-color .2s}
.mz-slider .mz-slider-ui button.mz-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.mz-slider .mz-slider-ui button.mz-thumb[aria-current=true]{opacity:1;border-color:var(--mz-accent)!important}
@media (max-width:767px){.mz-slider .mz-slider-ui button.mz-thumb{width:52px;height:40px}}
/* Counter + bar */
.mz-count{font:700 15px/1 'Syne',sans-serif;letter-spacing:1px;min-width:72px}
.mz-bar{flex:1;max-width:240px;height:2px;background:currentColor;opacity:1;position:relative;align-self:center}
.mz-bar{background:rgba(127,127,127,.35)}
.mz-bar i{position:absolute;inset:0 auto 0 0;background:currentColor;transition:width .5s ease}
.mz-dots{align-items:center}

/* ===== WhatsApp buttons ===== */
a.mz-wa{display:inline-flex;align-items:center;gap:9px;padding:12px 20px;border-radius:999px;background:var(--mz-ink);color:#fff!important;font:600 15px/1.1 'DM Sans',sans-serif;text-decoration:none!important;transition:background .2s,color .2s;width:fit-content}
a.mz-wa .mz-wa-ico{color:#25D366;flex:0 0 auto;transition:color .2s}
a.mz-wa:hover{background:#25D366;color:var(--mz-ink)!important}
a.mz-wa:hover .mz-wa-ico{color:var(--mz-ink)}
.mz-on-dark a.mz-wa,.mz-dark a.mz-wa{background:#fff;color:var(--mz-ink)!important}

/* ===== Service cards ===== */
.mz-svc-card{display:flex;flex-direction:column;gap:20px;height:100%;padding:28px;border-radius:22px;background:var(--mz-surface);border:1px solid var(--mz-line);color:var(--mz-ink);position:relative}
.mz-svc-top{position:relative;border-radius:14px;overflow:hidden;background:var(--mz-soft);aspect-ratio:16/9}
.mz-svc-top img{width:100%;height:100%;object-fit:cover;display:block}
.mz-svc-num{position:absolute;left:16px;top:12px;z-index:1;font:800 44px/1 'Syne',sans-serif;color:#fff;mix-blend-mode:difference}
.mz-svc-body{display:flex;flex-direction:column;gap:10px;flex:1}
.mz-svc-body p{margin:0;color:var(--mz-muted);font:400 15px/1.6 'DM Sans',sans-serif}
.mz-svc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.mz-more{font:600 15px/1 'DM Sans',sans-serif;color:var(--mz-ink)!important;text-decoration:underline!important;text-underline-offset:4px}
.mz-price{margin:4px 0 0!important;color:var(--mz-ink)!important;font:400 15px/1.4 'DM Sans',sans-serif}
/* Course cards */
.mz-chips{display:flex;flex-wrap:wrap;gap:6px}
.mz-chips span{padding:4px 10px;border-radius:999px;background:var(--mz-paper);border:1px solid var(--mz-line);font:500 12px/1.2 'DM Sans',sans-serif;color:var(--mz-muted)}
.mz-course-card .mz-wa{position:relative;z-index:2;margin-top:6px}
.mz-card .mz-card-title a::after{z-index:1}
.mz-empty{color:var(--mz-muted);font:400 16px/1.6 'DM Sans',sans-serif}

/* ===== Single service / course ===== */
.mz-single-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;margin:8px 0 48px}
@media (max-width:860px){.mz-single-hero{grid-template-columns:1fr}}
.mz-single-img{width:100%;height:auto;border-radius:22px;display:block}
.mz-single-box{display:flex;flex-direction:column;gap:22px}
.mz-lead{font:400 20px/1.55 'DM Sans',sans-serif;color:var(--mz-ink);margin:0}
.mz-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--mz-line);border:1px solid var(--mz-line);border-radius:14px;overflow:hidden}
.mz-facts div{background:var(--mz-surface);padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.mz-facts span{font:500 13px/1.2 'DM Sans',sans-serif;color:var(--mz-muted)}
.mz-facts strong{font:700 17px/1.3 'Syne',sans-serif;color:var(--mz-ink)}
.mz-single-content{max-width:760px}
.mz-outline{counter-reset:o;list-style:none;padding:0;margin:0 0 24px}
.mz-outline li{counter-increment:o;padding:14px 0 14px 52px;border-top:1px solid var(--mz-line);position:relative;font:500 17px/1.5 'DM Sans',sans-serif;color:var(--mz-ink)}
.mz-outline li::before{content:counter(o,decimal-leading-zero);position:absolute;left:0;top:14px;font:700 16px/1.5 'Syne',sans-serif;color:var(--mz-accent)}
.mz-single-cta{margin:56px 0;padding:40px;border-radius:22px;background:var(--mz-ink);color:#fff;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}
.mz-single-cta h2{color:#fff!important;margin:0}
.mz-single-cta a.mz-wa{background:#fff;color:var(--mz-ink)!important}
.mz-related{margin:24px 0 64px}
.mz-related h2{margin-bottom:24px}
body.single-mz_service .site-main,body.single-mz_course .site-main,body.single-mz_project .site-main{max-width:1240px;padding:48px 24px;margin:0 auto}
body.single-mz_service .page-header .entry-title,body.single-mz_course .page-header .entry-title,body.single-mz_project .page-header .entry-title{font:700 clamp(36px,5vw,64px)/1.04 'Syne',sans-serif;letter-spacing:-1.5px;color:var(--mz-ink);margin-bottom:24px}
/* Peek: one big slide with the next one peeking in */
.mz-slider.mz-peek .mz-track>*{flex-basis:84%!important;max-width:84%!important}
@media (max-width:767px){.mz-slider.mz-peek .mz-track>*{flex-basis:90%!important;max-width:90%!important}}
.mz-slider.mz-peek .mz-track>*:not(:hover) .elementor-widget-image img{transition:transform .6s}
/* Per 4 */
.mz-slider.mz-per-4 .mz-track>*{flex-basis:calc((100% - 3*var(--mz-gap))/4)!important;max-width:calc((100% - 3*var(--mz-gap))/4)!important}
@media (max-width:1024px){.mz-slider.mz-per-4 .mz-track>*{flex-basis:calc((100% - var(--mz-gap))/2)!important;max-width:calc((100% - var(--mz-gap))/2)!important}}
@media (max-width:767px){.mz-slider.mz-per-4 .mz-track>*{flex-basis:78%!important;max-width:78%!important}}
/* Marquee items size to content */
.mz-slider.mz-marquee .mz-track>.e-con{--width:auto;width:auto!important;flex-wrap:nowrap}
.mz-slider.mz-marquee .elementor-heading-title{white-space:nowrap}
/* Light WhatsApp button icon */
.mz-wa-btn .elementor-button-icon svg{fill:#25D366}
.mz-wa-btn .elementor-button:hover .elementor-button-icon svg{fill:#0E0F13}
/* Thumbs + fade: give UI some room */
.mz-slider.mz-thumbs .mz-slider-ui{margin-top:36px}
.mz-slider .mz-slider-ui{flex-wrap:wrap}
/* Step slider */
.mz-slider.mz-steps .mz-track>*{flex-basis:46%!important;max-width:46%!important}
@media (max-width:767px){.mz-slider.mz-steps .mz-track>*{flex-basis:88%!important;max-width:88%!important}}
/* Banner slider (fade) */
.mz-slider.mz-banner .mz-track>*{min-height:620px}
@media (max-width:767px){.mz-slider.mz-banner .mz-track>*{min-height:520px}}
.mz-slider.mz-banner .mz-slider-ui{position:absolute;left:0;right:0;bottom:28px;padding:0 40px;z-index:5;margin:0}
@media (max-width:767px){.mz-slider.mz-banner .mz-slider-ui{padding:0 20px;bottom:18px}}
.mz-wa-btn .elementor-button,a.mz-wa{white-space:nowrap}
@media (max-width:400px){.mz-wa-btn .elementor-button,a.mz-wa{white-space:normal}}

.mz-svc-card .mz-card-title a{color:var(--mz-ink)!important;text-decoration:none!important}
.mz-svc-card:hover .mz-card-title a{color:var(--mz-accent)!important}
.mz-svc-card .mz-svc-num{position:static;display:block;font:800 22px/1 'Syne',sans-serif;color:var(--mz-accent);mix-blend-mode:normal;margin-bottom:-6px}
.mz-svc-top{background:none;aspect-ratio:auto;overflow:visible;display:flex;flex-direction:column;gap:14px}
.mz-svc-top img{border-radius:14px;aspect-ratio:16/9;background:var(--mz-soft)}

.mz-card a.mz-wa,.mz-svc-card a.mz-wa{background:var(--mz-ink)!important;color:#fff!important}
.mz-card a.mz-wa:hover,.mz-svc-card a.mz-wa:hover{background:#25D366!important;color:var(--mz-ink)!important}
