
/* IVEON — Case Studies Depth / LOT 7 */
.cs-page{background:#fff;color:#111}
.cs-kicker{margin:0 0 24px;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.cs-title-xl{margin:0;font-size:clamp(58px,8.6vw,144px);line-height:.88;letter-spacing:-.065em;font-weight:500}
.cs-title{margin:0;font-size:clamp(46px,6.5vw,108px);line-height:.92;letter-spacing:-.058em;font-weight:500}
.cs-title-wide{position:relative;z-index:2;max-width:1250px;font-size:clamp(42px,4.9vw,80px);line-height:.96;letter-spacing:-.05em}
.cs-title-sm{margin:0;font-size:clamp(34px,4.4vw,72px);line-height:.98;letter-spacing:-.05em;font-weight:500}
.cs-lede{margin:32px 0 0;max-width:760px;font-size:clamp(20px,1.6vw,27px);line-height:1.45;letter-spacing:-.022em}
.cs-small{font-size:13px;line-height:1.6;color:#6d6d67}
.cs-section{padding:clamp(105px,11vw,190px) 0;background:#fff}
.cs-paper{background:#f5f5f2}
.cs-grey{background:#ecece7}
.cs-dark{background:#090909;color:#fff}
.cs-dark .cs-small,.cs-dark .muted{color:#9b9b95}
.cs-wrap{width:min(100%,1600px);margin:auto;padding-inline:var(--gutter)}
.cs-intro{display:grid;grid-template-columns:minmax(190px,.65fr) minmax(0,1.8fr);gap:clamp(48px,9vw,160px)}
.cs-intro .cs-long{max-width:900px}
.cs-long p{margin:0 0 1.4em;font-size:clamp(18px,1.25vw,22px);line-height:1.62;letter-spacing:-.015em}
.cs-long p:last-child{margin-bottom:0}
.cs-side{max-width:300px;font-size:13px;line-height:1.62;color:#6d6d67}
.cs-dark .cs-side{color:#aaa}
.cs-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:clamp(45px,7vw,120px)}
.cs-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d4d4ce;border:1px solid #d4d4ce}
.cs-grid-3>div{background:#fff;padding:clamp(28px,3.5vw,58px)}
.cs-dark .cs-grid-3{background:#363636;border-color:#363636}.cs-dark .cs-grid-3>div{background:#111}
.cs-index{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#777}
.cs-block-title{margin:20px 0 18px;font-size:clamp(25px,2.4vw,42px);line-height:1.05;letter-spacing:-.035em;font-weight:500}
.cs-copy{margin:0;color:#555;font-size:16px;line-height:1.65}.cs-dark .cs-copy{color:#b7b7b1}
.cs-hero{min-height:92svh;position:relative}
.cs-hero--split{display:grid;grid-template-columns:1.05fr .95fr;background:#f5f5f2}
.cs-hero--split .hero-copy{display:flex;flex-direction:column;justify-content:flex-end;padding:150px var(--gutter) 90px}
.cs-hero--split .hero-media{min-height:92svh;background:center/cover no-repeat}
.cs-hero--image{display:flex;align-items:flex-end;color:#fff;background:center/cover no-repeat}
.cs-hero--image::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.14),rgba(0,0,0,.68))}
.cs-hero--image .hero-copy{position:relative;z-index:1;width:min(100%,1600px);margin:auto;padding:150px var(--gutter) 88px}
.cs-hero--image .cs-lede{color:#eee}
.cs-hero--editorial{display:flex;align-items:flex-end;background:#fff}
.cs-hero--editorial .hero-copy{width:min(100%,1600px);margin:auto;padding:160px var(--gutter) 100px}
.cs-hero--editorial .hero-no{font-size:clamp(100px,19vw,330px);line-height:.7;letter-spacing:-.08em;color:#e8e8e3;margin-bottom:55px}
.cs-hero--dark{display:grid;grid-template-columns:1.1fr .9fr;background:#090909;color:#fff}
.cs-hero--dark .hero-copy{display:flex;flex-direction:column;justify-content:flex-end;padding:150px var(--gutter) 90px}
.cs-hero--dark .hero-panel{min-height:92svh;display:grid;align-content:end;padding:80px var(--gutter);border-left:1px solid #292929;background:
linear-gradient(#222 1px,transparent 1px),linear-gradient(90deg,#222 1px,transparent 1px);background-size:44px 44px}
.cs-hero--paper{display:grid;grid-template-columns:.8fr 1.2fr;background:#ecece7}
.cs-hero--paper .hero-aside{padding:160px var(--gutter) 90px;display:flex;align-items:flex-end}
.cs-hero--paper .hero-copy{padding:160px var(--gutter) 90px;display:flex;flex-direction:column;justify-content:flex-end;border-left:1px solid #d2d2cc}
.cs-hero .button{margin-top:42px;width:max-content}
.cs-visual{min-height:70svh;background:center/cover no-repeat;position:relative}
.cs-visual.tall{min-height:88svh}
.cs-visual .visual-label{position:absolute;left:var(--gutter);bottom:35px;padding:10px 13px;background:rgba(255,255,255,.92);font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.cs-split-media{display:grid;grid-template-columns:1fr 1fr;min-height:76svh}
.cs-split-media.reverse .media{order:2}
.cs-split-media .media{background:center/cover no-repeat;min-height:620px}
.cs-split-media .copy{padding:clamp(90px,10vw,165px) var(--gutter);display:flex;flex-direction:column;justify-content:center}
.cs-flow{margin-top:70px;border-top:1px solid #d5d5cf}
.cs-flow-row{display:grid;grid-template-columns:100px minmax(220px,.8fr) minmax(0,1.4fr);gap:35px;padding:28px 0;border-bottom:1px solid #d5d5cf;align-items:start}
.cs-dark .cs-flow,.cs-dark .cs-flow-row{border-color:#343434}
.cs-flow-row strong{font-size:19px;font-weight:500}
.cs-flow-row p{margin:0;color:#666}.cs-dark .cs-flow-row p{color:#aaa}
.cs-arch{margin-top:65px;border:1px solid #d4d4ce}
.cs-arch-row{display:grid;grid-template-columns:190px 1fr;border-bottom:1px solid #d4d4ce}
.cs-arch-row:last-child{border-bottom:0}
.cs-arch-label{padding:24px;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;background:#ecece7}
.cs-arch-nodes{display:grid;grid-template-columns:repeat(4,1fr)}
.cs-arch-node{padding:24px;border-left:1px solid #d4d4ce;font-size:14px}
.cs-dark .cs-arch{border-color:#343434}.cs-dark .cs-arch-row{border-color:#343434}.cs-dark .cs-arch-label{background:#141414}.cs-dark .cs-arch-node{border-color:#343434}
.cs-matrix{margin-top:65px;display:grid;grid-template-columns:1.15fr repeat(3,1fr);border-top:1px solid #d5d5cf;border-left:1px solid #d5d5cf}
.cs-matrix>div{min-height:105px;padding:22px;border-right:1px solid #d5d5cf;border-bottom:1px solid #d5d5cf;display:flex;align-items:center}
.cs-matrix .head{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;background:#f5f5f2}
.cs-matrix .strong{font-size:18px;font-weight:500}
.cs-gallery{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;padding:18px;background:#090909}
.cs-gallery .g1{min-height:78svh;background:center/cover no-repeat}
.cs-gallery .stack{display:grid;grid-template-rows:1fr 1fr;gap:18px}
.cs-gallery .g2,.cs-gallery .g3{min-height:38svh;background:center/cover no-repeat}
.cs-band{padding:70px 0;background:#090909;color:#fff}
.cs-band .cs-wrap{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px;align-items:start}
.cs-band blockquote{margin:0;font-size:clamp(31px,4vw,68px);line-height:1;letter-spacing:-.045em}
.cs-outcomes{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:1px solid #d5d5cf}
.cs-outcomes>div{padding:28px 28px 28px 0;border-right:1px solid #d5d5cf}
.cs-outcomes>div+div{padding-left:28px}
.cs-outcomes h3{margin:14px 0 12px;font-size:22px;font-weight:500;letter-spacing:-.03em}
.cs-outcomes p{margin:0;color:#666;line-height:1.58}
.cs-depth-proof-note{margin-top:55px;max-width:760px;padding-top:24px;border-top:1px solid #d5d5cf;color:#6d6d67;font-size:13px;line-height:1.6}
.cs-related{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d4d4ce;border:1px solid #d4d4ce;margin-top:60px}
.cs-related a{background:#fff;padding:34px;min-height:210px;display:flex;flex-direction:column;justify-content:space-between}
.cs-related a:hover{background:#090909;color:#fff}
.cs-related strong{font-size:26px;font-weight:500;letter-spacing:-.035em}
.cs-related span{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.cs-next{padding:80px 0;background:#ecece7}
.cs-next a{display:grid;grid-template-columns:1fr auto;gap:45px;align-items:end}
.cs-next h2{margin:10px 0 0;font-size:clamp(40px,5.8vw,95px);line-height:.94;letter-spacing:-.055em;font-weight:500}
.cs-final{padding:clamp(110px,12vw,195px) 0;background:#fff}
.cs-final-bottom{margin-top:60px;display:grid;grid-template-columns:minmax(0,700px) auto;gap:60px;align-items:end}
.cs-final-bottom p{margin:0;font-size:18px;line-height:1.55;color:#565650}
.cs-final .button{justify-self:end}
@media(max-width:900px){
  .cs-hero--split,.cs-hero--dark,.cs-hero--paper{grid-template-columns:1fr}
  .cs-hero--split .hero-media,.cs-hero--dark .hero-panel{min-height:52svh}
  .cs-hero--paper .hero-aside{padding-bottom:35px}
  .cs-hero--paper .hero-copy{border-left:0;border-top:1px solid #d2d2cc;padding-top:55px}
  .cs-intro,.cs-grid-2,.cs-split-media,.cs-band .cs-wrap,.cs-final-bottom{grid-template-columns:1fr}
  .cs-split-media.reverse .media{order:0}.cs-split-media .media{min-height:55svh}
  .cs-flow-row{grid-template-columns:60px 1fr}.cs-flow-row p{grid-column:2}
  .cs-arch-row{grid-template-columns:1fr}.cs-arch-nodes{grid-template-columns:1fr 1fr}.cs-arch-node:nth-child(odd){border-left:0}
  .cs-matrix{grid-template-columns:1fr 1fr}
  .cs-gallery{grid-template-columns:1fr}.cs-gallery .g1{min-height:55svh}.cs-gallery .g2,.cs-gallery .g3{min-height:42svh}
  .cs-outcomes,.cs-related{grid-template-columns:1fr}.cs-outcomes>div,.cs-outcomes>div+div{padding:28px 0;border-right:0;border-bottom:1px solid #d5d5cf}
  .cs-final .button{justify-self:start}
}
@media(max-width:600px){
  .cs-hero--split .hero-copy,.cs-hero--dark .hero-copy,.cs-hero--paper .hero-aside,.cs-hero--paper .hero-copy{padding-left:var(--gutter);padding-right:var(--gutter)}
  .cs-hero--editorial .hero-copy{padding-top:140px}
  .cs-arch-nodes,.cs-matrix{grid-template-columns:1fr}
}
