:root{
	--ink:#0b2545; --ink-2:#4a5f7a; --bg:#f6f9fd; --mist:#e4edf9; --line:#d3e0f1;
	--water:#1763b8; --water-d:#104a8c; --white:#fff; --ok:#1d7a4d; --err:#b3261e;
	--r:10px; --max:1240px;
	--sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
	--serif:"Iowan Old Style","Palatino Linotype",Palatino,Charter,Georgia,serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font:16px/1.6 var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--water);text-underline-offset:3px}
a:hover{color:var(--water-d)}
:focus-visible{outline:3px solid var(--water);outline-offset:2px}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em}
h1{font-size:clamp(2rem,5vw,3.4rem)} h2{font-size:clamp(1.5rem,3vw,2.1rem)} h3{font-size:1.15rem}
.container{width:min(100% - 40px,var(--max));margin-inline:auto}
.skip{position:absolute;left:-999px} .skip:focus{left:10px;top:10px;background:#fff;padding:8px;z-index:99}
.content{padding:48px 0;max-width:900px}
.section{padding:64px 0 0}

/* Topbar + header */
.topbar{background:var(--ink);color:#d8e8ec;font-size:.85rem;text-align:center;padding:7px 0}
.site-header{background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.header-row{display:flex;align-items:center;gap:32px;min-height:72px}
.brand{font:700 1.6rem var(--serif);color:var(--ink);text-decoration:none;letter-spacing:-.02em}
.brand small{font-size:.9rem;color:var(--water);font-weight:600}
.primary-nav{flex:1}
.primary-nav ul,.site-footer ul{list-style:none;margin:0;padding:0}
.primary-nav ul{display:flex;gap:28px}
.primary-nav a{color:var(--ink);text-decoration:none;font-weight:500;padding:6px 0;border-bottom:2px solid transparent}
.primary-nav a:hover,.primary-nav .current-menu-item>a{border-color:var(--water)}
.header-tools{display:flex;gap:22px;align-items:center}
.header-tools a{color:var(--ink);text-decoration:none;font-weight:500}
.cart-count{background:var(--water);color:#fff;border-radius:99px;font-size:.75rem;padding:1px 7px;margin-left:4px}
.search-row{padding-bottom:12px}
.search-row form{display:flex;gap:8px}
.search-row input[type=search]{flex:1}
.nav-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:10px}
.nav-toggle span{display:block;height:2px;background:var(--ink);margin:6px 0}

/* Knapper og formularer */
.btn,.button,button.button,input[type=submit],.woocommerce a.button,.woocommerce button.button,.woocommerce #respond input#submit{
	display:inline-block;background:var(--water);color:#fff!important;border:0;border-radius:var(--r);padding:14px 26px;font:600 1rem var(--sans);text-decoration:none;cursor:pointer;transition:background .15s}
.btn:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--water-d)}
.woocommerce a.button.alt,.woocommerce button.button.alt{background:var(--ink)}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:#000}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=search],input[type=number],select,textarea{
	width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r);background:#fff;font:inherit;color:var(--ink)}
.woocommerce form .form-row{margin-bottom:14px}
.woocommerce form .form-row label{font-weight:500;margin-bottom:4px;display:block}

