/* Case study v2: light, image-led (extends nextgen-v5.css) */
html.cs2,html.cs2 body{background:#F4F3EF;}
.cs2 body{color:#141414;}
.cs2 a:hover{color:inherit;opacity:.7;}
.cs2 :focus-visible{outline-color:#141414;}
.n4{color:#fff;}.n4 nav a{white-space:nowrap;}
.k2-title{padding:clamp(150px,24vh,240px) 0 clamp(48px,8vh,88px);}
.k2-title h1{margin:0;font-weight:300;font-size:clamp(3.2rem,10vw,10rem);line-height:1;letter-spacing:-.055em;}
.k2-title h1 .m4{padding-bottom:.24em;margin-bottom:-.24em;}
.k2-title__meta{margin-top:clamp(32px,5vh,56px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(16px,2vw,28px);row-gap:28px;align-items:start;}
.k2-title__meta>p{grid-column:1/6;margin:0;font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.5;color:#45453F;text-wrap:pretty;}
.k2-title__meta dl{grid-column:7/-1;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px clamp(16px,2vw,28px);}
.k2-title dt{font-size:14px;color:#6E6E68;margin-bottom:4px;}
.k2-title dd{margin:0;font-size:15px;line-height:1.5;}
@media(max-width:860px){.k2-title__meta>p,.k2-title__meta dl{grid-column:1/-1;}}
.k2-bleed{height:100vh;height:100dvh;min-height:520px;overflow:hidden;background:#DDDCD6;}
.k2-bleed img{width:100%;height:112%;object-fit:cover;}
@media(max-width:760px){.k2-bleed{height:auto;min-height:0;aspect-ratio:16/10;}}
.k2-intro{padding:clamp(96px,15vh,170px) 0;}
.k2-intro .w4{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(16px,2vw,28px);}
.k2-intro__body{grid-column:4/-1;display:flex;flex-direction:column;gap:clamp(28px,4vh,44px);}
.k2-intro__body p{margin:0;font-weight:300;font-size:clamp(1.6rem,3vw,3rem);line-height:1.16;letter-spacing:-.03em;text-wrap:pretty;}
.k2-intro__body p+p{font-weight:400;font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.6;letter-spacing:0;color:#45453F;max-width:36em;}
@media(max-width:860px){.k2-intro__body{grid-column:1/-1;}}
.k2-seq{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,24px);}
.k2-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.6vw,24px);}
.k2-row--3{grid-template-columns:5fr 3fr;}
.k2-seq figure{margin:0;overflow:hidden;background:#DDDCD6;}
.k2-seq img{width:100%;height:100%;object-fit:cover;}
.k2-wide{aspect-ratio:16/9;}
.k2-tall{aspect-ratio:4/5;}
.k2-row--3 figure{aspect-ratio:auto;height:clamp(320px,52vw,760px);}
.k2-full{height:100vh;height:100dvh;min-height:480px;}
.k2-cap{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(16px,2vw,28px);padding:clamp(56px,10vh,120px) 0;}
.k2-cap p{grid-column:4/span 6;margin:0;font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.6;color:#45453F;text-wrap:pretty;}
@media(max-width:860px){.k2-cap p{grid-column:1/-1;}}
@media(max-width:640px){.k2-row,.k2-row--3{grid-template-columns:1fr;}.k2-row--3 figure{height:auto;aspect-ratio:4/5;}}
.k2-results{padding:var(--sec) 0 clamp(64px,10vh,120px);}
.k2-results .w4{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(16px,2vw,28px);row-gap:40px;}
.k2-results h2,.k2-credits h2{grid-column:1/4;margin:0;font-size:15px;font-weight:600;line-height:1.6;}
.k2-results ul{grid-column:4/-1;list-style:none;margin:0;padding:0;}
.k2-results li{padding:clamp(20px,3vh,32px) 0;border-top:1px solid rgba(20,20,20,.16);font-weight:300;font-size:clamp(1.3rem,2.2vw,2.2rem);line-height:1.2;letter-spacing:-.02em;}
.k2-results li:last-child{border-bottom:1px solid rgba(20,20,20,.16);}
.cs-ph{color:#8A8A84!important;font-style:italic;}
.k2-credits{padding:0 0 var(--sec);}
.k2-credits .w4{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(16px,2vw,28px);row-gap:24px;}
.k2-credits dl{grid-column:4/-1;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px clamp(16px,2vw,28px);}
.k2-credits dt{font-size:14px;color:#6E6E68;margin-bottom:6px;}
.k2-credits dd{margin:0;font-size:15px;line-height:1.5;}
@media(max-width:860px){.k2-results h2,.k2-results ul,.k2-credits h2,.k2-credits dl{grid-column:1/-1;}.k2-credits dl{grid-template-columns:1fr 1fr;}}
.k2-next{display:block;border-top:1px solid rgba(20,20,20,.16);}
.k2-next:hover{opacity:1;}
.k2-next .w4{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(16px,2vw,28px);align-items:end;padding-top:clamp(40px,6vh,64px);padding-bottom:clamp(56px,9vh,100px);row-gap:24px;}
.k2-next__txt{grid-column:1/9;display:flex;flex-direction:column;gap:clamp(16px,3vh,28px);}
.k2-next span{font-size:15px;font-weight:600;}
.k2-next b{display:flex;align-items:center;gap:.25em;font-weight:300;font-size:clamp(3rem,8vw,8rem);line-height:.94;letter-spacing:-.055em;}
.k2-next b i{font-style:normal;font-size:.45em;transition:transform .5s var(--ease);}
.k2-next:hover b i{transform:translateX(.2em);}
.k2-next figure{grid-column:9/-1;margin:0;aspect-ratio:4/3;overflow:hidden;background:#DDDCD6;}
.k2-next img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease);}
.k2-next:hover img{transform:scale(1.04);}
@media(max-width:860px){.k2-next__txt,.k2-next figure{grid-column:1/-1;}}
@media(prefers-reduced-motion:reduce){.k2-next img,.k2-next b i{transition:none;}}
.cs2 .n4__brand,.cs2 .n4 nav{background:rgba(244,243,239,.78);box-shadow:inset 0 0 0 1px rgba(20,20,20,.1);}
.cs2 .n4{color:#141414;}
.cs2 .n4 nav a:last-child{background:#141414;color:#fff;}
.cs2 .n4__menu{background:rgba(20,20,20,.07);}.cs2 .n4__menu span{background:#141414;}.cs2 .n4__menu:focus-visible{outline-color:#141414;}
.k2-close{border-top:1px solid rgba(20,20,20,.16);padding:clamp(72px,12vh,140px) 0;}
.k2-close .w4{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(16px,2vw,28px);row-gap:32px;align-items:end;}
.k2-close p{grid-column:1/9;margin:0;font-weight:300;font-size:clamp(1.6rem,3vw,3rem);line-height:1.16;letter-spacing:-.03em;text-wrap:pretty;}
.k2-close .pill{grid-column:10/-1;justify-self:end;}
@media(max-width:860px){.k2-close p,.k2-close .pill{grid-column:1/-1;justify-self:start;}}
.k2-foot{background:transparent;border-top:1px solid rgba(20,20,20,.16);color:#45453F;}
.k2-half{aspect-ratio:4/3;}
.k2-cap--l{row-gap:16px;}
.k2-cap--l h3{grid-column:1/4;margin:0;font-size:15px;font-weight:600;line-height:1.6;}
.k2-cap__body{grid-column:4/span 6;display:flex;flex-direction:column;gap:20px;}
.k2-cap__body p{margin:0;font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.6;color:#45453F;text-wrap:pretty;}
.k2-cap--tight{padding-top:0;}
.k2-results .k2-intro__body{grid-column:4/-1;}
@media(max-width:860px){.k2-cap--l h3,.k2-cap__body{grid-column:1/-1;}}

@media(max-width:640px){.cs2 .n4{color:#fff;}.cs2 .n4__brand,.cs2 .n4 nav{background:rgba(20,20,20,.72);box-shadow:none;}.cs2 .n4__menu{background:rgba(255,255,255,.1);}.cs2 .n4__menu span{background:#fff;}.cs2 .n4 nav>a:last-child{background:#fff;color:#000;}.cs2 .n4__menu:focus-visible,.cs2 .n4 nav a:focus-visible{outline-color:#fff;}}
