/* Namaste Norge - Book a table (/reserver-bord/). From mockup v8 book.css, every rule kept inside .nn-bk.
   Loaded only on /reserver-bord/. */
.nn-bk{
  --maroon:#181818;--maroon-deep:#0C0C0C;--maroon-dark:#080808;
  --saffron:#949494;--saffron-soft:#FFFFFF;--saffron-press:#676767;
  --gold:#8B8B8B;--gold-bright:#BBBBBB;--gold-pale:#DEDEDE;
  --parch:#FFFFFF;--card:#FFFFFF;--field:#FFFFFF;--ink:#0D0D0D;--muted:#5A5A5A;--line:#D3D3D3;
  --emerald:#1E6B4A;--emerald-soft:#DDEEE3;--alert:#1A1A1A;--alert-soft:#FFFFFF;--amber:#2A2A2A;--amber-soft:#FFFFFF;
  --chrome:#DEDEDE;--chrome-line:#C7C7C7;--chrome-ink:#252525;
  --f-display:"Bricolage Grotesque",Georgia,"Times New Roman",serif;
  --f-body:"Schibsted Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --bk-jaali:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27/%3E");
  --block:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 44 44'%3E%3Cg fill='%237B1A26' fill-opacity='.06'%3E%3Cpath d='M22 6c3 5 3 9 0 12-3-3-3-7 0-12zM22 38c-3-5-3-9 0-12 3 3 3 7 0 12zM6 22c5-3 9-3 12 0-3 3-7 3-12 0zM38 22c-5 3-9 3-12 0 3-3 7-3 12 0z'/%3E%3Ccircle cx='22' cy='22' r='2.4'/%3E%3C/g%3E%3C/svg%3E");
  --bk-arch:polygon(0 100%,0 60px,1% 50px,3% 41px,6% 33px,10% 26px,15% 20px,21% 15px,28% 11px,35% 8px,41% 6px,45% 4.5px,48% 2.5px,50% 0,52% 2.5px,55% 4.5px,59% 6px,65% 8px,72% 11px,79% 15px,85% 20px,90% 26px,94% 33px,97% 41px,99% 50px,100% 60px,100% 100%);
  color-scheme:light;
}
.nn-bk *{box-sizing:border-box}
.nn-bk{color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
.nn-bk button,.nn-bk input,.nn-bk select,.nn-bk textarea{font:inherit;color:inherit}
.nn-bk button{cursor:pointer}
.nn-bk a{color:var(--maroon)}
.nn-bk :focus-visible{outline:3px solid var(--saffron);outline-offset:2px}
.nn-bk h1,.nn-bk h2,.nn-bk h3{font-family:var(--f-display);font-weight:700;line-height:1.12;margin:0;text-wrap:balance}
.nn-bk p{margin:0}
.nn-bk .num{font-variant-numeric:normal}
.nn-bk .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nn-bk .wrap{max-width:1200px;margin:0 auto;padding-inline:16px}
.nn-bk .ico{flex:none;display:block}
.nn-bk .hero{padding-block:24px 18px;display:grid;gap:10px}
.nn-bk .crumbs{font-size:14px;color:var(--muted)}
.nn-bk .crumbs a{color:var(--muted)}
.nn-bk .hero h1{font-size:clamp(36px,5vw,54px);color:var(--maroon);letter-spacing:-.01em;line-height:1.05}
.nn-bk .hero .lead{font-size:18px;color:var(--muted);max-width:58ch}
.nn-bk .facts{display:flex;flex-wrap:wrap;gap:6px 20px;list-style:none;margin:4px 0 0;padding:0}
.nn-bk .facts li{display:flex;align-items:center;gap:7px;font-weight:600;font-size:15px}
.nn-bk .facts svg{color:var(--emerald)}
.nn-bk .book{display:grid;gap:18px;padding-block:6px 44px;align-items:start}
.nn-bk .steps,.nn-bk .done{min-width:0;display:flex;flex-direction:column;gap:16px}
.nn-bk .side{min-width:0}
@media (min-width:980px){.nn-bk .book{grid-template-columns:minmax(0,1fr) 380px;gap:28px}
.nn-bk .steps,.nn-bk .done{grid-column:1;grid-row:1}
.nn-bk .side{grid-column:2;grid-row:1;position:sticky;top:calc(var(--hdr-h,80px) + 16px)}
}
@media (max-width:979px){.nn-bk .book.is-done .side{order:-1;margin-top:22px}
}
.nn-bk .step,.nn-bk #done{scroll-margin-top:calc(var(--hdr-h,80px) + 14px)}
.nn-bk .step{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;min-width:0;transition:opacity .2s}
.nn-bk .step.muted{opacity:.42;pointer-events:none}
.nn-bk .sh{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.nn-bk .sn{width:28px;height:28px;flex:none;display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:15px;color:var(--gold-bright);background:var(--maroon-deep);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.nn-bk .sn.ok{background:var(--emerald);color:#FFFFFF}
.nn-bk .sh h2{font-size:22px}
.nn-bk .sh .val{margin-left:auto;font-size:14px;color:var(--muted);font-weight:600}
.nn-bk .party{display:flex;flex-wrap:wrap;gap:7px}
.nn-bk .pc{position:relative;display:block}
.nn-bk .pc input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.nn-bk .pc span{display:grid;place-items:center;min-width:49px;height:52px;padding:0 12px;border:1px solid var(--gold);border-radius:12px;background:var(--field);font-family:var(--f-display);font-weight:600;font-size:21px;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}
.nn-bk .pc.wide span{font-size:17px}
.nn-bk .pc span:hover{background:var(--saffron-soft)}
.nn-bk .pc input:checked+span{background:var(--saffron);border-color:var(--saffron);box-shadow:0 2px 0 var(--saffron-press);color:var(--ink)}
.nn-bk .pc input:focus-visible+span{outline:3px solid var(--maroon);outline-offset:2px}
.nn-bk .stepper{display:inline-flex;align-items:center;border:1px solid var(--gold);border-radius:999px;background:var(--field);overflow:hidden}
.nn-bk .stepper button{border:0;background:transparent;width:40px;height:38px;font-size:20px;font-weight:700;color:var(--maroon);line-height:1}
.nn-bk .stepper button:hover:not(:disabled){background:var(--saffron-soft)}
.nn-bk .stepper button:disabled{color:#B4B4B4;cursor:not-allowed}
.nn-bk .stepper output{min-width:30px;text-align:center;font-weight:700;font-family:var(--f-display);font-size:18px}
.nn-bk .note{margin-top:12px;display:flex;gap:10px;align-items:flex-start;background:var(--parch);border-radius:10px;padding:10px 12px;font-size:15px;line-height:1.4}
.nn-bk .note svg{margin-top:2px}
.nn-bk .note.warn{background:var(--amber-soft)}
.nn-bk .note.good{background:var(--emerald-soft)}
.nn-bk .bigrow{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.nn-bk .pcbig{position:relative;display:inline-flex;align-items:center;height:52px;border:1px solid var(--gold);border-radius:12px;background:var(--field);overflow:hidden;transition:background .15s,border-color .15s,box-shadow .15s}
.nn-bk .pcbig input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.nn-bk .pcbig .pcn{display:grid;place-items:center;min-width:46px;height:100%;padding:0 2px;font-family:var(--f-display);font-weight:600;font-size:21px;cursor:pointer;font-variant-numeric:normal}
.nn-bk .pcbig .pcb{width:36px;height:100%;border:0;background:transparent;color:var(--maroon);display:grid;place-items:center;cursor:pointer;padding:0}
.nn-bk .pcbig .pcb svg{width:18px;height:18px}
.nn-bk .pcbig .pcb:hover:not(:disabled){background:var(--saffron-soft)}
.nn-bk .pcbig .pcb:disabled{color:#B4B4B4;cursor:default}
.nn-bk .pcbig:hover{border-color:var(--saffron)}
.nn-bk .pcbig[data-on]{background:var(--saffron);border-color:var(--saffron);box-shadow:0 2px 0 var(--saffron-press);color:var(--ink)}
.nn-bk .pcbig[data-on] .pcb:hover:not(:disabled){background:rgba(255,255,255,.28)}
.nn-bk .pcbig[data-on] .pcb:disabled{color:rgba(17,17,17,.35)}
.nn-bk .pcbig input:focus-visible ~ .pcn{outline:3px solid var(--maroon);outline-offset:-4px;border-radius:10px}
.nn-bk .pslide{animation:pslide .5s cubic-bezier(.2,.8,.2,1)}
@keyframes pslide{from{opacity:0;transform:translateX(40px)}
to{opacity:1;transform:none}
}
@media (prefers-reduced-motion:reduce){.nn-bk .pslide{animation:none}
}
.nn-bk .back30{justify-self:start;border:0;background:none;padding:2px 0;font:inherit;font-weight:600;font-size:15px;color:var(--gold-bright);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.nn-bk .pcard{margin-top:12px;background:var(--maroon-deep) var(--bk-jaali);color:#FFFFFF;border-radius:14px;padding:18px;display:grid;gap:8px}
.nn-bk .pcard h3{color:var(--gold-bright);font-size:22px}
.nn-bk .pcard p{color:#DCDCDC;max-width:60ch}
.nn-bk .row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.nn-bk .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:12px;padding:11px 16px;font-weight:700;text-decoration:none;border:0;font-size:16px;line-height:1.2;text-align:center}
.nn-bk .btn.sf{background:var(--saffron);color:var(--ink);box-shadow:0 3px 0 var(--saffron-press)}
.nn-bk .btn.sf:hover{filter:brightness(1.05)}
.nn-bk .btn.sf:active{transform:translateY(2px);box-shadow:0 1px 0 var(--saffron-press)}
.nn-bk .btn.line{background:transparent;border:1.5px solid var(--maroon);color:var(--maroon)}
.nn-bk .btn.line:hover{background:var(--saffron-soft)}
.nn-bk .btn.gold{background:transparent;border:1.5px solid var(--gold-bright);color:var(--gold-bright)}
.nn-bk .btn.gold:hover{background:rgba(187,187,187,.14)}
.nn-bk .btn.mr{background:var(--maroon);color:#FFFFFF}
.nn-bk .btn.mr:hover{background:var(--maroon-deep)}
.nn-bk .btn.sm{padding:7px 12px;font-size:14.5px;border-radius:10px}
.nn-bk .link{border:0;background:none;color:var(--maroon);font-weight:700;padding:0;text-decoration:underline;text-underline-offset:3px;font-size:15px}
.nn-bk .days{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 10px;margin-inline:-2px;scroll-snap-type:x proximity;scrollbar-width:thin}
.nn-bk .day{flex:0 0 84px;scroll-snap-align:start;border:1px solid var(--line);background:var(--field);border-radius:14px;padding:8px 6px 8px;display:flex;flex-direction:column;align-items:center;gap:1px;line-height:1.1;text-align:center;color:var(--ink)}
.nn-bk .day:hover:not(:disabled){border-color:var(--gold)}
.nn-bk .day .w{font-size:13px;font-weight:700;color:var(--muted)}
.nn-bk .day .d{font-family:var(--f-display);font-weight:600;font-size:27px;line-height:1.05}
.nn-bk .day .m{font-size:12.5px;color:var(--muted)}
.nn-bk .day .s{margin-top:5px;font-size:11.5px;font-weight:700;display:flex;align-items:center;justify-content:center;gap:4px;color:var(--emerald);min-height:26px}
.nn-bk .day .s i{width:7px;height:7px;border-radius:50%;background:var(--emerald);flex:none}
.nn-bk .day.few .s{color:var(--amber)}
.nn-bk .day.few .s i{background:var(--saffron)}
.nn-bk .day.full .s{color:var(--muted)}
.nn-bk .day.full .s i{background:#A8A8A8}
.nn-bk .day.closed{background:transparent;border-style:dashed;cursor:not-allowed}
.nn-bk .day.closed .d,.nn-bk .day.closed .w,.nn-bk .day.closed .m,.nn-bk .day.closed .s{color:#7D7D7D}
.nn-bk .day.closed .s i{display:none}
.nn-bk .day[aria-checked="true"]{background:var(--maroon-deep);border-color:var(--maroon-deep)}
.nn-bk .day[aria-checked="true"] .w,.nn-bk .day[aria-checked="true"] .m{color:#DADADA}
.nn-bk .day[aria-checked="true"] .d{color:var(--gold-bright)}
.nn-bk .day[aria-checked="true"] .s{color:#FFFFFF}
.nn-bk .day.more{justify-content:center;gap:6px;color:var(--maroon);font-weight:700;font-size:14px;border-style:dashed;border-color:var(--gold)}
.nn-bk .day.more[aria-expanded="true"]{background:var(--saffron-soft)}
.nn-bk .picked{margin-top:4px;font-size:15px;color:var(--muted)}
.nn-bk .picked b{color:var(--ink)}
.nn-bk .cal{margin-top:10px;border:1px solid var(--line);border-radius:14px;background:var(--field);padding:12px;max-width:390px}
.nn-bk .cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.nn-bk .cal-h b{font-family:var(--f-display);font-size:18px}
.nn-bk .cal-h button{border:1px solid var(--line);background:var(--card);border-radius:8px;width:36px;height:36px;font-size:18px;font-weight:700;color:var(--maroon)}
.nn-bk .cal-h button:disabled{color:#B4B4B4;cursor:not-allowed}
.nn-bk .cal-g{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.nn-bk .cal-g .wd{font-size:12px;font-weight:700;color:var(--muted);text-align:center}
.nn-bk .cal-g button{aspect-ratio:1;max-width:100%;border:1px solid transparent;border-radius:10px;background:var(--card);font-weight:600;display:grid;place-items:center;font-variant-numeric:normal;position:relative;padding:0}
.nn-bk .cal-g button:hover:not(:disabled){border-color:var(--gold)}
.nn-bk .cal-g button:disabled{background:transparent;color:#969696;cursor:not-allowed}
.nn-bk .cal-g button.full{text-decoration:line-through;color:var(--muted)}
.nn-bk .cal-g button.few::after{content:"";position:absolute;bottom:4px;left:50%;margin-left:-2.5px;width:5px;height:5px;border-radius:50%;background:var(--saffron)}
.nn-bk .cal-g button.today{border-color:var(--gold)}
.nn-bk .cal-g button[aria-pressed="true"]{background:var(--maroon-deep);color:var(--gold-bright);border-color:var(--maroon-deep)}
.nn-bk .cal-leg{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px;font-size:12.5px;color:var(--muted)}
.nn-bk .cal-leg i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--saffron);margin-right:5px;vertical-align:1px}
.nn-bk .busy{margin-bottom:6px}
.nn-bk .busy-h{display:flex;justify-content:space-between;align-items:baseline;gap:4px 12px;flex-wrap:wrap;font-size:14px;color:var(--muted);margin-bottom:8px}
.nn-bk .busy-h b{color:var(--ink);font-weight:600}
.nn-bk .leg{display:flex;flex-wrap:wrap;gap:2px 12px;font-size:12.5px}
.nn-bk .leg span{display:inline-flex;align-items:center;gap:5px}
.nn-bk .leg i{width:10px;height:10px;border-radius:2px;display:inline-block}
.nn-bk .bars{display:flex;align-items:flex-end;gap:2px;height:62px;border-bottom:1.5px solid var(--gold);position:relative}
.nn-bk .bars::before{content:"";position:absolute;left:0;right:0;top:0;border-top:1px dashed rgba(139,139,139,.45)}
.nn-bk .bars::after{content:"100% booked";position:absolute;left:3px;top:2px;font-size:11px;color:var(--muted)}
.nn-bk .bars i{flex:1 1 0;min-width:0;background:#C3C3C3;border-radius:3px 3px 0 0;min-height:3px;transition:height .35s ease}
.nn-bk .bars i.q{background:#7DB897}
.nn-bk .bars i.f{background:var(--maroon)}
.nn-bk .bars i.past{background:#DEDEDE}
.nn-bk .bars i.sel{background:var(--saffron);box-shadow:0 0 0 2px var(--ink)}
.nn-bk .axis{position:relative;height:18px;margin-top:3px;font-size:12px;color:var(--muted)}
.nn-bk .axis span{position:absolute;top:0;transform:translateX(-1px);font-variant-numeric:normal}
.nn-bk .tg{display:grid;gap:8px;margin-top:16px}
.nn-bk .tg h3{font-family:var(--f-body);font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700;display:flex;flex-wrap:wrap;gap:2px 8px;align-items:baseline}
.nn-bk .tg h3 span{font-weight:600;letter-spacing:0;text-transform:none;color:var(--emerald)}
.nn-bk .slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:8px}
.nn-bk .slot{border:1px solid var(--line);background:var(--field);border-radius:12px;padding:6px 4px;text-align:center;line-height:1.1;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--ink)}
.nn-bk .slot b{font-family:var(--f-display);font-size:19px;font-weight:600}
.nn-bk .slot small{font-size:12px;color:var(--muted);font-weight:600;min-height:13px}
.nn-bk .slot:hover:not([aria-pressed="true"]){border-color:var(--gold)}
.nn-bk .slot.q{border-color:#8CC3A5;background:var(--emerald-soft)}
.nn-bk .slot.q small{color:var(--emerald)}
.nn-bk .slot.few small{color:var(--amber)}
.nn-bk .slot.full{background:transparent;border-style:dashed}
.nn-bk .slot.full b{color:#7D7D7D;text-decoration:line-through;text-decoration-thickness:1.5px}
.nn-bk .slot[aria-pressed="true"]{background:var(--saffron);border-color:var(--saffron);box-shadow:0 2px 0 var(--saffron-press)}
.nn-bk .slot[aria-pressed="true"] small{color:var(--ink)}
.nn-bk .slot.waitsel{border:2px solid var(--maroon)}
.nn-bk .wait{margin-top:14px;border:1px solid var(--line);border-left:4px solid var(--maroon);background:var(--field);border-radius:10px;padding:12px 14px;display:grid;gap:10px}
.nn-bk .wait b{font-family:var(--f-display);font-size:18px;font-weight:600}
.nn-bk .wait .alts{display:flex;flex-wrap:wrap;gap:6px}
.nn-bk .hold{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--emerald)}
.nn-bk .empty-t{padding:14px;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}
.nn-bk .grid2{display:grid;gap:12px}
@media (min-width:640px){.nn-bk .grid2{grid-template-columns:1fr 1fr}
}
.nn-bk .f{display:flex;flex-direction:column;gap:4px;min-width:0}
.nn-bk .f label,.nn-bk .lab{font-weight:600;font-size:15px}
.nn-bk .f label em,.nn-bk .lab em{font-style:normal;font-weight:400;color:var(--muted);font-size:13.5px}
.nn-bk .in{position:relative;display:flex}
.nn-bk .in .pre{display:grid;place-items:center;padding:0 12px;border:1px solid var(--gold);border-right:0;border-radius:10px 0 0 10px;background:var(--parch);font-weight:700}
.nn-bk .in input{width:100%;min-width:0;min-height:48px;border:1px solid var(--gold);border-radius:10px;padding:10px 40px 10px 12px;background:var(--field)}
.nn-bk .in .pre+input{border-radius:0 10px 10px 0}
.nn-bk .in .ok{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--emerald);display:none}
.nn-bk .f.good .ok{display:block}
.nn-bk .f .err{color:var(--alert);font-weight:600;font-size:14px;display:none}
.nn-bk .f.bad .err{display:block}
.nn-bk .f.bad input{border:2px solid var(--alert);background:var(--alert-soft)}
.nn-bk .f .hint{color:var(--muted);font-size:13.5px}
.nn-bk .extras{display:grid;gap:16px;margin-top:18px;padding-top:16px;border-top:1px dashed var(--line)}
.nn-bk .extras>h3{font-size:18px;font-weight:600}
.nn-bk .xrow{display:grid;gap:7px}
.nn-bk .chips{display:flex;flex-wrap:wrap;gap:6px}
.nn-bk .chip{border:1px solid var(--gold);background:var(--field);border-radius:999px;padding:5px 13px;font-size:14.5px;font-weight:600;min-height:36px;display:inline-flex;align-items:center;gap:6px;color:var(--ink)}
.nn-bk .chip:hover{background:var(--saffron-soft)}
.nn-bk .chip[aria-pressed="true"]{background:var(--maroon);border-color:var(--maroon);color:#FFFFFF}
.nn-bk .chip.al[aria-pressed="true"]{background:var(--alert);border-color:var(--alert)}
.nn-bk .sub{background:var(--parch);border-radius:10px;padding:10px 12px;font-size:14.5px;display:grid;gap:8px}
.nn-bk .sub input[type=text]{min-height:42px;border:1px solid var(--gold);border-radius:10px;padding:8px 12px;background:var(--field);width:100%;max-width:320px}
.nn-bk .check{display:flex;gap:9px;align-items:flex-start;font-size:15px}
.nn-bk .check input{width:19px;height:19px;margin-top:3px;accent-color:var(--maroon);flex:none}
.nn-bk .ta{width:100%;min-height:84px;border:1px solid var(--gold);border-radius:10px;padding:10px 12px;background:var(--field);resize:vertical;display:block}
.nn-bk .tarow{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--muted);margin-top:4px}
.nn-bk .remind{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;color:var(--muted);margin-top:16px}
.nn-bk .remind svg{color:var(--gold);margin-top:2px}
.nn-bk .inv{position:relative;background:var(--maroon-deep) var(--bk-jaali);border-radius:22px;padding:12px;box-shadow:0 18px 40px rgba(12,12,12,.22)}
.nn-bk .inv-g{background:linear-gradient(160deg,#D0D0D0,#8B8B8B 55%,#666666);clip-path:var(--bk-arch);padding:3px}
.nn-bk .inv-p{background:var(--card);clip-path:var(--bk-arch);padding:58px 18px 18px;display:grid;gap:12px}
.nn-bk .medal,.nn-bk .seal{position:absolute;left:50%;top:-18px;transform:translateX(-50%);width:60px;height:60px;z-index:2}
.nn-bk .medal{border-radius:50%;background:var(--maroon-deep);border:2px solid var(--gold-bright);display:grid;place-items:center;color:var(--gold-bright);box-shadow:0 4px 10px rgba(8,8,8,.3)}
.nn-bk .seal{width:96px;height:96px;top:-34px;display:none;color:var(--maroon)}
.nn-bk .inv.done .medal{display:none}
.nn-bk .inv.done .seal{display:block;animation:stamp .7s cubic-bezier(.2,1.5,.4,1) both}
.nn-bk .inv.req .seal{color:#7E7E7E}
.nn-bk .inv.cx .seal{color:#848484}
@keyframes stamp{0%{transform:translateX(-50%) scale(1.9) rotate(-28deg);opacity:0}
55%{opacity:1}
100%{transform:translateX(-50%) scale(1) rotate(-10deg);opacity:1}
}
.nn-bk .inv-head{text-align:center;display:grid;gap:1px}
.nn-bk .inv-head small{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--gold)}
.nn-bk .inv-head h2{font-size:25px;color:var(--maroon)}
.nn-bk .inv-head .deva{font-size:13px;color:var(--muted)}
.nn-bk .dv{font-family:"NNDeva",serif}
.nn-bk .ur{font-family:"NNUrdu",serif;font-size:1.05em;line-height:1}
.nn-bk .tbl-art{display:block;width:100%;height:auto;max-height:112px}
.nn-bk .tbl-art .pl{transform-box:fill-box;transform-origin:center;animation:plate .35s ease both}
@keyframes plate{from{transform:scale(.2);opacity:0}
to{transform:scale(1);opacity:1}
}
.nn-bk .inv-rows{display:grid;border-top:1px solid var(--line)}
.nn-bk .ir{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid var(--line);align-items:center}
.nn-bk .ir svg{color:var(--gold)}
.nn-bk .ir small{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700;line-height:1.3}
.nn-bk .ir b{display:block;font-family:var(--f-display);font-weight:600;font-size:18px;line-height:1.25;overflow-wrap:anywhere}
.nn-bk .ir b.empty{font-family:var(--f-body);font-weight:500;font-size:15.5px;color:var(--muted);font-style:italic}
.nn-bk .ir .sub2{display:block;font-size:13.5px;color:var(--muted);line-height:1.3}
.nn-bk .tags{display:flex;flex-wrap:wrap;gap:5px}
.nn-bk .tag{border-radius:4px;padding:0 7px;font-size:13px;font-weight:700;background:var(--parch);color:var(--ink);border:1px solid var(--line);line-height:1.6}
.nn-bk .tag.al{background:var(--alert);color:#FFFFFF;border-color:var(--alert)}
.nn-bk .tag.q{background:var(--emerald-soft);color:var(--emerald);border-color:#8CC3A5}
.nn-bk .tag.warn{background:var(--amber-soft);color:var(--amber);border-color:#C9C9C9}
.nn-bk .tag.new{background:var(--gold-bright);color:var(--maroon-dark);border-color:var(--gold)}
.nn-bk .perk{display:flex;gap:9px;align-items:center;background:var(--emerald-soft);color:var(--emerald);border-radius:10px;padding:8px 10px;font-weight:600;font-size:14.5px;line-height:1.3}
.nn-bk .inv-hold{font-size:14px;color:var(--emerald);font-weight:600;text-align:center}
.nn-bk .inv-cta{width:100%;padding:14px;font-size:17.5px}
.nn-bk .inv-terms{font-size:13px;color:var(--muted);text-align:center}
.nn-bk .inv-edit{justify-self:center}
.nn-bk .mbar{position:sticky;bottom:0;z-index:20;background:#FFFFFF;color:var(--ink);display:flex;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);box-shadow:0 -10px 24px -18px rgba(12,12,12,.45)}
.nn-bk .mbar .t{min-width:0;line-height:1.25}
.nn-bk .mbar .t b{display:block;font-family:var(--f-display);font-size:17px;font-weight:600;color:var(--maroon);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nn-bk .mbar .t small{display:block;font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nn-bk .mbar .btn{margin-left:auto;flex:none;padding:11px 14px;font-size:15.5px}
@media (min-width:980px){.nn-bk .mbar{display:none}
}
.nn-bk .dhead{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;display:grid;gap:12px}
.nn-bk .kick{display:inline-flex;align-items:center;gap:7px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--emerald)}
.nn-bk .kick.req{color:var(--amber)}
.nn-bk .kick.cx{color:var(--muted)}
.nn-bk .dhead h2{font-size:clamp(28px,3.6vw,38px);color:var(--maroon-deep)}
.nn-bk .dhead .sum{font-size:17px;color:var(--muted)}
.nn-bk .dhead .sum b{color:var(--ink);font-weight:600}
.nn-bk .acts{display:flex;flex-wrap:wrap;gap:8px}
.nn-bk .act{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--gold);background:var(--field);border-radius:10px;padding:8px 12px;font-weight:600;text-decoration:none;color:var(--ink);font-size:15px}
.nn-bk .act:hover{background:var(--saffron-soft)}
.nn-bk .act.danger{border-color:var(--alert);color:var(--alert)}
.nn-bk .act svg{color:var(--maroon)}
.nn-bk .act.danger svg{color:var(--alert)}
.nn-bk .cxbox{border:1px solid var(--alert);background:var(--alert-soft);border-radius:12px;padding:12px 14px;display:grid;gap:10px}
.nn-bk .copybox{width:100%;min-height:78px;border:1px solid var(--gold);border-radius:10px;padding:8px 10px;background:var(--field);font-size:14px}
.nn-bk .dgrid{display:grid;gap:16px}
@media (min-width:760px){.nn-bk .dgrid{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start}
}
.nn-bk .panel{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;gap:12px;min-width:0}
.nn-bk .panel h3{font-size:21px}
.nn-bk .next{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:n}
.nn-bk .next li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;counter-increment:n;align-items:start}
.nn-bk .next li::before{content:counter(n);width:26px;height:26px;display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:14px;color:var(--gold-bright);background:var(--maroon-deep);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
.nn-bk .next b{display:block;font-weight:600}
.nn-bk .next span{color:var(--muted);font-size:15px}
.nn-bk .info{display:grid;gap:16px;padding-block:8px 48px}
.nn-bk .info>h2{font-size:30px;color:var(--maroon-deep)}
.nn-bk .info-g{display:grid;gap:16px}
@media (min-width:860px){.nn-bk .info-g{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
}
.nn-bk .faq{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:6px 18px}
.nn-bk .faq details{border-bottom:1px solid var(--line)}
.nn-bk .faq details:last-child{border-bottom:0}
.nn-bk .faq summary{cursor:pointer;list-style:none;padding:13px 0;font-weight:600;font-size:16.5px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.nn-bk .faq summary::-webkit-details-marker{display:none}
.nn-bk .faq summary::after{content:"+";font-family:var(--f-display);font-size:22px;color:var(--gold);line-height:1;flex:none}
.nn-bk .faq details[open] summary::after{content:"−"}
.nn-bk .faq details p{padding:0 0 14px;color:var(--muted);max-width:62ch}
.nn-bk .col{display:grid;gap:16px;align-content:start}
.nn-bk .hours{width:100%;border-collapse:collapse;font-size:15.5px}
.nn-bk .hours td{padding:6px 0;border-bottom:1px dashed var(--line)}
.nn-bk .hours td:last-child{text-align:right;font-variant-numeric:normal}
.nn-bk .hours tr.now td{font-weight:700;color:var(--maroon)}
.nn-bk .hours tr:last-child td{border-bottom:0}
.nn-bk .party-box{background:var(--maroon-deep) var(--bk-jaali);color:#FFFFFF;border-radius:16px;padding:18px;display:grid;gap:8px}
.nn-bk .party-box h3{color:var(--gold-bright);font-size:22px}
.nn-bk .party-box p{color:#DCDCDC}
.nn-bk .copyrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.nn-bk .copyrow b{font-family:var(--f-display);font-size:19px;font-weight:600;user-select:all}
.nn-bk .toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));transform:translate(-50%,16px);opacity:0;visibility:hidden;background:var(--maroon-dark);color:#FFFFFF;border:1px solid var(--gold);padding:10px 16px;border-radius:10px;z-index:60;transition:transform .25s,opacity .25s,visibility .25s;max-width:calc(100% - 32px);font-size:15px;box-shadow:0 8px 20px rgba(0,0,0,.25)}
.nn-bk .toast.show{transform:translate(-50%,0);opacity:1;visibility:visible}
@media (min-width:980px){.nn-bk .toast{bottom:24px}
}
@media (prefers-reduced-motion:reduce){.nn-bk *,.nn-bk *::before,.nn-bk *::after{animation:none!important;transition:none!important}
}
/* ---- WordPress: Book a table in a Divi Code module ([nn_book]) ---- */
.nn-sec.nn-bk{max-width:none;padding:0}
.nn-bk .wrap{max-width:1240px;padding-inline:22px}
@media (max-width:560px){.nn-bk .wrap{padding-inline:16px}}
.nn-site .nn-bk :is(h1,h2,h3){padding-bottom:0}
.nn-site .nn-bk p{padding-bottom:0}
.nn-bk input[type=text],.nn-bk input[type=tel],.nn-bk input[type=email],.nn-bk textarea{color:var(--ink);font-size:16px;box-shadow:none}
.nn-bk .hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.nn-bk[data-lang=no] .bars::after{content:"100 % booket"}
.nn-bk .dgrid.one{grid-template-columns:minmax(0,1fr)}
@media (min-width:760px){.nn-bk .dgrid.one{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}
.nn-bk .next span span{font-size:inherit}
.nn-bk .toast{width:max-content;max-width:calc(100vw - 32px)}
.nn-bk .faq summary{color:var(--ink)}
.nn-bk .nn-noscript{max-width:1240px;margin:0 auto 32px;padding:14px 22px;font-weight:600}
.nn-bk .hold>span .num{display:inline-block;min-width:2.6em;text-align:center}
@media (max-width:979px){body:has(.nn-bk .mbar:not([hidden])) .totop{bottom:calc(86px + env(safe-area-inset-bottom,0px))}}
.nn-bk .inv-head .deva{display:block;margin-top:8px;font-size:0;line-height:0}
.nn-bk .inv-logo{display:block;height:46px;width:auto;margin:0 auto}

/* v35-append (Norsk, 14 Nov 2026): black & white booking page - chosen = black with white text */
.nn-bk{--saffron:#111111;--saffron-soft:#F2F2F2;--saffron-press:#000000;--gold:#111111;--gold-bright:#FFFFFF;--gold-pale:#E6E6E6;--line:#DCDCDC;--alert:#B3261E;--alert-soft:#FFFFFF}
.nn-bk .pc input:checked+span,.nn-bk .pcbig[data-on],.nn-bk .slot[aria-pressed="true"],.nn-bk .btn.sf{color:#FFFFFF;box-shadow:none}
.nn-bk .slot[aria-pressed="true"] small{color:#FFFFFF}
.nn-bk .btn.sf:active{box-shadow:none}
