/* KTE frontend 2026 – samlet designlag */
:root{--surface:#fff;--surface-soft:#eeebe5;--line:var(--line-color,#dedbd5);--muted:#686762;--shadow-sm:0 12px 32px rgba(24,24,24,.07);--shadow-lg:0 28px 80px rgba(24,24,24,.13);--ease:cubic-bezier(.22,1,.36,1)}
::selection{background:var(--primary);color:#fff}
body{min-width:320px;background:radial-gradient(circle at 8% 12%,rgba(127,21,32,.055),transparent 28%),radial-gradient(circle at 92% 42%,rgba(34,34,34,.045),transparent 25%),var(--background);font-feature-settings:"kern" 1,"liga" 1;text-rendering:optimizeLegibility}
a,button{transition:color .22s ease,background-color .22s ease,border-color .22s ease,transform .22s var(--ease),box-shadow .22s ease}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.site-wrap{width:min(calc(100% - clamp(20px,4vw,64px)),var(--container));margin:clamp(10px,2vw,26px) auto 0}
.site-main{position:relative}
.site-header{grid-template-columns:minmax(145px,185px) 1fr auto;gap:clamp(20px,3vw,44px);min-height:112px;padding:20px clamp(22px,3vw,42px);border:1px solid rgba(255,255,255,.1);border-radius:calc(var(--radius)*.82);background:var(--header-bg);color:var(--header-text);box-shadow:0 22px 55px rgba(0,0,0,.16);transition:min-height .3s var(--ease),padding .3s var(--ease),box-shadow .3s ease}
.site-header:after{display:none}
.site-header.is-sticky{top:12px}
.site-header.is-compact{min-height:86px;padding-top:12px;padding-bottom:12px;box-shadow:0 18px 45px rgba(0,0,0,.2)}
.site-logo img{width:min(170px,100%);max-height:64px}
.main-nav>ul{gap:8px clamp(17px,2.2vw,34px)}
.main-nav a{position:relative;font-size:15px;font-weight:680;letter-spacing:.005em}
.main-nav>ul>li>a:after{position:absolute;right:0;bottom:4px;left:0;width:auto;transform:scaleX(0);transform-origin:right;transition:transform .28s var(--ease)}
.main-nav>ul>li:hover>a:after,.main-nav>ul>li:focus-within>a:after{width:auto;transform:scaleX(1);transform-origin:left}
.phone-link{font-size:14px;font-weight:650}
.pill-button{min-height:50px;border:1px solid rgba(34,34,34,.08);box-shadow:0 8px 22px rgba(0,0,0,.1)}
.pill-button:hover{transform:translateY(-2px);box-shadow:0 13px 30px rgba(0,0,0,.15)}
.pill-button>span{background:var(--button)}
.pill-button.dark{border-color:rgba(255,255,255,.08)}
.eyebrow{margin-bottom:14px;font-size:11px;letter-spacing:.18em}


/* KTE v1.4.4 – globale AI-designstandarder */
a,button,[role="button"],input[type="submit"],input[type="button"]{cursor:pointer}
.kte-columns>* ,.kte-column,.builder-grid>* ,.builder-split>*{border:none}
.site-main .pill-button,.site-main .kte-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:var(--button-height);padding:0 var(--button-padding-x);border-radius:var(--button-radius);cursor:pointer}
.site-main .kte-button{background:var(--header-cta-bg);color:var(--header-cta-text);text-decoration:none}
.site-main .kte-button:hover{transform:translateY(-2px)}

/* Forside */
.hero-slider{height:min(720px,calc(100vh - 150px));min-height:590px;margin-top:14px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);box-shadow:var(--shadow-lg)}
.hero-slider:before{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(0,0,0,.12),transparent 34%,rgba(0,0,0,.18));border-radius:inherit}
.hero-slide{padding:clamp(48px,7vw,108px)}
.hero-slide:after{background:linear-gradient(90deg,rgba(0,0,0,calc(var(--overlay) + .12)),rgba(0,0,0,calc(var(--overlay) * .58)) 62%,rgba(0,0,0,calc(var(--overlay) * .35)))}
.hero-content{width:min(880px,88%)}
.hero-content h1,.hero-content h2{margin:0 auto 26px;font-size:clamp(48px,var(--h1),92px);font-weight:760;line-height:.98;letter-spacing:-.048em;text-wrap:balance}
.hero-content p{max-width:720px;margin-left:0;font-size:clamp(17px,1.5vw,21px);font-weight:520}
.hero-slide.align-center .hero-content p{margin-right:auto;margin-left:auto}
.hero-slide.align-right .hero-content p{margin-right:0;margin-left:auto}
.hero-eyebrow{padding:7px 16px;background:rgba(18,18,18,.18);backdrop-filter:blur(8px);font-weight:700;letter-spacing:.08em}
.site-main .hero-slider .hero-content .header-cta{min-height:var(--button-height);padding:5px var(--button-padding-x) 5px 5px;gap:11px;border-radius:var(--button-radius);background:var(--header-cta-bg);color:var(--header-cta-text)}
.hero-building{position:absolute;z-index:4;left:clamp(28px,4vw,62px);bottom:30px;max-width:min(520px,calc(100% - 180px));padding:8px 12px;border:1px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(15,15,15,.28);color:#fff;backdrop-filter:blur(8px);font-size:13px;line-height:1.35;letter-spacing:.01em}
.hero-building-link{text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .2s ease}.hero-building-link:hover,.hero-building-link:focus-visible{background:rgba(15,15,15,.48);border-color:rgba(255,255,255,.42);transform:translateY(-2px);color:#fff}
.slider-arrow{width:52px;height:82px;background:rgba(245,243,239,.94);font-size:34px;box-shadow:0 10px 30px rgba(0,0,0,.12)}
.slider-dots{bottom:28px;padding:9px 12px;border:1px solid rgba(255,255,255,.18);border-radius:99px;background:rgba(0,0,0,.18);backdrop-filter:blur(9px)}
.intro-section{grid-template-columns:70px minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(30px,5vw,78px);padding:clamp(70px,var(--section-spacing),145px) clamp(24px,6vw,90px)}
.intro-section h2,.section-heading h2,.services-band h2,.footer-lead h2,.news-section h2{font-weight:710;letter-spacing:-.045em}
.intro-section p{margin-top:30px;color:var(--muted);font-size:clamp(18px,1.55vw,22px);line-height:1.62}
.section-number{border-color:rgba(34,34,34,.18);background:rgba(255,255,255,.55);box-shadow:inset 0 0 0 7px rgba(255,255,255,.36)}
.expertise-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}
.expertise-tags span{padding:8px 13px;border:1px solid var(--line);border-radius:99px;background:rgba(255,255,255,.5);color:#555;font-size:12px;font-weight:700}
.text-link{padding-bottom:5px;border-color:rgba(34,34,34,.3)}
.text-link:hover{gap:20px;color:var(--primary)}
.showcase-section,.news-section{padding:clamp(55px,var(--section-spacing),120px) clamp(22px,5.5vw,86px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.section-heading{margin-bottom:clamp(34px,4vw,58px)}
.reference-grid,.news-grid{gap:clamp(18px,2.4vw,36px)}
.reference-card,.news-card{overflow:hidden;border:1px solid var(--line);border-radius:calc(var(--radius)*.72);background:var(--surface);box-shadow:0 9px 28px rgba(24,24,24,.055)}
.reference-card:hover,.news-card:hover{transform:translateY(-7px);border-color:rgba(127,21,32,.22);box-shadow:0 22px 50px rgba(24,24,24,.12)}
.reference-image,.news-image{border-radius:0;background:var(--surface-soft)}
.reference-card:nth-child(2n){padding-top:0;transform:translateY(46px)}
.reference-card:nth-child(2n):hover{transform:translateY(39px)}
.card-content{padding:22px clamp(20px,2.2vw,30px) 28px}
.card-content>span{display:block;margin:0 0 9px;color:var(--primary);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.reference-card h3,.news-card h3,.archive-grid .reference-card h2{margin:0 0 10px;font-size:clamp(22px,2vw,29px);line-height:1.16;letter-spacing:-.025em}
.reference-card p,.news-card p{color:var(--muted);line-height:1.55}
.card-link{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding-top:15px;border-top:1px solid var(--line);font-size:13px}
.card-link i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--dark);color:#fff;font-style:normal}
.reference-card:hover .card-link i,.news-card:hover .card-link i{transform:translateX(3px);background:var(--primary)}
.home-editor-content{width:min(980px,calc(100% - 48px));max-width:980px;margin:88px auto;padding:clamp(34px,5vw,72px)}
.services-band{gap:clamp(55px,8vw,130px);padding:clamp(72px,8vw,118px) clamp(28px,7vw,104px);margin:34px 0;border:1px solid rgba(255,255,255,.09);background:linear-gradient(135deg,#202123,var(--dark));box-shadow:var(--shadow-lg)}
.service-list a{padding:25px 0;font-size:clamp(20px,2vw,28px)}
.service-list a:hover{padding-right:8px;color:#fff}
.news-section{background:rgba(255,255,255,.34);box-shadow:none}

/* Indholdssider */
.content-page,.reference-page,.department-page,.landing-page{padding-bottom:clamp(76px,8vw,126px)}
.page-hero{position:relative;isolation:isolate;display:grid;align-items:end;min-height:clamp(390px,42vw,580px);padding:clamp(70px,9vw,132px) clamp(28px,8vw,120px);overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:var(--radius);background:linear-gradient(135deg,#fff 0%,#f5f2ed 64%,#ece6df 100%);box-shadow:var(--shadow-sm)}
.page-hero:before{content:"";position:absolute;z-index:-1;right:-7%;bottom:-45%;width:460px;aspect-ratio:1;border:1px solid rgba(127,21,32,.13);border-radius:50%;box-shadow:0 0 0 65px rgba(127,21,32,.035),0 0 0 130px rgba(127,21,32,.018)}
.page-hero-inner{width:min(1040px,100%)}
.page-hero h1{font-weight:740;text-wrap:balance}
.page-hero p{max-width:780px;color:#5f5e5a;font-size:clamp(18px,1.8vw,24px);line-height:1.5}
.page-featured{width:calc(100% - clamp(28px,8vw,120px));height:min(680px,61vw);margin:-48px auto 34px;border:8px solid var(--background);border-radius:var(--radius);box-shadow:var(--shadow-lg)}
.content-surface{width:min(1080px,calc(100% - clamp(28px,8vw,120px)));margin:32px auto 0;padding:clamp(36px,6vw,82px);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}
.content-surface-wide{width:min(1320px,calc(100% - clamp(28px,8vw,120px)))}
.page-featured+.content-surface{margin-top:0}
.page-body,.wide-page .page-body,.wide-prose{max-width:850px;margin:0 auto;padding:0}
.wide-page .page-body,.content-surface-wide .page-body{max-width:1120px}
.prose{color:#343432;font-size:clamp(17px,1.3vw,19px);line-height:1.78}
.prose>p:first-child{color:#474642;font-size:clamp(19px,1.6vw,23px);line-height:1.65}
.prose h1,.prose h2,.prose h3,.prose h4{color:var(--text);font-weight:720;letter-spacing:-.035em;text-wrap:balance}
.prose h2{margin:1.8em 0 .55em;padding-top:.2em;font-size:clamp(31px,var(--h2),52px)}
.prose h3{font-size:clamp(24px,2.2vw,31px)}
.prose ul,.prose ol{margin:1.4em 0;padding-left:1.4em}
.prose li{margin:.52em 0;padding-left:.25em}
.prose li::marker{color:var(--primary);font-weight:800}
.prose img{height:auto;margin:34px 0;border-radius:calc(var(--radius)*.65);box-shadow:var(--shadow-sm)}
.prose figure{margin:40px 0}
.prose figcaption{margin-top:10px;color:var(--muted);font-size:13px;text-align:center}
.prose blockquote{position:relative;padding:30px 34px 30px 70px;margin:45px 0;border:1px solid rgba(127,21,32,.12);border-left:0;border-radius:22px;background:#f8f3f1;font-size:clamp(20px,2vw,25px)}
.prose blockquote:before{content:"“";position:absolute;top:16px;left:25px;color:var(--primary);font-size:58px;font-weight:800;line-height:1}
.prose table{width:100%;margin:35px 0;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:#fff}
.prose th,.prose td{padding:13px 16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left}
.prose th{background:#f2efea;font-size:13px}.prose tr:last-child td{border-bottom:0}.prose th:last-child,.prose td:last-child{border-right:0}
.prose hr{height:1px;margin:50px 0;border:0;background:var(--line)}
.prose a{color:var(--link);text-decoration:var(--link-decoration);text-underline-offset:.16em}
.prose a:hover{color:var(--link-hover)}
.prose .button{padding:13px 24px;background:var(--button);box-shadow:0 9px 24px rgba(127,21,32,.19);text-decoration:none}
.prose .button:hover{transform:translateY(-2px);background:var(--button-hover);box-shadow:0 14px 30px rgba(127,21,32,.26)}

/* Landingsside, reference og afdeling */
.landing-hero,.department-hero,.reference-hero{margin-top:14px;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);box-shadow:var(--shadow-lg)}
.landing-hero{min-height:clamp(590px,68vw,780px);padding:clamp(64px,9vw,132px)}
.landing-hero:after{background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.34) 65%,rgba(0,0,0,.22))}
.landing-hero-content{max-width:900px}
.landing-hero .eyebrow,.department-hero .eyebrow{color:#f2a8ae}
.reference-hero{grid-template-columns:minmax(380px,.9fr) minmax(470px,1.1fr);min-height:clamp(600px,60vw,760px);background:linear-gradient(135deg,#fff,#f2eee8)}
.reference-hero-content{display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,6vw,90px)}
.reference-hero-media,.department-hero-media{min-height:100%;overflow:hidden}
.reference-hero-media img,.department-hero-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.reference-hero:hover .reference-hero-media img,.department-hero:hover .department-hero-media img{transform:scale(1.025)}
.reference-content{grid-template-columns:minmax(240px,300px) minmax(0,900px);align-items:start;gap:clamp(36px,6vw,90px);padding:clamp(65px,8vw,120px) clamp(24px,6vw,90px)}
.reference-facts{position:sticky;top:120px;padding:28px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.78);box-shadow:var(--shadow-sm);backdrop-filter:blur(12px)}
.reference-facts>span{margin-top:17px;color:var(--muted);letter-spacing:.1em}
.reference-facts>span:first-child{margin-top:0}
.reference-story{width:100%;margin:0}
.department-hero{grid-template-columns:minmax(380px,.9fr) minmax(430px,1.1fr);gap:0;min-height:650px;padding:0;background:linear-gradient(135deg,#202123,var(--dark))}
.department-hero-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(48px,7vw,100px)}
.department-hero-media{padding:20px}
.department-hero img{height:100%;min-height:560px;border-radius:calc(var(--radius)*.72)}

/* Arkiv og 404 */
.archive-page{padding-bottom:clamp(76px,8vw,126px)}
.archive-grid{gap:clamp(20px,2.5vw,38px);padding:clamp(55px,7vw,100px) clamp(12px,4vw,62px)}
.archive-grid .reference-card{display:flex;flex-direction:column}
.archive-grid .reference-card .card-content{display:flex;flex:1;flex-direction:column}
.archive-grid .reference-card p{flex:1}
.archive-empty{border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.not-found{min-height:680px;padding:clamp(30px,6vw,80px)}
.not-found-card{width:min(740px,100%);padding:clamp(42px,7vw,86px);border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow-lg);text-align:center}
.not-found-card>span{display:block;color:var(--primary);font-size:clamp(74px,12vw,140px);font-weight:820;line-height:.85;letter-spacing:-.07em}
.not-found-card .eyebrow{margin:28px 0 10px}.not-found-card h1{margin:0;font-size:clamp(36px,5vw,58px)}.not-found-card>p:not(.eyebrow){color:var(--muted)}.not-found-card .pill-button{margin-top:18px}

/* Footer */
.site-footer{padding:clamp(58px,7vw,96px) clamp(25px,6vw,90px) 25px;margin-top:40px;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius) var(--radius) 0 0;background:var(--footer-bg);color:var(--footer-text);box-shadow:0 -18px 55px rgba(24,24,24,.08)}
.footer-lead{padding-bottom:clamp(45px,5vw,70px)}
.footer-lead>div{max-width:900px}.footer-lead p{max-width:620px;margin:18px 0 0;color:#b9b9bb;font-size:17px}
.footer-grid{padding:clamp(48px,5vw,72px) 0}
.footer-grid a,.footer-grid address,.footer-about p{color:var(--footer-text)}
.footer-grid a:hover{color:#fff;transform:translateX(3px)}
.footer-bottom a:hover{color:#fff}

/* Globale navigationselementer */
.site-breadcrumb{margin:var(--breadcrumb-top) clamp(10px,2vw,28px) var(--breadcrumb-bottom);font-size:var(--breadcrumb-size)}
.site-breadcrumb ol{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;padding:0;margin:0;list-style:none}
.site-breadcrumb li{display:flex;align-items:center;gap:10px;color:var(--muted)}
.site-breadcrumb a{color:var(--link);font-weight:700}
.site-breadcrumb a:hover{color:var(--link-hover)}
.site-breadcrumb li[aria-current=page]{max-width:min(620px,75vw);overflow:hidden;color:var(--text);font-weight:650;text-overflow:ellipsis;white-space:nowrap}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin:18px 0 0;color:var(--muted);font-size:14px;font-weight:650}
.article-meta span+span:before{content:"·";margin-right:22px;color:var(--primary)}
.to-top{position:fixed;z-index:80;bottom:24px;display:grid;place-items:center;width:var(--to-top-size);height:var(--to-top-size);padding:0;border:0;background:var(--to-top-bg);color:var(--to-top-text);font-size:23px;box-shadow:0 14px 35px rgba(0,0,0,.23);opacity:0;visibility:hidden;transform:translateY(15px);transition:opacity .22s ease,visibility .22s ease,transform .22s var(--ease),background .22s ease}
.to-top.position-right{right:24px}.to-top.position-left{left:24px}.to-top.shape-circle{border-radius:50%}.to-top.shape-rounded{border-radius:14px}.to-top.shape-square{border-radius:2px}
.to-top.is-visible{opacity:1;visibility:visible;transform:none}.to-top:hover{background:var(--button-hover);transform:translateY(-3px)}
.not-found-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:24px}
.not-found-minimal .not-found-card{border-color:transparent;background:transparent;box-shadow:none}
.not-found-minimal .text-link{margin-top:24px}
.not-found-contact .not-found-card{background:linear-gradient(145deg,var(--surface),#f2eee8)}

/* Scroll-animationer, kun som progressiv forbedring */
.reveal-target{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.reveal-target.is-revealed{opacity:1;transform:none}

@media(max-width:1180px){
  .site-header{grid-template-columns:145px 1fr auto;gap:22px;padding-inline:24px}.main-nav>ul{gap:8px 17px}
  .reference-hero,.department-hero{grid-template-columns:1fr 1fr}.reference-hero-content,.department-hero-content{padding:55px 42px}
}
@media(max-width:1100px){
  .site-wrap{width:calc(100% - 24px);margin-top:12px}.site-header,.site-header.is-compact{top:8px;min-height:84px;padding:13px 18px;border-radius:22px}
  .main-nav{inset:104px 12px 12px;padding:24px;border:1px solid rgba(255,255,255,.09);box-shadow:0 25px 70px rgba(0,0,0,.3)}
  .hero-slider{height:650px;margin-top:10px}.hero-content h1,.hero-content h2{font-size:clamp(45px,7vw,65px)}
  .intro-section{grid-template-columns:58px 1fr;gap:28px}.intro-section>div:last-child{grid-column:2}
  .reference-card:nth-child(2n),.reference-card:nth-child(2n):hover{transform:none}
  .reference-hero,.department-hero{grid-template-columns:1fr}.reference-hero-media{height:480px}.department-hero-media{height:430px;padding:0 18px 18px}.department-hero img{min-height:0}
  .reference-content{grid-template-columns:1fr}.reference-facts{position:static;display:grid;grid-template-columns:auto 1fr;gap:8px 18px}.reference-facts>span{margin-top:0}.reference-facts .pill-button{grid-column:1/-1;width:max-content}
}
@media(max-width:720px){
  .site-wrap{width:calc(100% - 14px);margin-top:7px}.site-header,.site-header.is-compact{top:5px;min-height:76px;padding:10px 13px;border-radius:18px}.site-logo img{width:138px;max-height:48px}.mobile-menu-toggle{width:44px;height:44px}
  .main-nav{inset:88px 7px 7px;border-radius:18px}.main-nav a{font-size:18px}
  .hero-slider{height:590px;min-height:0;border-radius:20px}.hero-slide{padding:45px 24px 90px}.hero-content{width:100%}.hero-content h1,.hero-content h2{font-size:clamp(39px,11vw,52px)}.hero-content p{font-size:16px}
  .intro-section{display:block;padding:68px 20px}.section-number{margin-bottom:30px}.expertise-tags{margin-top:24px}
  .showcase-section,.news-section{padding:58px 14px;border-radius:20px}.section-heading{align-items:flex-start}.reference-grid,.news-grid{grid-template-columns:1fr}.reference-card,.news-card{border-radius:18px}
  .services-band{padding:58px 22px;margin:14px 0;border-radius:20px}.service-list a{font-size:19px}
  .page-hero{min-height:350px;padding:68px 24px 52px;border-radius:20px}.page-hero:before{right:-45%;width:330px}.page-hero h1{font-size:clamp(41px,12vw,58px)}
  .page-featured{width:calc(100% - 18px);height:66vw;min-height:260px;margin:-25px auto 16px;border-width:5px;border-radius:20px}
  .content-surface,.content-surface-wide{width:calc(100% - 14px);margin-top:14px;padding:34px 20px;border-radius:20px}.page-featured+.content-surface{margin-top:8px}
  .prose{font-size:17px}.prose>p:first-child{font-size:19px}.prose blockquote{padding:28px 22px 28px 54px}.prose blockquote:before{left:17px}
  .prose table{display:block;max-width:100%;overflow-x:auto}
  .landing-hero,.department-hero,.reference-hero{margin-top:8px;border-radius:20px}.landing-hero{min-height:580px;padding:56px 24px}.landing-hero h1,.department-hero h1,.reference-hero h1{font-size:clamp(42px,12vw,56px)}
  .reference-hero-content,.department-hero-content{padding:52px 24px}.reference-hero-media{height:330px}.department-hero{min-height:0}.department-hero-media{height:300px;padding:0 10px 10px}.department-hero img{border-radius:15px}
  .reference-content{padding:55px 7px}.reference-facts{display:flex;padding:24px;border-radius:18px}.reference-facts .pill-button{width:auto}
  .archive-grid{grid-template-columns:1fr;padding:48px 7px}.archive-empty{padding:50px 24px;border-radius:20px}
  .not-found{min-height:560px;padding:28px 7px}.not-found-card{padding:48px 22px;border-radius:20px}
  .site-breadcrumb{margin-right:10px;margin-left:10px}.to-top.position-right{right:12px}.to-top.position-left{left:12px}.to-top{bottom:12px}
  .site-footer{padding:52px 22px 20px;margin-top:18px;border-radius:20px 20px 0 0}.footer-lead{align-items:flex-start}.footer-grid{grid-template-columns:1fr}.footer-about{grid-column:auto}.footer-bottom{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal-target{opacity:1;transform:none}}

/* Konfigurerbar header og footer */
.site-announcement{margin-top:var(--header-margin-top);padding:8px 18px;border-radius:var(--header-radius) var(--header-radius) 10px 10px;background:var(--header-topbar-bg);color:var(--header-topbar-text);font-size:13px;font-weight:700;text-align:center}.site-announcement a{color:inherit}.site-announcement a:hover span{display:inline-block;transform:translateX(4px)}
.site-header{min-height:var(--header-height);padding-right:var(--header-padding-x);padding-left:var(--header-padding-x);margin-top:var(--header-margin-top);margin-bottom:var(--header-margin-bottom);border-color:var(--header-border);border-radius:var(--header-radius);box-shadow:0 calc(var(--header-shadow)*1px) calc(var(--header-shadow)*3.4px) rgba(0,0,0,.16)}.site-announcement+.site-header{margin-top:4px}.site-logo img{width:min(var(--header-logo-width),100%)}.main-nav>ul{column-gap:var(--header-nav-gap)}.main-nav a:hover,.main-nav a:focus-visible{color:var(--header-link-hover)}.header-cta{background:var(--header-cta-bg);color:var(--header-cta-text)}.phone-link{display:grid;grid-template-columns:auto auto;column-gap:7px;line-height:1.15}.phone-link>span{grid-row:1/3}.phone-link small{color:color-mix(in srgb,var(--header-text) 68%,transparent);font-size:10px}.phone-link strong{font-size:13px}.header-layout-logo-left{grid-template-columns:minmax(145px,var(--header-logo-width)) auto 1fr}.header-layout-logo-left .main-nav>ul{justify-content:flex-start}.header-layout-logo-left .header-contact{justify-self:end}.header-layout-compact{--header-height:82px}
.site-footer{min-height:var(--footer-min-height);padding:var(--footer-padding-top) clamp(25px,6vw,90px) var(--footer-padding-bottom);margin-top:var(--footer-margin-top);margin-bottom:var(--footer-margin-bottom);border-color:var(--footer-border);border-radius:var(--footer-radius) var(--footer-radius) 0 0}.footer-lead,.footer-bottom{border-color:var(--footer-border)}.footer-grid{gap:var(--footer-column-gap)}.footer-grid h3,.footer-lead .eyebrow{color:var(--footer-heading)}.footer-grid a:hover,.footer-bottom a:hover{color:var(--footer-link-hover)}.footer-cta{background:var(--footer-cta-bg);color:var(--footer-cta-text)}

/* Struktureret template- og webmodul-rendering */
.kte-builder{display:grid;gap:clamp(24px,4vw,56px);margin-top:clamp(24px,4vw,56px)}.builder-block{position:relative;width:100%;padding:clamp(52px,var(--section-spacing),110px) clamp(24px,6vw,90px);overflow:hidden;border:1px solid transparent;border-radius:var(--radius);background:transparent}.builder-inner{width:min(100%,var(--container));margin:0 auto}.builder-block.spacing-compact{padding-top:clamp(30px,5vw,56px);padding-bottom:clamp(30px,5vw,56px)}.builder-block.spacing-large{padding-top:clamp(80px,11vw,145px);padding-bottom:clamp(80px,11vw,145px)}.builder-block.variant-light{border-color:var(--line);background:var(--surface);box-shadow:var(--shadow-sm)}.builder-block.variant-wine{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 75%,#1d1e20));color:#fff;box-shadow:var(--shadow-lg)}.builder-block.variant-dark{background:linear-gradient(135deg,#25272a,var(--dark));color:#fff;box-shadow:var(--shadow-lg)}.builder-block.variant-outline{border-color:var(--line);background:transparent}.builder-block.align-center{text-align:center}.builder-block.align-center .builder-lead,.builder-block.align-center .prose{margin-right:auto;margin-left:auto}.builder-block.align-right{text-align:right}.builder-block h2{max-width:1000px;margin:0 0 24px;font-size:clamp(34px,var(--h2),62px);font-weight:730;line-height:1.06;letter-spacing:-.04em;text-wrap:balance}.builder-block.align-center h2{margin-right:auto;margin-left:auto}.builder-lead{max-width:780px;margin:0 0 30px;color:var(--muted);font-size:clamp(17px,1.45vw,21px);line-height:1.62}.variant-wine .builder-lead,.variant-dark .builder-lead,.variant-wine .prose,.variant-dark .prose{color:rgba(255,255,255,.82)}.builder-button{display:inline-flex;align-items:center;gap:13px;min-height:50px;padding:9px 20px 9px 10px;margin-top:22px;border-radius:99px;background:var(--button);color:#fff;font-weight:750;box-shadow:0 10px 25px rgba(0,0,0,.14)}.builder-button span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fff;color:var(--button)}.builder-button:hover{transform:translateY(-3px);background:var(--button-hover);box-shadow:0 16px 34px rgba(0,0,0,.2)}.variant-wine .builder-button,.variant-dark .builder-button{background:#fff;color:#222}.variant-wine .builder-button span,.variant-dark .builder-button span{background:var(--primary);color:#fff}.builder-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(34px,6vw,90px)}.builder-split.layout-left figure{order:2}.builder-split.layout-stacked{grid-template-columns:1fr}.builder-split figure{min-height:420px;margin:0;overflow:hidden;border-radius:calc(var(--radius)*.78);background:#e5e1db;box-shadow:var(--shadow-sm)}.builder-split img{width:100%;height:100%;min-height:420px;object-fit:cover}.builder-gallery{display:grid;gap:clamp(12px,2vw,25px)}.builder-gallery.columns-2{grid-template-columns:repeat(2,1fr)}.builder-gallery.columns-3{grid-template-columns:repeat(3,1fr)}.builder-gallery.columns-4{grid-template-columns:repeat(4,1fr)}.builder-gallery figure{aspect-ratio:1.25;margin:0;overflow:hidden;border-radius:calc(var(--radius)*.62);background:#e5e1db;box-shadow:var(--shadow-sm)}.builder-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .45s var(--ease)}.builder-gallery figure:hover img{transform:scale(1.035)}.builder-cards{display:grid;gap:clamp(14px,2vw,26px)}.builder-cards.columns-2{grid-template-columns:repeat(2,1fr)}.builder-cards.columns-3{grid-template-columns:repeat(3,1fr)}.builder-cards.columns-4{grid-template-columns:repeat(4,1fr)}.builder-cards article{padding:clamp(20px,2.5vw,32px);border:1px solid var(--line);border-radius:calc(var(--radius)*.65);background:var(--surface);color:var(--text);box-shadow:0 10px 30px rgba(20,20,20,.055);transition:transform .25s var(--ease),box-shadow .25s}.builder-cards article:hover{transform:translateY(-6px);box-shadow:var(--shadow-sm)}.builder-cards article img{width:100%;aspect-ratio:1.6;margin:-10px 0 22px;border-radius:calc(var(--radius)*.45);object-fit:cover}.builder-cards h3{margin:0 0 10px;font-size:clamp(21px,2vw,28px);line-height:1.18}.builder-cards p{color:var(--muted)}.builder-cards a{color:var(--link);font-weight:750}.builder-cta{text-align:center}.builder-cta .builder-inner{max-width:980px}.builder-cta h2,.builder-cta .builder-lead{margin-right:auto;margin-left:auto}.builder-quote blockquote{max-width:1050px;padding:clamp(30px,5vw,70px);margin:0 auto;border-left:5px solid var(--primary);border-radius:calc(var(--radius)*.75);background:var(--surface);box-shadow:var(--shadow-sm)}.builder-quote blockquote p{margin:0;font-size:clamp(25px,3.2vw,45px);font-weight:650;line-height:1.25;letter-spacing:-.025em}.builder-quote cite{display:block;margin-top:20px;color:var(--muted);font-size:14px}.builder-spacer{min-height:clamp(30px,6vw,90px);padding:0;border:0}.builder-preview-label{position:absolute;top:12px;left:14px;z-index:3;padding:5px 8px;border-radius:6px;background:#202225;color:#fff;font:10px/1.2 ui-monospace,monospace;box-shadow:0 5px 15px rgba(0,0,0,.15)}.draft-preview-banner{position:sticky;top:0;z-index:100;padding:10px 18px;background:#9c303d;color:#fff;font:700 13px var(--font);text-align:center}
@media(max-width:1100px){.site-header{margin-top:clamp(6px,var(--header-margin-top),18px);margin-bottom:clamp(6px,var(--header-margin-bottom),16px);padding-right:clamp(14px,var(--header-padding-x),24px);padding-left:clamp(14px,var(--header-padding-x),24px);border-radius:clamp(14px,var(--header-radius),24px)}.site-announcement{margin-top:clamp(6px,var(--header-margin-top),18px)}.builder-cards.columns-4{grid-template-columns:repeat(2,1fr)}.builder-gallery.columns-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.builder-split{grid-template-columns:1fr}.builder-split.layout-left figure{order:0}.builder-split figure,.builder-split img{min-height:320px}.builder-gallery.columns-3,.builder-cards.columns-3{grid-template-columns:repeat(2,1fr)}.builder-block{padding-right:clamp(18px,5vw,35px);padding-left:clamp(18px,5vw,35px)}.site-footer{min-height:0;padding-top:clamp(42px,var(--footer-padding-top),80px);padding-bottom:clamp(16px,var(--footer-padding-bottom),50px);margin-top:clamp(18px,var(--footer-margin-top),70px);border-radius:clamp(18px,var(--footer-radius),35px) clamp(18px,var(--footer-radius),35px) 0 0}}
@media(max-width:620px){.site-header{min-height:76px}.phone-link{display:none}.builder-gallery.columns-2,.builder-gallery.columns-3,.builder-gallery.columns-4,.builder-cards.columns-2,.builder-cards.columns-3,.builder-cards.columns-4{grid-template-columns:1fr}.builder-block{border-radius:clamp(18px,var(--radius),28px)}.builder-split figure,.builder-split img{min-height:260px}.builder-gallery figure{aspect-ratio:1.15}.builder-button{width:100%;justify-content:space-between}.builder-quote blockquote{padding:28px 24px}.kte-builder{gap:20px}}

/* AI-byggede elementer arver altid det globale designsystem fra Udseende. */
.builder-block.variant-wine{background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 74%,var(--dark)));color:var(--surface)}
.builder-block.variant-dark{background:linear-gradient(135deg,color-mix(in srgb,var(--dark) 88%,var(--surface)),var(--dark));color:var(--surface)}
.variant-wine .builder-lead,.variant-dark .builder-lead,.variant-wine .prose,.variant-dark .prose{color:color-mix(in srgb,var(--surface) 82%,transparent)}
.builder-button{color:var(--surface)}.builder-button span{background:var(--surface);color:var(--button)}
.variant-wine .builder-button,.variant-dark .builder-button{background:var(--surface);color:var(--text)}
.variant-wine .builder-button span,.variant-dark .builder-button span{background:var(--primary);color:var(--surface)}
.builder-split figure,.builder-gallery figure{background:color-mix(in srgb,var(--surface) 78%,var(--background))}

/* Headernavigation og slider – stabil scrolladfærd og større arbejdsbredde */
.site-header{grid-template-columns:minmax(132px,160px) minmax(0,1fr) auto;gap:clamp(14px,2vw,28px);padding-top:20px;padding-bottom:20px;will-change:transform;transition:transform .34s var(--ease),box-shadow .28s ease}
.site-header.is-compact{min-height:var(--header-height);padding-top:20px;padding-bottom:20px}
.site-header.is-sticky.is-hidden{transform:translateY(calc(-100% - 28px));pointer-events:none}
.main-nav{min-width:0}.main-nav>ul{flex-wrap:nowrap;column-gap:clamp(14px,1.7vw,var(--header-nav-gap))}.main-nav>ul>li{flex:0 0 auto}.main-nav li.has-children{padding-bottom:14px;margin-bottom:-14px}.main-nav li.has-children:after{content:"";position:absolute;z-index:0;top:calc(100% - 14px);right:-18px;left:-18px;height:24px}.main-nav ul ul{z-index:2;top:calc(100% - 1px);padding:13px 18px;border-color:var(--header-border);background:color-mix(in srgb,var(--header-bg) 88%,var(--surface));color:var(--header-text)}
.header-contact{gap:12px}.phone-link{display:flex;grid-template-columns:none;gap:9px;line-height:1.15}.phone-icon{display:grid!important;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:var(--header-cta-bg);color:var(--header-cta-text)!important;box-shadow:0 6px 16px rgba(0,0,0,.15)}.phone-icon svg{width:18px;height:18px;fill:currentColor}.phone-copy{display:grid;gap:2px}.phone-copy small,.phone-copy strong{display:block}.phone-copy small{color:color-mix(in srgb,var(--header-text) 68%,transparent);font-size:10px}.phone-copy strong{font-size:13px}
.slider-arrow{width:58px;height:58px;border:1px solid color-mix(in srgb,var(--surface) 48%,transparent);border-radius:50%;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--text);box-shadow:0 14px 36px rgba(0,0,0,.22);backdrop-filter:blur(10px)}.slider-arrow.prev{left:26px;border-radius:50%}.slider-arrow.next{right:26px;border-radius:50%}.slider-arrow svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.slider-arrow:hover{transform:translateY(-50%) scale(1.07);background:var(--surface);box-shadow:0 18px 42px rgba(0,0,0,.3)}
@media(max-width:1180px){.site-header{grid-template-columns:135px minmax(0,1fr) auto;gap:17px}.main-nav>ul{column-gap:14px}.header-contact{gap:9px}}
@media(max-width:1100px){.site-header,.site-header.is-compact{min-height:84px;padding-top:13px;padding-bottom:13px}.site-header.is-sticky.is-hidden{transform:none;pointer-events:auto}.main-nav>ul{flex-wrap:initial}.main-nav li.has-children{padding-bottom:0;margin-bottom:0}.main-nav li.has-children:after{display:none}.main-nav ul ul{top:auto}.slider-arrow.prev{left:18px}.slider-arrow.next{right:18px}}
@media(max-width:720px){.site-header,.site-header.is-compact{min-height:76px;padding-top:10px;padding-bottom:10px}.slider-arrow{top:auto;bottom:22px;width:46px;height:46px;transform:none}.slider-arrow:hover{transform:scale(1.06)}.slider-arrow.prev{left:18px}.slider-arrow.next{right:18px}}


/* v1.4.2 - levende KTE designsystem for frie AI-sider */
.kte-width-standard{width:min(100%,var(--container));margin-inline:auto}
.kte-width-wide{width:min(100%,var(--container-wide));margin-inline:auto}
.kte-width-full{width:100%;padding-inline:var(--page-padding)}
.kte-width-edge{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.kte-section-flow{display:grid;gap:var(--section-spacing)}
.kte-section-flow>section+section,.kte-page-document>section+section{margin-top:var(--section-spacing)}
.kte-columns{display:grid;gap:var(--column-gap)}
.kte-columns--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.kte-columns--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.kte-columns--60-40{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}
.kte-columns--40-60{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}
.kte-surface{padding:var(--surface-padding);border:1px solid var(--line-color);border-radius:var(--radius);background:var(--surface)}
.kte-surface--accent{padding:var(--surface-padding);border-radius:var(--radius);background:var(--primary);color:var(--surface)}
.kte-surface--plain{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.kte-button,.kte-button--primary,.kte-button--secondary,.kte-button--outline{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--button-height);padding:10px var(--button-padding-x);border-radius:var(--button-radius);font:inherit;font-weight:700;line-height:1;text-decoration:none;cursor:pointer;transition:transform .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease}
.kte-button--primary{border:1px solid var(--button);background:var(--button);color:var(--surface)}
.kte-button--primary:hover{border-color:var(--button-hover);background:var(--button-hover);transform:translateY(-1px)}
.kte-button--secondary{border:1px solid var(--dark);background:var(--dark);color:var(--surface)}
.kte-button--outline{border:1px solid currentColor;background:transparent;color:var(--text)}
a[href],button,input[type=button],input[type=submit],input[type=reset],[role=button],[data-clickable]{cursor:pointer}
a[href]:focus-visible,button:focus-visible,[role=button]:focus-visible,[data-clickable]:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
@media(max-width:900px){.kte-columns--2,.kte-columns--3,.kte-columns--60-40,.kte-columns--40-60{grid-template-columns:1fr}}

/* v1.5.18: frontend polish – full-screen hero, symmetric footer, mobile navigation and unified CTA buttons */
.hero-slider{height:100svh!important;min-height:100svh!important;max-height:none!important}
.hero-scroll-cue{position:absolute;z-index:6;right:auto;left:50%;bottom:28px;width:28px;height:44px;padding:0;border:2px solid rgba(255,255,255,.86);border-radius:18px;background:radial-gradient(circle at 50% 11px,rgba(255,255,255,.95) 0 2px,transparent 3px);box-shadow:0 8px 28px rgba(0,0,0,.22);appearance:none;cursor:pointer;transform:translateX(-50%);animation:kte-slider-scroll 1.8s ease-in-out infinite;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}.hero-scroll-cue:hover{border-color:#fff;background-color:rgba(255,255,255,.08);box-shadow:0 10px 32px rgba(0,0,0,.3)}.hero-scroll-cue:focus-visible{outline:3px solid #fff;outline-offset:4px}
.slider-dots{right:28px!important;bottom:28px!important;left:auto!important;transform:none!important}
@keyframes kte-slider-scroll{0%,100%{transform:translate(-50%,0);opacity:.72}50%{transform:translate(-50%,9px);opacity:1}}
.site-footer{margin-bottom:var(--footer-margin-bottom)!important;border-radius:var(--footer-radius)!important}
.footer-about img{display:block;width:var(--footer-logo-render-width)!important;max-width:100%;height:var(--footer-logo-render-height)!important;max-height:none!important;object-fit:contain;object-position:left center}
.phone-icon svg{fill:none!important;stroke:currentColor!important;stroke-width:1.65!important}

/* Fælles 2026 CTA: pill + tæt cirkulær ikonflade som headerens Kontakt os. */
.pill-button,.builder-button,.prose .button{min-height:var(--button-height);padding:5px var(--button-padding-x) 5px 5px;border-radius:var(--button-radius);gap:11px}
.pill-button>span,.builder-button>span{display:grid;place-items:center;flex:0 0 calc(var(--button-height) - 10px);width:calc(var(--button-height) - 10px);height:calc(var(--button-height) - 10px);border-radius:50%;margin:0}
.pill-button>span svg,.builder-button>span svg{width:18px;height:18px;stroke-width:1.8}
.prose .button:not(:has(>span))::before{content:"→";display:grid;place-items:center;flex:0 0 calc(var(--button-height) - 10px);width:calc(var(--button-height) - 10px);height:calc(var(--button-height) - 10px);border-radius:50%;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--button);font-size:18px;line-height:1}
/* Frie AI-siders standardknapper beholder egne farver, men får samme ikon/tekst-geometri. */
.site-main :is(.kte-button,.kte-button--primary,.kte-button--secondary,.kte-button--outline){padding:5px var(--button-padding-x) 5px 5px;gap:11px}
.site-main :is(.kte-button,.kte-button--primary,.kte-button--secondary,.kte-button--outline)>:is([aria-hidden="true"],i[data-lucide],svg.lucide):first-child{display:grid;place-items:center;flex:0 0 calc(var(--button-height) - 10px);width:calc(var(--button-height) - 10px);height:calc(var(--button-height) - 10px);padding:9px;border-radius:50%;background:color-mix(in srgb,currentColor 14%,transparent)}
.site-main :is(.kte-button,.kte-button--primary,.kte-button--secondary,.kte-button--outline):not(:has(>:is([aria-hidden="true"],i[data-lucide],svg.lucide):first-child))::before{content:"→";display:grid;place-items:center;flex:0 0 calc(var(--button-height) - 10px);width:calc(var(--button-height) - 10px);height:calc(var(--button-height) - 10px);border-radius:50%;background:color-mix(in srgb,currentColor 14%,transparent);font-size:18px;line-height:1}

@media(max-width:1100px){
  body.menu-open{overflow:hidden}
  body.menu-open::before{content:"";position:fixed;z-index:850;inset:0;background:rgba(15,16,18,.42);backdrop-filter:blur(4px)}
  .site-header,.site-header.is-compact{z-index:900;will-change:auto}
  .mobile-menu-toggle{justify-self:end;margin-left:auto;position:relative;z-index:1100;box-shadow:0 8px 24px rgba(0,0,0,.16)}
  .mobile-menu-toggle span:not(.sr-only){transform-origin:center;transition:transform .25s var(--ease),opacity .2s ease}
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .mobile-menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .main-nav{position:fixed!important;z-index:1050!important;top:calc(var(--header-margin-top) + 92px)!important;right:clamp(12px,3vw,28px)!important;bottom:auto!important;left:clamp(12px,3vw,28px)!important;max-height:calc(100svh - var(--header-margin-top) - 112px);padding:16px 22px 20px!important;overflow-y:auto;border:1px solid color-mix(in srgb,var(--header-border) 65%,transparent);border-radius:24px!important;background:color-mix(in srgb,var(--header-bg) 94%,#fff 6%)!important;box-shadow:0 28px 70px rgba(0,0,0,.32)!important;backdrop-filter:blur(18px);transform:translateY(-10px);opacity:0;visibility:hidden;display:block!important;pointer-events:none;transition:opacity .22s ease,transform .28s var(--ease),visibility .22s}
  .main-nav.open{transform:none;opacity:1;visibility:visible;pointer-events:auto}
  .main-nav,.main-nav ul,.main-nav li{text-align:left}
  .main-nav>ul{display:grid!important;gap:2px;margin:0;padding:0;justify-items:stretch}
  .main-nav>ul>li>a{display:flex;justify-content:flex-start;align-items:center;width:100%;min-height:48px;padding:11px 4px!important;border-bottom:1px solid rgba(255,255,255,.09);font-size:18px!important;text-align:left}
  .main-nav ul ul{display:grid!important;gap:0;padding:4px 0 8px 14px!important;margin:0;background:transparent!important;box-shadow:none!important}
  .main-nav ul ul a{display:block;padding:9px 0!important;border-bottom:0!important;color:color-mix(in srgb,var(--header-text) 76%,transparent);font-size:15px!important;text-align:left}
  .hero-slider{height:100svh!important;min-height:100svh!important}
  .hero-scroll-cue{left:50%;right:auto;bottom:24px}
  .slider-dots{right:24px!important;bottom:24px!important}
  .site-footer{border-radius:var(--footer-radius)!important}
}
@media(max-width:720px){
  .hero-slider{height:100svh!important;min-height:100svh!important}
  .slider-dots{right:76px!important;bottom:24px!important}
  .hero-scroll-cue{left:50%;right:auto;bottom:24px}
  .site-footer{margin-bottom:var(--footer-margin-bottom)!important;border-radius:var(--footer-radius)!important}
}


/* v1.5.19: præcis footerluft, backend-styret headerlogo og viewport-korrekt slider */
.site-header{grid-template-columns:minmax(90px,var(--header-logo-width)) minmax(0,1fr) auto}
.site-header.header-layout-logo-left{grid-template-columns:minmax(90px,var(--header-logo-width)) auto 1fr}
.site-logo{display:block;width:100%;max-width:var(--header-logo-width)}
.site-logo img{display:block;width:100%!important;max-width:var(--header-logo-width)!important;max-height:none!important;height:auto!important}
.hero-slider{height:min(870px,var(--hero-slider-height,calc(100svh - var(--header-height) - var(--header-margin-top) - var(--header-margin-bottom) - 40px)))!important;min-height:0!important;max-height:870px!important}
@media(max-width:1100px){
  .site-header{grid-template-columns:minmax(90px,min(var(--header-logo-width),42vw)) minmax(0,1fr) auto}
  .site-logo{max-width:min(var(--header-logo-width),42vw)}
  .site-logo img{max-width:min(var(--header-logo-width),42vw)!important}
  .hero-slider{height:min(870px,var(--hero-slider-height,calc(100svh - 120px)))!important;min-height:0!important;max-height:870px!important}
}
@media(max-width:720px){
  .hero-slider{height:min(870px,var(--hero-slider-height,calc(100svh - 100px)))!important;min-height:0!important;max-height:870px!important}
}

/* v1.5.20: sticky header gemmes ved scroll ned og glider frem igen ved scroll op */
.site-header.is-sticky{
  transform:translate3d(0,0,0);
  will-change:transform;
  transition:min-height .3s var(--ease),padding .3s var(--ease),box-shadow .3s ease,transform .68s cubic-bezier(.22,1,.36,1);
}
.site-header.is-sticky.is-scroll-hidden{
  transform:translate3d(0,calc(-100% - 36px),0);
  pointer-events:none;
}
body.menu-open .site-header.is-sticky{
  transform:none!important;
  transition:none!important;
  will-change:auto!important;
  pointer-events:auto;
}
@media(prefers-reduced-motion:reduce){
  .site-header.is-sticky{transition:none!important}
}



/* v1.5.21: roligere sticky header og ingen vandret overflow på tablet/mobil */
@media(max-width:1100px){
  html,body{max-width:100%;overflow-x:clip}
  .site-wrap,.site-header,.main-nav{box-sizing:border-box;max-width:100%}
}
@supports not (overflow:clip){
  @media(max-width:1100px){html,body{overflow-x:hidden}}
}

/* v1.8.52 · language switch and Danish fallback notice */
.header-language-switcher{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;font-size:12px;font-weight:700;letter-spacing:.04em}
.header-language-switcher a{color:inherit;text-decoration:none;opacity:.58}
.header-language-switcher a[aria-current="page"]{opacity:1}
.header-language-switcher a:hover,.header-language-switcher a:focus-visible{opacity:1}
.i18n-fallback-notice{margin-top:16px;margin-bottom:16px;padding:11px 16px;border:1px solid var(--line-color);border-radius:14px;background:var(--surface);color:var(--muted);font-size:14px}
@media(max-width:900px){.header-language-switcher{margin-left:auto;margin-right:8px}}

/* v1.8.55 · equal spacing between language, phone and contact actions */
.header-actions{--header-action-gap:18px;display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:var(--header-action-gap);min-width:max-content}
.header-actions .header-contact{gap:var(--header-action-gap)}
.header-actions .header-language-switcher{margin:0}
@media(max-width:1180px) and (min-width:1101px){.header-actions{--header-action-gap:14px}}
@media(max-width:1100px){
  .site-header{grid-template-columns:minmax(90px,min(var(--header-logo-width),42vw)) minmax(0,1fr) auto}
  .header-actions{grid-column:3;gap:10px}
  .header-actions .header-contact{display:none}
  .header-actions .header-language-switcher{order:1;margin:0!important}
  .header-actions .mobile-menu-toggle{order:2;justify-self:auto;margin-left:0}
}

/* v1.8.61 · single authoritative mobile menu layout: stable width, accordion and scroll isolation */
.mobile-submenu-toggle{display:none}
@media(max-width:1100px){
  html.menu-open,body.menu-open{overflow:hidden!important;overscroll-behavior:none}
  .main-nav{
    left:max(10px,env(safe-area-inset-left))!important;
    right:max(10px,env(safe-area-inset-right))!important;
    width:auto!important;
    max-width:none!important;
    padding:14px 8px 18px!important;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y
  }
  .main-nav>ul{display:grid!important;width:100%!important;max-width:none!important;gap:2px;margin:0!important;padding:0!important;justify-items:stretch}
  .main-nav>ul>li{width:100%;max-width:none!important;min-width:0}
  .main-nav>ul>li>a{display:flex;align-items:center;justify-content:flex-start;width:100%;max-width:none!important;min-width:0;min-height:48px;padding:11px 0!important;border-bottom:0!important;font-size:18px!important;text-align:left}
  .main-nav>ul>li>a::after{display:none!important}
  .main-nav li.has-children{display:grid;grid-template-columns:minmax(0,1fr) 34px;column-gap:18px;align-items:start;width:100%;min-width:0}
  .main-nav li.has-children>a{grid-column:1;min-width:0;padding-right:0!important;overflow-wrap:anywhere}
  .mobile-submenu-toggle{grid-column:2;grid-row:1;display:grid;place-items:center;align-self:center;justify-self:end;width:34px;height:34px;padding:0;margin:0;border:0;border-radius:50%;background:transparent;color:var(--header-text);cursor:pointer}
  .mobile-submenu-toggle:hover,.mobile-submenu-toggle:focus-visible{background:color-mix(in srgb,var(--header-text) 10%,transparent)}
  .mobile-submenu-toggle>span::before{content:"+";display:block;font-size:25px;font-weight:400;line-height:1}
  .mobile-submenu-toggle[aria-expanded="true"]>span::before{content:"−"}
  .main-nav li.has-children>ul{grid-column:1/-1;display:none!important;position:static!important;width:100%;min-width:0;padding:2px 0 9px 8px!important;margin:0!important;visibility:hidden!important;opacity:0!important;transform:none!important;border:0!important;background:transparent!important;box-shadow:none!important}
  .main-nav li.has-children.submenu-open>ul{display:grid!important;visibility:visible!important;opacity:1!important}
  .main-nav ul ul li{width:100%;min-width:0}
  .main-nav ul ul a{display:block;width:100%;min-width:0;padding:9px 0!important;border-bottom:0!important;color:color-mix(in srgb,var(--header-text) 76%,transparent);font-size:15px!important;text-align:left;overflow-wrap:anywhere}
}
@media(max-width:720px){
  .main-nav{left:max(7px,env(safe-area-inset-left))!important;right:max(7px,env(safe-area-inset-right))!important;padding:12px 6px 16px!important}
  .main-nav li.has-children{grid-template-columns:minmax(0,1fr) 32px;column-gap:16px}
  .mobile-submenu-toggle{width:32px;height:32px}
  .main-nav li.has-children>ul{padding-left:7px!important}
}
/* v1.8.63 · Footer logo + linked image row */
.footer-image-links{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:center;gap:clamp(18px,2.6vw,42px);margin-top:2px;border-top:1px solid var(--footer-border);padding:clamp(28px,3vw,42px) 0 clamp(30px,4vw,48px)}
.footer-image-link{display:flex;align-items:center;justify-content:center;min-width:0;min-height:var(--footer-bottom-image-max-height);text-decoration:none}
.footer-image-link img{display:block;width:auto;max-width:100%;height:auto;max-height:var(--footer-bottom-image-max-height);object-fit:contain}
.footer-image-link[href]{transition:opacity .18s ease,transform .18s ease}
.footer-image-link[href]:hover{opacity:.82;transform:translateY(-2px)}
.footer-image-link[href]:focus-visible{outline:2px solid var(--focus);outline-offset:6px;border-radius:6px}
@media(max-width:620px){.footer-image-links{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;grid-auto-columns:auto;gap:24px 28px;padding-top:28px;padding-bottom:34px}.footer-image-link{min-height:min(var(--footer-bottom-image-max-height),72px)}.footer-image-link:last-child:nth-child(odd){grid-column:1/-1}.footer-image-link img{max-height:min(var(--footer-bottom-image-max-height),72px)}}



/* KTE v1.9.14 – slider metadata */
@media(max-width:1100px){.hero-building{left:28px;bottom:74px;max-width:min(520px,calc(100% - 56px))}}
@media(max-width:620px){.hero-building{left:24px;bottom:82px;max-width:calc(100% - 48px);padding:7px 10px;font-size:12px}}


/* KTE v1.9.16 – klikbar scroll-indikator i forsideslider */
@media(prefers-reduced-motion:reduce){.hero-scroll-cue{animation:none}}

/* v1.9.33 · Central formularmotor */
.kte-form-module{width:100%;color:inherit}.kte-form{display:grid;gap:24px}.kte-form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px var(--column-gap,28px)}.kte-form-field{grid-column:span 12;min-width:0;display:grid;gap:8px;align-content:start}.kte-form-field--w25{grid-column:span 3}.kte-form-field--w33{grid-column:span 4}.kte-form-field--w50{grid-column:span 6}.kte-form-field--w66{grid-column:span 8}.kte-form-field--w75{grid-column:span 9}.kte-form-field--w100{grid-column:span 12}.kte-form-field>label:not(.kte-form-check),.kte-form-field legend{margin:0;color:inherit;font-size:13px;font-weight:800}.kte-form-field input:not([type=checkbox]):not([type=radio]),.kte-form-field textarea,.kte-form-field select{box-sizing:border-box;width:100%;min-height:52px;padding:13px 16px;border:1px solid color-mix(in srgb,var(--line-color,#ddd) 88%,transparent);border-radius:12px;background:var(--surface,#fff);color:var(--text,#222);outline:0;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.kte-form-field textarea{min-height:145px;resize:vertical}.kte-form-field input:focus,.kte-form-field textarea:focus,.kte-form-field select:focus{border-color:var(--primary,#7f1520);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#7f1520) 14%,transparent)}.kte-form-required{margin-left:3px;color:var(--primary,#7f1520)}.kte-form-help,.kte-form-file-help{color:var(--muted,#686762);font-size:12px}.kte-form-check,.kte-form-choices label{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.kte-form-check input,.kte-form-choices input{flex:0 0 auto;width:18px;height:18px;margin-top:3px;accent-color:var(--primary,#7f1520)}.kte-form-consent{font-size:13px}.kte-form-consent a{text-decoration:underline}.kte-form-field fieldset{min-width:0;margin:0;padding:0;border:0}.kte-form-choices{display:grid;gap:8px}.kte-form-submit{justify-self:start;border:0;cursor:pointer}.kte-form-status{margin-bottom:20px;padding:14px 16px;border-radius:12px;font-size:14px;font-weight:700}.kte-form-status.is-success{background:#e9f6ee;color:#1f6b3a}.kte-form-status.is-error{background:#fbebed;color:#8b1c28}.kte-form-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
@media(max-width:760px){.kte-form-grid{grid-template-columns:1fr;gap:16px}.kte-form-field{grid-column:1/-1!important}.kte-form-submit{width:100%;justify-content:flex-start}}

/* v1.9.66 – Turnstile is inserted automatically by the shared form renderer. */
.kte-form-turnstile{display:flex;align-items:center;min-height:0}.kte-form-turnstile .cf-turnstile{max-width:100%}

/* v1.9.107: reserve room for navigation on landscape tablets and small laptops. */
@media(max-width:1366px){.site-header .phone-link{display:none}}
@media(min-width:1101px) and (max-width:1366px){.site-header{gap:14px}.site-header .main-nav>ul{column-gap:14px}.site-header .header-actions{--header-action-gap:14px}}

/* v1.9.108: font-independent link arrows and readable home sections on phones. */
svg.kte-link-arrow-icon{display:inline-block;width:1em;height:1em;min-width:1em;flex:0 0 auto;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:980px){
 body.home{min-width:0}
 body.home .site-main #kte-ai-page-1 .kte-front__values h2{font-size:clamp(28px,8vw,40px)!important;line-height:1.08!important;hyphens:none;overflow-wrap:normal}
 body.home .site-main #kte-ai-page-1 .kte-front639__hero h2{font-size:clamp(30px,8.5vw,44px)!important;line-height:1.1!important;max-width:none;hyphens:none;overflow-wrap:normal}
 body.home .site-main #kte-ai-page-1>section[data-kte-layout-id][data-kte-layout-id][data-kte-layout-id]{margin-top:48px!important;margin-bottom:0!important}
 body.home .site-main #kte-ai-page-1 .kte-front639__chapter{padding-top:0}
 body.home .site-main #kte-ai-page-1 .kte-front639__hero-copy{padding:32px 24px}
 body.home .site-main #kte-ai-page-1 .kte-front639__button{max-width:100%;white-space:normal}
 body.home .site-main #kte-ai-page-1 .kte-latest-references__action{justify-content:flex-start;padding:0 12px}
}

/* v1.9.109: contact remains available inside the mobile navigation. */
.site-header .mobile-contact-item{display:none}
@media(max-width:1100px){.site-header .mobile-contact-item{display:block}.site-header .mobile-contact-link{margin-top:4px;border-top:1px solid rgba(255,255,255,.16)}}
/* Responsive fixes for ordinary content pages; existing post/reference layouts stay independent. */
@media(max-width:980px){
 body{min-width:0}
 body .site-main .kte-ai-page .work-hero h1{font-size:clamp(32px,7vw,48px)!important;line-height:1.1!important}
 body .site-main .kte-ai-page :is(.work-intro,.work-types,.work-process,.work-cases,.work-faq) h2{font-size:clamp(28px,6vw,40px)!important;line-height:1.15!important}
 body .site-main .kte-ai-page .contact-hero h1{font-size:clamp(32px,7vw,48px)!important;line-height:1.1!important}
 body .site-main .kte-ai-page .domicil-process__body h3{white-space:normal!important;overflow-wrap:break-word}
 body .site-main .kte-ai-page #ansogningsformular.career-application[data-kte-layout-id][data-kte-layout-id][data-kte-layout-id]{margin-top:48px!important}
}

/* v1.9.111: shared form buttons, accessible labels and document uploads. */
.kte-form-field[hidden]{display:none!important}
.kte-form-field .kte-form-label-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.kte-form-module .kte-form .kte-form-submit{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:11px!important;min-height:var(--button-height,52px)!important;padding:5px var(--button-padding-x,24px) 5px 5px!important;border:1px solid rgba(34,34,34,.08)!important;border-radius:var(--button-radius,999px)!important;background:var(--surface,#fff)!important;color:var(--text,#222)!important;font:inherit;font-weight:700;line-height:1.2;white-space:normal;text-align:left}
.kte-form-module .kte-form .kte-form-submit>.kte-form-submit-icon{display:grid!important;place-items:center!important;flex:0 0 calc(var(--button-height,52px) - 10px)!important;width:calc(var(--button-height,52px) - 10px)!important;height:calc(var(--button-height,52px) - 10px)!important;padding:0!important;margin:0!important;border-radius:50%!important;background:var(--button,var(--primary,#7f1520))!important;color:var(--button-text,#fff)!important}
.kte-form-submit-icon svg{display:block;width:18px;height:18px}
.kte-form-upload{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;padding:20px;border:1px dashed color-mix(in srgb,var(--primary,#7f1520) 35%,var(--line,#dedbd5));border-radius:18px;background:color-mix(in srgb,var(--surface,#fff) 94%,var(--primary,#7f1520));transition:border-color .2s,box-shadow .2s}
.kte-form-upload:focus-within{border-color:var(--primary,#7f1520);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#7f1520) 12%,transparent)}
.kte-form-upload-icon{box-sizing:border-box;width:40px;height:40px;padding:9px;border-radius:12px;background:color-mix(in srgb,var(--primary,#7f1520) 10%,var(--surface,#fff));color:var(--primary,#7f1520)}
.kte-form-upload-copy{font-size:14px;font-weight:700}
.kte-form-field .kte-form-upload input[type=file]{grid-column:1/-1;min-width:0;min-height:48px;padding:0;border:0;border-radius:8px;background:transparent;font:inherit;font-size:13px;cursor:pointer}
.kte-form-upload input[type=file]::file-selector-button{min-height:44px;margin:0 12px 0 0;padding:10px 16px;border:1px solid var(--line,#dedbd5);border-radius:10px;background:var(--surface,#fff);color:var(--text,#222);font:inherit;font-weight:700;cursor:pointer}
.kte-form-upload-selection{grid-column:1/-1;font-size:12px;line-height:1.5;overflow-wrap:anywhere;color:var(--muted,#686762)}
.kte-form-upload-selection:empty{display:none}
@media(max-width:760px){.kte-form-upload{padding:16px}}

/* v1.9.113: controls align per visible form row, including wrapped titles. */
.kte-form-field > :is(input,select,textarea,.kte-form-upload,.kte-form-check),
.kte-form-field > fieldset > .kte-form-choices{margin-top:var(--kte-form-align-offset,0px)!important}

/* v1.9.118: three navigation levels with separate desktop flyouts and mobile rows. */
@media(min-width:1101px){
  .main-nav li.has-children{position:relative}
  .main-nav>ul>li.has-children{display:grid;grid-template-columns:minmax(0,1fr) 26px;column-gap:3px;align-items:center}
  .main-nav>ul>li.has-children>a{grid-column:1;grid-row:1}
  .main-nav .mobile-submenu-toggle{display:grid;place-items:center;grid-column:2;grid-row:1;width:26px;height:32px;padding:0;border:0;border-radius:8px;color:inherit;background:transparent;cursor:pointer}
  .main-nav .mobile-submenu-toggle:hover,.main-nav .mobile-submenu-toggle:focus-visible{background:rgba(255,255,255,.1)}
  .main-nav .mobile-submenu-toggle>span:before{content:"";display:block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
  .main-nav ul ul{width:260px;min-width:220px;max-width:calc(100vw - 24px);margin:0;left:calc(-18px + var(--submenu-shift-x,0px));top:calc(100% - 1px);padding:10px;border-radius:14px;transform:none;transition:opacity .16s,visibility .16s;z-index:20}
  .main-nav ul ul li.has-children{display:grid;grid-template-columns:minmax(0,1fr) 30px;column-gap:2px;align-items:center;padding-bottom:0;margin-bottom:0}
  .main-nav ul ul li.has-children:after{display:none}
  .main-nav ul ul li>a{min-width:0;padding:10px 12px;border-radius:8px;line-height:1.4;overflow-wrap:anywhere}
  .main-nav ul ul li.has-children>a{grid-column:1;grid-row:1}
  .main-nav ul ul .mobile-submenu-toggle{width:30px;height:36px}
  .main-nav ul ul .mobile-submenu-toggle>span:before{transform:rotate(-45deg)}
  .main-nav ul ul ul{top:var(--submenu-shift-y,0px);left:calc(100% + 20px);max-height:calc(100svh - 24px);overflow-y:auto;overscroll-behavior:contain;z-index:21}
  .main-nav ul ul li.submenu-flip>ul{right:calc(100% + 20px);left:auto}
  .main-nav ul ul li.submenu-flip>.mobile-submenu-toggle>span:before{transform:rotate(135deg)}
  .main-nav.has-menu-controls li.has-children>ul{display:none;visibility:hidden;opacity:0;pointer-events:none;transform:none}
  .main-nav.has-menu-controls li.has-children.submenu-open>ul{display:block;visibility:visible;opacity:1;pointer-events:auto}
}
@media(max-width:1100px){
  .main-nav li.has-children{grid-template-columns:minmax(0,1fr) 44px;column-gap:8px}
  .main-nav li.has-children>a{grid-column:1!important;grid-row:1!important;align-self:center}
  .main-nav .mobile-submenu-toggle{grid-column:2!important;grid-row:1!important;width:44px;height:44px;align-self:start}
  .main-nav li.has-children>ul{grid-column:1/-1!important;grid-row:2!important;left:auto!important;right:auto!important;top:auto!important;max-height:none!important;overflow:visible!important}
  .main-nav ul ul li.has-children>a{width:auto!important;min-height:44px}
  .main-nav ul ul ul{border-left:1px solid rgba(255,255,255,.18)!important;padding-left:14px!important;margin-left:2px!important}
  .main-nav ul ul ul a{font-size:14px!important;color:color-mix(in srgb,var(--header-text) 86%,transparent)}
  .main-nav ul ul li:not(.has-children)>a{min-height:44px}
  .main-nav ul ul .mobile-submenu-toggle>span:before{font-size:24px}
}

/* v1.9.121: no first-level desktop chevrons; keep keyboard submenu controls. */
@media(min-width:1101px){
 .main-nav>ul>li.has-children{grid-template-columns:minmax(0,1fr);column-gap:0}
 .main-nav>ul>li.has-children>.mobile-submenu-toggle{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;grid-column:auto;grid-row:auto}
 .main-nav>ul>li.has-children>.mobile-submenu-toggle:focus-visible{right:0;top:calc(100% + 4px);width:28px;height:28px;clip-path:none;overflow:visible;z-index:22;background:var(--header-bg,#222);outline:2px solid var(--header-text,#fff);outline-offset:2px}
 .main-nav>ul>li.has-children>.mobile-submenu-toggle>span:before{display:none}
}

@media(min-width:1101px){.main-nav>ul>li.has-children>.mobile-submenu-toggle:focus-visible:after{content:"+";font-size:18px;line-height:1}}

/* v1.9.132: a shared, stable shortcut row and a compact contact disclosure. */
.kte-floating-tools{--dock-size:max(44px,var(--to-top-size,52px));position:fixed;z-index:80;bottom:max(24px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:10px;pointer-events:none}
.kte-floating-tools.position-right{right:max(24px,env(safe-area-inset-right))}
.kte-floating-tools.position-left{left:max(24px,env(safe-area-inset-left))}
.kte-floating-tools[hidden],.kte-contact-dock [hidden]{display:none!important}
.kte-floating-tools .to-top{position:relative;inset:auto;flex:0 0 var(--dock-size);width:var(--dock-size);height:var(--dock-size);pointer-events:auto}
.kte-contact-dock{pointer-events:auto;font-family:var(--font,Arial,sans-serif)}
.kte-contact-trigger{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:126px;min-height:var(--dock-size);padding:8px 19px 8px 10px;border:1px solid rgba(255,255,255,.12);border-radius:99px;background:var(--button,#7f1520);color:#fff;text-decoration:none;font:inherit;font-size:14px;font-weight:650;line-height:1.2;box-shadow:0 8px 24px rgba(0,0,0,.18);cursor:pointer;transition:background .18s ease,box-shadow .18s ease}
.kte-contact-trigger:hover{background:var(--button-hover,#651019);color:#fff;box-shadow:0 10px 28px rgba(0,0,0,.22)}
.kte-contact-trigger-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--button,#7f1520)}
.kte-contact-trigger-icon svg,.kte-contact-trigger>svg{width:19px;height:19px}
.kte-contact-close-icon,.kte-contact-dock.is-open .kte-contact-open-icon{display:none}
.kte-contact-dock.is-open .kte-contact-close-icon{display:block}
.kte-contact-panel{position:absolute;right:0;bottom:calc(100% + 12px);width:288px;max-width:calc(100vw - 32px);max-height:calc(100vh - var(--dock-size) - 64px);max-height:calc(100dvh - var(--dock-size) - 64px);overflow-y:auto;overscroll-behavior:contain;padding:16px;border:1px solid #e5e1dc;border-radius:24px;background:#fff;color:#222;box-shadow:0 18px 55px rgba(0,0,0,.2);animation:kte-contact-appear .18s ease both}
.position-left .kte-contact-panel{left:0;right:auto}
.kte-contact-panel-heading{display:grid;gap:5px;padding:3px 4px 16px;line-height:1.35}
.kte-contact-panel-heading strong{font-size:17px;font-weight:650;color:#222}
.kte-contact-panel-heading>span{font-size:12px;color:#686762}
.kte-contact-page-link,.kte-contact-social-link{display:flex;align-items:center;gap:12px;min-height:48px;border-radius:14px;text-decoration:none;font-size:14px;font-weight:600;line-height:1.3}
.kte-contact-page-link{justify-content:space-between;margin-bottom:10px;padding:8px 10px 8px 16px;background:var(--button,#7f1520);color:#fff}
.kte-contact-page-link:hover{background:var(--button-hover,#651019);color:#fff}
.kte-contact-link-arrow{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--button,#7f1520)}
.kte-contact-link-arrow svg{width:18px;height:18px}
.kte-contact-social-link{padding:7px 10px;color:#222;transition:background .18s ease}
.kte-contact-social-link:hover{background:#f5f3ef;color:var(--button,#7f1520)}
.kte-contact-social-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:10px;background:#f5f3ef;color:var(--button,#7f1520)}
.kte-contact-social-icon svg{width:18px;height:18px}
.kte-contact-external-icon{margin-left:auto;width:16px;height:16px;color:#686762}
.kte-contact-dock a:focus-visible,.kte-contact-dock button:focus-visible,.kte-floating-tools .to-top:focus-visible{outline:3px solid var(--focus,#b84d58);outline-offset:3px}
body.menu-open .kte-floating-tools{visibility:hidden}
@keyframes kte-contact-appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:620px){.kte-floating-tools{bottom:max(12px,env(safe-area-inset-bottom));gap:8px}.kte-floating-tools.position-right{right:max(12px,env(safe-area-inset-right))}.kte-floating-tools.position-left{left:max(12px,env(safe-area-inset-left))}.kte-contact-trigger{padding-right:16px}.kte-contact-panel{width:280px;border-radius:22px}}
@media(prefers-reduced-motion:reduce){.kte-contact-panel{animation:none}.kte-contact-trigger,.kte-contact-social-link{transition:none}}
@media print{.kte-floating-tools{display:none!important}}

/* v1.9.133: a quiet visual hint while mouse hover pauses autoplay. */
.slider-pause-hint{position:absolute;z-index:6;top:24px;right:24px;display:grid;place-items:center;width:30px;height:30px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(0,0,0,.2);color:rgba(255,255,255,.88);backdrop-filter:blur(6px);pointer-events:none;opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease}
.slider-pause-hint svg{width:14px;height:14px}
.hero-slider.is-hover-paused .slider-pause-hint{opacity:1;visibility:visible}
@media(max-width:620px){.slider-pause-hint{top:16px;right:16px}}
@media(prefers-reduced-motion:reduce){.slider-pause-hint{transition:none}}
/* v1.9.138: shared contact address and compact two-column mobile footer. */
.hero-building-link{transition:background .2s ease,border-color .2s ease}
.kte-page-typography .site-main .kte-ai-page .contact-hero__actions{gap:10px!important}
.kte-page-typography .site-main .kte-ai-page .contact-hero__actions .contact-button{gap:8px!important;padding-right:16px!important;font-size:13px!important}
.kte-page-typography .site-main .kte-ai-page .contact-hero__actions .contact-team-shortcut{margin:0!important;gap:10px!important;min-height:54px!important}
.kte-page-typography .site-main .kte-ai-page .contact-hero__actions .contact-team-shortcut__portraits img{width:34px!important;height:34px!important;flex:0 0 34px!important}
@media(min-width:761px) and (max-width:1280px){
 .kte-page-typography .site-main .kte-ai-page .contact-location__content{box-sizing:border-box;min-width:0;padding:32px!important}
 .kte-page-typography .site-main .kte-ai-page :is(.contact-detail,.contact-charging){box-sizing:border-box;min-width:0;padding:20px!important;gap:12px!important;grid-template-columns:40px minmax(0,1fr) 16px!important}
 .kte-page-typography .site-main .kte-ai-page :is(.contact-detail,.contact-charging)>span{width:40px!important;height:40px!important}
 .kte-page-typography .site-main .kte-ai-page :is(.contact-detail,.contact-charging)>div{min-width:0;overflow-wrap:anywhere}
}
.kte-page-typography .site-main .kte-contact-hero-address{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px;margin-top:auto;padding-top:28px;color:#fff;font-size:13px;line-height:1.55;text-align:left}
.kte-page-typography .site-main .kte-contact-hero-address a{color:inherit;text-decoration:underline;text-decoration-color:rgba(255,255,255,.45);text-underline-offset:3px;overflow-wrap:anywhere}
.kte-page-typography .site-main .kte-contact-hero-address a:hover{color:#fff;text-decoration-color:currentColor}
.kte-page-typography .site-main .kte-contact-hero-address a:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:3px}
@media(max-width:760px){
 .site-footer{min-height:0;padding:32px 18px 24px}
 .site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:28px 20px;padding:24px 0 28px}
 .site-footer .footer-grid>div{min-width:0}
 .site-footer .footer-about{grid-column:auto}
 .site-footer .footer-about img{width:min(120px,100%)!important;height:auto!important;max-height:90px!important;margin:0;object-position:left top}
 .site-footer .footer-grid h3{font-size:12px;line-height:1.4;letter-spacing:.08em;margin-bottom:12px}
 .site-footer .footer-grid :is(a,address){font-size:13px;line-height:1.55;overflow-wrap:anywhere}
 .site-footer .footer-image-links{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:12px;padding:24px 0}
 .site-footer .footer-image-link{min-width:0;min-height:60px;grid-column:auto!important}
 .site-footer .footer-image-link img{max-width:100%;max-height:60px;width:auto;height:auto}
 .site-footer .footer-bottom{align-items:flex-start;gap:12px}
 .site-footer .footer-bottom p{font-size:11px;line-height:1.6;overflow-wrap:anywhere}
 .site-footer .footer-bottom>div{flex-wrap:wrap;gap:10px 16px;font-size:12px}
 .kte-page-typography .site-main .kte-ai-page .contact-location__content{box-sizing:border-box;min-width:0;padding-inline:16px!important}
 .kte-page-typography .site-main .kte-ai-page :is(.contact-detail,.contact-charging){box-sizing:border-box;padding:16px!important;gap:10px!important;grid-template-columns:40px minmax(0,1fr) 16px!important}
 .kte-page-typography .site-main .kte-ai-page :is(.contact-detail,.contact-charging)>span{width:40px!important;height:40px!important}
 .kte-page-typography .site-main .kte-ai-page :is(.contact-detail,.contact-charging)>div{min-width:0;overflow-wrap:anywhere}
 .kte-page-typography .site-main .kte-contact-hero-address{gap:4px 6px;padding-top:24px;font-size:12px}
}
/* v1.9.140: DGNB overview image fills its existing image box. */
#main .kte-ai-page .kte-cert--dgnb .kte-cert__figure .kte-cert__overview-image{object-fit:cover}

/* v1.9.144: shadows belong outside the page wrapper, image crops inside the hero. */
.site-main>.kte-ai-page{min-width:0;max-width:100%;overflow:visible!important}
.site-main :is(.hero-slider,.page-hero,.landing-hero,.department-hero,.reference-hero,.kte-hero,.kte-sustainability__hero,.esg-hero){border-width:0!important}
.site-main .kte-ai-page .contact-location{overflow:visible!important}
.site-main .kte-ai-page .contact-location__grid{box-sizing:border-box;min-width:0}
.site-main .kte-ai-page .contact-location__content{box-sizing:border-box;width:100%;min-width:0;padding-inline:clamp(24px,2vw,40px)!important}
.site-main .kte-ai-page .contact-location__content :is(.contact-detail,.contact-charging){box-sizing:border-box;min-width:0;width:100%}
.site-main .kte-ai-page .contact-hero__panel{margin:0!important;border-radius:0!important}
.site-main .kte-ai-page .invoice-hero::before{left:auto!important;right:0!important;max-width:100%}
.site-main .kte-ai-page .invoice-hero__image-wrap::after{right:0!important}
@media(max-width:760px){.kte-page-typography .site-main .kte-ai-page .contact-location__content{padding-inline:20px!important}}
