/* NexZion Solutions — Booking UX V24 (2026-10-09).
 * Scoped to the one real demo/consultation form. Existing CRM, nonce, POST URL
 * and server-side validation are deliberately untouched.
 */
body.page-id-2913 .nxz-booking {
 --nxz24-ink:#102b40;
 --nxz24-copy:#3d5669;
 --nxz24-line:#d6e2ea;
 --nxz24-soft:#f6f9fb;
 color:var(--nxz24-ink);
}
body.page-id-2913 .nxz-booking-hero {
 background:#0c273f!important;
 background-image:none!important;
 padding:clamp(44px,5vw,62px) 0!important;
}
body.page-id-2913 .nxz-booking-hero h1 {
 max-width:18ch!important;
 font-weight:790!important;
 letter-spacing:-.034em!important;
 font-size:clamp(36px,4.2vw,54px)!important;
 line-height:1.13!important;
 text-wrap:balance!important;
}
body.page-id-2913 .nxz-booking-hero p {
 max-width:60ch!important;
 font-size:clamp(16px,1.5vw,17px)!important;
 line-height:1.67!important;
}
body.page-id-2913 .nxz-booking-actions a{
 border-radius:9px!important;
 min-height:50px!important;
 font-size:14.5px!important;
 font-weight:770!important;
}
body.page-id-2913 .nxz-booking-options,
body.page-id-2913 .nxz-booking-faq {
 background:var(--nxz24-soft)!important;
}
body.page-id-2913 .nxz-booking-options{
 padding:clamp(36px,4.3vw,51px) 0!important;
}
body.page-id-2913 .nxz-booking-options h2{
 font-size:clamp(25px,3vw,35px)!important;
 letter-spacing:-.028em!important;
 font-weight:790!important;
 margin:0 0 10px!important;
 line-height:1.18!important;
}
body.page-id-2913 .nxz-booking-options-hint{
 max-width:62ch;
 margin:0 0 20px!important;
 font-size:14.5px!important;
 line-height:1.65!important;
 color:var(--nxz24-copy)!important;
}
body.page-id-2913 .nxz-booking-grid{
 display:grid!important;
 grid-template-columns:repeat(4,minmax(0,1fr))!important;
 gap:10px!important;
}
body.page-id-2913 .nxz-booking-grid button{
 display:flex!important;
 flex-direction:column!important;
 align-items:flex-start!important;
 justify-content:flex-start!important;
 gap:7px!important;
 min-width:0!important;
 min-height:109px!important;
 padding:16px!important;
 border:1px solid var(--nxz24-line)!important;
 border-radius:10px!important;
 box-shadow:none!important;
 color:var(--nxz24-ink)!important;
 background:#fff!important;
 text-align:left!important;
 line-height:1.4!important;
 transition:border-color .16s ease,background-color .16s ease!important;
}
body.page-id-2913 .nxz-booking-grid button:hover{
 border-color:#9eb9c9!important;
 background:#f9fcfd!important;
}
body.page-id-2913 .nxz-booking-grid button:focus-visible{
 outline:3px solid #146b94!important;
 outline-offset:3px!important;
}
body.page-id-2913 .nxz-booking-grid button:is(.is-selected,[aria-pressed="true"]){
 background:#f0f6f5!important;
 border:2px solid #24647f!important;
 padding:15px!important;
 box-shadow:none!important;
}
body.page-id-2913 .nxz-booking-grid button strong {
 color:#17364b!important;
 font-size:14px!important;
 line-height:1.35!important;
 font-weight:780!important;
 margin:0!important;
 text-wrap:pretty;
}
body.page-id-2913 .nxz-booking-grid button span {
 color:#526a7a!important;
 font-size:12.5px!important;
 line-height:1.55!important;
 font-weight:460!important;
 margin:0!important;
}
body.page-id-2913 .nxz-booking-request{
 padding:clamp(40px,5vw,65px) 0!important;
}
body.page-id-2913 .nxz-booking-request-grid{
 gap:clamp(25px,4vw,48px)!important;
}
body.page-id-2913 .nxz-booking-intro h2{
 color:#13354c!important;
 font-size:clamp(25px,2.7vw,34px)!important;
 line-height:1.2!important;
 font-weight:785!important;
 letter-spacing:-.027em!important;
 text-wrap:balance!important;
}
body.page-id-2913 .nxz-booking-intro p,
body.page-id-2913 .nxz-booking-intro li{
 color:var(--nxz24-copy)!important;
 line-height:1.7!important;
 font-size:14.5px!important;
}
body.page-id-2913 .nxz-booking-intro a{
 color:#145579!important;
 text-decoration:underline!important;
 text-underline-offset:3px!important;
 overflow-wrap:anywhere!important;
}
body.page-id-2913 .nxz-booking-steps{
 border-radius:10px!important;
 border:1px solid var(--nxz24-line)!important;
 background:#fff!important;
}
body.page-id-2913 .nxz-booking-steps summary{
 cursor:pointer;
 padding:16px!important;
 min-height:49px!important;
 font-size:14px!important;
 line-height:1.4!important;
 font-weight:770!important;
}
body.page-id-2913 .nxz-booking-form-card{
 padding:clamp(19px,2.5vw,29px)!important;
 border:1px solid var(--nxz24-line)!important;
 border-radius:13px!important;
 background:#f9fbfc!important;
 box-shadow:none!important;
 scroll-margin-top:102px!important;
}
body.page-id-2913 .nxz-booking-form-card form{
 min-width:0!important;
}
body.page-id-2913 .nxz-booking-form-card :is(input:not([type=hidden]),select,textarea){
 box-sizing:border-box!important;
 max-width:100%!important;
 font-size:16px!important;
 line-height:1.45!important;
 color:#142f43!important;
 background:#fff!important;
 border-color:#aebfc9!important;
 border-radius:9px!important;
}
body.page-id-2913 .nxz-booking-form-card :is(input:not([type=hidden]),select){
 min-height:49px!important;
}
body.page-id-2913 .nxz-booking-form-card :is(input,select,textarea):focus-visible{
 outline:3px solid #186f9b!important;
 outline-offset:2px!important;
 border-color:#166a93!important;
}
body.page-id-2913 .nxz-booking-form-card .nxz-ci-submit{
 min-height:51px!important;
 background:#b6ff00!important;
 border-radius:9px!important;
 color:#102b40!important;
 box-shadow:none!important;
 font-weight:790!important;
}
body.page-id-2913 .nxz-booking-form-card .nxz-ci-submit:focus-visible{
 outline-color:#145c84!important;
}
body.page-id-2913 .nxz-booking-form-card .nxz-v24-validation-summary{
 border-left:3px solid #ad4b39!important;
 border-top:1px solid #e8c6be!important;
 border-right:1px solid #e8c6be!important;
 border-bottom:1px solid #e8c6be!important;
 border-radius:8px!important;
 background:#fff8f5!important;
 color:#7c3328!important;
 font-size:13px!important;
 font-weight:690!important;
 line-height:1.55!important;
 padding:11px 13px!important;
 margin:10px 0 16px!important;
}
body.page-id-2913 .nxz-booking-form-card .nxz-v24-validation-summary[hidden],
body.page-id-2913 .nxz-booking-form-card .nxz-v24-field-error[hidden]{
 display:none!important;
}
body.page-id-2913 .nxz-booking-form-card .nxz-v24-field-error{
 display:block!important;
 margin:6px 0 1px!important;
 color:#a04435!important;
 font-size:12.5px!important;
 font-weight:670!important;
 line-height:1.5!important;
}
body.page-id-2913 .nxz-booking-form-card :is(input,textarea,select)[aria-invalid="true"]{
 border-color:#b34f3e!important;
 box-shadow:0 0 0 2px rgba(179,79,62,.12)!important;
}
body.page-id-2913 .nxz-booking-privacy{
 line-height:1.6!important;
}
body.page-id-2913 .nxz-booking-faq-grid{
 gap:18px!important;
}
body.page-id-2913 .nxz-booking-faq-grid article{
 border-top:2px solid #a9c4d0!important;
 padding-top:16px!important;
}
body.page-id-2913 .nxz-booking-faq-grid h3{
 color:#18364b!important;
 font-weight:780!important;
 font-size:18px!important;
 margin:0 0 8px!important;
}
@media(min-width:1060px){
 body.page-id-2913 .nxz-booking-intro{
  position:sticky;
  top:98px;
 }
}
@media(min-width:701px) and (max-width:1080px){
 body.page-id-2913 .nxz-booking-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
 }
}
@media(min-width:501px) and (max-width:700px){
 body.page-id-2913 .nxz-booking-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
}
@media(max-width:500px){
 body.page-id-2913 .nxz-booking-wrap{
  width:calc(100% - 32px)!important;
 }
 body.page-id-2913 .nxz-booking-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:9px!important;
 }
 body.page-id-2913 .nxz-booking-grid button{
  padding:13px 12px!important;
  min-height:110px!important;
  gap:5px!important;
 }
 body.page-id-2913 .nxz-booking-grid button:is(.is-selected,[aria-pressed="true"]){
  padding:12px 11px!important;
 }
 body.page-id-2913 .nxz-booking-grid button strong{
  font-size:13px!important;
  line-height:1.32!important;
 }
 body.page-id-2913 .nxz-booking-grid button span{
  font-size:11.5px!important;
  line-height:1.4!important;
 }
 body.page-id-2913 .nxz-booking-hero h1{
  font-size:clamp(33px,8.5vw,40px)!important;
 }
 body.page-id-2913 .nxz-booking-request-grid{
  gap:24px!important;
 }
 body.page-id-2913 .nxz-booking-form-card{
  padding:18px!important;
 }
 body.page-id-2913 .nxz-booking-faq-grid{
  gap:22px!important;
 }
}
@media(prefers-reduced-motion:reduce){
 body.page-id-2913 .nxz-booking-grid button{
  transition:none!important;
 }
}
