/* V2 "Monument": light, monumental, editorial. */
html { background: #FFFFFF; }
[data-pencil-name^="NPF V2"] { isolation: isolate; left: 0 !important; top: 0 !important; overflow-x: clip; }

.v2-can { position: fixed; inset: 0; z-index: 40; pointer-events: none; will-change: opacity; }
.v2-can canvas { width: 100%; height: 100%; display: block; }

.v2-hit { position: absolute; z-index: 5; cursor: grab; touch-action: pan-y; }
.v2-hit:active { cursor: grabbing; }

.v2-custom-stage { background: #EFF3FE; }
.v2-custom-stage [data-pencil-name="Left"] { position: absolute; top: 56px; left: 60px; width: 640px; z-index: 3; pointer-events: none; }
.v2-custom-stage [data-pencil-name="Options"] { position: absolute; top: 50%; right: 60px; width: 600px; z-index: 4; }
.v2-custom-stage [data-pencil-name="Spec pill"] { position: absolute; left: 60px; bottom: 36px; z-index: 3; pointer-events: none; }

.v2-process-stage { background: #0D1D62; }
.v2-process-stage [data-pencil-name="Header"] { position: absolute; top: 52px; left: 0; z-index: 3; pointer-events: none; }
.v2-process-stage [data-pencil-name="Track"] { position: absolute !important; top: 0; left: 0; height: 100% !important; width: 4320px !important; display: flex; will-change: transform; }
.v2-process-stage [data-pencil-name^="Step "] { width: 1440px !important; flex: 0 0 1440px !important; height: 100% !important; padding: 178px 60px 60px 60px !important; border: 0 !important; box-sizing: border-box; }
.v2-process-stage [data-pencil-name="Number"] { font-size: 236px !important; line-height: 1 !important; color: #FFFFFF !important; }
.v2-process-stage [data-pencil-name="Title"] { font-size: 40px !important; line-height: 1.12 !important; width: 700px !important; }
.v2-process-stage [data-pencil-name="Desc"] { width: 640px !important; font-size: 18px !important; color: #E6EBFB !important; }
.v2-progress { position: absolute; left: 60px; right: 60px; bottom: 30px; height: 2px; background: rgba(255,255,255,.2); z-index: 3; }
.v2-progress i { display: block; height: 100%; background: #FAE250; transform-origin: left; transform: scaleX(0); }

.v2-sphoto { position: absolute; inset: 0; background-size: cover; background-position: center; will-change: clip-path, transform; }
[data-pencil-name="Photo frame"] [data-pencil-name="Flag photo"] { position: absolute !important; z-index: 3; transition: opacity .3s linear; }
[data-pencil-name^="Service "] { cursor: default; }
[data-pencil-name^="Service "] [data-pencil-name="Title"] { transition: color .35s linear; }
[data-pencil-name^="Service "] [data-pencil-name="Bullets"] { transition: opacity .35s linear; }

.v2-bgimg { position: absolute; inset: -8% 0; background-size: cover; background-position: center; will-change: transform; }
[data-pencil-name="Logistics band"] [data-pencil-name="Photo"] [data-pencil-name="Flag photo"] { position: absolute !important; z-index: 3; }

.v2-badge { transition: box-shadow .3s linear; }
.v2-badge [data-pencil-name="Image"] { transition: transform .7s cubic-bezier(.22,1,.36,1); }
.v2-badge:hover { box-shadow: inset 0 0 0 1px #2C4ED8; }
.v2-badge:hover [data-pencil-name="Image"] { transform: scale(1.1); }

.v2-logo { transition: border-color .3s linear; }
.v2-logo [data-pencil-name="Image"] { transition: transform .7s cubic-bezier(.22,1,.36,1); }
.v2-logo:hover { border-color: #2C4ED8 !important; }
.v2-logo:hover [data-pencil-name="Image"] { transform: scale(1.08); }

.v2-chip { cursor: pointer; }
.m-nav [data-pencil-name="Logo"] { flex-shrink: 0; }

@media (prefers-reduced-motion: reduce) {
  .v2-can { display: none; }
}

/* ---------- working forms ---------- */
.m-input::placeholder { color: #BAC4F1; opacity: 1; }
.m-input:-webkit-autofill { -webkit-text-fill-color: #F7F9FE; transition: background-color 9999s 0s; }
.m-select { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; font: 14px Manrope, system-ui, sans-serif; color: #0D1D62; }
.m-field-box { transition: border-color .25s ease, box-shadow .25s ease; }
.m-field-box:focus-within { border-color: #FAE250 !important; box-shadow: 0 0 0 3px rgba(250, 226, 80, .22); }
.m-field-box.m-invalid { border-color: #FF7A66 !important; box-shadow: 0 0 0 3px rgba(255, 122, 102, .22); }
.m-field-box svg { pointer-events: none; }
.m-trap { position: absolute !important; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.m-form-status { font: 600 13px/1.4 Manrope, system-ui, sans-serif; color: #FAE250; min-height: 0; }
.m-form-status:empty { display: none; }
.m-form-status.is-bad { color: #FF9C8C; }
.m-form-status.is-overlay { position: absolute; bottom: 1px; font-size: 11px; white-space: nowrap; }
[data-pencil-name="Submit"]:focus-visible { outline: 3px solid #FAE250; outline-offset: 3px; }
[data-pencil-name="Submit"].is-done { pointer-events: none; }

/* Unbounded renders wider in browsers than in Pencil: let the Quality sub shrink instead of overflowing */
[data-pencil-name="Quality"] > [data-pencil-name="Header"] > [data-pencil-name="Sub"] { flex-shrink: 1 !important; min-width: 260px; }
