/* Real worlds, purposeful play. Scoped to the ZEP service; portfolio records are unchanged. */
.service-theme[data-field=zep]{--zp-violet:#6758ff;--zp-violet-ink:#5743df;--zp-violet-hover:#5542e8;--zp-lime:#ccff00;--ink:#29243e;--paper:#f8f7fc;--acid:var(--zp-lime);--st-accent:var(--zp-violet);--st-on-accent:#fff;--st-surface:#fff;--st-wash:#eeebf8;--st-rule:#d6d0e4;--muted:#6b627d;--line:var(--st-rule)}
.zp-page{--zp-dark:#29243e;--zp-rule:#d6d0e4;overflow:clip}
.zp-page :is(button,a){-webkit-tap-highlight-color:transparent}
.zp-page button{font:inherit;cursor:pointer}
.zp-page :is(button,a,summary):focus-visible{outline:3px solid var(--zp-focus,var(--zp-violet-ink));outline-offset:4px}
.zp-page [hidden]{display:none!important}
.zp-page :is(h1,h2,h3,p,figure){margin:0}
.zp-page em{font-style:normal;color:var(--zp-violet)}
.zp-page h2{font-size:clamp(32px,3.9vw,60px);font-weight:650;letter-spacing:-.065em;line-height:1.25}
.zp-kicker{font-family:Syne,Pretendard,sans-serif;font-size:11px;letter-spacing:.09em;font-weight:600;line-height:1.6;color:var(--zp-violet-ink)}
.zp-page .zp-lead{font-size:16px;line-height:1.9;letter-spacing:-.025em;color:var(--muted);word-break:keep-all;overflow-wrap:anywhere}
.zp-page svg{display:block}
.zp-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.zp-cta{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-height:58px;padding:17px 23px;border:1px solid transparent;background:var(--zp-violet);color:white;text-decoration:none;font-size:14px;font-weight:600;transition:background .2s,transform .2s}
.zp-cta:hover{background:var(--zp-violet-hover);transform:translateY(-2px)}
.zp-cta svg,.zp-partner>svg,.zp-case-arrow svg,.zp-hero-gallery figcaption>a svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.4;flex:none}
.zp-hero{padding:0 var(--pad) 58px}
.zp-hero .breadcrumb{margin:0;padding:0}
.zp-hero-grid{display:grid;grid-template-columns:.85fr 1.25fr;gap:4.5vw;align-items:center;padding-top:52px}
.zp-hero-copy h1{font-size:clamp(41px,4.25vw,72px);line-height:1.18;letter-spacing:-.075em;font-weight:700;margin:24px 0}
.zp-hero-copy .zp-cta{margin-top:28px}
.zp-partner{display:flex;width:max-content;align-items:center;gap:13px;color:var(--ink);text-decoration:none;margin-top:34px;font-size:12px}
.zp-partner>span:first-child{font-size:35px;line-height:1;color:var(--zp-violet)}
.zp-partner strong{display:block;margin-top:3px;font:9px Syne,Pretendard,sans-serif;letter-spacing:.08em;color:var(--muted)}
.zp-partner>svg{width:14px;height:14px;margin-left:10px}
.zp-hero-showcase{min-width:0;border:1px solid var(--zp-rule);background:#eeebf8;box-shadow:9px 9px 0 #e7e2f3;transform:rotate(-1deg)}
.zp-showcase-top{height:47px;display:flex;justify-content:space-between;align-items:center;padding:0 20px;font:10px Syne,Pretendard,sans-serif;letter-spacing:.05em;border-bottom:1px solid var(--zp-rule)}
.zp-showcase-top button{padding:7px 10px;font-size:10px;border:1px solid #c5bcd9;background:transparent;color:#584c75}
.zp-hero-gallery figure{background:#e7e5f2}
.zp-hero-gallery.is-enhanced{display:grid}
.zp-hero-gallery.is-enhanced>figure{grid-area:1/1;min-width:0}
.zp-page .zp-hero-gallery.is-enhanced>figure[hidden],.zp-page .zp-journey-panels.is-enhanced>[hidden]{display:block!important;visibility:hidden;pointer-events:none}
.zp-hero-gallery figure[hidden] img{animation-play-state:paused!important}
.zp-hero-gallery figure>a{display:block;aspect-ratio:1.5;overflow:hidden}
.zp-hero-gallery figure>a img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;animation:zp-world-drift 10s ease-in-out infinite alternate;animation-play-state:paused}
.zp-hero-gallery figure:nth-child(2)>a img{object-fit:contain;background:#e3e3ec}
.zp-hero-gallery figcaption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:21px 22px;min-height:126px;background:#fff}
.zp-hero-gallery figcaption .zp-kicker{font-size:9px;color:#7d6f9b}
.zp-hero-gallery figcaption strong{display:block;font-size:20px;margin:9px 0 5px;letter-spacing:-.04em}
.zp-hero-gallery figcaption p{font-size:12px;color:var(--muted);line-height:1.7;word-break:keep-all}
.zp-hero-gallery figcaption>a{display:grid;place-items:center;width:44px;height:44px;background:var(--zp-lime);border-radius:50%;color:#37304a;flex:none}
.zp-hero-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--zp-rule)}
.zp-hero-tabs button{border:0;border-right:1px solid var(--zp-rule);background:transparent;color:#6a607c;min-height:53px;font-size:12px;transition:background .2s,color .2s}
.zp-hero-tabs button:last-child{border-right:0}
.zp-hero-tabs button span{margin-right:12px;font:9px Syne,sans-serif}
.zp-hero-tabs button[aria-pressed=true]{background:var(--zp-violet);color:white}
.zp-intro{padding:43px var(--pad);display:grid;grid-template-columns:.85fr 1.25fr;gap:4.5vw;align-items:center;background:#eeebf8;border-block:1px solid var(--zp-rule)}
.zp-intro h2{font-size:clamp(25px,2.4vw,38px);margin-top:15px}
.zp-intro>div>p:not(.zp-kicker){font-size:15px;line-height:1.9;color:var(--muted);max-width:700px;word-break:keep-all}
.zp-uses{display:flex;flex-wrap:wrap;gap:10px 23px;margin-top:19px;color:#56496e;font-size:11px}
.zp-uses span:before{content:'+';margin-right:7px;color:var(--zp-violet)}
.zp-section{padding:88px var(--pad);border-bottom:1px solid var(--zp-rule)}
.zp-section-heading{margin-bottom:38px}
.zp-section-heading h2,.zp-section-copy>h2{margin-top:19px}
.zp-split{display:grid;grid-template-columns:1.05fr 1fr;gap:6vw;align-items:center}
.zp-split>*{min-width:0}
.zp-section-copy>.zp-lead{margin-top:26px}
.zp-list{list-style:none;padding:0;margin:26px 0}
.zp-list li{border-top:1px solid var(--zp-rule);padding:19px 0}
.zp-list strong{display:block;font-size:18px;letter-spacing:-.035em;font-weight:600}
.zp-list p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:8px;word-break:keep-all}
.zp-case-link{display:flex;justify-content:space-between;gap:16px;align-items:center;border:1px solid var(--zp-rule);border-radius:4px;padding:18px 20px;background:var(--zp-case-bg,#eeebf8);color:inherit;text-decoration:none;transition:background .2s,border-color .2s}
.zp-case-link+.zp-case-link{margin-top:12px}
.zp-case-copy{min-width:0}
.zp-case-link small{display:block;font-size:11px;font-weight:600;color:var(--zp-case-accent,var(--zp-violet-ink));margin-bottom:8px}
.zp-case-link strong{display:block;font-weight:600;font-size:15px;line-height:1.5;word-break:keep-all;overflow-wrap:anywhere}
.zp-case-copy>span{display:block;font-size:12px;line-height:1.7;color:var(--muted);margin-top:5px;word-break:keep-all;overflow-wrap:anywhere}
.zp-case-arrow{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:50%;background:var(--zp-case-accent,var(--zp-violet));color:var(--zp-case-on-accent,#fff)}
.zp-case-arrow svg{width:20px;height:20px;transition:transform .2s}
.zp-case-link:is(:hover,:focus-visible){background:var(--zp-case-hover,#e4dfff);border-color:var(--zp-case-accent,var(--zp-violet))}
.zp-case-link:is(:hover,:focus-visible) .zp-case-arrow svg{transform:translate(2px,-2px)}
.zp-space-board{border:1px solid #cfc8e2;background:#f0edf8;position:relative}
.zp-board-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:50px;padding:14px 21px;border-bottom:1px solid #d4cde5;font-size:10px;color:#76658c}
.zp-board-top>span:first-child{font-family:Syne,Pretendard,sans-serif;letter-spacing:.06em}
.zp-space-art{padding:23px 0 0;background-image:linear-gradient(#ded8ed66 1px,transparent 1px),linear-gradient(90deg,#ded8ed66 1px,transparent 1px);background-size:28px 28px}
.zp-space-svg{width:100%;height:auto}
/* The same map moves from plan to dressed space to a visitor interaction. */
.zp-build-phases{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #d4cde5}
.zp-build-phases button{border:0;border-right:1px solid #d4cde5;background:transparent;color:#625674;padding:16px 5px;font-size:12px;min-height:48px}
.zp-build-phases button:last-child{border-right:0}
.zp-build-phases button[aria-pressed=true]{background:var(--zp-violet);color:white}
.zp-space-notes{padding:13px 20px;font-size:12px;line-height:1.8;color:#625674}
.zp-space-notes.is-enhanced{display:grid}
.zp-space-notes>p{grid-area:1/1}
.zp-architecture{transition:opacity .6s}
.zp-space-board[data-step="0"] .zp-architecture{opacity:.14}
.zp-space-board[data-step="1"] .zp-architecture{animation:zp-space-reveal .9s ease both;animation-play-state:paused}
.zp-map-mark,.zp-space-dialog{opacity:0;transition:opacity .3s}
.zp-space-board[data-step="2"] :is(.zp-map-mark,.zp-space-dialog){opacity:1;transition-delay:1.2s}
.zp-space-walker{transform:translate(0,0);opacity:0;transition:transform 1.2s ease,opacity .3s}
.zp-space-board[data-step="2"] .zp-space-walker{opacity:1;transform:translate(100px,-28px)}
.zp-map-visitor{animation:zp-avatar-bob 1.3s steps(2,end) infinite;animation-play-state:paused}
.zp-floor-route{animation:zp-route-flow 2s linear infinite;animation-play-state:paused}
.zp-content{--zp-rule:#605379;--muted:#c9c0db;--zp-focus:var(--zp-lime);--zp-case-bg:#3c314e;--zp-case-hover:#493b5e;--zp-case-accent:var(--zp-lime);--zp-case-on-accent:var(--zp-dark);background:#302740;color:#faf7ff}
.zp-content .zp-kicker{color:var(--zp-lime)}
.zp-content em{color:var(--zp-lime)}
.zp-content .zp-list{margin-top:24px}
.zp-journey{--zp-focus:var(--zp-violet-ink);color:#302741;background:#fffdf9;border:1px solid #aa99c9;box-shadow:10px 10px 0 #4a3d60}
.zp-journey-map{width:100%;height:auto}
.zp-journey-panels{padding:27px 28px 23px;min-height:330px;display:grid}
.zp-journey-panels>div{grid-area:1/1;min-width:0}
.zp-journey-panels:not(.is-enhanced){display:block}
.zp-journey-panels:not(.is-enhanced)>div+div{margin-top:30px}
.zp-dialog-tag{font:11px Syne,Pretendard,sans-serif;color:#70568f;letter-spacing:.04em}
.zp-journey-panels h3{font-size:27px;letter-spacing:-.06em;line-height:1.35;margin-top:12px;font-weight:600}
.zp-journey-panels p{color:#7a6e89;font-size:12px;line-height:1.9;margin-top:17px}
.zp-dialog-cue{display:flex;justify-content:space-between;align-items:center;width:100%;min-height:44px;margin-top:17px;font-size:13px;color:#5b42a8;background:transparent;border:0;border-bottom:1px solid #d9d0e4;padding:10px 0;text-align:left}
.zp-dialog-cue:disabled{cursor:default;opacity:.45}
.zp-dialog-cue span{animation:zp-cue 2s ease-in-out infinite;animation-play-state:paused}
.zp-quiz-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:17px;font-size:12px}
.zp-quiz-options>button{position:relative;display:grid;place-items:center;min-width:0;border:1px solid #d7cfe4;background:#fffdf9;color:#4f4069;min-height:44px;padding:9px 0;text-align:center;font-size:13px;line-height:1.4}
.zp-answer-label{white-space:nowrap}
.zp-answer-check{position:absolute;inset-inline-end:6px;top:50%;width:12px;height:12px;transform:translateY(-50%);visibility:hidden;pointer-events:none}
.zp-quiz-options>button:hover{border-color:#7f69b5;background:#f0eaf9}
.zp-quiz-options>button[data-result=correct]{background:var(--zp-lime);border-color:#8cae00;color:var(--zp-dark)}
.zp-quiz-options>button[data-result=retry]{border-color:#bd6851;background:#fff0e9}
.zp-quiz-options>button[data-result=correct] .zp-answer-check{visibility:visible}
.zp-journey-panels .zp-quiz-feedback{min-height:3.8em;margin-top:12px}
.zp-continue{margin-top:0}
.zp-mission-check{opacity:0;transform:translateY(6px);transition:opacity .3s,transform .3s}
.zp-journey[data-solved=true] .zp-mission-check{opacity:1;transform:translateY(0)}
.zp-journey .zp-portal-light{opacity:.25;animation:none;transition:opacity .5s}
.zp-journey[data-step="2"] .zp-portal-light{opacity:1}
.zp-journey:not([data-step="0"]) .zp-npc-hi{opacity:0}
.zp-stamps{display:flex;gap:8px;margin-top:20px}
.zp-stamps span{padding:8px 11px;color:#5e48a7;background:#ebe5fa;font-size:12px;border:1px dashed #a998c8}
.zp-journey[data-step="2"] .zp-stamps span{animation:zp-stamp .7s ease both;animation-play-state:paused}
.zp-stamps span:nth-child(2){animation-delay:.2s}.zp-stamps span:nth-child(3){animation-delay:.4s;background:var(--zp-lime)}
.zp-journey-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid #d4cde5}
.zp-journey-tabs button{color:#70627f;border:0;border-right:1px solid #d4cde5;background:#f1edf8;padding:17px 7px;font-size:12px}
.zp-journey-tabs button:last-child{border-right:0}
.zp-journey-tabs button span{font:9px Syne,sans-serif;margin-right:7px}
.zp-journey-tabs button[aria-pressed=true]{background:var(--zp-lime);color:#302740}
.zp-demo-note{padding:12px 20px;color:#6d5e7b;font-size:11px;line-height:1.7}
.zp-player-position{transform:translateX(115px);transition:transform 1.15s cubic-bezier(.45,0,.2,1)}
.zp-journey[data-step="1"] .zp-player-position{transform:translateX(310px)}
.zp-journey[data-step="2"] .zp-player-position{transform:translateX(510px)}
.zp-player,.zp-host{animation:zp-avatar-bob 1s steps(2,end) infinite;animation-play-state:paused}
.zp-host{animation-duration:1.4s}
.zp-npc-hi{animation:zp-npc-hi 2s ease-in-out infinite;animation-play-state:paused;transform-origin:176px 126px}
.zp-portal-light{animation:zp-portal-light 2s ease infinite;animation-play-state:paused}
.zp-operations{--zp-case-bg:#fcfdf9;--zp-case-hover:#eeebf8;background:#eff2e9}
.zp-ops-heading{display:flex;align-items:end;justify-content:space-between;gap:35px}
.zp-ops-heading>.zp-lead{max-width:380px;padding-bottom:8px}
.zp-ops-board{border:1px solid #bfc7b5;background:#fcfdf9}
.zp-ops-board>.zp-board-top{background:#e2e8d9;color:#49583f;border-color:#c5ceba}
.zp-board-top button{font-size:11px;padding:8px 11px;min-height:36px;color:inherit;background:transparent;border:1px solid #a9b39e}
.zp-ops-body{display:grid;grid-template-columns:1.5fr 1fr;align-items:stretch}
.zp-ops-stage{position:relative;display:grid;align-items:center;background:#f2eff8;padding:16px 12px 36px;min-width:0;overflow:hidden}
.zp-event-map{width:100%;height:auto;max-height:465px}
.zp-ops-scene-label{position:absolute;bottom:15px;left:24px;font-size:11px;color:#685b7c}
.zp-ops-panels{padding:34px clamp(24px,2.8vw,46px);align-self:center}
.zp-ops-panels.is-enhanced{display:grid}
.zp-ops-panels>div{grid-area:1/1;min-width:0}
.zp-page :is(.zp-ops-panels,.zp-space-notes).is-enhanced>[hidden]{display:block!important;visibility:hidden;pointer-events:none}
.zp-ops-panels h3{font-size:clamp(23px,2.2vw,32px);line-height:1.4;letter-spacing:-.045em;margin-top:16px;word-break:keep-all}
.zp-ops-panels p{font-size:14px;line-height:1.9;color:#625b72;margin-top:17px;word-break:keep-all}
.zp-ops-panels ul{list-style:none;margin:22px 0 0;padding:0}
.zp-ops-panels li{font-size:13px;line-height:1.6;border-top:1px solid #d9dfd0;padding:12px 0;color:#475740}
.zp-ops-panels li:before{content:'✓';margin-right:10px;color:#658348}
.zp-ops-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #c5ceba}
.zp-ops-tabs button{padding:18px 9px;min-height:54px;border:0;border-right:1px solid #c5ceba;background:#fcfdf9;color:#46543c;font-size:14px}
.zp-ops-tabs button:last-child{border-right:0}
.zp-ops-tabs button span{font:11px Syne,sans-serif;margin-right:14px}
.zp-ops-tabs button[aria-pressed=true]{background:var(--zp-lime);color:var(--zp-dark)}
.zp-ops-cases{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:30px}
.zp-ops-cases .zp-case-link+.zp-case-link{margin-top:0}
.zp-event-route{animation:zp-route-flow 3s linear infinite;animation-play-state:paused}
.zp-event-guest{opacity:0;transform:translate(0,0);transition:transform 1.45s cubic-bezier(.4,0,.2,1),opacity .3s;transition-delay:var(--delay)}
.zp-event-waiting,.zp-event-inspector,.zp-event-live,.zp-event-reactions,.zp-event-brand,.zp-event-winter,.zp-snow-caps{transition:opacity .5s}
.zp-event-live,.zp-event-reactions,.zp-event-winter,.zp-snow-caps{opacity:0}
.zp-gate-bar{transform-origin:119px 281px;transition:transform .6s,opacity .6s}
.zp-stage-screen,.zp-season-banner,.zp-booth-awning{transition:fill .7s}
.zp-ops-board:not([data-step="0"]) .zp-gate-bar{transform:rotate(-80deg);opacity:0}
.zp-ops-board:not([data-step="0"]) :is(.zp-event-waiting,.zp-event-inspector){opacity:0}
.zp-ops-board:not([data-step="0"]) .zp-event-guest{opacity:1;transform:translate(var(--gx),var(--gy))}
.zp-ops-board:not([data-step="0"]) :is(.zp-event-live,.zp-event-reactions){opacity:1;transition-delay:1.7s}
.zp-ops-board:not([data-step="0"]) .zp-event-guest .zp-person{animation:zp-avatar-bob 1.4s steps(2,end) infinite;animation-delay:var(--delay);animation-play-state:paused}
.zp-ops-board:not([data-step="0"]) .zw-arm-left{transform-box:fill-box;transform-origin:100% 0;animation:zp-welcome-left 1.4s steps(2,end) infinite;animation-play-state:paused}
.zp-ops-board:not([data-step="0"]) .zw-arm-right{transform-box:fill-box;transform-origin:0 0;animation:zp-welcome-right 1.4s steps(2,end) infinite;animation-play-state:paused}
.zp-ops-board[data-step="2"] :is(.zp-event-winter,.zp-snow-caps){opacity:1}
.zp-ops-board[data-step="2"] .zp-event-brand{opacity:0}
.zp-ops-board[data-step="2"] .zp-stage-screen{fill:#426d9f}
.zp-ops-board[data-step="2"] .zp-season-banner{fill:#79b7ce}
.zp-ops-board[data-step="2"] .zp-booth-awning{fill:#a2cddd}
.zp-ops-board[data-step="2"] .zp-ops-stage{background:#eaf2f8}
.zp-ops-stage{transition:background .7s}
.zp-page .zp-motion-running :is(.zp-architecture,.zp-event-route,.zp-event-guest .zp-person,.zw-arm-left,.zw-arm-right){animation-play-state:running}
body[data-motion-enabled=false] .zp-page :is(.zp-event-map *,.zp-space-svg *){transition:none!important}
body[data-motion-enabled=false] .zp-space-board[data-step="0"] .zp-architecture{opacity:1}
@keyframes zp-space-reveal{from{transform:translateY(-9px);opacity:.2}to{transform:translateY(0);opacity:1}}
@keyframes zp-welcome-left{0%,100%{transform:rotate(115deg)}50%{transform:rotate(145deg)}}
@keyframes zp-welcome-right{0%,100%{transform:rotate(-145deg)}50%{transform:rotate(-115deg)}}
@media(max-width:1050px){.zp-ops-body{grid-template-columns:1.2fr 1fr}.zp-ops-panels{padding:28px 24px}.zp-ops-heading>.zp-lead{max-width:300px}}
@media(max-width:760px){.zp-ops-heading{display:block}.zp-ops-heading>.zp-lead{margin-top:20px;max-width:none;padding-bottom:0}.zp-ops-body{grid-template-columns:1fr}.zp-ops-panels{padding:25px;border-top:1px solid #d5d9cb}.zp-ops-panels h3{font-size:26px}.zp-ops-stage{padding:12px 0 31px}.zp-ops-scene-label{left:17px;font-size:11px;bottom:12px}.zp-ops-tabs button{font-size:12px;padding:15px 6px}.zp-ops-tabs button span{display:block;margin:0 0 7px}.zp-ops-cases{grid-template-columns:1fr;gap:0;margin-top:22px}.zp-space-notes{padding:13px 17px}.zp-ops-board>.zp-board-top{font-size:10px}}
@media(prefers-reduced-motion:reduce){.zp-space-board[data-step="0"] .zp-architecture{opacity:1}}
.zp-platform-note{border-top:1px solid #c8cfbe;margin-top:38px!important;padding-top:20px;color:#596550;font-size:12px;line-height:1.8;word-break:keep-all}
.service-theme[data-field=zep] .zp-page .zp-cases{background:#f8f7fc}
.zp-page .zp-cases{padding:78px var(--pad)}
.service-theme .zp-page .zp-cases .landing-section-head h2{color:#29243e;font-size:clamp(30px,3.5vw,52px);margin-top:16px}
.zp-page .zp-cases .archive-grid{gap:35px 24px}
.zp-page .zp-cases .archive-image{aspect-ratio:1.65;background:#e7e4ef}
.zp-page .zp-cases .archive-meta h3{font-size:clamp(18px,1.5vw,21px);line-height:1.4;color:#29243e;font-weight:650;letter-spacing:-.025em;margin:0}
.zp-page .zp-cases .archive-meta .archive-summary{font-size:13px;line-height:1.65;color:#655976;font-weight:400;letter-spacing:-.015em;margin:9px 0 0;word-break:keep-all}
.zp-page .zp-cases .archive-meta p:not(.archive-summary){font-size:11px;line-height:1.7;color:#746780;margin-top:7px}
.zp-page .zp-cases .archive-image img{object-fit:cover}
.zp-page .zp-cases .archive-image>span{display:grid;place-items:center;border:0;background:var(--zp-lime);color:#29243e}
.zp-contact{display:grid;grid-template-columns:1fr 1fr;gap:7vw;background:#eee9f8}
.zp-contact h2{margin-top:23px}.zp-contact .zp-lead{margin-top:25px}
.zp-prepare{list-style:none;padding:0;margin:24px 0 28px}
.zp-prepare li{font-size:13px;color:#695b79;border-bottom:1px solid #cfc5df;padding:11px 0}
.zp-mail-note{font-size:11px;color:#695b79;line-height:1.8;margin-top:16px!important}
.zp-faq h3{font-size:20px;font-weight:600;margin:3px 0 25px}
.zp-faq details{border-top:1px solid #c7bbd9}
.zp-faq details:last-child{border-bottom:1px solid #c7bbd9}
.zp-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font-size:14px;font-weight:500;padding:24px 0}
.zp-faq summary::-webkit-details-marker{display:none}
.zp-faq summary span{font-size:20px;font-weight:300;flex:none;transition:transform .2s}
.zp-faq details[open] summary span{transform:rotate(45deg)}
.zp-faq details p{font-size:13px;line-height:1.9;color:#695b79;padding:0 24px 23px 0;word-break:keep-all}
.zp-page .zp-motion-running :is(.zp-map-visitor,.zp-floor-route,.zp-player,.zp-host,.zp-npc-hi,.zp-dialog-cue span,.zp-stamps span){animation-play-state:running}
.zp-hero-showcase.zp-motion-running:not(.zp-auto-paused) .zp-hero-gallery figure>a img{animation-play-state:running}
body[data-motion-enabled=false] .zp-player-position{transition:none}
body[data-motion-enabled=false] .zp-page :is(.zp-architecture,.zp-stamps span){animation:none;opacity:1}
@keyframes zp-world-drift{from{transform:scale(1)}to{transform:scale(1.045)}}
@keyframes zp-avatar-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes zp-route-flow{to{stroke-dashoffset:-24}}
@keyframes zp-npc-hi{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes zp-portal-light{0%,100%{opacity:.6}50%{opacity:1}}
@keyframes zp-cue{0%,100%{transform:translateX(0)}50%{transform:translateX(6px)}}
@keyframes zp-stamp{from{opacity:0;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}
@media(min-width:1600px){.zp-hero-grid{gap:5vw;padding-top:65px;padding-bottom:15px}.zp-hero-gallery figure>a{aspect-ratio:1.7}.zp-section{padding-top:105px;padding-bottom:105px}.zp-journey-panels{min-height:270px}}
@media(max-width:1050px){.zp-hero-grid{gap:28px;grid-template-columns:.9fr 1.1fr}.zp-hero-copy h1{font-size:45px}.zp-hero-copy .zp-lead{font-size:14px}.zp-hero-gallery figure>a{aspect-ratio:1.2}.zp-split{gap:35px}.zp-journey-panels{padding:23px;min-height:290px}.zp-journey-panels h3{font-size:25px}}
@media(max-width:760px){.service-theme .zp-page{padding-top:100px}.zp-hero{padding-bottom:38px}.zp-hero-grid{grid-template-columns:1fr;padding-top:31px;gap:31px}.zp-hero-copy h1{font-size:clamp(40px,7.8vw,58px);margin:19px 0}.zp-hero-copy .zp-lead{font-size:14px}.zp-hero-copy .zp-cta{margin-top:23px}.zp-partner{margin-top:23px}.zp-partner>span:first-child{font-size:27px}.zp-partner strong{font-size:8px}.zp-hero-showcase{transform:none;box-shadow:5px 5px 0 #e7e2f3}.zp-hero-gallery figure>a{aspect-ratio:1.5}.zp-hero-gallery figcaption{padding:17px;min-height:117px}.zp-hero-gallery figcaption strong{font-size:18px}.zp-hero-tabs button span{margin-right:6px}.zp-intro{grid-template-columns:1fr;gap:20px;padding-block:32px}.zp-intro h2{font-size:29px}.zp-intro>div>p:not(.zp-kicker){font-size:14px}.zp-uses{gap:10px 16px}.zp-section{padding-top:54px;padding-bottom:54px}.zp-page h2{font-size:34px}.zp-split,.zp-contact{grid-template-columns:1fr;gap:29px}.zp-section-heading{margin-bottom:26px}.zp-page .zp-lead{font-size:15px}.zp-list li{padding:17px 0}.zp-list strong{font-size:17px}.zp-list p{font-size:14px}.zp-space .zp-split{display:flex;flex-direction:column}.zp-space .zp-split>*{width:100%}.zp-space-board{max-width:600px;align-self:center}.zp-board-top{padding:13px 17px;min-height:46px;font-size:9px}.zp-journey{box-shadow:5px 5px 0 #4a3d60}.zp-journey-panels{min-height:262px;padding:22px}.zp-journey-panels h3{font-size:26px}.zp-journey-tabs button{font-size:11px}.zp-content .zp-section-copy>.zp-lead{margin-top:22px}.zp-platform-note{margin-top:28px!important}.zp-page .zp-cases{padding-top:51px;padding-bottom:51px}.zp-page .zp-cases .landing-section-head{display:block}.zp-page .zp-cases .landing-section-head .line-link{margin-top:22px}.zp-page .zp-cases .landing-section-head h2{font-size:31px}.zp-contact{gap:45px}.zp-faq summary{padding:21px 0}.zp-kicker{font-size:10px}}
@media(max-width:370px){.zp-hero-copy h1{font-size:37px}.zp-hero-tabs button{font-size:10px}.zp-hero-tabs button span{display:none}.zp-page h2{font-size:30px}.zp-showcase-top{padding:0 12px;font-size:8px}.zp-showcase-top button{font-size:9px}.zp-hero-gallery figcaption p{font-size:11px}.zp-hero-gallery figcaption strong{font-size:16px}.zp-stamps span{font-size:11px;padding:7px 9px}.zp-page .zp-lead br{display:none}}
@media(prefers-reduced-motion:reduce){.zp-page *, .zp-page *:before,.zp-page *:after{animation:none!important;transition:none!important}.zp-stamps span{opacity:1!important}.zp-hero-showcase{transform:none}}
@media(max-width:760px){.zp-case-link{padding:16px;gap:12px}.zp-ops-cases{gap:12px}}
