/* KAPRIS mobile customer journey dock. Existing desktop header and menu stay unchanged. */
.nk-site .nk-appdock{display:none;visibility:hidden}
@media(max-width:760px){
  .nk-site .nk-appdock{position:fixed;z-index:930;left:50%;right:auto;width:calc(100% - 28px);max-width:428px;bottom:calc(var(--nk-app-review,0px) + 12px + env(safe-area-inset-bottom,0px));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.25fr);align-items:stretch;gap:5px;min-height:72px;padding:7px;border:1px solid rgb(241 236 225 / .18);border-radius:23px;background:rgb(17 23 20 / .94);box-shadow:0 15px 50px rgb(17 23 20 / .30),0 1px 2px rgb(17 23 20 / .16);-webkit-backdrop-filter:blur(22px) saturate(1.1);backdrop-filter:blur(22px) saturate(1.1);color:var(--linen);box-sizing:border-box;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,15px);transition:opacity .24s ease,transform .28s ease,visibility .24s ease}
  .nk-site .nk-appdock[data-visible="true"]{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
  .nk-site .nk-appdock *, .nk-contact-sheet * {box-sizing:border-box}
  .nk-site .nk-appdock__item{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:56px;padding:6px 2px;border:0;border-radius:15px;background:transparent;color:rgb(241 236 225 / .83);text-decoration:none;font:650 10px/1.2 ManropeBC,sans-serif;letter-spacing:.01em;white-space:nowrap;cursor:pointer;transition:background .2s ease,color .2s ease}
  .nk-site .nk-appdock__item svg{width:20px;height:20px;flex:none}
  .nk-site .nk-appdock__item[aria-current="page"]{background:rgb(241 236 225 / .11);color:var(--linen)}
  .nk-site .nk-appdock__item[aria-current="page"]::after{content:"";position:absolute;top:4px;width:15px;height:2px;border-radius:2px;background:var(--bronze)}
  .nk-site .nk-appdock__item--contact{flex-direction:row;gap:8px;min-height:56px;padding-inline:5px;background:var(--bronze);color:var(--ink);font-weight:750;letter-spacing:0;border-radius:16px}
  .nk-site .nk-appdock__item--contact svg{width:19px;height:19px}
  .nk-site .nk-appdock__item:not(.nk-appdock__item--contact):active{background:rgb(241 236 225 / .15)}
  .nk-site .nk-appdock__item--contact:active{filter:brightness(1.12)}
  .nk-site .nk-appdock__item:focus-visible{outline:2px solid var(--linen);outline-offset:2px}
  .nk-site[data-nk-dock="visible"] .kc-launch{display:none!important}
  .nk-site:has(#nkContactSheet[open]) .kc-launch{visibility:hidden!important}
  html:has(#nkContactSheet[open]){overflow:hidden}
  .nk-site .nk-contact-sheet{position:fixed;inset:auto 0 0;margin:0 auto;padding:0;width:min(100%,460px);max-width:100%;max-height:min(85dvh,700px);overflow:auto;overscroll-behavior:contain;border:1px solid rgb(241 236 225 / .18);border-bottom:0;border-radius:28px 28px 0 0;background:var(--ink);color:var(--linen);box-shadow:0 -20px 75px rgb(17 23 20 / .28)}
  .nk-site .nk-contact-sheet::backdrop{background:rgb(17 23 20 / .72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
  .nk-contact-sheet__handle{width:36px;height:4px;border-radius:999px;background:rgb(241 236 225 / .25);margin:11px auto 14px}
  .nk-contact-sheet__head{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 24px 0;font:750 9px/1.5 ManropeBC,sans-serif;letter-spacing:.15em;color:rgb(241 236 225 / .65)}
  .nk-contact-sheet__head button{display:grid;place-items:center;flex:none;width:44px;height:44px;border:1px solid rgb(241 236 225 / .2);border-radius:14px;background:transparent;color:var(--linen);cursor:pointer}
  .nk-contact-sheet__head svg{width:19px;height:19px}
  .nk-contact-sheet__body{padding:15px 24px max(25px,env(safe-area-inset-bottom,0px))}
  .nk-contact-sheet__body h2{max-width:350px;margin:0;font:700 clamp(29px,8vw,38px)/1.09 RalewayBC,sans-serif;letter-spacing:-.037em;color:var(--linen)}
  .nk-contact-sheet__body>p{max-width:350px;margin:13px 0 22px;font:450 13px/1.75 ManropeBC,sans-serif;color:rgb(241 236 225 / .74)}
  .nk-contact-sheet__links{display:grid;gap:9px}
  .nk-contact-sheet__links a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:74px;padding:14px 16px;border:1px solid rgb(241 236 225 / .19);border-radius:15px;background:rgb(241 236 225 / .055);color:var(--linen);text-decoration:none;font:700 13px/1.45 ManropeBC,sans-serif}
  .nk-contact-sheet__links a>span:last-child{flex:none;font-size:23px;font-weight:400}
  .nk-contact-sheet__links a small{display:block;margin-top:4px;font:450 10px/1.5 ManropeBC,sans-serif;color:rgb(241 236 225 / .66)}
  .nk-contact-sheet__links .nk-contact-sheet__primary{background:var(--bronze);color:var(--ink);border-color:var(--bronze)}
  .nk-contact-sheet__links .nk-contact-sheet__primary small{color:rgb(17 23 20 / .76)}
  .nk-contact-sheet a:focus-visible,.nk-contact-sheet button:focus-visible{outline:2px solid var(--linen);outline-offset:3px}
  @media(max-width:350px){
    .nk-site .nk-appdock{width:calc(100% - 18px);gap:2px;padding:6px;min-height:70px}
    .nk-site .nk-appdock__item{font-size:9px}
    .nk-site .nk-appdock__item--contact{gap:5px}
    .nk-contact-sheet__head{padding-inline:18px}
    .nk-contact-sheet__body{padding-inline:18px}
  }
}
@media(prefers-reduced-motion:reduce){.nk-site .nk-appdock,.nk-site .nk-appdock__item{transition:none!important}}

@media(max-width:760px){

/* Three compact messenger choices: recognizable brand glyphs within the KAPRIS palette. */
.nk-site .nk-contact-sheet__messengers{margin:0 0 16px}
.nk-site .nk-contact-sheet__eyebrow{margin:0 0 10px;font:700 10px/1.3 ManropeBC,sans-serif;letter-spacing:.055em;color:rgb(241 236 225 / .68)}
.nk-site .nk-contact-sheet__socials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.nk-site .nk-contact-sheet__social{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:7px;width:100%;min-width:0;min-height:82px;padding:12px 5px 10px;border:1px solid rgb(241 236 225 / .22);border-radius:15px;background:rgb(241 236 225 / .055);color:var(--linen);text-decoration:none;text-align:center;font:650 11px/1.2 ManropeBC,sans-serif;letter-spacing:0;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .2s ease,background .2s ease}
.nk-site .nk-contact-sheet__social svg{width:29px;height:29px;display:block;flex:none;fill:currentColor}
.nk-site .nk-contact-sheet__social img{width:29px;height:29px;display:block;flex:none;object-fit:contain}
.nk-site .nk-contact-sheet__social span{white-space:nowrap}
.nk-site .nk-contact-sheet__social small{display:block;font:500 8px/1.15 ManropeBC,sans-serif;margin-top:2px;color:rgb(241 236 225 / .62)}
.nk-site .nk-contact-sheet__social:hover,.nk-site .nk-contact-sheet__social:focus-visible{border-color:var(--bronze);background:rgb(167 127 73 / .14)}
.nk-site .nk-contact-sheet__social:active{background:rgb(167 127 73 / .18)}
.nk-site .nk-contact-sheet__social:focus-visible{outline:2px solid var(--linen);outline-offset:3px}
.nk-site .nk-contact-sheet__copy-status{margin:10px 0 0;font:500 10px/1.65 ManropeBC,sans-serif;color:var(--linen)}
.nk-site .nk-contact-sheet__copy-status[hidden]{display:none}
.nk-site .nk-contact-sheet__links--other a{min-height:64px;padding-block:11px}
@media(max-width:350px){
  .nk-site .nk-contact-sheet__socials{gap:6px}
  .nk-site .nk-contact-sheet__social{min-height:76px;padding:9px 2px 8px;font-size:10px}
  .nk-site .nk-contact-sheet__social svg,.nk-site .nk-contact-sheet__social img{width:26px;height:26px}
}
@media(prefers-reduced-motion:reduce){.nk-site .nk-contact-sheet__social{transition:none}}
}

/* Stable mobile shell: no heavy scrolling blur or repeated positioning work. */
@media(max-width:760px){
  .nk-site .nk-appdock{
    background:#111714;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    box-shadow:0 12px 34px rgb(17 23 20 / .24),0 1px 3px rgb(17 23 20 / .2);
    transform:translate3d(-50%,9px,0);
    transition:opacity .17s ease-out,transform .2s cubic-bezier(.2,.7,.2,1),visibility .2s;
  }
  .nk-site .nk-appdock[data-visible="true"]{transform:translate3d(-50%,0,0)}
  /* Desktop-only floating assistant. On mobile, contact is always in the fixed dock. */
  .nk-site .kc-launch{display:none!important;}
  .nk-site .nk-appdock__item{
    transition:background-color .14s ease,color .14s ease,filter .14s ease,transform .14s ease;
  }
  .nk-site .nk-appdock__item:active{transform:scale(.975)}
  .nk-site .nk-contact-sheet[open]:not(.is-closing){
    animation:nk-contact-rise .24s cubic-bezier(.2,.8,.24,1) both;
  }
  .nk-site .nk-contact-sheet[open].is-closing{
    animation:nk-contact-fall .17s ease-in both;
  }
  .nk-site .nk-contact-sheet::backdrop{
    -webkit-backdrop-filter:blur(3px);
    backdrop-filter:blur(3px);
  }
  .nk-site .nk-contact-sheet__head button,
  .nk-site .nk-contact-sheet__links a,
  .nk-site .nk-contact-sheet__social{
    transition:background-color .15s ease,border-color .15s ease,transform .15s ease;
  }
  .nk-site .nk-contact-sheet__head button:active,
  .nk-site .nk-contact-sheet__links a:active,
  .nk-site .nk-contact-sheet__social:active{transform:scale(.98)}
}
@keyframes nk-contact-rise{
  from{opacity:.88;transform:translate3d(0,18px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
@keyframes nk-contact-fall{
  from{opacity:1;transform:translate3d(0,0,0)}
  to{opacity:0;transform:translate3d(0,13px,0)}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
  .nk-site .nk-appdock,
  .nk-site .nk-appdock__item,
  .nk-site .nk-contact-sheet[open],
  .nk-site .nk-contact-sheet__head button,
  .nk-site .nk-contact-sheet__links a,
  .nk-site .nk-contact-sheet__social{
    animation:none!important;transition:none!important;
  }
}