/* Forside */
.hero{background:linear-gradient(180deg,var(--mist),var(--bg));padding:72px 0}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.hero-copy p{font-size:1.15rem;color:var(--ink-2);max-width:46ch;margin:0 0 28px}
.hero-media{aspect-ratio:1;background:var(--white);border-radius:24px;overflow:hidden;display:grid;place-items:center}
.hero-img{width:100%;height:100%;object-fit:cover}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.cat-tile{background:var(--white);border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:var(--ink);transition:border-color .15s}
.cat-tile:hover{border-color:var(--water)}
.cat-img{display:block;aspect-ratio:4/3;background:var(--mist)} .cat-img img{width:100%;height:100%;object-fit:cover}
.cat-name{display:block;padding:14px 16px;font:600 1rem var(--sans);color:var(--ink)}
.trust{background:var(--ink);color:#d8e8ec;margin-top:72px;padding:56px 0}
.trust h3{color:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.trust p{margin:0}

/* WooCommerce: produktgitter */
.shop-wrap{padding:36px 0 72px}
.woocommerce-breadcrumb{font-size:.88rem;color:var(--ink-2);margin-bottom:18px}
.woocommerce-products-header__title{margin-bottom:.3em}
.woocommerce-result-count{color:var(--ink-2);font-size:.9rem}
.woocommerce-ordering select{width:auto}
.woocommerce ul.products{list-style:none;margin:24px 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none}
.woocommerce ul.products li.product{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:14px 14px 18px;margin:0;width:auto;float:none;position:relative;display:flex;flex-direction:column;transition:border-color .15s}
.woocommerce ul.products li.product:hover{border-color:var(--water)}
.woocommerce ul.products li.product img{border-radius:10px;aspect-ratio:1;object-fit:cover;width:100%;margin-bottom:12px;background:var(--mist)}
.woocommerce-loop-product__title{font:600 1rem var(--sans)!important;padding:0!important;margin:0 0 6px;color:var(--ink)}
.woocommerce ul.products li.product a{color:inherit;text-decoration:none}
.woocommerce ul.products li.product .button{margin-top:auto;text-align:center;padding:11px 14px;font-size:.92rem}
.price{color:var(--ink)!important;font-weight:700;margin-bottom:12px;display:block}
.price del{color:var(--ink-2);font-weight:400;opacity:.8} .price ins{text-decoration:none}
.woocommerce span.onsale{background:var(--ink);color:#fff;border-radius:99px;min-height:0;min-width:0;line-height:1;padding:7px 12px;top:22px;left:22px;font-size:.78rem}
.star-rating span::before{color:var(--water)}

.chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px}
.chips span{background:var(--mist);font-size:.76rem;font-weight:500;border-radius:99px;padding:4px 10px}
.short-desc{color:var(--ink-2);font-size:.9rem;margin:0 0 12px}
.woocommerce ul.products li.product .price{margin-top:auto}
.woocommerce ul.products li.product .button{margin-top:0}

.leasing{display:block;color:var(--water);font-size:.82rem;font-weight:500;margin-top:2px}

/* Produktside */
.woocommerce div.product{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto;float:none;margin:0}
.woocommerce div.product .woocommerce-product-gallery__wrapper img{border-radius:16px;background:#fff}
.woocommerce div.product .product_title{font-size:clamp(1.7rem,3vw,2.4rem)}
.woocommerce div.product p.price{font-size:1.7rem}
.woocommerce-product-details__short-description{color:var(--ink-2)}
.woocommerce div.product form.cart{display:flex;gap:12px;align-items:stretch;margin:22px 0}
.woocommerce .quantity .qty{width:76px;text-align:center;padding:12px 6px}
.woocommerce div.product form.cart .button{flex:1;padding:14px 22px}
.product-usps{list-style:none;padding:18px 0 0;margin:0;border-top:1px solid var(--line);display:grid;gap:8px}
.product-usps li::before{content:"✓";color:var(--ok);font-weight:700;margin-right:10px}
.woocommerce-tabs,.related,.upsells{grid-column:1/-1}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 24px;border-bottom:1px solid var(--line);display:flex;gap:28px;overflow-x:auto}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:none;border:0;margin:0;padding:0;border-radius:0}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:12px 0;font-weight:600;color:var(--ink-2)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom:2px solid var(--water)}
.woocommerce-tabs .panel{max-width:75ch}
.related>h2,.upsells>h2{margin-top:32px}

