/* Google Fonts: <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500&display=swap" rel="stylesheet"> */
:root { --vaiva-black: #151515; --vaiva-cream: #f7f2ea; --vaiva-line: #e9e7e1; --vaiva-gold: #b69a5b; }
#topbar { min-height: 40px; display: flex; align-items: center; justify-content: center; background: #F5F2EB; border-top: 1px solid var(--vaiva-black); color: var(--vaiva-black); font-family: 'DM Sans', Arial, sans-serif; font-size: 14px; letter-spacing: .08em; text-transform: uppercase; }
header { position: relative; z-index: 10; display: grid; grid-template-columns: 1fr auto 1fr; grid-template-rows: 104px auto; align-items: center; max-width: 1440px; min-height: 154px; margin: 0 auto; padding: 0 48px; background: #fff; font-family: 'DM Sans', Arial, sans-serif; }
header > a:first-child { grid-column: 2; grid-row: 1; display: block; width: min(290px, 24vw); }
header .WebShopSkinLogo { display: block; width: 100%; height: auto; }
header #Search_Form { grid-column: 3; grid-row: 1; justify-self: end; display: grid; grid-template-columns: minmax(150px, 204px) 46px; align-items: stretch; width: min(100%, 250px); margin: 0 72px 0 0 !important; }
header #Search_Form .SearchTitle_SearchPage, header #Search_Form br, header #Search_Form .nbsp, header #Search_Form .supporter { display: none; }
header #Search_Form .SearchField_SearchPage { grid-column: 1; width: 100%; height: 45px; box-sizing: border-box; padding: 0 14px; border: 1px solid var(--vaiva-line); border-radius: 7px 0 0 7px; background: #f4f4f4; color: var(--vaiva-black); font-family: inherit; font-size: 14px; outline: none; }
header #Search_Form .SearchField_SearchPage:focus { border-color: var(--vaiva-gold); background: #fff; }
header #Search_Form .SubmitButton_SearchPage { grid-column: 2; width: 46px; height: 45px; padding: 0; border: 0; border-radius: 0 7px 7px 0; background: var(--vaiva-black); color: transparent; cursor: pointer; }
header #Search_Form .SubmitButton_SearchPage { background-color: var(--vaiva-black) !important; background-image: radial-gradient(circle at 20px 19px, transparent 0 6px, #fff 6.5px 8px, transparent 8.5px), linear-gradient(45deg, transparent 45%, #fff 46% 54%, transparent 55%) !important; background-position: 0 0, 26px 26px; background-size: 46px 45px, 10px 10px; background-repeat: no-repeat; }
header #Search_Form .SubmitButton_SearchPage { box-shadow: inset 0 0 0 2px var(--vaiva-black); }
header #basket { grid-column: 3; grid-row: 1; justify-self: end; width: 57px; margin-right: 0; color: var(--vaiva-black); cursor: pointer; }
header #basket .basketContent, header #basket .creditcards, header #basket .text { display: none; }
header #basket .icon { position: relative; display: block; width: 48px; height: 50px; cursor: pointer; }
header #basket .image { position: absolute; top: 9px; left: 9px; width: 30px; height: 31px; box-sizing: border-box; border: 0; border-radius: 0; background: var(--vaiva-black); -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 48 50' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23000' stroke-width='3'%3E%3Cpath d='M17 21h23v22H17z'/%3E%3Cpath d='M22 21v-7a7 7 0 0 1 14 0v7'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 48 50' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23000' stroke-width='3'%3E%3Cpath d='M17 21h23v22H17z'/%3E%3Cpath d='M22 21v-7a7 7 0 0 1 14 0v7'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; }
header #basket .image::before { display: none; }
header #basket .icon::after { content: 'Kurv'; position: absolute; top: 36px; left: 50%; width: max-content; transform: translateX(-50%); font-size: 12px; }
header #basket .count { position: absolute; top: 21px; right: 0; min-width: 18px; height: 18px; padding: 0 3px; box-sizing: border-box; border-radius: 50%; background: #1C1C1C; color: #E8B923; font-size: 11px; font-weight: 600; line-height: 18px; text-align: center; }
header #ProductmenuContainer_DIV { grid-column: 1 / -1; grid-row: 2; width: 100%; }
header #ProductmenuContainer_DIV .Heading_Productmenu { display: none; }
header #ProductMenu_List { display: flex; align-items: center; justify-content: center; gap: clamp(10px, 1.8vw, 30px); margin: 0; padding: 0 0 18px; list-style: none; }
header #ProductMenu_List .RootCategory_Productmenu { margin: 0; padding: 0; }
header #ProductMenu_List a#ActiveCategory_A { display: none; }
header #ProductMenu_List a[href] { position: relative; display: block; padding: 12px 14px; color: var(--vaiva-black); font-family: 'DM Sans', Arial, sans-serif; font-size: 16px; font-weight: 400; line-height: 1; letter-spacing: -.03em; text-decoration: none; }
header #ProductMenu_List > li.active > a[href]::after, header #ProductMenu_List > li:hover > a[href]::after { content: ''; position: absolute; inset: 0; border: 2px solid var(--vaiva-black); pointer-events: none; }
header #btn-menu { display: none; }

/* Products */
article { max-width: 1440px; margin: 0 auto; font-family: 'DM Sans', Arial, sans-serif; }
article .Photo1_Frontpage { display: block; width: 100%; }
article .Photo1_Frontpage img { display: block; width: 100%; height: auto; }
article .Frontpage_Custom_UL, article .ProductList_Custom_UL, article .Related_Custom_UL { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 38px 22px; margin: 64px 0; padding: 0; list-style: none; }
.webshop-frontpage article .Frontpage_Custom_UL { margin-top: 46px; }
article .Frontpage_Custom_UL > li, article .ProductList_Custom_UL > li, article .Related_Custom_UL > li { min-width: 0; }
article .Frontpage_Custom_UL form, article .ProductList_Custom_UL form { height: 100%; }
article .product { display: grid; grid-template-columns: 1fr auto; height: 100%; align-items: end; }
article .product .image { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; overflow: hidden; background: #f7f6f3; }
article .product .image { grid-column: 1 / -1; }
article .product .image a { display: block; width: 100%; height: 100%; }
article .product .image img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; transition: transform .3s ease; }
article .product .image:hover img { transform: scale(1.04); }
article .product .name { grid-column: 1 / -1; min-height: 46px; margin-top: 16px; }
.webshop-productlist article .product .name { min-height: 0; margin-bottom: 8px; }
article .product .name a { color: var(--vaiva-black); font-size: 15px; line-height: 1.45; text-decoration: none; }
article .product .price { grid-column: 1; margin: 0; color: var(--vaiva-black); font-size: 15px; font-weight: 500; }
article .product .price .NormalPrice::after { content: ' kr.'; }
article .product .price .SpecialOfferPrice:not(:empty)::after { content: ' kr.'; }
article .product .buy { position: relative; grid-column: 2; display: inline-flex; margin-left: 14px; }
article .product .buy input[name='AMOUNT'] { display: none; }
article .product .buy input[type='text'] { display: none; }
article .product .buy > span { display: inline-flex; align-items: center; justify-content: center; width: 118px; height: 38px; box-sizing: border-box; border: 1px solid var(--vaiva-black); background: var(--vaiva-black); color: #fff; font-family: inherit; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; transition: background .2s ease, color .2s ease; }
article .product .buy input[type='submit'], article .product .buy input[type='image'], article .product .buy img[src*='transparent.png'], article .product .buy .Related_BuyButton_IMG { position: absolute; inset: 0; z-index: 2; display: block; width: 100% !important; height: 100% !important; margin: 0 !important; padding: 0; border: 0; outline: 0; opacity: 0; cursor: pointer; }
article .product .buy:hover > span { background: #fff; color: var(--vaiva-black); }
article .product .stockCount { display: none; }
article .Text1_FrontPage { max-width: 760px; margin: 0 auto 80px; padding: 0 24px; color: var(--vaiva-black); text-align: center; }
article .Text1_FrontPage h1 { margin: 0 0 18px; font-family: 'DM Sans', Arial, sans-serif; font-size: 36px; font-weight: 300; letter-spacing: 0; }
article .Text1_FrontPage p { margin: 0; color: #5f5d59; font-size: 15px; line-height: 1.8; }
.webshop-productlist article h1 { margin: 44px 48px 0; font-family: 'DM Sans', Arial, sans-serif; font-size: clamp(32px, 3.4vw, 44px); font-weight: 300; line-height: 1.15; letter-spacing: 0; }
.webshop-productlist article h1, .webshop-productlist article .breadcrumb, .webshop-productlist article .pager, .webshop-productlist article .pages { display: none; }
.webshop-productlist article .category-description { display: block; margin: 26px 0 0; padding: 0; color: #5f5d59; font-size: 15px; line-height: 1.7; }
.webshop-productlist .CmsPageStyle { text-align: center; }
.webshop-productlist .CmsPageStyle img { width: auto !important; max-width: 100%; height: auto !important; }
.webshop-productlist article .ProductList_Custom_UL { margin-top: 28px; }

/* Product info */
.webshop-productinfo article { max-width: 1440px; padding: 0 48px 48px; }
.webshop-productinfo .product-details-buy-form { display: block; width: 100%; }
.webshop-productinfo .breadcrumb { margin: 0 0 28px; color: #777; font-size: 12px; }
.webshop-productinfo .breadcrumb a { color: #777; text-decoration: none; }
.webshop-productinfo .breadcrumb a:hover { color: var(--vaiva-black); }
.webshop-productinfo #productcard { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); gap: clamp(42px, 6vw, 86px); align-items: start; }
.webshop-productinfo .productcard-left { min-width: 0; }
.webshop-productinfo #imagecanvas { position: relative; display: flex; align-items: center; justify-content: center; min-height: 600px; padding: 30px; background: #f7f6f3; }
.webshop-productinfo #imagecanvas #Canvas { display: flex; align-items: center; justify-content: center; width: 600px !important; max-width: 100%; height: 600px !important; cursor: default !important; }
.webshop-productinfo #imagecanvas #Canvas img { display: block; width: 600px !important; max-width: 100%; height: 600px !important; object-fit: contain; mix-blend-mode: multiply; cursor: default !important; }
.webshop-productinfo #imagecanvas > img:not(.plusprisimg) { display: block; width: 100%; max-width: 600px; max-height: 600px; object-fit: contain; mix-blend-mode: multiply; cursor: default !important; }
.webshop-productinfo #imagecanvas .plusprisimg { display: none; }
.webshop-productinfo #Selector { display: flex; gap: 14px; margin-top: 14px; overflow: hidden; }
.webshop-productinfo #Selector img { width: 112px !important; height: 112px !important; margin: 0 !important; object-fit: contain; background: #f7f6f3; cursor: pointer; }
.webshop-productinfo #Selector img:nth-of-type(n+5) { display: none !important; }
.webshop-productinfo .productcard-right { min-width: 0; padding-top: 0; }
.webshop-productinfo .productcard-right h1 { margin: 0 0 22px; font-family: 'DM Sans', Arial, sans-serif; font-size: clamp(32px, 3.4vw, 44px); font-weight: 300; line-height: 1.15; letter-spacing: 0; }
.webshop-productinfo .productcard-right ul.info { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0 0 30px; padding: 0; list-style: none; }
.webshop-productinfo .productcard-right ul.info li { display: flex; align-items: center; gap: 9px; min-height: 52px; padding: 13px 15px; border: 1px solid var(--vaiva-line); background: var(--vaiva-cream); color: #5f5d59; font-size: 13px; line-height: 1.35; }
.webshop-productinfo .productcard-right ul.info img { display: none; }
.webshop-productinfo .productcard-right ul.info li::before { content: ''; width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; background: var(--vaiva-gold); }
.webshop-productinfo .productcard-right ul.info li.stock { color: #2f6f3e; }
.webshop-productinfo .productcard-right ul.info li.stock::before { background: #2f8f46; }
.webshop-productinfo .productcard-right ul.info .count { display: none; }
.webshop-productinfo #productcard-price { margin: 0 0 24px; color: var(--vaiva-black); font-size: 30px; font-weight: 500; }
.webshop-productinfo #productcard-price .Prices_Custom_UL { margin: 0; padding: 0; list-style: none; }
.webshop-productinfo #productcard-price .Prices_Custom_UL li { margin: 0; padding: 0; }
.webshop-productinfo #productcard-price .currency { margin-right: 4px; }
.webshop-productinfo #productcard-price .retail { display: none; }
.webshop-productinfo #BUYSECTION { display: grid; grid-template-columns: 1fr; gap: 12px; margin: 0 0 14px; }
.webshop-productinfo #BUYSECTION .amountWrapper { display: none; }
.webshop-productinfo #BUYSECTION .buyWrapper { position: relative; display: block; width: 100%; }
.webshop-productinfo #BUYSECTION .buyWrapperHeadline { display: flex; align-items: center; justify-content: center; width: 100%; height: 52px; box-sizing: border-box; border: 1px solid var(--vaiva-black); background-color: var(--vaiva-black); background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 48 50' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23fff' stroke-width='3'%3E%3Cpath d='M17 21h23v22H17z'/%3E%3Cpath d='M22 21v-7a7 7 0 0 1 14 0v7'/%3E%3C/g%3E%3C/svg%3E"); background-position: calc(50% - 66px) 50%; background-repeat: no-repeat; background-size: 24px auto; color: #fff; font-family: 'DM Sans', Arial, sans-serif; font-size: 15px; letter-spacing: .08em; text-transform: uppercase; transition: background .2s ease, color .2s ease; }
.webshop-productinfo .productcard-right ul.info li.delivery::before { width: 26px; height: 18px; flex-basis: 26px; border-radius: 0; background-color: var(--vaiva-black); -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 22' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2h18v12h2.2l2.8-6h3.2l3.8 4.4V18h-3.1a3.5 3.5 0 0 1-6.8 0h-9.2a3.5 3.5 0 0 1-6.8 0H2V2Zm22 8-1.9 4H30v-.9L27.3 10H24ZM9.5 20a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm16 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 32 22' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 2h18v12h2.2l2.8-6h3.2l3.8 4.4V18h-3.1a3.5 3.5 0 0 1-6.8 0h-9.2a3.5 3.5 0 0 1-6.8 0H2V2Zm22 8-1.9 4H30v-.9L27.3 10H24ZM9.5 20a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm16 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z'/%3E%3C/svg%3E") center / contain no-repeat; }
.webshop-productinfo #BUYSECTION input[type='submit'], .webshop-productinfo #BUYSECTION input[type='image'] { position: absolute; inset: 0; z-index: 2; width: 100% !important; height: 100% !important; margin: 0; padding: 0; border: 0; outline: 0; opacity: 0; cursor: pointer; }
.webshop-productinfo #BUYSECTION .buyWrapper:hover .buyWrapperHeadline { background-color: #fff; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 48 50' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23151515' stroke-width='3'%3E%3Cpath d='M17 21h23v22H17z'/%3E%3Cpath d='M22 21v-7a7 7 0 0 1 14 0v7'/%3E%3C/g%3E%3C/svg%3E"); color: var(--vaiva-black); }
.webshop-productinfo .information { padding-top: 12px; color: #5f5d59; font-size: 14px; line-height: 1.8; }
.webshop-productinfo .information .information { padding: 0; }
.webshop-productinfo .information strong { display: block; margin-bottom: 14px; color: var(--vaiva-black); font-size: 13px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
.webshop-productinfo .information table { width: 100%; margin-top: 24px; border-collapse: collapse; }
.webshop-productinfo .information td { padding: 12px 0; border-top: 1px solid var(--vaiva-line); vertical-align: top; font-size: 13px; }
.webshop-productinfo .information td:first-child { width: 150px; color: var(--vaiva-black); font-weight: 500; }
.webshop-productinfo .related-products { grid-column: 1 / -1; width: 100%; margin-top: 46px; padding-top: 28px; clear: both; }
.webshop-productinfo .related-products:empty { display: none; }
.webshop-productinfo .related-products:not(:has(img)) { display: none; }
.webshop-productinfo .related-products > .header { margin: 0 0 28px; font-family: 'DM Sans', Arial, sans-serif; font-size: 28px; font-weight: 300; letter-spacing: 0; text-align: center; }
.webshop-productinfo .related-products > .header span { font-family: inherit; font-size: inherit; font-weight: inherit; }
.webshop-productinfo article .Related_Custom_UL { width: 100%; margin: 0; padding: 0; }
.webshop-productinfo article .Related_Custom_UL .buy img { display: block; }
.webshop-productinfo article .Related_BuyButton_Button { width: 128px; height: 38px; border: 1px solid var(--vaiva-black); border-radius: 0; background-color: var(--vaiva-black); background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 48 50' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23fff' stroke-width='3'%3E%3Cpath d='M17 21h23v22H17z'/%3E%3Cpath d='M22 21v-7a7 7 0 0 1 14 0v7'/%3E%3C/g%3E%3C/svg%3E"); background-position: 12px 50%; background-repeat: no-repeat; background-size: 18px auto; color: #fff; font-family: inherit; font-size: 13px; letter-spacing: .04em; text-align: right; text-transform: uppercase; cursor: pointer; transition: background .2s ease, color .2s ease; }
.webshop-productinfo article .Related_BuyButton_Button:hover { background-color: #fff; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 48 50' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23151515' stroke-width='3'%3E%3Cpath d='M17 21h23v22H17z'/%3E%3Cpath d='M22 21v-7a7 7 0 0 1 14 0v7'/%3E%3C/g%3E%3C/svg%3E"); color: var(--vaiva-black); }

/* Basket overlay */
html.vaiva-overlay-open { overflow: hidden; }
.vaiva-basket-overlay { position: fixed; inset: 0; z-index: 999999; display: none; align-items: center; justify-content: center; padding: 24px; font-family: 'DM Sans', Arial, sans-serif; }
.vaiva-basket-overlay.active { display: flex; }
.vaiva-basket-overlay-bg { position: absolute; inset: 0; background: rgba(21, 21, 21, .45); }
.vaiva-basket-overlay-box { position: relative; z-index: 1; width: min(500px, 100%); max-height: min(760px, calc(100vh - 48px)); overflow: auto; padding: 42px; background: #fff; box-shadow: 0 24px 80px rgba(0, 0, 0, .22); }
.vaiva-basket-overlay-close { position: absolute; top: 16px; right: 18px; width: 34px; height: 34px; border: 0; background: transparent; color: var(--vaiva-black); font-size: 32px; font-weight: 300; line-height: 1; cursor: pointer; }
.vaiva-basket-overlay-top { display: grid; grid-template-columns: 120px 1fr; gap: 24px; align-items: center; }
.vaiva-basket-overlay-product-image { display: flex; align-items: center; justify-content: center; width: 120px; aspect-ratio: 1 / 1; background: #f7f6f3; }
.vaiva-basket-overlay-product-image img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.vaiva-basket-overlay-title { margin: 0 0 8px; color: var(--vaiva-black); font-size: 28px; font-weight: 300; line-height: 1.2; letter-spacing: 0; }
.vaiva-basket-overlay-product-name { margin: 0 0 22px; color: #5f5d59; font-size: 15px; line-height: 1.45; }
.vaiva-basket-overlay-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.vaiva-basket-overlay-actions a, .vaiva-basket-overlay-actions button { display: inline-flex; align-items: center; justify-content: center; min-width: 150px; height: 42px; padding: 0 22px; border: 1px solid var(--vaiva-black); border-radius: 0; font-family: inherit; font-size: 13px; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; cursor: pointer; }
.vaiva-basket-overlay-actions a { background: var(--vaiva-black); color: #fff; }
.vaiva-basket-overlay-actions button { background: #fff; color: var(--vaiva-black); }
.vaiva-basket-overlay-related { display: none; margin-top: 38px; padding-top: 32px; border-top: 1px solid var(--vaiva-line); }
.vaiva-basket-overlay-related.active { display: block; }
.vaiva-basket-overlay-related-header { margin-bottom: 18px; color: var(--vaiva-black); font-size: 22px; font-weight: 300; letter-spacing: 0; text-align: center; }
.vaiva-basket-overlay-carousel-wrap { position: relative; display: grid; grid-template-columns: 34px 1fr 34px; gap: 10px; align-items: center; }
.vaiva-basket-overlay-carousel { display: grid; grid-auto-columns: 175px; grid-auto-flow: column; gap: 16px; overflow-x: auto; padding-bottom: 8px; scroll-snap-type: x mandatory; scrollbar-width: thin; }
.vaiva-basket-overlay-arrow { display: flex; align-items: center; justify-content: center; width: 34px; height: 52px; border: 1px solid var(--vaiva-black); background: #fff; color: var(--vaiva-black); font-size: 30px; font-weight: 300; line-height: 1; cursor: pointer; }
.vaiva-basket-overlay-arrow:hover { background: var(--vaiva-black); color: #fff; }
.vaiva-basket-overlay-loading { grid-column: 1; color: #777; font-size: 13px; text-align: center; }
.vaiva-basket-overlay-card { display: block; color: var(--vaiva-black); text-decoration: none; scroll-snap-align: start; }
.vaiva-basket-overlay-card-image { display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; overflow: hidden; background: #f7f6f3; }
.vaiva-basket-overlay-card-image img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; transition: transform .3s ease; }
.vaiva-basket-overlay-card:hover .vaiva-basket-overlay-card-image img { transform: scale(1.04); }
.vaiva-basket-overlay-card-name { display: block; min-height: 42px; margin-top: 12px; font-size: 13px; line-height: 1.4; }
.vaiva-basket-overlay-card-price { display: block; margin-top: 6px; font-size: 13px; font-weight: 500; }

/* Footer */
footer { margin-top: 0; border-top: 1px solid var(--vaiva-line); background: #F5F2EB; color: var(--vaiva-black); font-family: 'DM Sans', Arial, sans-serif; }
footer section { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; max-width: 1344px; margin: 0 auto; padding: 58px 48px; }
footer section.vaiva-footer-modern { grid-template-columns: 1.1fr 1fr 1fr; gap: 70px; }
footer > section:not(.vaiva-footer-modern) > .TopMenu_MenuItems { display: none; }
footer > section:not(.vaiva-footer-modern) > footer { display: contents; }
footer > section:not(.vaiva-footer-modern) > footer > section.vaiva-footer-modern { display: contents; }
footer > section:not(.vaiva-footer-modern) { grid-template-columns: 1.1fr 1fr 1fr; gap: 70px; }
footer > section:not(.vaiva-footer-modern) > .credits { grid-column: 1 / -1; width: 100%; }
footer .vaiva-footer-col { min-width: 0; }
footer .vaiva-footer-col h3 { margin: 0 0 18px; color: var(--vaiva-black); font-size: 15px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; }
footer .vaiva-footer-col ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
footer .vaiva-footer-col a { color: var(--vaiva-black); font-size: 14px; line-height: 1.45; text-decoration: none; }
footer .vaiva-footer-col a:hover { color: var(--vaiva-gold); }
footer .vaiva-footer-logo { font-family: Georgia, serif; font-size: 46px; line-height: 1; letter-spacing: .06em; }
footer .vaiva-footer-address { margin-top: 12px; color: #5f5d59; font-size: 12px; line-height: 1.55; }
footer .vaiva-footer-payment { margin-top: 28px; }
footer .vaiva-footer-payment img { display: block; max-width: 220px; height: auto; }
footer .vaiva-footer-payment img[src*='creditcards-dk.png'] { display: none; }
footer .vaiva-footer-payment::after { content: ''; display: block; width: min(280px, 100%); height: 21px; margin: 8px 0 0; background: url('/images/skins/dandodesign/media/payments.png') left center / contain no-repeat; }
footer .vaiva-footer-social { display: flex; gap: 22px; margin-top: 22px; }
footer .vaiva-footer-social a { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border: 1px solid var(--vaiva-line); font-size: 17px; font-weight: 500; }
footer .vaiva-footer-newsletter { display: none; }
footer .vaiva-footer-newsletter { margin-top: 34px; }
footer .vaiva-footer-newsletter-form { display: grid; grid-template-columns: 1fr 112px; margin-top: 14px; border: 1px solid var(--vaiva-black); }
footer .vaiva-footer-newsletter-form input { min-width: 0; height: 42px; box-sizing: border-box; border: 0; padding: 0 14px; background: #fff; color: var(--vaiva-black); font-family: inherit; font-size: 13px; outline: none; }
footer .vaiva-footer-newsletter-form button { height: 42px; border: 0; background: var(--vaiva-black); color: #fff; font-family: inherit; font-size: 13px; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; }
footer .TopMenu_MenuItems { display: grid; grid-template-columns: repeat(2, max-content); gap: 13px 42px; margin: 0; padding: 0; list-style: none; }
footer .TopMenu_MenuItem { margin: 0; padding: 0; }
footer .TopMenu_MenuItem a, footer .phone a { color: var(--vaiva-black); font-size: 14px; text-decoration: none; }
footer .TopMenu_MenuItem a:hover, footer .phone a:hover { color: var(--vaiva-gold); }
footer section > ul:not(.TopMenu_MenuItems) { display: grid; grid-template-columns: 1.4fr 1fr auto; gap: 30px; margin: 0; padding: 0; list-style: none; }
footer section > ul:not(.TopMenu_MenuItems) > li { margin: 0; padding: 0; font-size: 14px; line-height: 1.7; }
footer section > ul:not(.TopMenu_MenuItems) strong { display: block; margin-bottom: 10px; font-size: 14px; font-weight: 500; }
footer .phone strong { margin-bottom: 0; }
footer .information { display: none; }
footer .facebook { font-size: 12px !important; text-align: center; }
footer .facebook .likes { font-size: 18px; font-weight: 500; }
footer .facebook a { display: block; margin-top: 8px; color: var(--vaiva-black); text-decoration: none; }
footer .facebook a::after { content: 'Facebook'; font-size: 13px; }
footer .facebook img { display: none; }
.credits { border-top: 1px solid rgba(21, 21, 21, .12); background: #F5F2EB; color: #5f5d59; font-family: 'DM Sans', Arial, sans-serif; }
.credits section { display: flex; align-items: center; justify-content: space-between; gap: 30px; max-width: 1344px; margin: 0 auto; padding: 22px 48px; }
.credits .creditcards { display: none; color: var(--vaiva-black); font-size: 12px; line-height: 1.5; }
.credits .creditcards img { display: block; max-width: 210px; height: auto; margin-top: 7px; }
.credits .contact { font-size: 12px; text-align: right; }

/* Search */
.webshop-search article { max-width: 1440px; min-height: 260px; padding: 64px 0 90px; text-align: center; }
.webshop-search article h1, .webshop-search article h2, .webshop-search article h3 { margin: 0 0 18px; font-size: 32px; font-weight: 300; letter-spacing: 0; }
.webshop-search .vaiva-search-summary { margin: 0 0 34px; color: var(--vaiva-black); font-size: 26px; font-weight: 300; line-height: 1.35; text-align: center; }
.webshop-search .vaiva-search-summary strong { font-weight: 400; }
.webshop-search .vaiva-no-search-result { max-width: 560px; margin: 0 auto; padding: 46px 34px; border: 1px solid var(--vaiva-line); background: var(--vaiva-cream); color: var(--vaiva-black); font-size: 22px; font-weight: 300; line-height: 1.4; }
.webshop-search .vaiva-no-search-result small { display: block; margin-top: 12px; color: #5f5d59; font-size: 14px; font-weight: 400; }

/* Newsletter CMS */
.webshop-cmspage article { max-width: 1440px; padding: 50px 0 74px; font-family: 'DM Sans', Arial, sans-serif; }
.webshop-cmspage article .CmsPageStyle_Table { display: block; width: 100%; }
.webshop-cmspage article .CmsPageStyle_Table tbody, .webshop-cmspage article .CmsPageStyle_Table tr, .webshop-cmspage article .CmsPageStyle_Table td { display: block; width: 100%; }
.webshop-cmspage article .CmsPageStyle { padding: 0 !important; }
.webshop-cmspage article .CmsPageStyle .container { position: relative; max-width: 600px; margin: 0 auto; padding: 56px 58px 62px; overflow: hidden; box-sizing: border-box; border: 1px solid rgba(182, 154, 91, .28); background: #fbfaf6; color: var(--vaiva-black); text-align: center; }
.webshop-cmspage article .CmsPageStyle .container::before { content: ''; position: absolute; top: -170px; right: -145px; width: 300px; height: 360px; border: 1px solid rgba(182, 154, 91, .5); border-radius: 50%; pointer-events: none; }
.webshop-cmspage article .CmsPageStyle .container::after { content: ''; position: absolute; right: -80px; bottom: 56px; width: 360px; height: 1px; background: rgba(182, 154, 91, .48); transform: rotate(-36deg); transform-origin: right center; pointer-events: none; }
.webshop-cmspage article .CmsPageStyle .logo { position: relative; z-index: 1; display: block; width: 180px; max-width: 54%; height: auto; margin: 0 auto 44px; mix-blend-mode: multiply; }
.webshop-cmspage article .CmsPageStyle h1 { position: relative; z-index: 1; max-width: 430px; margin: 0 auto 18px; color: var(--vaiva-black); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(30px, 3.1vw, 42px); font-weight: 400; line-height: 1.06; letter-spacing: -.035em; text-align: center; }
.webshop-cmspage article .CmsPageStyle .subtitle { position: relative; z-index: 1; max-width: 500px; margin: 0 auto 36px; color: var(--vaiva-black); font-size: clamp(17px, 1.8vw, 24px); font-weight: 300; line-height: 1.35; text-align: center; }
.webshop-cmspage article .CmsPageStyle form { position: relative; z-index: 1; display: grid; gap: 16px; margin: 0; }
.webshop-cmspage article .CmsPageStyle .form-group { position: relative; margin: 0; border: 1px solid rgba(182, 154, 91, .65); background: rgba(255, 255, 255, .45); text-align: left; }
.webshop-cmspage article .CmsPageStyle .form-group label { position: absolute; top: 50%; left: 20px; z-index: 1; color: var(--vaiva-black); font-size: 19px; font-weight: 300; line-height: 1; transform: translateY(-50%); transition: top .18s ease, font-size .18s ease, color .18s ease; pointer-events: none; }
.webshop-cmspage article .CmsPageStyle .form-group:focus-within label, .webshop-cmspage article .CmsPageStyle .form-group:has(input:not(:placeholder-shown)) label { top: 17px; color: #777; font-size: 12px; }
.webshop-cmspage article .CmsPageStyle input[type='text'], .webshop-cmspage article .CmsPageStyle input[type='email'] { display: block; width: 100%; height: 60px; box-sizing: border-box; padding: 22px 20px 5px; border: 0; background: transparent; color: var(--vaiva-black); font-family: 'DM Sans', Arial, sans-serif; font-size: 17px; font-weight: 300; outline: none; }
.webshop-cmspage article .CmsPageStyle input::placeholder { color: #777; opacity: 1; }
.webshop-cmspage article .CmsPageStyle button[type='submit'] { display: flex; align-items: center; justify-content: center; width: 100%; height: 62px; margin-top: 10px; border: 1px solid var(--vaiva-black); border-radius: 0; background: var(--vaiva-black); color: #fff; font-family: 'DM Sans', Arial, sans-serif; font-size: 20px; font-weight: 400; letter-spacing: 0; cursor: pointer; transition: background .2s ease, color .2s ease; }
.webshop-cmspage article .CmsPageStyle button[type='submit']:hover { background: transparent; color: var(--vaiva-black); }

/* Checkout closed header */
.webshop-checkout #topbar { display: none; }
.webshop-checkout header { display: flex; align-items: center; justify-content: center; min-height: 112px; max-width: none; padding: 0 24px; border-top: 1px solid var(--vaiva-black); }
.webshop-checkout header > a:first-child { width: 250px; margin: 0; }
.webshop-checkout header #Search_Form, .webshop-checkout header #basket, .webshop-checkout header #ProductmenuContainer_DIV, .webshop-checkout header #btn-menu { display: none !important; }
.webshop-checkout #order-summary tr.vaiva-hidden-summary-row { display: none; }
.webshop-checkout #order-summary tr.vaiva-total-pay-row td { color: var(--vaiva-black); font-weight: 600; }

/* Basket page */
.webshop-showbasket article { max-width: 1180px; padding: 0 48px 80px; }
.webshop-showbasket article h1 { margin: 0 0 34px; font-family: 'DM Sans', Arial, sans-serif; font-size: 42px; font-weight: 300; letter-spacing: 0; text-align: center; }
.webshop-showbasket #basket-content { font-family: 'DM Sans', Arial, sans-serif; color: var(--vaiva-black); }
.webshop-showbasket table.showbasket { width: 100%; border-collapse: collapse; table-layout: fixed; }
.webshop-showbasket table.showbasket.head { border-bottom: 0; }
.webshop-showbasket table.showbasket.head th { padding: 0 0 14px; font-size: 12px; font-weight: 500; letter-spacing: .08em; text-align: right; text-transform: uppercase; }
.webshop-showbasket table.showbasket.head th.description { text-align: left; }
.webshop-showbasket table.showbasket.body tr { border-bottom: 1px solid var(--vaiva-line); }
.webshop-showbasket table.showbasket.body td { padding: 24px 0; vertical-align: middle; font-size: 14px; text-align: right; }
.webshop-showbasket table.showbasket .description { width: 58%; text-align: left; }
.webshop-showbasket table.showbasket .description table { text-align: left; }
.webshop-showbasket .basket-info table { width: auto !important; margin: 0 !important; text-align: left; }
.webshop-showbasket .basket-info table tr { text-align: left; }
.webshop-showbasket .basket-info table td { text-align: left; }
.webshop-showbasket .basket-info table .ShowBasket_GiftWrapUnChecked_TD { display: flex; align-items: center; justify-content: flex-start; width: auto; text-align: left !important; }
.webshop-showbasket table.showbasket .amount { width: 16%; }
.webshop-showbasket table.showbasket .unitprice { width: 13%; }
.webshop-showbasket table.showbasket .unittotal { width: 13%; font-weight: 500; }
.webshop-showbasket .ProductImage_ShowBasket { display: block; width: 96px !important; height: 96px; margin: 0 22px 0 0; object-fit: contain; background: #f7f6f3; mix-blend-mode: multiply; }
.webshop-showbasket .basket-info { min-height: 96px; display: flex; flex-direction: column; justify-content: center; }
.webshop-showbasket .basket-info > a { display: block; color: var(--vaiva-black); font-size: 15px; line-height: 1.45; text-align: left; text-decoration: none; }
.webshop-showbasket .basket-info > a:hover { color: var(--vaiva-gold); }
.webshop-showbasket .basket-info small { display: none; }
.webshop-showbasket .mobile-amount { display: none; }
.webshop-showbasket .basket-info .mobile-amount { text-align: left; }
.webshop-showbasket .ShowBasket_GiftWrapUnChecked_TD { padding-top: 12px; font-size: 12px; color: #5f5d59; text-align: left; }
.webshop-showbasket .textGave { display: inline-block; text-align: left !important; }
.webshop-showbasket .ShowBasket_GiftWrapUnChecked_Radio { margin: 0 7px 0 0; vertical-align: middle; accent-color: var(--vaiva-black); }
.webshop-showbasket table.showbasket .amount a { display: inline-flex; align-items: center; justify-content: center; width: 28px; min-width: 28px; height: 28px; margin: 0 3px; padding: 0; border: 1px solid var(--vaiva-line); color: var(--vaiva-black); font-size: 18px; font-weight: 300; line-height: 1; text-decoration: none; vertical-align: middle; }
.webshop-showbasket table.showbasket .amount a:hover { border-color: var(--vaiva-black); }
.webshop-showbasket table.showbasket .amount a img { display: none; }
.webshop-showbasket table.showbasket .amount a.vaiva-basket-action-remove { margin-top: 8px; color: #777; font-size: 20px; }
.webshop-showbasket table.showbasket .amount div { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; height: 28px; vertical-align: middle; }
.webshop-showbasket .showbasket.footer { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 28px; padding-top: 28px; border-top: 0; }
.webshop-showbasket .showbasket.footer > a { color: var(--vaiva-black); font-size: 13px; text-decoration: none; }
.webshop-showbasket .showbasket.footer > a:hover { color: var(--vaiva-gold); }
.webshop-showbasket .showbasket.footer .checkout { order: 2; margin-left: auto; font-size: 16px; font-weight: 500; text-align: right; }
.webshop-showbasket .showbasket.footer > a { order: 1; margin-left: 0; }
.webshop-showbasket .showbasket.footer .checkout span { font-size: 22px; }
.webshop-showbasket .Basket_Order { display: inline-flex; align-items: center; justify-content: center; min-width: 220px; height: 48px; box-sizing: border-box; margin-top: 16px; padding: 0 28px; background: var(--vaiva-black); color: #fff; font-size: 13px; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.webshop-showbasket .Basket_Order::after { content: 'Gå til checkout'; }
.webshop-showbasket .Basket_Order:hover { background: #fff; box-shadow: inset 0 0 0 1px var(--vaiva-black); color: var(--vaiva-black); }
.webshop-showbasket .Basket_Order img { display: none; }
.webshop-showbasket .usp { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; margin: 56px 0 0; padding: 0; list-style: none; }
.webshop-showbasket .usp li { padding: 18px 16px; border: 1px solid var(--vaiva-line); background: var(--vaiva-cream); color: #5f5d59; font-size: 12px; line-height: 1.5; text-align: center; }
.webshop-showbasket .usp strong { display: block; margin-bottom: 5px; color: var(--vaiva-black); font-size: 13px; font-weight: 500; }
.webshop-showbasket #basket-content.vaiva-empty-basket table, .webshop-showbasket #basket-content.vaiva-empty-basket .checkout, .webshop-showbasket #basket-content.vaiva-empty-basket .Basket_Order { display: none; }
.webshop-showbasket .vaiva-empty-basket-message { padding: 46px 24px; background: var(--vaiva-cream); color: var(--vaiva-black); font-size: 22px; font-weight: 300; text-align: center; }

/* Checkout */
.webshop-checkout article { max-width: none; padding: 0; color: var(--vaiva-black); font-family: 'DM Sans', Arial, sans-serif; }
.webshop-checkout #checkout-container { display: grid; grid-template-columns: 300px 384px 384px; gap: 72px; max-width: 1200px; margin: 0 auto; padding: 50px 0 80px; box-sizing: border-box; }
.webshop-checkout #column-data, .webshop-checkout #column-shipping-payment, .webshop-checkout #column-order-summary { float: none !important; width: auto !important; min-width: 0; height: auto !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
.webshop-checkout #column-order-summary { align-self: start; position: static; top: auto; }
.webshop-checkout #checkout-container h1, .webshop-checkout #checkout-container h2, .webshop-checkout #checkout-container h3 { margin: 0 0 18px; color: var(--vaiva-black); font-family: 'DM Sans', Arial, sans-serif; font-size: 20px; font-weight: 400; line-height: 1.2; letter-spacing: 0; text-transform: none; }
.webshop-checkout #customer-data, .webshop-checkout #customer-alternative-delivery, .webshop-checkout #payment-methods, .webshop-checkout #shipping-methods, .webshop-checkout #order-giftcertificate, .webshop-checkout #order-summary, .webshop-checkout #order-confirm { box-sizing: border-box; width: 100%; margin: 0 0 18px; padding: 0; border: 0; background: transparent; }
.webshop-checkout #order-confirm { margin: 0; padding: 0; border: 0; background: transparent; }
.webshop-checkout #payment-methods, .webshop-checkout #shipping-methods { padding: 20px 22px; border: 2px solid var(--vaiva-line); background: transparent; }
.webshop-checkout #customer-data fieldset, .webshop-checkout #customer-alternative-delivery fieldset, .webshop-checkout #payment-giftcertificateinfo fieldset { margin: 0; padding: 0; border: 0; }
.webshop-checkout #checkout-container label { display: block; margin: 0 0 14px; color: var(--vaiva-black); font-size: 13px; line-height: 1.4; text-align: left; }
.webshop-checkout #checkout-container input[type='text'], .webshop-checkout #checkout-container input[type='tel'], .webshop-checkout #checkout-container input[type='email'], .webshop-checkout #checkout-container input[type='password'], .webshop-checkout #checkout-container select { display: block; width: 100%; height: 44px; box-sizing: border-box; margin: 7px 0 0; padding: 0 12px; border: 1px solid var(--vaiva-line); border-radius: 0; background: #fff; color: var(--vaiva-black); font-family: inherit; font-size: 14px; outline: none; }
.webshop-checkout #checkout-container input[type='text']:focus, .webshop-checkout #checkout-container input[type='tel']:focus, .webshop-checkout #checkout-container input[type='email']:focus, .webshop-checkout #checkout-container input[type='password']:focus, .webshop-checkout #checkout-container select:focus { border-color: var(--vaiva-black); }
.webshop-checkout #checkout-container input[type='checkbox'], .webshop-checkout #checkout-container input[type='radio'] { accent-color: var(--vaiva-black); }
.webshop-checkout .checkout-row { display: flex; align-items: flex-start; gap: 10px; margin: 12px 0 0; }
.webshop-checkout .div-checkout-checkbox { flex: 0 0 auto; padding-top: 2px; }
.webshop-checkout .div-checkout-checkbox-label { flex: 1; color: #5f5d59; font-size: 13px; line-height: 1.5; text-align: left; }
.webshop-checkout .checkout-payment-method, .webshop-checkout .checkout-shipping-table { display: block; width: 100%; box-sizing: border-box; margin: 0 0 10px; padding: 0; border: 0; background: transparent; cursor: pointer; }
.webshop-checkout .checkout-payment-method:hover, .webshop-checkout .checkout-shipping-table:hover { color: var(--vaiva-black); }
.webshop-checkout .checkout-payment-table, .webshop-checkout .checkout-shipping-table { width: 100%; border-collapse: collapse; }
.webshop-checkout .checkout-payment-radio-cell, .webshop-checkout .checkout-shipping-radio-cell { width: 28px; padding: 0; vertical-align: top; }
.webshop-checkout .checkout-payment-description-cell, .webshop-checkout .checkout-shipping-description-cell { padding: 0; color: var(--vaiva-black); font-size: 14px; line-height: 1.45; text-align: left; vertical-align: top; }
.webshop-checkout .payment-fee, .webshop-checkout .shipping-fee { display: block; margin-top: 4px; color: #777; font-size: 12px; }
.webshop-checkout #order-giftcertificate { background: #fff; }
.webshop-checkout #payment-giftcertificateinfo { margin: 0; color: #5f5d59; font-size: 13px; line-height: 1.5; }
.webshop-checkout #order-summary table { width: 100%; border-collapse: collapse; }
.webshop-checkout #order-summary th, .webshop-checkout #order-summary td { padding: 10px 0; border-bottom: 1px solid rgba(21, 21, 21, .1); color: var(--vaiva-black); font-size: 13px; font-weight: 400; line-height: 1.45; text-align: left; vertical-align: top; }
.webshop-checkout #order-summary table.order-summary th, .webshop-checkout #order-summary table.order-summary td { border-bottom: 0; }
.webshop-checkout #order-summary a { color: var(--vaiva-black); text-decoration: none; }
.webshop-checkout #order-summary a:hover { color: var(--vaiva-black); text-decoration: underline; text-underline-offset: 3px; }
.webshop-checkout #order-summary th:last-child, .webshop-checkout #order-summary td:last-child { text-align: right; }
.webshop-checkout #order-summary .checkout-order-summary-headline { margin-bottom: 14px; }
.webshop-checkout #order-summary tr:last-child td { border-bottom: 0; }
.webshop-checkout #confirm-accepterms { margin: 0 0 18px; padding: 16px; border: 1px solid var(--vaiva-line); background: #fff; color: #5f5d59; font-size: 13px; line-height: 1.5; text-align: left; }
.webshop-checkout #confirm-accepterms a, .webshop-checkout #confirm-accepterms-link { color: var(--vaiva-black); text-decoration: underline; text-underline-offset: 3px; }
.webshop-checkout #acceptTermsBit { margin: 3px 10px 0 0; accent-color: var(--vaiva-black); }
.webshop-checkout #confirm-checkout { margin: 0; padding: 0; text-align: left; }
.webshop-checkout #confirm-checkout #confirm-complete-button { display: flex !important; align-items: center; justify-content: center; width: 100% !important; height: 52px !important; box-sizing: border-box; border: 1px solid var(--vaiva-black) !important; border-radius: 0 !important; background: var(--vaiva-black) !important; color: #fff !important; font-family: 'DM Sans', Arial, sans-serif !important; font-size: 14px !important; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; transition: background .2s ease, color .2s ease; }
.webshop-checkout #confirm-checkout #confirm-complete-button:hover { background: #fff !important; color: var(--vaiva-black) !important; }
.webshop-checkout #confirm-complete-button[value=''] { font-size: 0; }
.webshop-checkout #confirm-complete-button[value='']::after { content: 'Gennemfør ordre'; font-size: 14px; }
@media (min-width: 1000px) {
    header, article, footer section, .credits section { width: 90%; box-sizing: border-box; }
}
@media (max-width: 1240px) and (min-width: 1000px) {
    .webshop-checkout #checkout-container { grid-template-columns: 260px minmax(0, 1fr) minmax(0, 1fr); gap: 24px; max-width: none; padding: 50px 48px 80px; }
    .webshop-productinfo #productcard { grid-template-columns: 1fr; gap: 34px; }
    .webshop-productinfo .productcard-right { padding-top: 0; }
}
@media (max-width: 1350px) and (min-width: 1000px) {
    article .Frontpage_Custom_UL, article .ProductList_Custom_UL, article .Related_Custom_UL { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 999px) {
    header { grid-template-columns: 44px 1fr 44px; grid-template-rows: 82px auto; min-height: 82px; padding: 0 20px; }
    header > a:first-child { grid-column: 2; grid-row: 1; width: 170px; justify-self: center; }
    header #Search_Form { display: none; }
    header #basket { grid-column: 3; grid-row: 1; justify-self: end; width: 40px; margin: 0; }
    header #basket .icon { transform: scale(.78); transform-origin: right center; }
    header #btn-menu { grid-column: 1; grid-row: 1; display: block; width: 26px; height: 18px; overflow: hidden; color: transparent; cursor: pointer; }
    header #btn-menu::before, header #btn-menu::after { content: ''; display: block; width: 24px; height: 1px; margin: 5px 0; background: var(--vaiva-black); box-shadow: 0 6px 0 var(--vaiva-black); }
    header #btn-menu::after { display: none; }
    header #ProductmenuContainer_DIV { grid-column: 1 / -1; grid-row: 2; display: none; margin: 0 -20px; width: calc(100% + 40px); border-top: 1px solid var(--vaiva-line); }
    header.menu-open #ProductmenuContainer_DIV { display: block; }
    header #ProductMenu_List { display: block; padding: 10px 20px 20px; }
    header #ProductMenu_List .RootCategory_Productmenu { border-bottom: 1px solid var(--vaiva-line); }
    header #ProductMenu_List a[href] { display: block; padding: 14px 0; font-size: 15px; }
    article .Frontpage_Custom_UL, article .ProductList_Custom_UL, article .Related_Custom_UL { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 16px; margin: 30px 15px; padding: 0; }
    .webshop-frontpage article .Frontpage_Custom_UL { margin-top: 24px; }
    article .Text1_FrontPage { margin-bottom: 56px; }
    .webshop-productlist article h1 { margin: 34px 20px 0; }
    .webshop-productinfo article { padding: 0 20px 40px; }
    .webshop-productinfo #productcard { grid-template-columns: 1fr; gap: 24px; }
    .webshop-productinfo #imagecanvas { min-height: auto; padding: 22px; }
    .webshop-productinfo #imagecanvas #Canvas { height: min(600px, calc(100vw - 108px)) !important; }
    .webshop-productinfo #imagecanvas #Canvas img { height: min(600px, calc(100vw - 108px)) !important; }
    .webshop-productinfo #imagecanvas > img:not(.plusprisimg) { max-height: 520px; }
    .webshop-productinfo #Selector { gap: 10px; }
    .webshop-productinfo #Selector img { width: 88px !important; height: 88px !important; }
    .webshop-productinfo .productcard-right { padding-top: 0; }
    .webshop-productinfo .related-products { margin-top: 30px; padding-top: 20px; }
    .webshop-productinfo article .Related_Custom_UL { padding: 0; }
    .webshop-showbasket article { padding: 22px 20px 64px; }
    .webshop-showbasket article h1 { font-size: 34px; }
    .webshop-showbasket .usp { display: none; }
    .webshop-cmspage article { padding: 34px 20px 64px; }
    .webshop-cmspage article .CmsPageStyle .container { max-width: 600px; padding: 50px 34px 56px; }
    .webshop-cmspage article .CmsPageStyle .logo { width: 155px; margin-bottom: 36px; }
    .webshop-checkout #checkout-container { grid-template-columns: 1fr; gap: 18px; padding: 42px 20px 64px; }
    .webshop-checkout #column-order-summary { position: static; }
    .webshop-checkout #customer-data, .webshop-checkout #customer-alternative-delivery, .webshop-checkout #order-giftcertificate, .webshop-checkout #order-summary, .webshop-checkout #order-confirm { padding: 0; }
    .webshop-checkout #payment-methods, .webshop-checkout #shipping-methods { padding: 18px; }
    footer section { grid-template-columns: 1fr; gap: 38px; padding: 42px 20px; text-align: center; }
    footer section.vaiva-footer-modern { grid-template-columns: 1fr; gap: 34px; }
    footer section > ul:not(.TopMenu_MenuItems) { grid-template-columns: 1fr auto; }
    footer .facebook { grid-column: 2; grid-row: 1; }
    footer .vaiva-footer-col ul { justify-items: center; }
    footer .vaiva-footer-payment img { margin: 0 auto; }
    footer .vaiva-footer-payment::after { margin: 8px auto 0; background-position: center; }
    footer .vaiva-footer-social { justify-content: center; }
    footer .vaiva-footer-address { text-align: center; }
    .credits section { padding: 22px 20px; }
}
@media (max-width: 600px) {
    #topbar { min-height: 34px; font-size: 11px; }
    article .product { grid-template-columns: 1fr; }
    article .product .price { grid-column: 1; margin-bottom: 10px; }
    article .product .buy { grid-column: 1; display: flex; margin-left: 0; }
    article .product .buy > span { width: 100%; font-size: 11px; }
    article .Text1_FrontPage h1 { font-size: 29px; }
    .webshop-cmspage article { padding: 28px 18px 56px; }
    .webshop-cmspage article .CmsPageStyle .container { padding: 46px 26px 50px; }
    .webshop-cmspage article .CmsPageStyle .logo { width: 138px; margin-bottom: 34px; }
    .webshop-cmspage article .CmsPageStyle h1 { max-width: 270px; font-size: 27px; line-height: 1.08; }
    .webshop-cmspage article .CmsPageStyle .subtitle { margin-bottom: 28px; font-size: 16px; }
    .webshop-cmspage article .CmsPageStyle form { gap: 16px; }
    .webshop-cmspage article .CmsPageStyle input[type='text'], .webshop-cmspage article .CmsPageStyle input[type='email'] { height: 58px; }
    .webshop-cmspage article .CmsPageStyle button[type='submit'] { height: 58px; font-size: 19px; }
    .webshop-productlist article h1 { font-size: 34px; }
    .webshop-productinfo .productcard-right h1 { font-size: 34px; }
    .webshop-productinfo .productcard-right ul.info { grid-template-columns: 1fr; }
    .webshop-productinfo #imagecanvas { padding: 18px; }
    .webshop-productinfo #imagecanvas #Canvas { height: calc(100vw - 76px) !important; }
    .webshop-productinfo #imagecanvas #Canvas img { height: calc(100vw - 76px) !important; }
    .webshop-productinfo #Selector img { width: 72px !important; height: 72px !important; }
    .webshop-productinfo #productcard-price { font-size: 26px; }
    .webshop-productinfo .information td { display: block; width: 100%; padding: 5px 0; border-top: 0; }
    .webshop-productinfo .information tr { display: block; padding: 12px 0; border-top: 1px solid var(--vaiva-line); }
    .webshop-productinfo .related-products > .header { font-size: 28px; }
    .webshop-productinfo article .Related_BuyButton_Button { width: 100%; font-size: 11px; }
    .vaiva-basket-overlay { padding: 14px; }
    .vaiva-basket-overlay-box { max-height: calc(100vh - 28px); padding: 30px 18px 22px; }
    .vaiva-basket-overlay-top { grid-template-columns: 82px 1fr; gap: 16px; }
    .vaiva-basket-overlay-product-image { width: 82px; }
    .vaiva-basket-overlay-title { font-size: 22px; }
    .vaiva-basket-overlay-product-name { font-size: 14px; }
    .vaiva-basket-overlay-actions { display: grid; grid-template-columns: 1fr; }
    .vaiva-basket-overlay-actions a, .vaiva-basket-overlay-actions button { width: 100%; }
    .vaiva-basket-overlay-carousel-wrap { grid-template-columns: 28px 1fr 28px; gap: 7px; }
    .vaiva-basket-overlay-carousel { grid-auto-columns: 145px; }
    .vaiva-basket-overlay-arrow { width: 28px; height: 44px; font-size: 24px; }
    .webshop-showbasket table.showbasket.head { display: none; }
    .webshop-showbasket table.showbasket.body, .webshop-showbasket table.showbasket.body tbody, .webshop-showbasket table.showbasket.body tr, .webshop-showbasket table.showbasket.body td { display: block; width: 100%; }
    .webshop-showbasket table.showbasket.body td { padding: 10px 0; text-align: left; }
    .webshop-showbasket table.showbasket.body .description { padding-top: 22px; }
    .webshop-showbasket table.showbasket.body .amount, .webshop-showbasket table.showbasket.body .unitprice { display: none; }
    .webshop-showbasket table.showbasket.body .unittotal { padding-bottom: 22px; font-size: 18px; text-align: right; }
    .webshop-showbasket .ProductImage_ShowBasket { width: 82px !important; height: 82px; margin-right: 16px; }
    .webshop-showbasket .basket-info { min-height: 82px; }
    .webshop-showbasket .mobile-amount { display: block; margin-top: 10px; font-size: 12px; }
    .webshop-showbasket .mobile-amount a { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border: 1px solid var(--vaiva-line); color: #000; text-decoration: none; vertical-align: middle; }
    .webshop-showbasket .mobile-amount img { display: none; }
    .webshop-showbasket .mobile-amount a[href*='dec']::before { content: none; }
    .webshop-showbasket .mobile-amount a[href*='inc']::before { content: none; }
    .webshop-showbasket .mobile-amount span { display: inline-block; padding: 0 9px; vertical-align: middle; }
    .webshop-showbasket .showbasket.footer { flex-direction: column; align-items: stretch; gap: 18px; }
    .webshop-showbasket .showbasket.footer .checkout { order: 1; margin-left: 0; text-align: right; }
    .webshop-showbasket .showbasket.footer > a { order: 2; margin-left: 0; }
    .webshop-showbasket .Basket_Order { width: 100%; }
    .webshop-showbasket .usp { display: none; }
    footer .TopMenu_MenuItems { grid-template-columns: 1fr; gap: 12px; }
    footer section > ul:not(.TopMenu_MenuItems) { grid-template-columns: 1fr; gap: 25px; }
    footer .vaiva-footer-newsletter-form { grid-template-columns: 1fr; }
    footer .facebook { grid-column: auto; grid-row: auto; text-align: center; }
    footer section, footer > section:not(.vaiva-footer-modern) { text-align: center; }
    footer .TopMenu_MenuItems, footer section > ul:not(.TopMenu_MenuItems) { justify-content: center; justify-items: center; }
    footer .vaiva-footer-payment::after { margin: 8px auto 0; background-position: center; }
    .credits section { flex-direction: column; align-items: center; gap: 16px; text-align: center; }
    .credits .contact { text-align: center; }
}

/* Info pages */
.info { max-width: 900px; margin: 0 auto; }
.info .header { background: #fff; padding: 2.5rem 1rem 1.8rem; text-align: center; border-bottom: 1px solid #eee; }
.info .logo { margin: 0; color: #1A1A1A; font-size: 3rem; }
.info .tagline { margin: .6rem 0 0; color: #D4AF37; font-size: 1.25rem; font-style: italic; }
.info .container { max-width: 920px; margin: 2.5rem auto; padding: 3rem; background: #fff; border-radius: 12px; box-shadow: 0 15px 40px rgba(0, 0, 0, .1); }
.info h1 { text-align: center; }
.info h2 { margin-top: 3rem; padding-bottom: .8rem; border-bottom: 3px solid #D4AF37; color: #1A1A1A; }
.info .return-box { margin: 2rem 0; padding: 1.8rem; border-left: 5px solid #D4AF37; border-radius: 4px; background: #F8F5F0; }
.info .footer { margin-top: 5rem; padding-top: 2rem; border-top: 1px solid #eee; color: #555; text-align: center; }
.subtitle { margin-bottom: 60px; color: #555; font-size: 1.45rem; font-style: italic; text-align: center; }
.signature { margin-top: 70px; color: #c9a96e; font-size: 1.1rem; font-style: italic; text-align: center; }
.cms { max-width: 500px; margin: 40px auto; padding: 55px 45px; background: #faf9f6; text-align: center; font-family: 'Georgia', serif; border: 1px solid #e5d9c0; border-radius: 12px; box-shadow: 0 10px 35px rgba(0, 0, 0, .07); }
.cms h2 { margin: 0 0 18px; color: #1a1a1a; font-size: 29px; letter-spacing: .5px; }
.cms p { margin: 0 0 35px; color: #444; font-size: 16.5px; line-height: 1.55; }
.cms small { text-align: center; color: #d4af37; font-size: 1.3rem; font-style: italic; }
.cms input, .cms textarea { padding: 16px 20px; border: 1px solid #d4af37; border-radius: 6px; background: #fff; font-size: 16px; }
.cms button { padding: 17px; border: 0; border-radius: 6px; background: #000; color: #fff; font-size: 16.5px; font-weight: 600; letter-spacing: .5px; cursor: pointer; }
.webshop-cmspage article .CmsPageStyle .cms input[type='text'], .webshop-cmspage article .CmsPageStyle .cms input[type='email'] { display: block; width: 100%; height: auto; box-sizing: border-box; padding: 16px 20px; border: 1px solid #d4af37; border-radius: 6px; background: #fff; color: #1a1a1a; font-family: Georgia, serif; font-size: 16px; font-weight: 400; outline: none; }
.webshop-cmspage article .CmsPageStyle .cms textarea { display: block; width: 100%; min-height: 120px; box-sizing: border-box; padding: 16px 20px; border: 1px solid #d4af37; border-radius: 6px; background: #fff; color: #1a1a1a; font-family: Georgia, serif; font-size: 16px; font-weight: 400; outline: none; }
.webshop-cmspage article .CmsPageStyle .cms button[type='submit'] { display: block; width: 100%; height: auto; box-sizing: border-box; padding: 17px; border: 0; border-radius: 6px; background: #000; color: #fff; font-family: Georgia, serif; font-size: 16.5px; font-weight: 600; letter-spacing: .5px; cursor: pointer; }
@media (max-width: 999px) {
    .cms { width: calc(100% - 30px); max-width: none; margin: 25px auto; padding: 36px 18px; box-sizing: border-box; }
    .cms h2 { font-size: 24px; }
    .cms p { margin-bottom: 24px; font-size: 15px; }
    .cms small { display: block; font-size: 1rem; line-height: 1.45; }
    .cms input, .cms textarea { width: 100%; box-sizing: border-box; padding: 15px 16px; }
    .cms button { width: 100%; box-sizing: border-box; padding: 15px; }
    .webshop-cmspage article .CmsPageStyle .cms input[type='text'], .webshop-cmspage article .CmsPageStyle .cms input[type='email'], .webshop-cmspage article .CmsPageStyle .cms textarea { width: 100%; padding: 15px 16px; }
}
