:root{--navy:#333b58;--navy-alt:#343b58;--text:#3b3a3a;--white:#ffffff;--page-max:980px;--accent-green:#1b6e34}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:clip}body{font-family:"Barlow","Barlow Fallback","Segoe UI",sans-serif;color:var(--text);line-height:1.6;overflow-x:clip;background-color:var(--white);background-image:url("../images/hero-bg-mobile.webp");background-position:center top;background-size:cover;background-repeat:no-repeat;background-attachment:scroll}@supports (background-image:image-set(url("../images/hero-bg-mobile.webp") type("image/webp"))){body{background-image:image-set( url("../images/hero-bg-mobile.webp") type("image/webp"),url("../images/hero-bg.jpg") type("image/jpeg") )}}@media (min-width:901px){body{background-image:url("../images/hero-bg.jpg");background-attachment:fixed}@supports (background-image:image-set(url("../images/hero-bg.webp") type("image/webp"))){body{background-image:image-set( url("../images/hero-bg.webp") type("image/webp"),url("../images/hero-bg.jpg") type("image/jpeg") )}}}main,.site-header,.site-footer,.about-strip{max-width:100%}img{max-width:100%;height:auto;display:block}picture{display:block;max-width:100%}a{color:var(--navy)}a:hover{text-decoration:underline}.page-wrap{width:min(var(--page-max),calc(100% - 2rem));margin:0 auto}.page-wrap--wide{width:min(1100px,calc(100% - 1.5rem))}.site-header{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid rgba(51,59,88,0.12)}.header-inner{width:min(1100px,calc(100% - 2rem));margin:0 auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:0.65rem 0}.logo img{height:54px;width:auto}.main-nav{justify-self:center}.main-nav ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:0.35rem 1.75rem}.main-nav a{font-family:"Barlow Condensed","Barlow Condensed Fallback","Barlow",sans-serif;text-transform:uppercase;letter-spacing:0.08em;font-size:0.95rem;font-weight:600;color:var(--navy);text-decoration:none}.main-nav a:hover{color:var(--navy-alt)}.header-phone{font-family:"Barlow Condensed","Barlow Condensed Fallback",sans-serif;color:var(--navy);white-space:nowrap;text-decoration:none;display:inline-flex;flex-direction:column;align-items:flex-end;line-height:1.15}.header-phone:hover{color:var(--navy-alt);text-decoration:none}.header-phone__label{color:var(--accent-green);font-weight:700;font-size:0.75rem;letter-spacing:0.06em;text-transform:uppercase}.header-phone__number{font-weight:700;font-size:1rem}.nav-toggle{display:none;border:0;background:var(--navy);color:#fff;padding:0.5rem 0.75rem;border-radius:4px;cursor:pointer;font:inherit}.velkommen{padding:4.5rem 0 2.5rem}.hero-headlines{text-align:center;margin-bottom:1.25rem;max-width:100%;min-height:clamp(3.4rem,12vw,8rem)}.hero-line{font-family:"Barlow Condensed","Barlow Condensed Fallback","Barlow",sans-serif;font-size:clamp(1.6rem,6vw,3.75rem);line-height:1.05;text-transform:uppercase;letter-spacing:0.02em;color:var(--navy);margin-bottom:0.35rem}.hero-line span{display:inline-block;background:var(--white);padding:0.08em 0.22em;max-width:100%}.hero-intro{margin-top:1.75rem;text-align:left;font-size:1.05rem;color:var(--text)}.hero-intro p{display:inline-block;background:rgba(255,255,255,0.88);padding:0.45rem 0.65rem;max-width:100%;line-height:1.5}.section-block{padding:3.5rem 0;background:rgba(255,255,255,0.92);overflow-x:clip}.section-block--white{background:rgba(255,255,255,0.97)}.section-heading{font-family:"Barlow Condensed","Barlow Condensed Fallback",sans-serif;color:var(--navy);font-size:clamp(1.75rem,3vw,2.35rem);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:1.5rem}.body-text{font-size:1rem;color:var(--navy-alt);margin-bottom:1.25rem;max-width:860px}.quote{font-family:"Barlow Condensed","Barlow Condensed Fallback",sans-serif;font-style:italic;color:var(--navy-alt);font-size:1.05rem;margin-top:1.5rem}.service-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:stretch;margin:2rem 0}.service-row--reverse .service-photo{order:2}.service-row--reverse .service-copy{order:1}.service-photo img{width:100%;height:100%;min-height:220px;object-fit:cover}.service-copy{background:rgba(255,255,255,0.95);border:1px solid rgba(51,59,88,0.1);padding:1.5rem;display:flex;flex-direction:column;justify-content:center}.service-copy h3{font-family:"Barlow Condensed","Barlow Condensed Fallback",sans-serif;color:var(--navy);text-transform:uppercase;letter-spacing:0.05em;font-size:1.05rem;margin-bottom:0.75rem}.service-copy p{color:var(--navy-alt);font-size:0.95rem}.about-strip{background:var(--navy);color:var(--white)}.about-strip__grid{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.about-strip__grid div{font-family:"Barlow Condensed","Barlow Condensed Fallback",sans-serif;text-transform:uppercase;letter-spacing:0.06em;font-size:clamp(0.85rem,1.8vw,1.15rem);padding:1.35rem 0.75rem;border-right:1px solid rgba(255,255,255,0.15)}.about-strip__grid div:last-child{border-right:0}.referanser-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%}.referanser-card{position:relative;display:block;width:100%;height:200px;padding:0;border:0;background:#ddd;cursor:zoom-in;overflow:hidden;text-align:left}.referanser-card img{width:100%;height:100%;max-width:none;object-fit:cover;transition:transform 0.35s ease}.referanser-card__caption{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:0.75rem;text-align:center;font-family:"Barlow Condensed","Barlow Condensed Fallback",sans-serif;text-transform:uppercase;letter-spacing:0.05em;font-size:0.88rem;line-height:1.25;color:var(--white);background:rgba(51,59,88,0.72);opacity:0;transition:opacity 0.25s ease;pointer-events:none}.referanser-card:hover img,.referanser-card:focus-visible img{transform:scale(1.03)}.referanser-card:hover .referanser-card__caption,.referanser-card:focus-visible .referanser-card__caption{opacity:1}.referanser-card:focus-visible{outline:3px solid var(--navy);outline-offset:2px}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.lightbox__backdrop{position:absolute;inset:0;background:rgba(20,24,36,0.88)}.lightbox__dialog{position:relative;z-index:1;width:min(960px,100%);max-height:calc(100vh - 2rem);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:0.5rem}.lightbox__figure{margin:0;min-width:0}.lightbox__image{width:100%;max-height:calc(100vh - 8rem);object-fit:contain;background:#111}.lightbox__caption{margin-top:0.75rem;text-align:center;font-family:"Barlow Condensed","Barlow Condensed Fallback",sans-serif;text-transform:uppercase;letter-spacing:0.05em;color:var(--white);font-size:1rem}.lightbox__close,.lightbox__nav{border:0;background:rgba(255,255,255,0.12);color:var(--white);cursor:pointer;font-family:inherit;line-height:1}.lightbox__close{position:absolute;top:-0.25rem;right:0;width:2.5rem;height:2.5rem;border-radius:50%;font-size:1.75rem}.lightbox__nav{width:2.75rem;height:2.75rem;border-radius:50%;font-size:2rem;flex-shrink:0}.lightbox__close:hover,.lightbox__nav:hover{background:rgba(255,255,255,0.22)}body.lightbox-open{overflow:hidden}.suppliers-viewport{overflow:hidden;max-width:100%}.suppliers-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem;align-items:center}.suppliers-set{display:contents}.suppliers-set--clone{display:none}.suppliers-set img{max-height:72px;width:auto;max-width:100%;margin:0 auto;object-fit:contain}@keyframes suppliers-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}.contact-grid{display:grid;grid-template-columns:1.2fr 0.8fr;gap:2.5rem}.contact-list p{margin-bottom:0.85rem}.contact-list strong{color:var(--navy);display:block}.site-footer{background:var(--navy);color:#dbe0ef;padding:1.75rem 0;font-size:0.9rem}.footer-inner{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}@media (max-width:900px){.header-inner{grid-template-columns:auto 1fr auto;align-items:center}.logo{grid-column:1;grid-row:1}.header-phone{grid-column:3;grid-row:1;justify-self:end}.header-phone__number{font-size:1.05rem}.main-nav{grid-column:1 / -1;grid-row:2;width:100%;background:#fff}.service-row,.service-row--reverse{grid-template-columns:1fr}.service-row--reverse .service-photo,.service-row--reverse .service-copy{order:unset}.about-strip__grid{grid-template-columns:1fr 1fr}.about-strip__grid div:nth-child(2){border-right:0}.referanser-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.suppliers-viewport{mask-image:linear-gradient( 90deg,transparent,#000 6%,#000 94%,transparent );-webkit-mask-image:linear-gradient( 90deg,transparent,#000 6%,#000 94%,transparent )}.suppliers-track{display:flex;width:max-content;animation:suppliers-scroll 28s linear infinite}.suppliers-set,.suppliers-set--clone{display:flex;align-items:center;gap:2.5rem;flex:0 0 auto}.suppliers-set img{flex:0 0 auto;max-height:56px;margin:0}.contact-grid{grid-template-columns:1fr}}@media (max-width:640px){.header-inner{position:relative}.nav-toggle{display:block;grid-column:3;grid-row:1}.header-phone{grid-column:2;grid-row:1;justify-self:end;min-width:0;padding-right:0.35rem}.header-phone__label{font-size:0.7rem}.header-phone__number{font-size:1.08rem;letter-spacing:0.01em}.logo img{height:46px}.main-nav{display:none;position:absolute;left:0;right:0;top:100%;z-index:101;width:100%;background:#fff;padding:0.75rem 0 1rem;border-bottom:1px solid rgba(51,59,88,0.12);box-shadow:0 10px 24px rgba(51,59,88,0.12)}.main-nav.open{display:block}.main-nav ul{width:min(1100px,calc(100% - 2rem));margin:0 auto;flex-direction:column;align-items:flex-start;gap:0.75rem;padding-top:0.25rem}.hero-intro{margin-top:1.25rem}.referanser-grid{grid-template-columns:minmax(0,1fr)}.referanser-card{height:220px}.referanser-card__caption{opacity:1;background:linear-gradient(transparent 45%,rgba(51,59,88,0.82));align-items:flex-end;padding-bottom:1rem}.lightbox__dialog{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;gap:0.75rem}.lightbox__nav--prev,.lightbox__nav--next{position:absolute;top:50%;transform:translateY(-50%);z-index:2}.lightbox__nav--prev{left:0.25rem}.lightbox__nav--next{right:0.25rem}.about-strip__grid{grid-template-columns:1fr}.about-strip__grid div{border-right:0;border-bottom:1px solid rgba(255,255,255,0.15)}}@media (prefers-reduced-motion:reduce){.suppliers-track{animation:none}}
