Norrlyst Evening – Restaurant Norrlyst
Norrlyst Evening Menu

Compose your own 4-course menu

Four courses of your choice - an appetizer, a medium course, a main course and a dessert.

495
Per person

Selected dishes can be upgraded for an additional fee - these are marked with a + and the price appears next to the dish's description.

Wine menu - 4 glasses
425
Champagne & Wine menu - 4 glasses
525
Juice menu - 4 glasses
225
Filtered water ad libitum with or without sparkling water
35 / pers.
Norrlyst Evening - Restaurant Norrlyst :root { --bg: #f5f1ea; --bg-alt: #ebe5da; --ink: #1f1d1a; --ink-soft: #4a4641; --accent: #8a6f3d; --line: #cbc2b3; --serif: 'Cormorant Garamond', 'Cormorant', Georgia, serif; --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', sans-serif; } * { box-sizing: border-box; margin: 0; padding: 0; } html { scroll-behavior: smooth; } body { background: var(--bg); color: var(--ink); font-family: var(--sans); font-weight: 300; line-height: 1.6; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* ===== HERO ===== */ /* Højde og billedfokus styres af CSS-variabler. Override i Elementor's custom CSS hvis du vil ændre dem: .hero { --hero-height: 70vh; --hero-focal: center 60%; } */ .hero { --hero-height: 55vh; --hero-focal: center; position: relative; z-index: 0; width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); height: var(--hero-height); min-height: 380px; color: #fff; overflow: hidden; pointer-events: none !important; } .hero a, .hero button { pointer-events: auto !important; } .hero-img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: var(--hero-focal); pointer-events: none !important; } .hero::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.55) 50%, rgba(0,0,0,0.65) 100%); pointer-events: none; } /* --hero-text-y styrer hvor teksten sidder lodret (0% = top, 50% = midt, 100% = bund). Override i Elementor's custom CSS: .hero { --hero-text-y: 25%; } */ .hero-content { --hero-text-y: 50%; position: absolute; top: var(--hero-text-y); left: 0; right: 0; transform: translateY(-50%); z-index: 2; display: flex; flex-direction: column; align-items: center; text-align: center; padding: 0 24px; } .hero-eyebrow { font-family: var(--sans); font-size: 0.74rem; letter-spacing: 0.4em; text-transform: uppercase; font-weight: 400; margin-bottom: 18px; color: #fff; opacity: 0.95; text-shadow: 0 1px 8px rgba(0,0,0,0.4); } .hero h1 { font-family: var(--serif); font-weight: 300; font-size: clamp(2.4rem, 5.5vw, 4.4rem); letter-spacing: 0.04em; line-height: 1.05; color: #fff; text-shadow: 0 2px 16px rgba(0,0,0,0.45); } /* ===== CONCEPT (intro + price + pairings combined) ===== */ .concept { padding: 70px 32px 60px; text-align: center; border-bottom: 1px solid var(--line); } .concept-inner { max-width: 880px; margin: 0 auto; } .concept .label { font-size: 0.72rem; letter-spacing: 0.4em; text-transform: uppercase; color: var(--accent); margin-bottom: 18px; } .concept h2 { font-family: var(--serif); font-weight: 400; font-size: clamp(1.9rem, 3.6vw, 2.6rem); letter-spacing: 0.03em; margin-bottom: 22px; line-height: 1.2; } .concept .lede { font-size: 1.02rem; color: var(--ink-soft); max-width: 600px; margin: 0 auto 28px; } .price-large { font-family: var(--serif); font-size: 2.4rem; font-weight: 300; color: var(--accent); letter-spacing: 0.05em; margin: 4px 0 6px; } .price-suffix { font-size: 0.78rem; letter-spacing: 0.3em; text-transform: uppercase; color: var(--ink-soft); margin-bottom: 22px; } .upgrade-note { font-style: italic; font-size: 0.92rem; color: var(--ink-soft); max-width: 560px; margin: 0 auto; } .concept .links { margin-top: 30px; display: flex; justify-content: center; gap: 36px; flex-wrap: wrap; } .concept .links a { font-family: var(--sans); font-size: 0.78rem; letter-spacing: 0.3em; text-transform: uppercase; color: var(--ink); text-decoration: none; padding-bottom: 4px; border-bottom: 1px solid var(--accent); transition: color 0.2s ease; } .concept .links a:hover { color: var(--accent); } .pairings { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 18px; max-width: 760px; margin: 36px auto 0; padding-top: 30px; border-top: 1px solid var(--line); } .pairing { text-align: center; } .pairing-name { font-family: var(--serif); font-style: italic; font-size: 1rem; color: var(--ink); margin-bottom: 4px; } .pairing-price { font-family: var(--sans); font-size: 0.92rem; color: var(--accent); letter-spacing: 0.05em; } /* ===== MENU GRID (the 4 core categories) ===== */ .menu-wrap { max-width: 1100px; margin: 0 auto; padding: 60px 32px 20px; } .menu-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 56px 64px; } .menu-section { min-width: 0; } .section-head { text-align: center; margin-bottom: 28px; } .section-head h3 { font-family: var(--serif); font-weight: 400; font-size: 0.95rem; letter-spacing: 0.45em; text-transform: uppercase; color: var(--ink); padding: 0 18px; display: inline-block; position: relative; } .section-head h3::before, .section-head h3::after { content: ''; position: absolute; top: 50%; width: 36px; height: 1px; background: var(--line); } .section-head h3::before { right: 100%; } .section-head h3::after { left: 100%; } .dish { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: baseline; padding: 14px 0; border-bottom: 1px solid var(--line); } .dish:last-child { border-bottom: none; } .dish-info { min-width: 0; } .dish-name { font-family: var(--serif); font-size: 1.18rem; font-weight: 400; letter-spacing: 0.01em; color: var(--ink); line-height: 1.3; margin-bottom: 3px; } .dish-desc { font-size: 0.88rem; color: var(--ink-soft); font-weight: 300; line-height: 1.45; } .upgrade { display: inline-block; margin-left: 4px; font-family: var(--sans); font-size: 0.74rem; letter-spacing: 0.05em; color: var(--accent); font-style: normal; white-space: nowrap; } .dish-price { font-family: var(--serif); font-size: 1.1rem; color: var(--accent); font-weight: 400; white-space: nowrap; letter-spacing: 0.04em; } /* ===== EXTRAS (Snacks + Sides) ===== */ .extras { background: var(--bg-alt); margin-top: 70px; padding: 60px 32px 50px; } .extras-inner { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 56px 64px; } /* ===== FOOTER ===== */ .footer-area { padding: 50px 32px 80px; text-align: center; } .footer-note { font-style: italic; color: var(--ink-soft); font-size: 0.92rem; font-family: var(--serif); margin-bottom: 28px; } .btn { display: inline-block; padding: 14px 38px; font-family: var(--sans); font-size: 0.78rem; letter-spacing: 0.3em; text-transform: uppercase; text-decoration: none; color: var(--ink); border: 1px solid var(--ink); background: transparent; transition: all 0.3s ease; } .btn:hover { background: var(--ink); color: var(--bg); } /* ===== RESPONSIVE ===== */ @media (max-width: 780px) { .menu-grid, .extras-inner { grid-template-columns: 1fr; gap: 50px; } } @media (max-width: 900px) { .hero { --hero-height: 50vh; min-height: 420px; } } @media (max-width: 600px) { .hero { --hero-height: 55vh; min-height: 460px; } .concept { padding: 50px 24px 44px; } .menu-wrap { padding: 44px 24px 12px; } .extras { padding: 50px 24px 40px; margin-top: 50px; } .section-head h3 { letter-spacing: 0.32em; font-size: 0.88rem; } .section-head h3::before, .section-head h3::after { width: 24px; } .dish-name { font-size: 1.08rem; } .pairings { grid-template-columns: 1fr 1fr; gap: 14px; } }
Norrlyst Evening Menu

Create your own 4-course menu

Four courses of your choice - an appetizer, an entree, a main course and a dessert.

495
Per person

Selected dishes can be upgraded for an additional charge - these are marked with + and the price is shown next to the dish description.

Wine menu - 4 glasses
425
Champagne & Wine Menu - 4 glasses
525
Juice menu - 4 glasses
225
Filtered water ad libitum with or without soda
35 / pers.
document.addEventListener("DOMContentLoaded", function() { // Select all buttons and links const buttons = document.querySelectorAll("button, a"); buttons.forEach(button => { const buttonText = button.textContent.trim().toLowerCase(); // Check if button text contains "book bord" or "reservations" (case insensitive) if (buttonText.includes("book bord") || buttonText.includes("reservations")) { button.addEventListener("click", function(event) { event.preventDefault(); // Prevent default link behavior if it's an anchor tag openIframe(); }); } }); function openIframe() { const overlay = document.getElementById("overlay"); const iframe = document.getElementById("dynamic-iframe"); // Get UTM parameters from the current URL const urlParams = new URLSearchParams(window.location.search); const utmSource = urlParams.get("utm_source") || ""; const utmMedium = urlParams.get("utm_medium") || ""; const utmCampaign = urlParams.get("utm_campaign") || ""; const utmTerm = urlParams.get("utm_term") || ""; const utmContent = urlParams.get("utm_content") || ""; // Build the dynamic iframe URL with UTM parameters const iframeUrl = `https://book.easytable.com/book/?id=70b2b&lang=auto&utm_source=${utmSource}&utm_medium=${utmMedium}&utm_campaign=${utmCampaign}&utm_term=${utmTerm}&utm_content=${utmContent}`; // Set the iframe's src to the dynamically generated URL iframe.src = iframeUrl; overlay.style.display = "flex"; // Display the overlay as flex } // Close overlay when clicking outside iframe document.getElementById("overlay").addEventListener("click", function(e) { if (e.target === this) { // Check if clicked outside iframe this.style.display = "none"; } }); // Close overlay when clicking the close button const closeButton = document.getElementById("close-button"); if (closeButton) { closeButton.addEventListener("click", function() { document.getElementById("overlay").style.display = "none"; }); } // Listen for postMessage from iframe to close overlay window.addEventListener("message", function(event) { if (event.data === "bookingComplete") { document.getElementById("overlay").style.display = "none"; window.location.href = "https://www.norrlyst.dk/restaurantnorrlyst/takfordinbooking"; } }); // Monitor iframe URL changes function monitorIframeURL() { const iframe = document.getElementById("dynamic-iframe"); const targetURL = "https://www.norrlyst.dk/restaurantnorrlyst/takfordinbooking"; const checkIframe = setInterval(function() { try { const iframeSrc = iframe.contentWindow.location.href; if (iframeSrc.includes("norrlyst.dk/restaurantnorrlyst/takfordinbooking")) { document.getElementById("overlay").style.display = "none"; window.location.href = targetURL; clearInterval(checkIframe); } } catch (e) { // Ignore cross-origin errors } }, 500); } // Start monitoring when iframe is loaded document.getElementById("dynamic-iframe").addEventListener("load", monitorIframeURL); }); #overlay { z-index: 9999; } @media screen and (max-width: 768px) { #overlay { display: flex; justify-content: center; align-items: center; } #iframe-container { width: 95%; max-width: 600px; } }