@font-face{font-family:Geist;src:url('/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-98bbbccb.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}body{margin:0;background:#fbfdfd;color:#071621;font-family:Geist,Arial,sans-serif;line-height:1.6}a{color:inherit;text-underline-offset:4px}header,footer{max-width:1240px;margin:auto;padding:28px 40px;display:flex;justify-content:space-between;gap:24px;align-items:center}header{border-bottom:1px solid #d9e4e7}.brand{font-size:24px;letter-spacing:-1px;font-weight:800;text-decoration:none}.brand span{color:#148f80}main{max-width:1240px;margin:auto;padding:60px 40px 80px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:#148f80}h1{font-size:clamp(36px,5.5vw,68px);line-height:1.1;font-weight:500;letter-spacing:-2.5px;margin:20px 0 26px}h1 em{font-style:normal;color:#148f80}h2{font-size:22px;line-height:1.3;letter-spacing:-.5px;font-weight:550}h3{font-size:16px;font-weight:500}.lead{font-size:18px;max-width:650px;color:#587080}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:42px 0}.service{text-align:left;border:1px solid #d9e4e7;background:white;padding:28px;display:flex;flex-direction:column;min-height:280px;border-radius:4px;transition:background .15s,box-shadow .15s}.service p{flex:1;color:#587080;font-size:14px}.service strong{font-size:34px;font-weight:500}.service small{font-size:12px}.chosen{border-color:#148f80;box-shadow:0 0 0 1px #148f80;background:#eef9f7}.select-label{display:block;font-size:12px;margin-top:14px;font-weight:600}.booking-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;align-items:start}.panel{background:#fff;border:1px solid #d9e4e7;border-radius:4px;padding:28px;margin-bottom:24px}.muted{font-size:12px;color:#587080}label{display:block;font-size:13px;font-weight:500;margin:16px 0}input,select{font:inherit;color:inherit;display:block;width:100%;padding:12px;border:1px solid #c5d6dc;border-radius:3px;background:white;margin:7px 0}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #42dbc3;outline-offset:3px}button,.button{font:inherit;cursor:pointer;border:1px solid #c5d6dc;color:#071621;background:#eef4f5;padding:10px 16px;border-radius:3px;text-decoration:none}button:disabled{opacity:.4;cursor:not-allowed}.primary{background:#42dbc3;color:#fff;border-color:#42dbc3;width:100%;display:block;text-align:center;padding:15px;margin:14px 0}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-top:26px}.calendar-head button{border:0;background:transparent}.calendar,.weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.weekdays{font-size:11px;color:#587080;text-align:center;padding:10px 0}.calendar button{padding:10px 0;border-color:transparent;background:#eef4f5}.calendar button:disabled{background:transparent;color:#587080;opacity:.55}.calendar .active,.times .active{background:#0b202d;color:white}.times{display:flex;gap:10px;flex-wrap:wrap;min-height:50px;margin-top:20px}.times p{font-size:13px;color:#587080}.check{display:flex;gap:10px;align-items:flex-start;font-size:12px;font-weight:400}.check input{width:17px;height:17px;flex-shrink:0;margin:2px 0}.total{display:flex;justify-content:space-between;border-top:1px solid #d9e4e7;padding-top:20px;margin-top:24px}.total strong{font-size:24px;font-weight:500}footer{border-top:1px solid #d9e4e7;font-size:11px;color:#587080;align-items:flex-start}footer nav{display:flex;gap:20px;flex-wrap:wrap}.notice{padding:15px;background:#e7f8f4;border-left:3px solid #148f80}.notice:empty{display:none}.error{background:#fbece7;border-color:#aa4835;color:#803421}.narrow{max-width:520px}.secret{display:block;overflow-wrap:anywhere;font-size:16px;background:#eef4f5;padding:15px;margin:15px 0}.admin-top{display:flex;align-items:center;justify-content:space-between}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.admin-stats div{padding:20px;border:1px solid #d9e4e7;background:white}.admin-stats span{display:block;color:#587080;font-size:12px}.admin-stats strong{font-weight:500}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}td,th{text-align:left;padding:16px 12px;border-bottom:1px solid #d9e4e7;vertical-align:top}th{font-size:11px;color:#587080}summary{cursor:pointer;font-weight:600}details form{max-width:580px}.confirmation{max-width:640px}@media(max-width:750px){header,footer{padding:22px}main{padding:35px 22px}.services,.booking-grid{grid-template-columns:1fr}.service{min-height:0;padding:22px}.services{gap:12px}.service h2{margin:12px 0 4px}.service p{margin:6px 0 12px}.panel{padding:22px}.admin-stats{grid-template-columns:1fr}.admin-top{align-items:start;gap:12px}.admin-top button{font-size:11px}footer{flex-direction:column}h1{letter-spacing:-1.5px}}
[hidden]{display:none!important}.account-booking{border-top:1px solid #d9e4e7;padding:20px 0}.account-booking:first-of-type{border:0}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}

.slot-hours{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}#admin-selection{overflow-wrap:anywhere}#admin-days button{min-height:42px}

/* Original NORVIONIQ identity: the homepage's palette, brand and square controls. */
:root{--ink:#071621;--deep:#06131d;--teal:#42dbc3;--paper:#fbfdfd}
@font-face{font-family:Geist;src:url('/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-98bbbccb.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Geist Mono';src:url('/_next/static/_vinext_fonts/geist-mono-00e989178794/geist-mono-013b2f2f.woff2') format('woff2');font-display:swap}
header{max-width:none;background:#030e16;color:#dce9ed;padding:0 max(24px,calc((100vw - 1160px)/2));height:82px;border-color:#ffffff1a}
header nav{display:flex;align-items:center;gap:24px;font-size:13px}header a{text-decoration:none}.brandLink{text-decoration:none}
.brand{align-items:center;gap:12px;display:inline-flex}.brandName{letter-spacing:.115em;font-size:20px;font-weight:650}.brandInverse .brandName{color:#fff}.brandInverse .brandName span{color:var(--teal)}
.brandMark{border:1.5px solid var(--teal);border-radius:50%;flex:none;width:34px;height:34px;display:inline-block;position:relative}.brandMark:before{content:"";border:1.25px solid var(--teal);border-right-color:transparent;border-radius:50%;position:absolute;inset:5px;transform:rotate(-24deg)}.brandMark:after{content:"";background:linear-gradient(90deg,transparent,var(--teal) 24% 78%,transparent);width:27px;height:1px;position:absolute;top:16px;left:4px;transform:rotate(-38deg)}.brandMark>span{background:var(--deep);z-index:2;border:1.5px solid var(--teal);border-radius:50%;width:7px;height:7px;position:absolute;top:13px;left:13px}.brandMark i,.brandMark b{background:var(--teal);z-index:3;border-radius:50%;position:absolute;box-shadow:0 0 0 3px #42dbc321}.brandMark i{width:4px;height:4px;top:5px;right:2px}.brandMark b{width:3px;height:3px;bottom:6px;left:3px}
button,.button,input,select,.panel,.service{border-radius:0}.primary{color:#071621;font-size:13px;font-weight:620}.primary:hover{background:#6ce7d3}.eyebrow{font-family:'Geist Mono',monospace;letter-spacing:.14em}h1{font-weight:420}h2{font-weight:450}
.booking-intro{position:relative;background:radial-gradient(circle at 85% 42%,#12394b 0,#0a2534 19%,#06131d 65%);color:white;margin:-60px calc((min(1240px,100vw) - 100vw)/2 - 40px) 0;padding:64px max(40px,calc((100vw - 1160px)/2)) 56px}.booking-intro .eyebrow{color:#42dbc3}.booking-intro h1 em{color:#42dbc3}.booking-intro .lead{color:#bdd0d8}
body.admin-mode{background:#f6f5fb}body.admin-mode header{background:#221b38}body.admin-mode .primary{background:#6d52a3;border-color:#6d52a3;color:white}body.admin-mode .calendar .active{background:#6d52a3}body.admin-mode .eyebrow{color:#6d52a3}.admin-badge{display:none}body.admin-mode .admin-badge{display:inline-block;background:#6d52a3;color:white;padding:4px 9px;font-size:11px;font-weight:650;letter-spacing:.1em}
@media(max-width:750px){header{height:auto;min-height:72px;padding:18px 22px;flex-wrap:wrap}header nav{gap:16px}.booking-intro{margin:-35px -22px 0;padding:40px 22px}.brandName{font-size:18px}}

body{overflow-x:clip}

.field-error{display:block;color:#803421;font-size:12px;margin:5px 0}[aria-invalid="true"]{border:2px solid #aa4835}.readiness{padding-left:20px;font-size:13px}.form-message{overflow-wrap:anywhere}
