/* Integration-only states. The approved page's original styles remain unchanged. */
#mbar { display:none!important }
.landing-mobile-access { display:none!important }
.landing-desktop-nav { display:none!important }
.brand .pv { display:none!important }
.brand > .landing-company-name { min-width:0;white-space:nowrap }
html body .brand .dkauth .dksi,
html body .brand .dkauth .dkcta {
  background:#000!important;color:#fff!important;border-color:#000!important;
  box-shadow:none!important;
}
@media (min-width:961px) {
  html body main > .brand {
    padding-inline:20px!important;width:100%!important;max-width:none!important;
    left:0!important;right:0!important;margin-inline:0!important;
  }
  html body main > .brand .tmenu,
  html body main > .brand .dklinks,
  html body main > .brand .toplk { display:none!important }
  html body main > .brand > b { flex:0 0 auto!important }
  html body main > .brand .dkauth { margin-left:auto!important;margin-right:0!important }
  html body .brand .landing-desktop-nav {
    display:flex!important;align-items:center;justify-content:center;
    position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
    gap:clamp(12px,1.6vw,24px);margin:0;padding:0;white-space:nowrap;
  }
  .brand .landing-desktop-nav > a,
  .brand .landing-legal > summary {
    display:inline-flex;align-items:center;justify-content:center;gap:7px;
    min-height:40px;padding:8px 0;border:0;background:transparent;color:#14213d;
    font:700 clamp(12px,.98vw,14px)/1.3 var(--body,system-ui);
    text-decoration:none;letter-spacing:0;list-style:none;cursor:pointer;
  }
  .brand .landing-desktop-nav > a:hover,
  .brand .landing-legal > summary:hover { color:#947021 }
  .brand .landing-legal { position:relative;margin:0;padding:0 }
  .landing-legal > summary::-webkit-details-marker { display:none }
  .landing-legal > summary::after {
    content:'';width:6px;height:6px;border:solid currentColor;border-width:0 1.5px 1.5px 0;
    transform:translateY(-2px) rotate(45deg);
  }
  .landing-legal[open] > summary::after { transform:translateY(2px) rotate(225deg) }
  .brand .landing-legal-items {
    position:absolute;left:50%;top:calc(100% + 7px);transform:translateX(-50%);
    width:180px;padding:6px;border:1px solid rgba(20,33,61,.12);border-radius:14px;
    background:#fff;box-shadow:0 12px 32px rgba(20,33,61,.16);z-index:1000;
  }
  .brand .landing-legal-items > a {
    display:flex;align-items:center;min-height:44px;padding:10px 14px;border-radius:9px;
    color:#14213d;font:600 14px/1.4 var(--body,system-ui);text-decoration:none;
  }
  .brand .landing-legal-items > a:hover { background:#f5f2e9 }
  .landing-desktop-nav :focus-visible { outline:2px solid #c5a443;outline-offset:3px }
}
@media (max-width:960px) {
  .dkauth, .dksm, a[href="#signin"], a[href="#signup"],
  a[href="/sign-in"], a[href="/sign-up"] { display:none!important }
  .brand .landing-mobile-access {
    display:block!important;position:relative;flex:0 0 auto;margin-left:auto!important;
  }
  .brand .landing-mobile-access > summary {
    display:flex;align-items:center;justify-content:center;gap:8px;list-style:none;cursor:pointer;
    min-height:40px;padding:0 13px;border:1px solid rgba(20,33,61,.15);
    border-radius:12px;background:#fff;color:#14213d;
    font:700 13px/1 var(--body,system-ui);letter-spacing:0;text-decoration:none;
    box-shadow:0 2px 6px rgba(20,33,61,.04);
  }
  .landing-mobile-access > summary::-webkit-details-marker { display:none }
  .landing-mobile-access > summary::after {
    content:'';width:6px;height:6px;border:solid currentColor;border-width:0 1.5px 1.5px 0;
    transform:translateY(-2px) rotate(45deg);
  }
  .landing-mobile-access[open] > summary::after { transform:translateY(2px) rotate(225deg) }
  .brand .landing-access-items {
    position:absolute;right:0;top:calc(100% + 10px);width:150px;padding:6px;
    border:1px solid rgba(20,33,61,.12);border-radius:14px;background:#fff;
    box-shadow:0 12px 32px rgba(20,33,61,.16);z-index:1000;
  }
  .brand .landing-access-items > a, .brand .landing-access-items > button {
    display:flex!important;align-items:center;min-height:44px;width:100%;padding:10px 14px;
    border:0;border-radius:9px;background:transparent;color:#14213d;text-align:left;
    font:700 14px/1.4 var(--body,system-ui);letter-spacing:0;text-decoration:none;cursor:pointer;
  }
  .brand .landing-access-items > :hover { background:#f5f2e9 }
  html body .brand .tmenu { margin-left:8px!important }
  .landing-mobile-access :focus-visible { outline:2px solid #c5a443;outline-offset:3px }
}
.landing-checkout-status { margin:12px 0;font:500 14px/1.5 var(--body,system-ui);color:var(--ink,#f3ead6) }
.landing-checkout-status[hidden] { display:none }
.landing-checkout-status[data-error="true"] { color:#f08a80 }
.landing-checkout-status a { color:#f0bd57;text-decoration:underline }
.landing-offer-expired [data-buy],.landing-offer-expired #ckpay { opacity:.65 }

/* iOS Safari may paint the filtered portrait and transformed nameplate through
   the back of a 3D card. Keep explicit face layers and stop painting the hidden
   face after the turn, rather than relying on backface culling alone.
   Desktop deliberately shows both cards side by side, so scope this to phones. */
@media (max-width:960px) {
  html #cmob .fdr .fdin {
    -webkit-transform-style:preserve-3d;
    transform-style:preserve-3d;
  }
  html #cmob .fdr .fdf,
  html #cmob .fdr .fdb {
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
    transition:visibility 0s .4s;
  }
  html #cmob .fdr .fdf {
    -webkit-transform:rotateY(0deg) translateZ(1px)!important;
    transform:rotateY(0deg) translateZ(1px)!important;
    visibility:visible;
    pointer-events:auto;
  }
  html #cmob .fdr .fdb {
    -webkit-transform:rotateY(180deg) translateZ(1px)!important;
    transform:rotateY(180deg) translateZ(1px)!important;
    visibility:hidden;
    pointer-events:none;
  }
  html #cmob .fdr .fdc.flip .fdf {
    visibility:hidden;
    pointer-events:none;
  }
  html #cmob .fdr .fdc.flip .fdb {
    visibility:visible;
    pointer-events:auto;
  }
  html #cmob .fdr .fdf img,
  html #cmob .fdr .fdnm {
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
  }
}
@media (max-width:960px) and (prefers-reduced-motion:reduce) {
  html #cmob .fdr .fdf,
  html #cmob .fdr .fdb {
    transition:none;
  }
}

/* Phone scrolling must never wait for an observer to reveal readable content.
   The export stacks three reveal systems (including animated blur) on cards.
   Keep these static on mobile; interactive/banner/wordmark motion is untouched.
   !important is needed because the export injects its reveal CSS after this file. */
@media (max-width:960px) {
  /* The owner reproduced this at scrollY=0 while continuing to pull down.
     Disable the root browser's stretch/rubber-band and pull-to-refresh effect,
     not normal scrolling or the chat's independent scroll surface. A sticky
     nav next to a masked animated iframe otherwise stretches in separate
     compositor layers on Android Chrome. Both root elements are intentional. */
  html.cm,
  html.cm body {
    overscroll-behavior-y:none!important;
  }
  html.cm #cmob .fx-r,
  html.cm #cmob .cmrv,
  html.cm #cmob .hws,
  html.cm #cmob .dr {
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
    transition-delay:0s!important;
    will-change:auto!important;
  }
  /* Avoid rerasterizing a live backdrop filter over scrolling phone content,
     including the 761–960px layout that also receives desktop export classes. */
  html.cm main > .brand,
  html.cm main > .brand.dkstuck {
    background:#faf8f3!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  /* Android browser chrome can resize the viewport during a touch gesture.
     Keep the same inner scroll range until the actual layout width changes. */
  html #cmob .cmmind .mdphone .mdchat {
    height:clamp(560px,calc(var(--landing-chat-viewport,100svh) - 130px),700px)!important;
    isolation:isolate;
  }
  /* A rotated ancestor around an independently scrolling, rounded WebView
     surface can repaint/clamp its children during touch scrolling. */
  html #cmob .cmmind .mdphone {
    transform:none!important;
    overflow-anchor:none;
  }
  html #cmob .cmmind .mdphone .mdch,
  html #cmob .cmmind .mdphone .mdcc,
  html #cmob .cmmind .mdphone .mdcl > .mdm {
    flex-shrink:0;
  }
  html #cmob .cmmind .mdphone .mdcl {
    min-height:0;
    overflow-anchor:none;
  }
}
