{"id":568,"date":"2026-09-08T22:32:34","date_gmt":"2026-09-08T20:32:34","guid":{"rendered":"https:\/\/kjellerflyplass.no\/?page_id=568"},"modified":"2026-09-20T11:05:40","modified_gmt":"2026-09-20T09:05:40","slug":"reserver-ovingsomrade","status":"publish","type":"page","link":"https:\/\/kjellerflyplass.no\/?page_id=568","title":{"rendered":"Reserver treningsomr\u00e5de"},"content":{"rendered":"\n<style>\n.kas-booking-intro{max-width:72ch;margin:0 0 24px;color:#384b58;font-size:1.05rem;line-height:1.65}\n.kas-reservation-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);grid-template-areas:\"booking map\";gap:28px;align-items:start}\n.kas-reservation-layout>.wp-block-group__inner-container{display:contents}\n.kas-reservation-form{grid-area:booking;min-width:0;margin:0!important}\n.kas-reservation-form .cfxb-booking{width:100%;max-width:none;margin:0}\n.kas-map-panel{grid-area:map;position:sticky;top:96px;min-width:0;border:1px solid #d5dde2;border-top:4px solid #476faf;border-radius:8px;background:#f5f8fa;padding:20px}\n.kas-map-panel h2{margin:0 0 8px;padding:0;border:0;background:none;font-size:1.25rem;line-height:1.3;color:#203746}\n.kas-map-panel h2:before,.kas-map-panel h2:after{display:none}\n.kas-map-panel p{margin:0 0 14px;font-size:.95rem;line-height:1.55;color:#384b58}\n.kas-map-open{display:block;color:#1b5790;text-decoration:none!important;border-radius:5px}\n.kas-map-preview{display:block;width:100%;height:auto;border:1px solid #c8d1d9;border-radius:3px}\n.kas-map-button{display:flex;align-items:center;justify-content:center;min-height:46px;margin-top:12px;padding:10px 14px;border:1px solid #476faf;border-radius:5px;background:#fff;font-weight:600;text-align:center}\n.kas-map-open:hover .kas-map-button{background:#eaf0f7}\n.kas-map-open:focus-visible,#kas-map-dialog button:focus-visible{outline:3px solid #2271b1;outline-offset:4px}\n.kas-map-mobile-label{display:none}\n.kas-map-panel .kas-map-note{margin:12px 0 0;font-size:.84rem;color:#526470}\n#kas-map-dialog{box-sizing:border-box;width:min(1440px,calc(100vw - 32px));max-width:none;height:min(920px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);margin:auto;padding:0;border:0;border-radius:10px;background:#fff;color:#203746;box-shadow:0 16px 64px #0006;overflow:hidden}\n#kas-map-dialog:not([open]){display:none}\n#kas-map-dialog[open]{display:flex;flex-direction:column}\n#kas-map-dialog::backdrop{background:rgba(15,29,40,.78)}\n#kas-map-dialog .kas-map-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid #d5dde2;flex-shrink:0}\n#kas-map-dialog h2{margin:0;padding:0;border:0;background:none;font-size:1.2rem;line-height:1.3}\n#kas-map-dialog h2:before,#kas-map-dialog h2:after{display:none}\n#kas-map-dialog form{margin:0;flex-shrink:0}\n#kas-map-dialog form button{white-space:nowrap}\n#kas-map-dialog button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid #b8c7d2;border-radius:5px;background:#fff;color:#203746;font:inherit;cursor:pointer}\n#kas-map-dialog button:hover{background:#eaf0f7}\n#kas-map-dialog button:disabled{opacity:.45;cursor:default}\n#kas-map-dialog .kas-map-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 18px;background:#f5f8fa;flex-shrink:0}\n#kas-map-dialog .kas-map-zoom-level{min-width:36px;text-align:center;font-variant-numeric:tabular-nums}\n#kas-map-dialog .kas-map-instruction{margin:0;padding:0 18px 10px;background:#f5f8fa;font-size:.88rem;line-height:1.4;color:#526470;flex-shrink:0}\n#kas-map-dialog .kas-map-stage{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;background:#e6edf1;padding:16px}\n#kas-map-dialog .kas-map-full{display:block;margin:auto;width:100%;max-width:none!important;max-height:none!important;height:auto;touch-action:pan-x pan-y pinch-zoom}\n@media(max-width:991px){\n.kas-reservation-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:\"map\" \"booking\";gap:20px}\n.kas-map-panel{position:static;padding:14px 16px}\n.kas-map-panel h2,.kas-map-panel .kas-map-description,.kas-map-preview,.kas-map-desktop-label,.kas-map-panel .kas-map-note{display:none}\n.kas-map-mobile-label{display:inline}\n.kas-map-button{margin:0}\n.kas-booking-intro{font-size:1rem;margin-bottom:18px}\n}\n@media(max-width:575px){\n#kas-map-dialog{width:100vw;height:100dvh;max-height:100dvh;border-radius:0}\n#kas-map-dialog .kas-map-dialog-header{padding:10px 12px}\n#kas-map-dialog .kas-map-controls{padding:8px 12px}\n#kas-map-dialog .kas-map-instruction{padding:0 12px 8px}\n}\n\n.kas-reservations-link-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-6px 0 24px}\n.kas-reservations-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:9px 16px;box-sizing:border-box;border:1px solid #476faf;border-radius:5px;background:#fff;color:#1b5790!important;font-weight:600;text-decoration:none!important;line-height:1.4}\n.kas-reservations-link:hover{background:#eef4f9}\n.kas-reservations-link:focus-visible{outline:3px solid #2271b1;outline-offset:4px}\n.kas-reservations-link-note{color:#536570;font-size:.85rem}\n<\/style>\n<p class=\"kas-booking-intro\">Velg dato, varighet og treningsomr\u00e5de, og finn en ledig starttid. Bruk kartet til \u00e5 orientere deg f\u00f8r du velger omr\u00e5de. Du kan \u00e5pne kartet underveis uten \u00e5 miste valgene dine.<\/p>\n<div class=\"kas-reservations-link-row\"><a class=\"kas-reservations-link\" href=\"https:\/\/kjellerflyplass.no\/?page_id=570\" target=\"_blank\" rel=\"noopener\" aria-label=\"Se aktive reservasjoner \u2013 \u00e5pnes i ny fane\">Se aktive reservasjoner <span aria-hidden=\"true\">\u2197<\/span><\/a><span class=\"kas-reservations-link-note\">\u00c5pnes i ny fane<\/span><\/div>\n\n\n\n<div class=\"wp-block-group kas-reservation-layout\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n\n<aside class=\"kas-map-panel\" aria-label=\"Kart over treningsomr\u00e5dene\">\n<h2>Finn treningsomr\u00e5det<\/h2>\n<p class=\"kas-map-description\">Omr\u00e5denumrene i kartet brukes ogs\u00e5 i bookingen. \u00c5pne kartet for \u00e5 se grensene og teksten tydeligere.<\/p>\n<a class=\"kas-map-open\" id=\"kas-map-open\" href=\"https:\/\/kjellerflyplass.no\/wp-content\/uploads\/2026\/09\/treningsomrader-2048x1446.jpg\" target=\"_blank\" rel=\"noopener\" aria-label=\"\u00c5pne kart over treningsomr\u00e5dene\">\n<img loading=\"lazy\" class=\"kas-map-preview\" src=\"https:\/\/kjellerflyplass.no\/wp-content\/uploads\/2026\/09\/treningsomrader-1024x723.jpg\" width=\"1024\" height=\"723\" alt=\"Oversiktskart over treningsomr\u00e5dene rundt Kjeller, med omr\u00e5denumre og inntegnede grenser.\" decoding=\"async\"\/>\n<span class=\"kas-map-button\"><span class=\"kas-map-desktop-label\">Forst\u00f8rr kart<\/span><span class=\"kas-map-mobile-label\">Vis kart over treningsomr\u00e5dene<\/span><\/span>\n<\/a>\n<p class=\"kas-map-note\">Veiledende oversiktskart. Ledige tider vises i bookingen.<\/p>\n<\/aside>\n\n\n\n<div class=\"wp-block-group kas-reservation-form\"><div class=\"wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow\">\n<div id=\"cfxb-booking-1\" class=\"cfxb-booking\" data-cfxb-booking data-cfxb-instance=\"1\" data-config-url=\"https:\/\/kjellerflyplass.no\/index.php?rest_route=\/circumflex-booking\/v1\/booking-config\" style=\"--cfxb-primary:#2271b1;--cfxb-on-primary:#ffffff;--cfxb-error:#b32d2e;--cfxb-on-error:#ffffff;--cfxb-unavailable:#dcdcde;--cfxb-on-unavailable:#000000\" role=\"region\" aria-label=\"Reservasjon av \u00f8vingsomr\u00e5de\"><p class=\"cfxb-booking-loading\" role=\"status\">Laster ledige tider i \u00f8vingsomr\u00e5dene \u2026<\/p><noscript><p role=\"alert\">JavaScript er n\u00f8dvendig for dette reservasjonsskjemaet. Kontakt virksomheten for \u00e5 reservere.<\/p><\/noscript><\/div>\n<\/div><\/div>\n\n<\/div><\/div>\n\n\n\n<dialog id=\"kas-map-dialog\" aria-labelledby=\"kas-map-title\" aria-describedby=\"kas-map-help\">\n<div class=\"kas-map-dialog-header\"><h2 id=\"kas-map-title\">Kart over treningsomr\u00e5dene<\/h2><form method=\"dialog\"><button type=\"submit\" autofocus>Lukk kart<\/button><\/form><\/div>\n<div class=\"kas-map-controls\" role=\"group\" aria-label=\"Kartforst\u00f8rrelse\">\n<button type=\"button\" id=\"kas-map-minus\" aria-label=\"Zoom ut\" disabled>\u2212<\/button>\n<span class=\"kas-map-zoom-level\" id=\"kas-map-level\" role=\"status\" aria-live=\"polite\">1\u00d7<\/span>\n<button type=\"button\" id=\"kas-map-plus\" aria-label=\"Zoom inn\">+<\/button>\n<button type=\"button\" id=\"kas-map-fit\">Tilpass skjermen<\/button>\n<\/div>\n<p class=\"kas-map-instruction\" id=\"kas-map-help\">Bruk + for \u00e5 forst\u00f8rre. Rull eller sveip for \u00e5 se resten av kartet. Bookingvalgene dine beholdes n\u00e5r du lukker kartet.<\/p>\n<div class=\"kas-map-stage\" id=\"kas-map-stage\" tabindex=\"0\" role=\"region\" aria-label=\"Kart, rullbart ved forst\u00f8rrelse\">\n<img class=\"kas-map-full\" id=\"kas-map-full\" src=\"https:\/\/kjellerflyplass.no\/wp-content\/uploads\/2026\/09\/treningsomrader-2048x1446.jpg\" width=\"2048\" height=\"1446\" alt=\"Oversiktskart over treningsomr\u00e5dene rundt Kjeller. Omr\u00e5dene er merket med omr\u00e5denumre og inntegnede grenser.\" loading=\"lazy\" decoding=\"async\"\/>\n<\/div>\n<\/dialog>\n<script>\n(function(){\nvar trigger=document.getElementById('kas-map-open'),dialog=document.getElementById('kas-map-dialog');\nif(!trigger||!dialog||typeof dialog.showModal!=='function')return;\nvar stage=document.getElementById('kas-map-stage'),image=document.getElementById('kas-map-full'),minus=document.getElementById('kas-map-minus'),plus=document.getElementById('kas-map-plus'),fit=document.getElementById('kas-map-fit'),level=document.getElementById('kas-map-level'),zoom=1,previousOverflow='';\ntrigger.setAttribute('aria-haspopup','dialog');\ntrigger.setAttribute('aria-controls','kas-map-dialog');\nfunction render(){\nvar ratio=2048\/1446,base=Math.max(1,Math.min(2048,stage.clientWidth-32,(stage.clientHeight-32)*ratio));\nimage.style.width=Math.round(base*zoom)+'px';\nlevel.textContent=String(zoom).replace('.',',')+'\u00d7';\nminus.disabled=zoom<=1;plus.disabled=zoom>=4;\n}\nfunction setZoom(next){\nvar oldWidth=image.getBoundingClientRect().width,centerX=stage.scrollLeft+stage.clientWidth\/2,centerY=stage.scrollTop+stage.clientHeight\/2;\nzoom=next;render();\nvar scale=oldWidth?image.getBoundingClientRect().width\/oldWidth:1;\nstage.scrollLeft=Math.max(0,centerX*scale-stage.clientWidth\/2);stage.scrollTop=Math.max(0,centerY*scale-stage.clientHeight\/2);\n}\ntrigger.addEventListener('click',function(event){event.preventDefault();previousOverflow=document.documentElement.style.overflow;dialog.showModal();document.documentElement.style.overflow='hidden';zoom=1;render();stage.scrollTop=0;stage.scrollLeft=0;});\nminus.addEventListener('click',function(){setZoom(Math.max(1,zoom-.5));});\nplus.addEventListener('click',function(){setZoom(Math.min(4,zoom+.5));});\nfit.addEventListener('click',function(){zoom=1;render();stage.scrollTop=0;stage.scrollLeft=0;});\ndialog.addEventListener('close',function(){document.documentElement.style.overflow=previousOverflow;trigger.focus({preventScroll:true});});\nwindow.addEventListener('resize',function(){if(dialog.open)render();});\n})();\n<\/script>\n\n\n\n<style>\n\/* Preserve the header's natural height when Lightning fixes the menu. *\/\n@media (min-width: 992px) {\n  body.page-id-568 .siteHeader { height: var(--kas-header-height, auto); }\n}\n<\/style>\n<script>\n(function () {\n  if (!document.body.classList.contains('page-id-568')) return;\n  var header = document.querySelector('.siteHeader');\n  if (!header) return;\n  var frame = 0;\n  function measureHeader() {\n    frame = 0;\n    var wasScrolled = document.body.classList.contains('header_scrolled');\n    \/* Measure the normal layout synchronously, before the next paint. *\/\n    document.body.classList.remove('header_scrolled');\n    header.style.removeProperty('--kas-header-height');\n    var height = header.getBoundingClientRect().height;\n    header.style.setProperty('--kas-header-height', height + 'px');\n    document.body.classList.toggle('header_scrolled', wasScrolled);\n  }\n  function scheduleMeasure() {\n    if (!frame) frame = window.requestAnimationFrame(measureHeader);\n  }\n  measureHeader();\n  window.addEventListener('resize', scheduleMeasure, { passive: true });\n  window.addEventListener('load', scheduleMeasure, { once: true });\n  window.addEventListener('pageshow', scheduleMeasure);\n  if (document.fonts && document.fonts.ready) document.fonts.ready.then(scheduleMeasure);\n}());\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Velg dato, varighet og treningsomr\u00e5de, og finn en ledig starttid. Bruk kartet til \u00e5 orientere deg f\u00f8r du velger omr\u00e5de. Du kan \u00e5pne kartet underveis uten \u00e5 miste valgene dine. Se aktive reservasjoner \u2197\u00c5pnes i ny fane Finn treningsomr\u00e5det Omr\u00e5denumrene i kartet brukes ogs\u00e5 i bookingen. \u00c5pne kartet for \u00e5 se grensene og teksten tydeligere. [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_lightning_design_setting":{"layout":"col-one-no-subsection"},"footnotes":""},"class_list":["post-568","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/kjellerflyplass.no\/index.php?rest_route=\/wp\/v2\/pages\/568","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kjellerflyplass.no\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/kjellerflyplass.no\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/kjellerflyplass.no\/index.php?rest_route=\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/kjellerflyplass.no\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=568"}],"version-history":[{"count":10,"href":"https:\/\/kjellerflyplass.no\/index.php?rest_route=\/wp\/v2\/pages\/568\/revisions"}],"predecessor-version":[{"id":598,"href":"https:\/\/kjellerflyplass.no\/index.php?rest_route=\/wp\/v2\/pages\/568\/revisions\/598"}],"wp:attachment":[{"href":"https:\/\/kjellerflyplass.no\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=568"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}