/* SellerPlex site layer on top of design.css (generated from the approved design B, Blue Hour).
   Fonts are self-hosted: no requests to any font host. */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/montserrat-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/montserrat-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/montserrat-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/montserrat-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:800;font-display:swap;src:url(/assets/fonts/montserrat-latin-800-normal.woff2) format('woff2')}

[hidden]{display:none !important}
html{scroll-behavior:smooth;scroll-padding-top:96px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.wrap{display:block;max-width:1440px;margin:0 auto}
.hin{max-width:1440px;margin:0 auto}
.vB .ftr{margin:0 max(24px,calc((100% - 1392px) / 2)) 24px}
.ftr{padding-bottom:36px}

/* header: desktop nav, mobile menu */
.hdr .hr{display:none}
.menu{cursor:pointer}
.mnav{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--hline);box-shadow:0 30px 60px -30px rgba(21,38,76,.35);max-height:calc(100vh - 66px);max-height:calc(100dvh - 66px);overflow:auto;overscroll-behavior:contain}
.mnav-in{display:grid;padding:4px 16px 28px}
.mnav a{display:block;padding:12px 2px;font-weight:600;font-size:16px;color:#15264C !important;border-bottom:1px solid #EEF2F8}
.mnav .mh{margin:20px 0 2px;font-size:13px;font-weight:700;color:var(--muted)}

/* hero showreel */
.reel video{background:#1E65D9}

/* client logos */
.mqt{align-items:center}
.mqt img.cl{height:var(--h);width:auto;margin-right:64px}
.dup{display:contents}

/* form */
.tlb{background:none;border:0;padding:0;font:inherit;font-weight:700;cursor:pointer;text-align:left}
.vB .scale .tlb{margin-top:28px;color:#65D2FF}
.ferr{display:block;margin-top:2px;font-size:13px;font-weight:600;color:#C2410C}
.opts + .ferr{margin:-10px 0 16px}
.fld .bad{box-shadow:inset 0 0 0 2px #C2410C !important}
.hp{position:absolute !important;left:-9999px;width:1px;height:1px;opacity:0}
.cal{margin-top:16px;border-radius:14px;overflow:hidden;background:#F4F7FC}
.cal iframe{display:block;width:100%;height:660px;border:0}
.fdone legend{font-size:26px}
.fdone:focus{outline:none}
.btn[disabled]{opacity:.7;cursor:progress}
.spin{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

@media (max-width:1080px){
  .hdr .nav,.hdr .hcta{display:none}
  .hdr .hr{display:flex}
  .root .hero{margin:8px 12px 0}
  .mqt img.cl{height:calc(var(--h) * .72);margin-right:40px}
  .ftr{padding-bottom:40px}
}
@media (max-width:640px){
  .root .reel{aspect-ratio:9/16}
  .cal iframe{height:760px}
  .root .card.form{padding:22px 18px}
}
@media (max-width:400px){
  .root .hin{gap:8px;padding:0 12px}
  .root .logo img{width:132px}
  .hdr .hr .btn-s{padding:0 12px;font-size:13px}
}

/* Montserrat runs wider than the design's Metropolis: keep the hub labels apart on phones */
@media (max-width:1080px){.root .node{font-size:11px !important}}
.shot picture{display:block}
@media (max-width:1080px){
  .root .ftr{padding-bottom:40px}
  .root .sis{flex-wrap:wrap;gap:4px 16px;white-space:nowrap}
}

/* review fixes, 1 Oct */
.dd:focus-within .ddp{opacity:1;visibility:visible;transform:none}
.dd:focus-within .chev{transform:rotate(180deg)}
.vB .scale{align-items:start}
.vB .scale .sc-copy{padding-top:32px}
.mq + .mq{margin-top:14px}
.fbot{gap:12px 24px}
.sis{gap:12px}
@media (min-width:1081px) and (max-width:1320px){
  .vB .ftr{padding-left:40px;padding-right:40px}
  .fg{grid-template-columns:.8fr 1.2fr 1.1fr 1.1fr;gap:36px 28px}
  .fbrand{grid-column:1/-1}
}
@media (min-width:641px) and (max-width:1080px){
  .root .ctas{flex-direction:row}
  .root .ctas .btn{width:auto}
  .root.vB .svcs{grid-template-columns:1fr 1fr}
  .root.vB .svc.s0{grid-column:1/-1;min-height:420px}
  .root.vB .tqs{grid-template-columns:1fr 1fr !important}
  .root.vB .cases{grid-template-columns:1fr 1fr !important}
  .root .hero .reel{max-width:720px}
}
@media (max-width:420px){.vB .pbig{font-size:44px}}
@media (max-width:1400px){.sis{margin-left:0}}
