.nwcal{--nwc-primary:#001d49;--nwc-accent:#c4a25c;--nwc-accent-text:#7F6530;--nwc-bg:#f7f4ef;--nwc-line:#e3ddd2;font-family:inherit;color:#1b2333;background:#fff;border:1px solid var(--nwc-line);border-top:4px solid var(--nwc-accent);border-radius:14px;padding:26px 28px;box-sizing:border-box;max-width:880px;margin:0 auto;text-align:left;line-height:1.5}
.nwcal *{box-sizing:border-box}
.nwcal h2{font-size:24px;line-height:1.25;margin:0 0 4px;color:var(--nwc-primary)!important;padding:0}
.nwcal h3{font-size:17px;line-height:1.3;margin:0;color:var(--nwc-primary)!important;padding:0}
.nwcal p{margin:0;padding:0}
.nwcal button{font-family:inherit;cursor:pointer}
.nwcal-loading{min-height:360px;display:flex;align-items:center;justify-content:center;color:var(--nwc-primary);font-size:15px}
.nwcal-loading:before{content:"";width:28px;height:28px;margin-right:12px;border:3px solid var(--nwc-line);border-top-color:var(--nwc-accent);border-radius:50%;animation:nwcspin .9s linear infinite}
@keyframes nwcspin{to{transform:rotate(360deg)}}
.nwcal-head{margin-bottom:18px}
.nwcal-head p{color:var(--nwc-accent-text);font-weight:600;font-size:14px}
.nwcal-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px}
.nwcal-month{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.nwcal-nav{width:36px;height:36px;border-radius:50%;border:1px solid var(--nwc-line);background:#fff;color:var(--nwc-primary);font-size:22px;line-height:1;padding:0}
.nwcal-nav:disabled{opacity:.35;cursor:default}
.nwcal-dow,.nwcal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}
.nwcal-dow span{font-size:12px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;padding:4px 0}
.nwcal-day{aspect-ratio:1/1;border:0;border-radius:50%;background:transparent;color:#b8bcc4;font-size:15px;padding:0;max-width:44px;width:100%;margin:0 auto}
.nwcal-day.has{background:var(--nwc-bg);color:var(--nwc-primary);font-weight:700}
.nwcal-day.has:hover{box-shadow:inset 0 0 0 2px var(--nwc-accent)}
.nwcal-day.sel{background:var(--nwc-primary)!important;color:#fff!important}
.nwcal-day:disabled{cursor:default}
.nwcal-tz{font-size:13px;color:#6b7280;margin-top:12px!important}
.nwcal-times h3{margin-bottom:12px}
.nwcal-hint{color:#6b7280;padding-top:40px!important}
.nwcal-slots{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-height:330px;overflow:auto;padding:2px}
.nwcal-slot{border:2px solid var(--nwc-primary);background:#fff;color:var(--nwc-primary);border-radius:10px;padding:11px 8px;font-size:15px;font-weight:700}
.nwcal-slot:hover,.nwcal-slot:focus-visible{background:var(--nwc-primary);color:#fff}
.nwcal button:focus-visible{outline:3px solid var(--nwc-accent);outline-offset:2px}
.nwcal-alt{margin-top:18px!important;padding-top:14px!important;border-top:1px solid var(--nwc-line);font-size:14px;color:#4b5563}
.nwcal-alt a,.nwcal-error a:not(.nwcal-btn){color:var(--nwc-primary)!important;font-weight:700;text-decoration:underline}
.nwcal-form{display:grid;gap:14px}
.nwcal-back{justify-self:start;border:0;background:none;color:var(--nwc-primary);font-weight:700;padding:0;font-size:14px}
.nwcal-when{background:var(--nwc-bg);border-left:4px solid var(--nwc-accent);border-radius:8px;padding:12px 16px;display:flex;flex-direction:column}
.nwcal-when strong{color:var(--nwc-primary)}
.nwcal-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nwcal-field label,.nwcal-states legend{display:block;font-weight:700;font-size:14px;color:var(--nwc-primary);margin-bottom:6px}
.nwcal-field input,.nwcal-field textarea,.nwcal-field select{width:100%;border:1px solid #cfd4dc;border-radius:8px;padding:11px 12px;font-size:16px;font-family:inherit;background:#fff;color:#111}
.nwcal-field input:focus,.nwcal-field textarea:focus,.nwcal-field select:focus{outline:none;border-color:var(--nwc-primary);box-shadow:0 0 0 3px rgba(196,162,92,.35)}
.nwcal-states{border:0;padding:0;margin:0}
.nwcal-states label{display:flex;align-items:flex-start;gap:8px;font-size:15px;margin:6px 0;cursor:pointer}
.nwcal-states input{margin-top:4px;accent-color:var(--nwc-primary)}
.nwcal-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.nwcal-btn{display:inline-block;justify-self:start;background:var(--nwc-btn,var(--nwc-accent))!important;color:var(--nwc-btn-text,var(--nwc-primary))!important;border:0;border-radius:8px;padding:14px 28px;font-size:16px;font-weight:700;text-decoration:none!important}
.nwcal-btn:hover{background:var(--nwc-primary)!important;color:#fff!important}
.nwcal-btn:disabled{opacity:.6;cursor:wait}
.nwcal-status{color:#a11d2b;font-weight:600;min-height:1px}
.nwcal-error{padding:30px 10px;text-align:center;display:grid;gap:14px;justify-items:center}
.nwcal-error .nwcal-alt{border:0;margin:0!important;padding:0!important}
.nwcal-done{text-align:center;padding:30px 10px}
.nwcal-check{width:60px;height:60px;border-radius:50%;background:var(--nwc-primary);color:#fff;font-size:30px;line-height:60px;margin:0 auto 14px}
.nwcal-when-big{font-size:18px;font-weight:700;color:var(--nwc-accent-text);margin:6px 0 10px!important}
@media (max-width:760px){
.nwcal{padding:20px 16px;border-radius:12px}
.nwcal-grid{grid-template-columns:1fr;gap:20px}
.nwcal-row{grid-template-columns:1fr}
.nwcal-slots{max-height:none;grid-template-columns:repeat(2,1fr)}
.nwcal-btn{width:100%;text-align:center}
}
.nwcal .nwcal-field select{height:auto!important;min-height:48px!important;line-height:1.4!important;padding:11px 40px 11px 12px!important;margin:0!important;font-size:16px!important;color:#111!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231F3A5F' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center!important;-webkit-appearance:none!important;appearance:none!important;box-shadow:none;text-overflow:ellipsis;white-space:nowrap}
.nwcal .nwcal-field input{height:auto!important;line-height:1.4!important;margin:0!important}

/* v1.2.2 hardening: re-asserts the calendar styles with high specificity so page sections that reset or restyle everything (e.g. #section * {padding:0!important}) cannot break it */
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3){--nwc-primary:#001d49!important;--nwc-accent:#c4a25c!important;--nwc-accent-text:#7F6530!important;--nwc-bg:#f7f4ef!important;--nwc-line:#e3ddd2!important;font-family:inherit!important;color:#1b2333!important;background:#fff!important;border:1px solid var(--nwc-line)!important;border-top:4px solid var(--nwc-accent)!important;border-radius:14px!important;padding:26px 28px!important;box-sizing:border-box!important;max-width:880px!important;margin:0 auto!important;text-align:left!important;line-height:1.5!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) *{box-sizing:border-box!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) h2{font-size:24px!important;line-height:1.25!important;margin:0 0 4px!important;color:var(--nwc-primary)!important;padding:0!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) h3{font-size:17px!important;line-height:1.3!important;margin:0!important;color:var(--nwc-primary)!important;padding:0!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) p{margin:0!important;padding:0!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) button{font-family:inherit!important;cursor:pointer!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-loading{min-height:360px!important;display:flex!important;align-items:center!important;justify-content:center!important;color:var(--nwc-primary)!important;font-size:15px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-loading:before{content:""!important;width:28px!important;height:28px!important;margin-right:12px!important;border:3px solid var(--nwc-line)!important;border-top-color:var(--nwc-accent)!important;border-radius:50%!important;animation:nwcspin .9s linear infinite!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-head{margin-bottom:18px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-head p{color:var(--nwc-accent-text)!important;font-weight:600!important;font-size:14px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-grid{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important;gap:28px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-month{display:flex!important;align-items:center!important;justify-content:space-between!important;margin-bottom:10px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-nav{width:36px!important;height:36px!important;border-radius:50%!important;border:1px solid var(--nwc-line)!important;background:#fff!important;color:var(--nwc-primary)!important;font-size:22px!important;line-height:1!important;padding:0!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-nav:disabled{opacity:.35!important;cursor:default!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-dow,.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-days{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:6px!important;text-align:center!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-dow span{font-size:12px!important;font-weight:700!important;color:#6b7280!important;text-transform:uppercase!important;letter-spacing:.04em!important;padding:4px 0!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-day{aspect-ratio:1/1!important;border:0!important;border-radius:50%!important;background:transparent!important;color:#b8bcc4!important;font-size:15px!important;padding:0!important;max-width:44px!important;width:100%!important;margin:0 auto!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-day.has{background:var(--nwc-bg)!important;color:var(--nwc-primary)!important;font-weight:700!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-day.has:hover{box-shadow:inset 0 0 0 2px var(--nwc-accent)!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-day.sel{background:var(--nwc-primary)!important;color:#fff!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-day:disabled{cursor:default!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-tz{font-size:13px!important;color:#6b7280!important;margin-top:12px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-times h3{margin-bottom:12px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-hint{color:#6b7280!important;padding-top:40px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-slots{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:10px!important;max-height:330px!important;overflow:auto!important;padding:2px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-slot{border:2px solid var(--nwc-primary)!important;background:#fff!important;color:var(--nwc-primary)!important;border-radius:10px!important;padding:11px 8px!important;font-size:15px!important;font-weight:700!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-slot:hover,.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-slot:focus-visible{background:var(--nwc-primary)!important;color:#fff!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) button:focus-visible{outline:3px solid var(--nwc-accent)!important;outline-offset:2px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-alt{margin-top:18px!important;padding-top:14px!important;border-top:1px solid var(--nwc-line)!important;font-size:14px!important;color:#4b5563!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-alt a,.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-error a:not(.nwcal-btn){color:var(--nwc-primary)!important;font-weight:700!important;text-decoration:underline!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-form{display:grid!important;gap:14px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-back{justify-self:start!important;border:0!important;background:none!important;color:var(--nwc-primary)!important;font-weight:700!important;padding:0!important;font-size:14px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-when{background:var(--nwc-bg)!important;border-left:4px solid var(--nwc-accent)!important;border-radius:8px!important;padding:12px 16px!important;display:flex!important;flex-direction:column!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-when strong{color:var(--nwc-primary)!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-field label,.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-states legend{display:block!important;font-weight:700!important;font-size:14px!important;color:var(--nwc-primary)!important;margin-bottom:6px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-field input,.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-field textarea,.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-field select{width:100%!important;border:1px solid #cfd4dc!important;border-radius:8px!important;padding:11px 12px!important;font-size:16px!important;font-family:inherit!important;background:#fff!important;color:#111!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-field input:focus,.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-field textarea:focus,.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-field select:focus{outline:none!important;border-color:var(--nwc-primary)!important;box-shadow:0 0 0 3px rgba(196,162,92,.35)!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-states{border:0!important;padding:0!important;margin:0!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-states label{display:flex!important;align-items:flex-start!important;gap:8px!important;font-size:15px!important;margin:6px 0!important;cursor:pointer!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-states input{margin-top:4px!important;accent-color:var(--nwc-primary)!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-btn{display:inline-block!important;justify-self:start!important;background:var(--nwc-btn,var(--nwc-accent))!important;color:var(--nwc-btn-text,var(--nwc-primary))!important;border:0!important;border-radius:8px!important;padding:14px 28px!important;font-size:16px!important;font-weight:700!important;text-decoration:none!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-btn:hover{background:var(--nwc-primary)!important;color:#fff!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-btn:disabled{opacity:.6!important;cursor:wait!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-status{color:#a11d2b!important;font-weight:600!important;min-height:1px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-error{padding:30px 10px!important;text-align:center!important;display:grid!important;gap:14px!important;justify-items:center!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-error .nwcal-alt{border:0!important;margin:0!important;padding:0!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-done{text-align:center!important;padding:30px 10px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-check{width:60px!important;height:60px!important;border-radius:50%!important;background:var(--nwc-primary)!important;color:#fff!important;font-size:30px!important;line-height:60px!important;margin:0 auto 14px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-when-big{font-size:18px!important;font-weight:700!important;color:var(--nwc-accent-text)!important;margin:6px 0 10px!important}
@media (max-width:760px){
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3){padding:20px 16px!important;border-radius:12px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-grid{grid-template-columns:1fr!important;gap:20px!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-row{grid-template-columns:1fr!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-slots{max-height:none!important;grid-template-columns:repeat(2,1fr)!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-btn{width:100%!important;text-align:center!important}
}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-field select{height:auto!important;min-height:48px!important;line-height:1.4!important;padding:11px 40px 11px 12px!important;margin:0!important;font-size:16px!important;color:#111!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231F3A5F' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center!important;-webkit-appearance:none!important;appearance:none!important;box-shadow:none!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) .nwcal-field input{height:auto!important;line-height:1.4!important;margin:0!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) button{text-transform:none!important;letter-spacing:normal!important;height:auto!important;min-height:0!important;line-height:1.2!important}
.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) h2,.nwcal:not(#nwc1):not(#nwc2):not(#nwc3) h3{font-family:inherit!important;letter-spacing:normal!important;text-transform:none!important;font-weight:700!important}
