/* Tecblitz Insights — v2.4 tokens. Loaded only on /insights/ pages. */

@font-face{
  font-family:'Archivo';
  src:url('/assets/fonts/archivo-var.woff2') format('woff2-variations'),
      url('/assets/fonts/archivo-var.woff2') format('woff2');
  font-weight:100 900;
  font-stretch:62% 125%;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Instrument Serif';
  src:url('/assets/fonts/instrument-serif.woff2') format('woff2');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:'Michroma';
  src:url('/assets/fonts/michroma.woff2') format('woff2');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

body.insights{
  --ins-ground:#0A1512;
  --ins-cream:#F2EDE3;
  --ins-cream-88:rgba(242,237,227,.88);
  --ins-cream-72:rgba(242,237,227,.72);
  --ins-teal-light:#7ED5DD;
  --ins-signal:#2EB7C2;
  --ins-pad:clamp(20px,6vw,96px);
  background:var(--ins-ground);
  color:var(--ins-cream-88);
  min-height:100%;
}

body.insights::before{
  content:"";
  position:fixed;
  inset:0 0 auto 0;
  height:min(72vh,720px);
  pointer-events:none;
  z-index:0;
  background:radial-gradient(ellipse 80% 70% at 50% -10%,
    rgba(40,136,144,.10) 0%,
    rgba(40,136,144,.04) 42%,
    rgba(10,21,18,0) 72%);
}

body.insights .head,
body.insights .drawer,
body.insights .foot,
body.insights .ins-main{
  position:relative;
  z-index:1;
}

body.insights .ins-main{
  padding:clamp(48px,8vw,96px) var(--ins-pad) clamp(72px,10vw,128px);
}

body.insights .ins-article,
body.insights .ins-index{
  max-width:68ch;
  margin:0 auto;
}

body.insights .ins-crumb{
  margin:0 0 28px;
  text-align:center;
}
body.insights .ins-crumb a{
  font-family:'Michroma',sans-serif;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--ins-cream-72);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color .15s ease;
}
body.insights .ins-crumb a:hover{color:var(--ins-cream)}

body.insights h1{
  margin:0;
  font-family:'Archivo',sans-serif;
  font-stretch:125%;
  font-weight:300;
  letter-spacing:-.035em;
  line-height:1.04;
  font-size:clamp(40px,6vw,84px);
  text-align:center;
  text-wrap:balance;
  color:var(--ins-cream);
}

body.insights .ins-standfirst{
  margin:28px auto 0;
  max-width:40ch;
  font-family:'Instrument Serif',serif;
  font-weight:400;
  font-size:clamp(22px,2.4vw,30px);
  line-height:1.28;
  color:var(--ins-cream-88);
  text-align:center;
  text-wrap:balance;
}

body.insights .ins-meta,
body.insights .ins-list-checked,
body.insights .ins-source,
body.insights .ins-source-label,
body.insights .ins-source-line,
body.insights .ins-ig a{
  font-family:'Michroma',sans-serif;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--ins-cream-72);
}

body.insights .ins-meta{
  margin:32px 0 0;
  text-align:center;
}

body.insights .ins-ig{margin:20px 0 0;text-align:center}
body.insights .ins-ig a{
  color:var(--ins-teal-light);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color .15s ease;
}
body.insights .ins-ig a:hover{color:var(--ins-cream)}

body.insights .ins-section{margin:0}
body.insights .ins-section h2{
  margin:88px 0 24px;
  font-family:'Archivo',sans-serif;
  font-stretch:125%;
  font-weight:300;
  letter-spacing:-.02em;
  font-size:clamp(28px,3.4vw,40px);
  line-height:1.1;
  color:var(--ins-cream);
  text-wrap:balance;
}

body.insights .ins-section p,
body.insights .ins-section li,
body.insights .ins-close,
body.insights .ins-checked{
  font-family:'Archivo',sans-serif;
  font-stretch:100%;
  font-weight:400;
  font-size:18px;
  line-height:1.7;
  color:var(--ins-cream-88);
}

body.insights .ins-section p{margin:0 0 1.1em}
body.insights .ins-section ul,
body.insights .ins-section ol{margin:0 0 1.1em;padding-left:1.25em}
body.insights .ins-section li{margin:0 0 .55em}
body.insights .ins-section strong{color:var(--ins-cream);font-weight:600}

body.insights .ins-section a,
body.insights .ins-offer a{
  color:var(--ins-teal-light);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color .15s ease;
}
body.insights .ins-section a:hover,
body.insights .ins-offer a:hover{color:var(--ins-cream)}

body.insights .ins-source,
body.insights .ins-source-multi{
  margin:28px 0 0;
}
body.insights .ins-source-label{display:inline;margin:0}
body.insights .ins-source-multi .ins-source-label{display:block;margin:0 0 8px}
body.insights .ins-source-line,
body.insights .ins-source-multi .ins-source-line{
  display:block;
  margin:0 0 6px;
  text-transform:uppercase;
}
body.insights .ins-source-multi .ins-source-line .ins-src-doc,
body.insights .ins-source-multi .ins-source-line .ins-src-rest{
  text-transform:uppercase;
}
body.insights .ins-src-doc{
  color:var(--ins-cream-72);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color .15s ease;
}
body.insights .ins-src-doc:hover{color:var(--ins-cream)}
body.insights .ins-src-rest{color:var(--ins-cream-72)}

body.insights .ins-close{margin:88px 0 0}
body.insights .ins-checked{margin:20px 0 0;color:var(--ins-cream-72)}

body.insights .ins-rule{
  display:block;
  width:48px;
  height:2px;
  margin:36px 0;
  border:0;
  background:var(--ins-signal);
}

body.insights .ins-offer{
  margin:0;
  font-family:'Instrument Serif',serif;
  font-weight:400;
  font-size:clamp(22px,2.4vw,30px);
  line-height:1.28;
}
body.insights .ins-offer a{color:var(--ins-cream)}
body.insights .ins-offer a:hover{color:var(--ins-teal-light)}

body.insights .ins-list{
  list-style:none;
  margin:72px 0 0;
  padding:0;
}
body.insights .ins-list-item{margin:0 0 48px}
body.insights .ins-list-title{
  font-family:'Archivo',sans-serif;
  font-stretch:125%;
  font-weight:300;
  letter-spacing:-.02em;
  font-size:clamp(24px,3vw,34px);
  line-height:1.15;
  color:var(--ins-cream);
  text-decoration:none;
  transition:color .15s ease;
}
body.insights .ins-list-title:hover{color:var(--ins-teal-light)}
body.insights .ins-list-lede{
  margin:12px 0 0;
  font-family:'Archivo',sans-serif;
  font-size:18px;
  line-height:1.7;
  color:var(--ins-cream-88);
}
body.insights .ins-list-checked{margin:12px 0 0}

body.insights :focus-visible{
  outline:2px solid var(--ins-teal-light);
  outline-offset:3px;
}

@media (prefers-reduced-motion:reduce){
  body.insights a{transition:none}
}

@media (max-width:360px){
  body.insights{overflow-x:hidden}
}
