/* Scoped styling deliberately fixes the approved palette instead of inheriting CTA colors. */
.nla-page{--nla-orange:#ff5000;--nla-ink:#111a2a;--nla-muted:#62738b;--nla-line:#dbe2eb;box-sizing:border-box!important;width:100%;max-width:1212px;margin:0 auto;padding:18px 24px 20px;background:#fff;color:var(--nla-ink);font:400 14px/1.45 Arial,Helvetica,sans-serif;text-transform:none;letter-spacing:normal}
.nla-page *,.nla-page *:before,.nla-page *:after{box-sizing:border-box}.nla-page h2,.nla-page h3,.nla-page h4,.nla-page legend{font-family:Arial,Helvetica,sans-serif!important;color:#111a2a!important;font-weight:700!important;text-transform:none!important;letter-spacing:-.4px!important;padding:0!important;border:0!important;background:none!important;box-shadow:none!important}
.nla-page h2{font-size:44px!important;line-height:1.06!important;margin:0 0 10px!important;letter-spacing:-1.5px!important}.nla-page h3{font-size:23px!important;line-height:1.2!important;margin:0 0 8px!important}.nla-page p{margin:0;padding:0}.nla-intro h3{font-size:20px!important;margin-bottom:8px!important}.nla-intro p{font-size:16px;color:var(--nla-muted);line-height:1.45!important}.nla-intro{margin-bottom:18px}.nla-notice{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#fff0e5;border-radius:7px;padding:12px 16px;color:#33445b;font-size:13px;margin-top:2px}.nla-notice strong{color:#ed4900;white-space:nowrap}.nla-notice-icon{display:grid;place-items:center;border:2px solid #ff5000;border-radius:4px;width:27px;height:27px;color:#ff5000;font-size:18px}.nla-hours{display:flex;flex-wrap:wrap;gap:14px 28px;padding:16px 0 11px;color:var(--nla-muted);font-size:13px}.nla-page fieldset{border:0!important;padding:0!important;margin:0!important;min-width:0}.nla-page legend{font-size:23px!important;line-height:1.25!important;float:none!important;width:auto!important;margin:0 0 11px!important}.nla-form{margin:0!important}.nla-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.nla-page label{font:400 13px/1.4 Arial,Helvetica,sans-serif!important;color:#142033;text-transform:none!important;letter-spacing:normal!important;margin:0}
.nla-page .nla-service{display:flex;position:relative;gap:14px;padding:19px 15px 12px;min-height:246px;border:1px solid var(--nla-line);border-radius:8px;cursor:pointer;background:white}.nla-page .nla-service.is-selected{border-color:#ff5000;background:#fff8f3}.nla-page input[type=radio]{appearance:auto!important;width:19px!important;height:19px!important;min-height:0!important;flex-shrink:0;margin:0!important;accent-color:#ff5000!important}.nla-service-body{display:flex;flex-direction:column;min-width:0;flex:1}.nla-service-heading{display:flex;gap:15px;align-items:start;margin-bottom:13px}.nla-service-heading svg{width:36px;height:36px;flex-shrink:0;stroke:#ff5000;fill:none;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.nla-service-heading strong{display:block;font-size:16px;line-height:1.3;font-weight:700}.nla-service-heading b{display:block;color:#ff5000;font-size:20px;margin-top:5px}.nla-service-body>p{color:var(--nla-muted);font-size:13px}.nla-page .nla-service ul{margin:12px 0 14px!important;padding:0!important;list-style:none!important;color:#526780;font-size:13px}.nla-page .nla-service li{position:relative;list-style:none!important;margin:0 0 4px!important;padding:0 0 0 19px!important;line-height:1.4}.nla-service li:before{content:'✓';color:#ff5000;position:absolute;left:0;font-size:16px;top:-3px}.nla-service small{display:block;margin-top:auto;border-top:1px solid var(--nla-line);padding-top:8px;color:#78879c;font-size:11px}.nla-service small.nla-advance{color:#e54c00;background:#ffecd8;padding:8px 10px;border:0;border-radius:5px;align-self:start;font-size:12px}.nla-scope{font-size:11px;color:#78879c;padding:6px 0 12px!important}.nla-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:stretch}.nla-panel{padding:14px 20px 8px;background:#f7f9fb;border:1px solid var(--nla-line);border-radius:8px;min-width:0}.nla-lead{font-size:13px;color:#ed4c00!important;font-weight:600;margin:0 0 6px!important}.nla-calendar{border:1px solid var(--nla-line);border-radius:7px;padding:7px;background:#fff}.nla-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 5px 4px}.nla-month{font-size:18px}.nla-page .nla-calendar-head button{background:none!important;border:0!important;color:#142033!important;box-shadow:none!important;padding:0!important;width:34px;min-height:34px;height:34px;font:400 31px/1 Arial!important;cursor:pointer}.nla-legend{display:flex;flex-wrap:wrap;gap:7px 26px;justify-content:center;padding:0 0 7px;font-size:11px;color:#50617b}.nla-legend span{display:flex;gap:5px;align-items:center;white-space:nowrap}.nla-legend i{display:inline-block;width:26px;height:20px;border-radius:3px;border:1px solid #a9b6c7;background:#fff}.nla-legend .selected{background:#ff5000;border-color:#ff5000}.nla-legend .full{background:#ffe6e9;border-color:#ffb5bc}.nla-legend .unavailable{background:#e0e4e8;border-color:#d9dde2}.nla-weekdays,.nla-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.nla-weekdays span{color:#6c7f98;font-size:11px;text-align:center;padding:3px 0 5px}.nla-page .nla-day,.nla-page .nla-blank{min-height:38px;border:1px solid #e7edf3!important;border-radius:4px!important;min-width:0}.nla-page .nla-day{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:3px 1px!important;background:#fff!important;color:#112037!important;font:500 13px/1.2 Arial,sans-serif!important;letter-spacing:normal!important;text-transform:none!important;box-shadow:none!important;cursor:pointer}.nla-day small{font-size:9px;line-height:1.2;white-space:normal}.nla-page .nla-day.is-unavailable{background:#e2e5e9!important;color:#64718a!important}.nla-page .nla-day.is-full{background:#ffe7e9!important;color:#c72c3c!important}.nla-page .nla-day.is-closed,.nla-page .nla-day.is-past,.nla-page .nla-day.is-lead{background:#f3f5f7!important;color:#a0a8b6!important}.nla-page .nla-day.is-selected{background:#ff5000!important;color:white!important;border-color:#ff5000!important}.nla-page button:disabled{cursor:not-allowed!important}.nla-page .nla-calendar-head button:disabled{opacity:.35}.nla-calendar-status,.nla-time-help{font-size:11px;color:#687c97;margin:6px 0 9px!important}.nla-time legend{font-size:13px!important;letter-spacing:0!important;margin:0 0 5px!important}.nla-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.nla-page .nla-slot{display:flex;flex-direction:column;justify-content:center;align-items:center;border:1px solid #d7e0ea!important;background:#fff!important;color:#182640!important;font:500 12px/1.3 Arial,sans-serif!important;min-height:46px;padding:5px 2px!important;border-radius:5px!important;box-shadow:none!important;text-transform:none!important;letter-spacing:0!important;cursor:pointer;white-space:nowrap}.nla-slot small{font-size:10px}.nla-page .nla-slot.is-unavailable,.nla-page .nla-slot.is-past{background:#e5e8ec!important;color:#748098!important}.nla-page .nla-slot.is-booked{background:#ffe7e9!important;color:#c72c3c!important}.nla-page .nla-slot.is-selected{background:#ff5000!important;color:#fff!important;border-color:#ff5000!important}.nla-language-help{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--nla-line);border-radius:7px;padding:10px 12px;margin-top:12px}.nla-language-help svg{stroke:#ff5000;fill:none;stroke-width:2.2;width:43px;height:43px;flex-shrink:0}.nla-language-help strong{font-size:13px}.nla-language-help p{color:#687b95;font-size:11px;margin-top:2px}.nla-fields{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}.nla-wide{grid-column:1/-1}.nla-page .nla-fields label{display:block;line-height:1.2!important}.nla-page .nla-fields input,.nla-page .nla-fields select,.nla-page .nla-fields textarea{display:block;width:100%!important;max-width:100%;min-width:0;margin:3px 0 0!important;border:1px solid #d5deea!important;border-radius:5px!important;background:#fff!important;box-shadow:none!important;color:#182640!important;font:400 13px/1.4 Arial,sans-serif!important;padding:6px 10px!important;min-height:32px!important;height:32px!important;outline-offset:2px}.nla-page .nla-fields textarea{height:54px!important;resize:vertical}.nla-page input::placeholder,.nla-page textarea::placeholder{color:#8e9bb0!important;opacity:1}.nla-summary{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--nla-line);border-radius:6px;padding:12px;margin-top:10px}.nla-summary h4{font-size:16px!important;margin:0 0 4px!important}.nla-summary p{font-size:13px;line-height:1.5}.nla-summary-right{text-align:right;flex-shrink:0}.nla-summary-right span{display:inline-block;background:#ffeacf;border-radius:5px;padding:6px 8px;color:#ec4b00;font-size:10px}.nla-summary-price{display:block;font-size:21px;color:#ff5000;margin-top:2px}.nla-page .nla-ack{display:flex;align-items:start;gap:9px;color:#62738b;margin:17px 0 12px!important;font-size:12px!important}.nla-page .nla-ack input{appearance:auto!important;accent-color:#ff5000;width:18px;height:18px;min-height:0!important;flex-shrink:0;margin:0!important}.nla-page .nla-submit{display:block!important;width:100%!important;min-height:48px!important;margin:0!important;background:#ff5000!important;background-image:none!important;color:#fff!important;border:0!important;border-radius:6px!important;padding:12px 20px!important;font:700 16px/1.4 Arial,sans-serif!important;text-transform:uppercase!important;box-shadow:none!important;letter-spacing:0!important;cursor:pointer}.nla-page .nla-submit:disabled{opacity:.55}.nla-page .nla-submit:not(:disabled):hover{background:#e74900!important}.nla-page button:before,.nla-page button:after{display:none!important}.nla-submit-help{color:#78879d;font-size:11px;text-align:center;margin-top:10px!important}.nla-result{font-size:13px;color:#a12a35;white-space:pre-line;margin-top:12px!important}.nla-result.is-success{background:#edf8ef;border:1px solid #c9e6d0;border-radius:7px;padding:12px;color:#1b6235}.nla-result:empty{display:none}.nla-page .nla-reload{font:600 13px Arial,sans-serif!important;background:#fff!important;color:#37465b!important;border:1px solid #c4cfdd!important;border-radius:5px!important;padding:8px 12px!important;margin-top:10px}.nla-footer{border-top:1px solid #e1e7ed;text-align:center;margin-top:16px;padding-top:12px;font-size:10px;color:#98a5b8}.nla-page .nla-trap{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;pointer-events:none!important}.nla-page button:focus-visible,.nla-page input:focus-visible,.nla-page select:focus-visible,.nla-page textarea:focus-visible{outline:3px solid #ffae86!important;outline-offset:3px!important}
@media(max-width:1120px){.nla-service-heading{gap:10px}.nla-service-heading svg{width:28px;height:28px}.nla-page .nla-service{gap:10px;padding:16px 12px}.nla-panel{padding:16px 12px}.nla-summary{flex-direction:column}.nla-summary-right{display:flex;justify-content:space-between;align-items:center;text-align:left}.nla-page .nla-slot{font-size:11px!important}.nla-legend{gap:5px 8px}}
@media(max-width:800px){.nla-page{padding:24px 14px}.nla-page h2{font-size:40px!important}.nla-service-grid{grid-template-columns:1fr}.nla-page .nla-service{min-height:0}.nla-service-heading svg{width:36px;height:36px}.nla-service-body>p{margin-left:51px}.nla-page .nla-service-body ul{margin:12px 0!important}.nla-form-grid{grid-template-columns:1fr}.nla-panel{padding:18px}.nla-legend{gap:8px 14px}.nla-page .nla-day,.nla-page .nla-blank{min-height:50px!important}.nla-hours{gap:8px 20px}.nla-notice{align-items:start}.nla-notice>span:last-child{flex-basis:100%}.nla-summary{flex-direction:row}.nla-summary-right{display:block;text-align:right}.nla-page .nla-slot{font-size:12px!important}}
@media(max-width:430px){.nla-page{padding:20px 10px}.nla-panel{padding:13px 9px}.nla-fields{grid-template-columns:1fr}.nla-summary{flex-direction:column}.nla-summary-right{display:flex;justify-content:space-between}.nla-legend{justify-content:flex-start;gap:5px 9px;font-size:9px}.nla-legend i{width:14px;height:12px}.nla-day small{font-size:8px}.nla-slots{grid-template-columns:1fr 1fr}.nla-language-help{gap:8px}.nla-intro p{font-size:15px}}
@media(prefers-reduced-motion:reduce){.nla-page *{scroll-behavior:auto!important;transition:none!important}}
.nla-page [hidden],.nla-page .nla-lead[hidden],.nla-page .nla-reload[hidden]{display:none!important}

/* Keep the approved controls legible when the host theme styles form elements. */
.nla-page .nla-service input[type=radio],.nla-page .nla-ack input{padding:0!important;box-shadow:none!important;display:block!important;position:static!important;opacity:1!important;float:none!important;transform:none!important}
.nla-page .nla-service input[type=radio]{min-width:19px!important;max-width:19px!important;max-height:19px!important}
.nla-page .nla-ack input{width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;max-height:18px!important}
.nla-page .nla-notice-icon{border:0;flex-shrink:0}
.nla-notice-icon svg,.nla-advance svg,.nla-summary-right svg{width:25px;height:25px;fill:none;stroke:#ff5000;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.nla-hours>span{display:flex;align-items:center;gap:10px}
.nla-hours svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.6;fill:none;flex-shrink:0}
.nla-page .nla-advance,.nla-page .nla-summary-right>span{display:inline-flex;align-items:center;gap:8px}
.nla-page .nla-advance svg{width:21px;height:21px}.nla-page .nla-summary-right svg{width:18px;height:18px}
.nla-page .nla-lead:before{content:'!';display:inline-grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#ff5000;color:white;margin-right:9px;font-weight:700}
.nla-page .nla-summary>div:first-child{min-width:0;overflow-wrap:anywhere}
.nla-page .nla-service:has(input:focus-visible){outline:3px solid #ffae86;outline-offset:3px}
@media(max-width:800px){.nla-page .nla-notice>span:last-child{flex-basis:100%}.nla-page .nla-service small{margin-top:8px}.nla-page .nla-service-heading{margin-bottom:10px}}


/* v1.0.1 — extra spacing in appointment intro area */
.nla-page .nla-intro{
  margin-bottom:18px !important;
}
.nla-page h2{
  margin-bottom:10px !important;
}
.nla-page .nla-intro h3{
  margin-bottom:8px !important;
}
.nla-page .nla-intro p{
  line-height:1.45 !important;
}
.nla-page .nla-notice{
  margin-top:2px !important;
  padding-top:12px !important;
  padding-bottom:12px !important;
}
.nla-page .nla-hours{
  padding-top:16px !important;
  padding-bottom:11px !important;
}
@media(max-width:800px){
  .nla-page{
    padding-top:26px !important;
  }
  .nla-page h2{
    margin-bottom:10px !important;
  }
  .nla-page .nla-intro{
    margin-bottom:16px !important;
  }
}


/* =========================================================
   v1.0.2 — visibly increased intro spacing
   ========================================================= */

.nla-page{
  padding-top:26px !important;
}

.nla-page .nla-intro{
  margin-bottom:28px !important;
}

.nla-page .nla-intro h2{
  margin:0 0 18px !important;
}

.nla-page .nla-intro h3{
  margin:0 0 12px !important;
  line-height:1.25 !important;
}

.nla-page .nla-intro p{
  margin:0 !important;
  line-height:1.55 !important;
}

.nla-page .nla-notice{
  margin-top:0 !important;
  margin-bottom:8px !important;
  padding:15px 18px !important;
}

.nla-page .nla-hours{
  padding:18px 0 16px !important;
}

.nla-page .nla-services{
  margin-top:8px !important;
}

@media(max-width:800px){
  .nla-page{
    padding-top:28px !important;
  }
  .nla-page .nla-intro{
    margin-bottom:24px !important;
  }
  .nla-page .nla-intro h2{
    margin-bottom:16px !important;
  }
  .nla-page .nla-intro h3{
    margin-bottom:10px !important;
  }
  .nla-page .nla-notice{
    padding:14px 15px !important;
  }
  .nla-page .nla-hours{
    padding:16px 0 14px !important;
  }
}


/* =========================================================
   v1.0.3 — Nordline Appointment purple / blue theme
   ========================================================= */

.nla-page{
  --nla-orange:#4a2bbf !important;
  --nla-ink:#111a2a !important;
  --nla-muted:#66758f !important;
  --nla-line:#dbe5f0 !important;
  background:#fff !important;
}

.nla-page h2,
.nla-page h3,
.nla-page h4,
.nla-page legend{
  color:#111a2a !important;
}

.nla-intro p,
.nla-hours,
.nla-scope,
.nla-calendar-status,
.nla-time-help,
.nla-language-help p,
.nla-submit-help,
.nla-footer{
  color:#66758f !important;
}

.nla-notice{
  background:#f3eeff !important;
  color:#36445c !important;
}
.nla-notice strong{
  color:#4a2bbf !important;
}
.nla-notice-icon{
  color:#4a2bbf !important;
}
.nla-notice-icon svg{
  stroke:#4a2bbf !important;
}

.nla-hours svg{
  color:#6c7c96 !important;
}

.nla-page .nla-service{
  background:#fff !important;
  border-color:#dbe5f0 !important;
  box-shadow:0 4px 18px rgba(33,45,86,.03) !important;
}

.nla-page .nla-service.is-selected{
  border-color:#4a2bbf !important;
  background:#f3eeff !important;
  box-shadow:0 8px 18px rgba(74,43,191,.08) !important;
}

.nla-page input[type=radio],
.nla-page .nla-ack input{
  accent-color:#4a2bbf !important;
}

.nla-service-heading svg,
.nla-language-help svg,
.nla-notice-icon svg,
.nla-advance svg,
.nla-summary-right svg{
  stroke:#4a2bbf !important;
}

.nla-service-heading b,
.nla-lead,
.nla-summary-price{
  color:#4a2bbf !important;
}

.nla-service li:before{
  color:#4a2bbf !important;
}

.nla-service small.nla-advance{
  color:#4a2bbf !important;
  background:#ede8ff !important;
}

.nla-panel{
  background:linear-gradient(180deg,#f6faff 0%,#f4f8ff 100%) !important;
  border-color:#dbe5f0 !important;
}

.nla-calendar{
  border-color:#dbe5f0 !important;
  background:#fff !important;
}

.nla-legend{
  color:#5b6c87 !important;
}
.nla-legend i{
  border-color:#afbdd1 !important;
}
.nla-legend .selected{
  background:#4a2bbf !important;
  border-color:#4a2bbf !important;
}
.nla-legend .full{
  background:#efe9ff !important;
  border-color:#d6c9ff !important;
}
.nla-legend .unavailable{
  background:#e7edf4 !important;
  border-color:#dbe3ed !important;
}

.nla-page .nla-day,
.nla-page .nla-blank{
  border-color:#e2e9f1 !important;
}

.nla-page .nla-day{
  background:#fff !important;
  color:#112037 !important;
}
.nla-page .nla-day.is-unavailable{
  background:#e7ecf1 !important;
  color:#74839a !important;
}
.nla-page .nla-day.is-full{
  background:#efe9ff !important;
  color:#6040cf !important;
}
.nla-page .nla-day.is-closed,
.nla-page .nla-day.is-past,
.nla-page .nla-day.is-lead{
  background:#f3f6f9 !important;
  color:#a0a8b6 !important;
}
.nla-page .nla-day.is-selected{
  background:#4a2bbf !important;
  color:#fff !important;
  border-color:#4a2bbf !important;
}

.nla-page .nla-slot{
  border-color:#d7e0ea !important;
  background:#fff !important;
  color:#182640 !important;
}
.nla-page .nla-slot.is-unavailable,
.nla-page .nla-slot.is-past{
  background:#e5e8ec !important;
  color:#748098 !important;
}
.nla-page .nla-slot.is-booked{
  background:#efe9ff !important;
  color:#6040cf !important;
}
.nla-page .nla-slot.is-selected{
  background:#4a2bbf !important;
  color:#fff !important;
  border-color:#4a2bbf !important;
}

.nla-language-help{
  background:#fff !important;
  border-color:#dbe5f0 !important;
}

.nla-page .nla-fields input,
.nla-page .nla-fields select,
.nla-page .nla-fields textarea{
  border-color:#d5deea !important;
  background:#fff !important;
}
.nla-page button:focus-visible,
.nla-page input:focus-visible,
.nla-page select:focus-visible,
.nla-page textarea:focus-visible{
  outline:3px solid #b7a8ff !important;
  outline-offset:3px !important;
}

.nla-summary{
  border-color:#dbe5f0 !important;
  background:#fff !important;
}
.nla-summary-right span{
  background:#ede8ff !important;
  color:#4a2bbf !important;
}

.nla-page .nla-submit{
  background:linear-gradient(180deg,#5630d1 0%,#4323ad 100%) !important;
  box-shadow:0 10px 20px rgba(74,43,191,.12) !important;
}
.nla-page .nla-submit:not(:disabled):hover{
  background:linear-gradient(180deg,#5630d1 0%,#4323ad 100%) !important;
  filter:brightness(.98) !important;
}

.nla-result.is-success{
  background:#f3f8ff !important;
  border-color:#d6e4f6 !important;
  color:#23507c !important;
}

.nla-page .nla-reload{
  border-color:#c8d4e4 !important;
  color:#3f4d63 !important;
}

.nla-page .nla-lead:before{
  background:#4a2bbf !important;
}

/* Keep intro spacing from v1.0.2 */
.nla-page{
  padding-top:26px !important;
}
