@font-face{font-family:"Trade Barlow";src:url(type/trades-barlow-semibold.ttf);font-weight:600;font-display:swap}
body.trade {
  --gutter: clamp(22px,4.3vw,88px);
  --rule: color-mix(in srgb,var(--ink) 24%,var(--paper));
  background: var(--paper);
  color: var(--ink);
  font: 400 16px/1.55 "DM Sans",Arial,sans-serif;
}
.trade figure,.trade h1,.trade h2,.trade p{margin:0}
.trade img{display:block;width:100%;object-fit:cover}
.trade button{cursor:pointer;font:inherit}
.trade section{scroll-margin:20px}
.t-header,.t-meta,.t-section-title,.t-card,.t-controls,.t-header nav{display:flex;align-items:center}
.t-header{justify-content:space-between;gap:20px;margin:0 var(--gutter);min-height:82px;border-bottom:1px solid var(--rule)}
.t-header nav{gap:clamp(10px,2vw,40px);font-size:14px}
.t-logo{font-size:clamp(22px,2.5vw,52px);font-weight:680;line-height:1;letter-spacing:-.07em}
.t-logo:hover{text-decoration:none}
.trade .t-logo{display:block;flex:0 1 auto;max-width:clamp(150px,21vw,310px)}
.trade .t-logo img{height:64px;width:auto;max-width:100%;object-fit:contain;object-position:left center}
.trade .t-foot-logo{display:block;width:max-content;max-width:100%;margin-bottom:9px}
.trade .t-foot-logo img{height:56px;width:auto;max-width:235px;object-fit:contain;object-position:left center}
.t-cta{padding:11px 17px;background:var(--brand);color:white;font-size:14px}
.t-menu{background:none;color:var(--ink);border:0;padding:8px 0;white-space:nowrap}
.t-menu span{font-size:17px;margin-left:6px}
.t-hero{padding:0 var(--gutter)}
.t-narrative h1{font-size:clamp(56px,6.9vw,125px);letter-spacing:-.068em;line-height:.99;font-weight:550;overflow-wrap:anywhere;text-wrap:balance}
.t-narrative p{max-width:45ch;font-size:clamp(16px,1.27vw,22px)}
.t-meta{gap:16px;flex-wrap:wrap;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:650}
.t-meta span+span{border-left:1px solid currentColor;padding-left:16px}
.t-visual{position:relative}
.t-visual img{height:100%;min-height:0}
.t-visual figcaption,.t-pair figcaption,.t-gallery figcaption{font-size:13px;line-height:1.4}
.t-visual figcaption{position:absolute;bottom:16px;right:16px;padding:5px 9px;background:#15221bcc;color:#fff}
.folio .t-narrative{display:grid;grid-template-columns:2fr 1fr;gap:12px 6vw;align-items:end;padding:26px 0}
.folio .t-meta{grid-column:1/-1}
.folio .t-narrative p{justify-self:end;max-width:33ch}
.folio .t-visual{height:clamp(365px,40vw,690px)}
.folio .t-visual img{object-position:center 29%}
.cinema .t-hero{position:relative;display:flex;align-items:end;min-height:clamp(565px,49vw,825px);margin:0;isolation:isolate;padding:var(--gutter);color:white}
.cinema .t-visual{position:absolute;inset:0;z-index:-2}
.cinema .t-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#091411dc 0%,#091411a6 34%,#09141124 73%),linear-gradient(transparent 48%,#0c191357)}
.cinema .t-visual figcaption{z-index:1}
.cinema .t-narrative{max-width:56%;padding-bottom:1vw}
.cinema .t-meta{margin-bottom:32px}
.cinema .t-narrative p{margin-top:22px;color:#f4f5ed}
.studio .t-hero,.edition .t-hero{display:grid;grid-template-columns:44% 56%;margin:28px var(--gutter) 0;padding:0;min-height:clamp(478px,39vw,695px)}
.studio .t-narrative,.edition .t-narrative{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:24px;padding:clamp(26px,4vw,75px)}
.studio .t-meta,.edition .t-meta{margin-bottom:auto}
.studio .t-narrative{background:var(--ink);color:var(--paper)}
.studio .t-narrative h1,.edition .t-narrative h1{font-size:clamp(49px,5.65vw,99px)}
.studio .t-narrative p,.edition .t-narrative p{margin-bottom:auto}
.studio .t-visual img,.edition .t-visual img{position:absolute;inset:0}
.edition .t-hero{grid-template-columns:51% 49%;border-bottom:1px solid var(--rule);padding-bottom:24px}
.edition .t-narrative{grid-column:2;grid-row:1;padding-right:0}
.edition .t-narrative h1,.edition .t-feature h2,.edition .t-section-title h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.056em;font-weight:400}
.edition .t-visual{grid-column:1;grid-row:1}
.t-inner .t-narrative h1{font-size:clamp(41px,5.3vw,86px)}
.t-inner.folio .t-visual{height:clamp(280px,24vw,455px)}
.t-inner.cinema .t-hero{min-height:clamp(380px,33vw,560px)}
.t-inner.studio .t-hero,.t-inner.edition .t-hero{min-height:clamp(345px,30vw,500px)}
.t-projects,.t-feature,.t-reading,.t-gallery{margin:clamp(52px,5.65vw,110px) var(--gutter)}
.t-section-title{align-items:end;justify-content:space-between;gap:6vw;margin-bottom:26px}
.t-section-title h2,.t-feature h2,.t-gallery h2{font-size:clamp(33px,3.7vw,66px);line-height:1.03;letter-spacing:-.056em;font-weight:500}
.t-section-title p,.t-feature>div>p{max-width:45ch}
.t-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--rule);gap:0 22px}
.t-card{display:grid;grid-template-columns:74px 1fr auto;gap:13px;min-width:0;padding:18px 0;border-bottom:1px solid var(--rule)}
.t-card img{width:74px;height:64px}
.t-card span{font-size:clamp(17px,1.45vw,26px);line-height:1.2;letter-spacing:-.025em}
.t-card b{font-weight:400}
.t-textlinks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:0 24px;margin-top:12px}
.t-textlink{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--rule)}
.t-textlink:after{content:"↗";font-size:14px}
.t-index:empty,.t-textlinks:empty{display:none}
.t-home.edition .t-card,.t-home.studio .t-card{grid-template-columns:1fr auto}
.t-home.edition .t-card img,.t-home.studio .t-card img{grid-column:1/-1;width:100%;height:auto;aspect-ratio:1.9}
.t-feature{display:grid;gap:26px}
.t-feature>div:first-child{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:12px 7vw}
.t-feature small{grid-column:1/-1;text-transform:uppercase;letter-spacing:.12em;font-size:10px}
.t-pair{display:grid;grid-template-columns:1.75fr 1fr;gap:18px}
.t-pair img{height:clamp(260px,32vw,530px)}
.t-pair figcaption{margin-top:8px}
.t-reading{max-width:1000px;margin-inline:auto;padding-inline:var(--gutter)}
.t-reading .t-block{margin:30px 0}
.t-reading .t-block h2,.t-reading .reading-page h2{font-size:clamp(24px,2.1vw,40px);letter-spacing:-.04em;line-height:1.15;margin:0 0 12px}
.t-reading p{margin:10px 0;font-size:clamp(16px,1.25vw,21px);max-width:69ch}
.t-reading details{margin:12px 0;padding:14px 0;border-block:1px solid var(--rule)}
.t-reading summary{cursor:pointer;font-weight:600}
.t-reading .t-person{float:left;width:90px;height:106px;margin:0 20px 12px 0}
.t-block{display:flow-root}
.t-reading .reading-page{background:transparent;color:inherit;padding:0}
.trade-bilverksted .t-logo,.trade-anlegg .t-logo{font-family:"Trade Barlow",Arial,sans-serif;letter-spacing:-.026em;text-transform:uppercase}
.trade-bilverksted .t-narrative h1,.trade-anlegg.studio .t-narrative h1{font-family:"Trade Barlow",Arial,sans-serif;font-weight:600;letter-spacing:-.032em}
.trade-renhold.folio .t-narrative h1,.trade-rorlegger.folio .t-narrative h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.058em}
.trade-elektriker .t-meta{font-family:Consolas,monospace;font-size:12px;letter-spacing:.06em}
.t-survey,.t-service-desk,.t-lightplan,.t-water,.t-clean{margin:clamp(40px,5vw,84px) var(--gutter)}
.t-survey h2,.t-service-desk h2,.t-lightplan h2,.t-water h2,.t-clean h2{font-size:clamp(30px,3vw,54px);line-height:1.1;letter-spacing:-.054em;font-weight:500;margin-bottom:18px}
.t-survey>div,.t-lightplan>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.t-survey>div>div{padding-top:12px;border-top:2px solid var(--rule)}
.t-survey h3{font-size:20px;margin:6px 0}.t-survey p,.t-clean p,.t-water p{max-width:44ch}
.t-service-desk{display:flex;align-items:start;justify-content:space-between;gap:30px;padding:25px 0;border-block:1px solid var(--rule)}
.t-service-desk h2{font-family:"Trade Barlow",Arial,sans-serif}.t-service-desk>div{display:grid;gap:12px;min-width:42%}.t-service-desk a{padding-bottom:8px;border-bottom:1px solid var(--rule)}.t-service-desk a:after{content:"↗";float:right}
.t-lightplan img{aspect-ratio:3/2}.t-lightplan figcaption{padding:9px 0;border-bottom:1px solid var(--rule)}
.t-water,.t-clean{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}
.t-water img{aspect-ratio:1.8}.t-clean-places details{border-bottom:1px solid var(--rule);padding:13px 0}.t-clean-places summary{cursor:pointer;font-size:19px}.t-clean-places p{margin:9px 0}
.t-gallery{max-width:1160px}
.t-gallery figure{margin-top:20px}
.t-gallery figure img{height:clamp(250px,37vw,550px)}
.t-gallery figcaption{padding:10px 0;border-bottom:1px solid var(--rule)}
.t-controls{gap:4px;flex-wrap:wrap;margin-top:9px}
.t-controls button{min-width:44px;min-height:44px;padding:5px 10px;border:1px solid var(--rule);color:inherit;background:none}
.t-controls button[aria-pressed=true]{background:var(--brand);color:white}
.t-fragment{display:block;scroll-margin:15px}
.trade .demo-return{width:auto;height:auto;border:1px solid #c0cdc4;background:#fcfff8;box-shadow:0 2px 12px #13271e25;right:12px;bottom:12px;padding:6px 12px;display:flex;gap:6px;flex-direction:row;color:#264a36;font-size:12px}
.trade .demo-return::before,.trade .demo-return::after{display:none}
.trade .t-cta{border:0;border-radius:0}
.t-brief{background:var(--paper);color:var(--ink);border:0;padding:32px;width:min(460px,calc(100% - 32px));max-height:90dvh}
.t-brief::backdrop{background:#101c17aa}
.t-brief h2{font-size:32px;line-height:1.05;margin:8px 0 14px;letter-spacing:-.04em}
.t-brief p{font-size:15px;max-width:35ch}
.t-brief form,.t-brief label{display:grid;gap:8px}
.t-brief form{margin-top:20px;gap:16px}
.t-brief input,.t-brief select{width:100%;font:inherit;padding:9px;border:1px solid #819083;color:#192820;background:white}
.t-brief .t-dismiss{float:right;border:0;background:transparent;color:inherit;font-size:24px}
.trade footer{background:var(--brand);padding:42px var(--gutter);gap:24px}
.trade footer a{font-size:15px}
.trade .drawer{background:var(--paper);color:var(--ink)}
.trade .drawer .close{color:inherit}
.trade .enquiry{background:color-mix(in srgb,var(--paper) 87%,var(--ink));color:var(--ink);padding:38px var(--gutter)}
.trade .demo-enquiry button{background:var(--brand)}
.trade .enquiry h2{margin-bottom:12px}
@media(max-width:920px){.t-header nav>a:not(.t-cta){display:none}.t-index{grid-template-columns:repeat(2,minmax(0,1fr))}.studio .t-narrative,.edition .t-narrative{padding-inline:26px}}
@media(max-width:650px){
 .trade .t-logo{max-width:42%}.trade .t-logo img{height:48px}.trade footer{padding-bottom:60px}
 .t-survey>div,.t-lightplan>div,.t-water,.t-clean{grid-template-columns:1fr}.t-service-desk{display:block}.t-lightplan>div{gap:26px}.t-lightplan img{aspect-ratio:2.1}
 .t-header{min-height:65px;gap:9px}.t-header nav{gap:10px}.t-header .t-cta{font-size:12px;padding:8px}.t-menu{font-size:13px!important}.t-menu span{display:none}
 .t-logo{font-size:clamp(18px,5.5vw,28px);max-width:40%}
 .t-narrative h1,.studio .t-narrative h1,.edition .t-narrative h1{font-size:clamp(45px,10.8vw,68px)}
 .t-inner .t-narrative h1{font-size:clamp(39px,9.4vw,58px)}
 .t-narrative p{font-size:16px}.t-meta{font-size:9px;gap:10px}
 .folio .t-narrative{display:block;padding:22px 0}.folio .t-meta{margin-bottom:18px}.folio .t-narrative p{justify-self:auto;margin-top:14px}
 .folio .t-visual{height:clamp(270px,75vw,420px)}.folio .t-visual img{object-position:66% center}
 .cinema .t-hero{min-height:460px}.cinema .t-narrative{max-width:95%;padding-bottom:16px}.cinema .t-meta{margin-bottom:22px}.cinema .t-visual:after{background:linear-gradient(0deg,#07130ff0 0%,#07130f9c 56%,#07130f18 100%)}
 .studio .t-hero,.edition .t-hero{display:flex;flex-direction:column;margin:18px var(--gutter) 0;min-height:0}
 .studio .t-narrative,.edition .t-narrative{display:block;padding:26px 20px}.edition .t-narrative{padding:10px 0 20px}
 .studio .t-meta,.edition .t-meta{margin-bottom:18px}.studio .t-narrative p,.edition .t-narrative p{margin-top:15px}
 .studio .t-visual,.edition .t-visual{height:clamp(235px,66vw,370px)}.t-visual figcaption{bottom:8px;right:8px;font-size:11px}
 .t-section-title,.t-feature>div:first-child{display:block}.t-section-title p,.t-feature h2{margin-top:12px}.t-feature>div>p{margin-top:14px}.t-index,.t-pair{grid-template-columns:1fr}
 .t-card{grid-template-columns:77px 1fr auto}.t-card span{font-size:19px}.t-pair img{height:auto;aspect-ratio:1.4}.trade footer{padding-right:var(--gutter)}
}