/* Kurv, kasse, meddelelser */
.woocommerce table.shop_table{border:1px solid var(--line);border-radius:var(--r);border-collapse:separate;border-spacing:0;background:#fff;overflow:hidden}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:14px 16px;border-top:1px solid var(--line)}
.woocommerce-cart table.cart img{width:72px;border-radius:8px}
.woocommerce .cart-collaterals .cart_totals{float:none;width:min(100%,460px);margin-left:auto}
.woocommerce-checkout #customer_details{display:grid;gap:28px}
#order_review{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;margin-top:28px}
.woocommerce-checkout #payment{background:var(--mist);border-radius:var(--r)}
.woocommerce-checkout #payment div.payment_box{background:#fff;color:var(--ink)}
.woocommerce-checkout #place_order{width:100%;font-size:1.1rem;padding:16px}
.woocommerce-message,.woocommerce-info,.woocommerce-error{background:#fff;border:1px solid var(--line);border-top:3px solid var(--water);border-radius:var(--r);padding:14px 18px 14px 50px}
.woocommerce-error{border-top-color:var(--err)}
.woocommerce-message{border-top-color:var(--ok)}
.woocommerce-pagination ul{border:0!important;display:flex;gap:6px;justify-content:center}
.woocommerce-pagination ul li{border:0!important}
.woocommerce-pagination .page-numbers{padding:8px 14px!important;border:1px solid var(--line);border-radius:8px;background:#fff}
.woocommerce-pagination .current{background:var(--ink)!important;color:#fff!important}

/* Footer */
.site-footer{background:var(--ink);color:#b9ced4;margin-top:80px;padding-top:56px;font-size:.95rem}
.site-footer a{color:#e3eef1} .site-footer h4{color:#fff;margin:0 0 10px;font-size:1rem}
.site-footer .brand{color:#fff}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.site-footer li{margin-bottom:6px}
.footer-bottom{border-top:1px solid #243f66;margin-top:40px;padding:18px 0;font-size:.85rem}

/* Tablet og mobil */
@media (max-width:1000px){
	.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}
	.hero-grid,.woocommerce div.product,.footer-grid,.trust-grid{grid-template-columns:1fr}
	.woocommerce div.product{gap:28px}
}
@media (max-width:820px){
	.nav-toggle{display:block}
	.header-row{gap:12px;justify-content:space-between}
	.brand{order:2;margin-right:auto}
	.nav-toggle{order:1} .header-tools{order:3}
	.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:12px 20px 20px;flex:none}
	.primary-nav.is-open{display:block}
	.primary-nav ul{flex-direction:column;gap:2px}
	.primary-nav a{display:block;padding:12px 0}
	.header-tools a:first-child{display:none}
	.hero{padding:44px 0}
}
@media (max-width:520px){
	.woocommerce ul.products{gap:12px}
	.woocommerce ul.products li.product{padding:10px}
	.woocommerce div.product form.cart{flex-wrap:wrap}
	.woocommerce div.product form.cart .button{flex-basis:100%}
	/* Fast købsknap i bunden på mobil */
	.single-product div.product form.cart{position:sticky;bottom:0;background:var(--bg);padding:12px 0;z-index:20;margin-bottom:0}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Hero-banner: blå gradient, hvid tekst, produkter til højre */
.hero{position:relative;overflow:hidden;background:linear-gradient(110deg,#2168c4 0%,#4a90e2 45%,#96c6fa 100%);color:#fff;padding:0;min-height:440px;display:flex;align-items:center}
.hero-in{position:relative;z-index:2;width:min(100% - 40px,var(--max));margin-inline:auto}
.hero-copy{max-width:430px;padding:48px 0}
.hero h1{color:#fff;font-size:clamp(2rem,4vw,3rem)}
.hero p{color:#eaf3ff;font-size:1.1rem;max-width:36ch;margin:0 0 28px}
.hero .btn{background:#0b3d80;color:#fff!important;border-radius:999px;padding:15px 36px}
.hero .btn:hover{background:#082f64}
.hero-img{position:absolute;right:0;top:0;height:100%;width:auto;max-width:74%;object-fit:cover;object-position:left center;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14%);mask-image:linear-gradient(90deg,transparent 0,#000 14%)}
@media (max-width:900px){
	.hero{display:block;min-height:0}
	.hero-copy{max-width:none;padding:36px 0 12px}
	.hero-img{position:static;width:100%;max-width:none;height:auto;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 16%);mask-image:linear-gradient(180deg,transparent 0,#000 16%)}
}

/* Hero som helt billede */
.hero.hero-pic{display:block;min-height:0;padding:0;background:#e9eef5;color:inherit}
.hero-pic .hero-img{position:static;display:block;width:100%;max-width:none;height:clamp(300px,44vw,640px);object-fit:cover;object-position:62% 40%;-webkit-mask-image:none;mask-image:none}
.hero-cta{position:absolute;left:max(20px,calc((100% - var(--max))/2));bottom:clamp(18px,4vw,48px);z-index:2}
.hero-cta h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);margin:0}
@media (max-width:900px){
	.hero-pic .hero-img{height:auto}
	.hero-cta{position:static;padding:16px 20px 22px;background:#fff;text-align:center}
}

/* Hero: billede med blå gradient og synlig hvid tekst */
.hero.hero-pic{position:relative;display:flex;align-items:center;min-height:clamp(380px,42vw,600px);background:#2168c4;color:#fff;overflow:hidden;padding:0}
.hero-pic .hero-img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:60% 60%;-webkit-mask-image:none;mask-image:none}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,82,170,.94) 0%,rgba(33,104,196,.82) 28%,rgba(74,144,226,.35) 46%,transparent 62%)}
.hero-pic .hero-in{position:relative;z-index:2;width:min(100% - 40px,var(--max));margin-inline:auto}
.hero-pic .hero-copy{max-width:440px;padding:48px 0}
@media (max-width:900px){
	.hero.hero-pic{flex-direction:column;align-items:stretch;min-height:0;background:linear-gradient(110deg,#2168c4,#4a90e2)}
	.hero-pic .hero-in{order:-1}
	.hero-pic .hero-copy{max-width:none;padding:34px 0 24px}
	.hero-pic .hero-img{position:static;height:auto;aspect-ratio:16/9;object-position:70% 60%}
	.hero-shade{display:none}
}

/* Logo */
.brand{display:block;line-height:0}
.brand img,.brand .custom-logo{height:46px;width:auto;display:block}
@media (max-width:520px){.brand img,.brand .custom-logo{height:34px}}

/* Rulleliste under "Produkter" */
.primary-nav li{position:relative}
.primary-nav .sub-menu{display:none;position:absolute;left:-12px;top:100%;min-width:210px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:0 10px 28px rgba(11,37,69,.14);flex-direction:column;gap:0;z-index:30}
.primary-nav li:hover>.sub-menu,.primary-nav li:focus-within>.sub-menu{display:flex}
.primary-nav .sub-menu a{display:block;padding:9px 12px;border-bottom:0;border-radius:8px}
.primary-nav .sub-menu a:hover{background:var(--mist)}
.primary-nav .menu-item-has-children>a::after{content:"▾";font-size:.7em;margin-left:6px}
@media (max-width:820px){
	.primary-nav .sub-menu{display:flex;position:static;border:0;box-shadow:none;padding:0 0 0 14px;min-width:0}
}

/* Kontakt */
.contact-page{max-width:var(--max)}
.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:36px;align-items:start;margin-top:24px}
.contact-form,.contact-info{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}
.contact-form h2,.contact-info h2{font-size:1.3rem}
.contact-form label{display:block;font-weight:500;margin-bottom:4px}
.contact-form p{margin:0 0 14px}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}

/* Viden / artikler */
.knowledge{max-width:var(--max)}
.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:20px;margin-top:24px}
.vcard{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;color:var(--ink);text-decoration:none;transition:border-color .15s}
.vcard:hover{border-color:var(--water)}
.vcard h3{font:600 1.1rem var(--sans);margin:10px 0 6px}
.vcard p{color:var(--ink-2);font-size:.92rem;margin:0 0 12px}
.vtag{background:var(--mist);font-size:.76rem;font-weight:500;border-radius:99px;padding:4px 10px}
.vmore{color:var(--water);font-weight:600;font-size:.92rem}
.article{max-width:760px}
.article-body{font-size:1.05rem;line-height:1.75}
.article-body h2{margin-top:1.6em}
.article-cta{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;margin-top:32px}
