/* Editorial case studies: brand image, project narrative and future image gallery. */
.case-page{background:#e7e4d7;color:#292e29}
.case-page > header{background:#303831;color:#eae4d6}
.case-intro{padding:clamp(72px,8vw,130px) clamp(24px,5.5vw,112px) clamp(48px,5vw,82px);background:#303831;color:#eae4d6}
.case-intro .eyebrow{margin-bottom:clamp(28px,4vw,58px);color:#caaf5e}
.case-intro h1{font-size:clamp(56px,8.2vw,146px);font-weight:400;line-height:.92;letter-spacing:-.075em;margin:0;max-width:1480px}
.case-intro h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.07em}
.case-intro-foot{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-top:clamp(55px,7vw,110px);border-top:1px solid #727c70;padding-top:22px}
.case-intro-foot p{font-size:clamp(18px,1.55vw,25px);line-height:1.45;max-width:810px;margin:0;color:#d4d4c6}
.case-intro-foot span{flex:none;color:#c1bda9;font-size:12px;text-transform:uppercase;letter-spacing:.2em;white-space:nowrap}
.category .case-jump{position:sticky;top:0;z-index:15;display:flex;flex-wrap:nowrap;align-items:center;gap:clamp(24px,3vw,50px);padding:14px clamp(24px,5.5vw,112px);background:rgba(231,228,215,.96);border-bottom:1px solid #c5c0b0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.case-jump-label{flex:none;color:#8f7040;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.17em}
.case-jump-links{display:flex;align-items:center;gap:7px;min-width:0;overflow-x:auto;scrollbar-width:thin}
.category .case-jump a{display:inline-flex;align-items:center;gap:8px;flex:none;border:1px solid transparent;border-radius:100px;padding:10px 14px;color:#50564d;font-size:13px;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.case-jump a span{color:#967b51;font-size:10px;font-weight:800;letter-spacing:.07em}
.category .case-jump a:hover,.category .case-jump a[aria-current="location"]{background:#303831;color:#f2ecdf;border-color:#303831}
.category .case-jump a:hover span,.category .case-jump a[aria-current="location"] span{color:#caaf5e}
.case-list{padding:0 clamp(24px,5.5vw,112px)}
.case-study{border-top:1px solid #b9b6a9;padding:clamp(35px,4vw,60px) 0 clamp(85px,9vw,150px);scroll-margin-top:95px}
.case-study:first-child{border-top:0}
.case-rule{display:flex;justify-content:space-between;gap:24px;color:#826a47;font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.case-rule span:last-child{text-align:right}
.case-layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(35px,5vw,100px);align-items:start;margin-top:clamp(40px,5vw,88px)}
.case-copy{min-width:0}
.case-kicker{color:#9a7745;font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;margin:0 0 19px}
.case-copy h2{font-size:clamp(48px,4.7vw,86px);font-weight:400;letter-spacing:-.075em;line-height:.96;overflow-wrap:anywhere;margin:0 0 clamp(55px,6vw,105px)}
.case-mission,.case-deliverables{border-top:1px solid #b5b4a8;padding-top:16px}
.case-mission h3,.case-deliverables h3{font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#876c47;margin:0 0 18px}
.case-mission p{font-size:clamp(18px,1.5vw,24px);line-height:1.42;max-width:520px;margin:0 0 clamp(42px,5vw,80px)}
.case-deliverables ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.case-deliverables li{border:1px solid #c4c1b5;border-radius:100px;padding:8px 12px;font-size:13px;line-height:1.25}
.case-visuals{min-width:0}
.case-cover{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:16/9;min-height:260px;margin:0;background:#ceb990;overflow:hidden}
.case-cover::after{content:attr(data-index);position:absolute;right:-.02em;bottom:-.39em;font:400 clamp(190px,21vw,360px)/1 Georgia,serif;color:rgba(46,53,45,.07);pointer-events:none}
.case-study:nth-child(5n+2) .case-cover{background:#bec2b3}
.case-study:nth-child(5n+3) .case-cover{background:#c4b79d}
.case-study:nth-child(5n+4) .case-cover{background:#d0cdc0}
.case-study:nth-child(5n+5) .case-cover{background:#afa897}
.case-packaging .case-cover{background:#cfc7b3}
.case-packaging .case-study:nth-child(5n+2) .case-cover{background:#c5b18a}
.case-packaging .case-study:nth-child(5n+3) .case-cover{background:#c3c6ba}
.case-packaging .case-study:nth-child(5n+4) .case-cover{background:#d0c5af}
.case-packaging .case-study:nth-child(5n+5) .case-cover{background:#b9baa8}
.cover-eyebrow{position:absolute;top:22px;left:25px;color:#344037;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.case-marks{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:18px;width:75%;max-height:60%}
.case-marks img{width:auto;height:auto;max-width:70%;max-height:115px;object-fit:contain;opacity:.8}
.case-marks.multiple img{max-width:38%;max-height:82px}
.case-marks.triple img{max-width:29%;max-height:72px}
.cover-name{position:relative;z-index:1;max-width:75%;font-family:Georgia,serif;font-size:clamp(42px,5vw,88px);letter-spacing:-.065em;line-height:.95;text-align:center}
.case-cover figcaption{position:absolute;z-index:2;bottom:21px;left:25px;right:20px;color:#354037;font-size:12px;font-weight:700;letter-spacing:.04em}
.case-cover figcaption span{font-weight:400}
.case-carousel{margin-top:12px;min-width:0}
.case-layout > .case-carousel{grid-column:1/-1;margin-top:0}
#but-darty-conforama .case-layout{row-gap:clamp(24px,3vw,44px)}
.case-carousel-viewport{aspect-ratio:16/10;overflow:hidden;background:#ddd9cb}
.case-carousel-track{display:flex;width:100%;height:100%;transition:transform .55s cubic-bezier(.2,.7,.25,1)}
.case-slide{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;flex:0 0 100%;width:100%;height:100%;margin:0;overflow:hidden;background:#ddd9cb}
.case-slide[data-image]::before{content:"";position:absolute;z-index:-1;inset:-10%;background:var(--ambient-image) center/cover no-repeat;filter:blur(28px);opacity:.28}
.case-slide img{position:relative;display:block;width:100%;height:100%;object-fit:contain}
.case-slide.is-pending{background:linear-gradient(135deg,#e2ded1,#d5d0c0);color:#8b897d;border:1px solid #d0cabb}
.case-slide.is-pending span{max-width:75%;font-family:Georgia,serif;font-size:clamp(26px,3vw,45px);line-height:1.1;text-align:center}
/* Five visible covers, with the active cover held at the center. */
.case-carousel.is-five-up.five-up-ready .case-carousel-viewport{height:clamp(370px,42vw,590px);aspect-ratio:auto;background:#d9d5c8}
.case-carousel.is-five-up.five-up-ready .case-carousel-track{position:relative;display:block;height:100%;transform:none!important;transition:none}
.case-carousel.is-five-up.five-up-ready .case-slide{position:absolute;top:50%;left:50%;z-index:0;width:16%;height:68%;flex:none;transform:translate(-50%,-50%) scale(.75);opacity:0;visibility:hidden;pointer-events:none;box-shadow:0 12px 30px rgba(25,31,26,.12);transition:left .68s cubic-bezier(.2,.7,.2,1),width .68s cubic-bezier(.2,.7,.2,1),height .68s cubic-bezier(.2,.7,.2,1),transform .68s cubic-bezier(.2,.7,.2,1),opacity .5s,filter .5s,visibility .68s}
.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-3"]{left:-10%;visibility:visible}
.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="3"]{left:110%;visibility:visible}
.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-2"],.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="2"]{z-index:1;width:16%;height:67%;transform:translate(-50%,-50%);opacity:.68;visibility:visible;filter:saturate(.8)}
.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-2"]{left:9%}
.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="2"]{left:91%}
.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-1"],.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="1"]{z-index:2;width:22%;height:82%;transform:translate(-50%,-50%);opacity:.87;visibility:visible;filter:saturate(.92)}
.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-1"]{left:28%}
.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="1"]{left:72%}
.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="0"]{z-index:3;left:50%;width:40%;height:96%;transform:translate(-50%,-50%);opacity:1;visibility:visible;box-shadow:0 18px 42px rgba(25,31,26,.22)}
@media(min-width:601px){.case-layout > .case-carousel.is-five-up.five-up-ready .case-carousel-viewport{height:clamp(420px,52vw,780px)}}
.case-carousel-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:54px;border-bottom:1px solid #b9b6a9}
.case-carousel-meta{display:flex;align-items:baseline;gap:15px;min-width:0;max-width:50%}
.case-carousel-count{flex:none;color:#8a704b;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.case-carousel-caption{overflow:hidden;color:#686c62;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.case-carousel-scrub{flex:1;min-width:55px;max-width:180px;margin:0 4px;accent-color:#81745e;cursor:pointer}
.case-carousel-scrub:disabled{opacity:.25;cursor:default}
.case-carousel-scrub:focus-visible{outline:2px solid #9b7b4b;outline-offset:4px}
.case-carousel-controls{display:flex;align-items:center;gap:2px;flex:none}
.case-carousel-controls button{display:grid;place-items:center;width:38px;height:42px;padding:0;border:0;background:transparent;color:#676e63;font:400 24px/1 Georgia,serif;cursor:pointer;transition:color .2s,background .2s}
.case-carousel-controls button[data-pause]{font:400 13px/1 Arial,sans-serif}
.case-carousel-controls button:hover:not(:disabled){color:#252b25;background:rgba(49,56,48,.07)}
.case-carousel-controls button:disabled{opacity:.33;cursor:default}
.case-carousel-controls button:focus-visible{outline:2px solid #9b7b4b;outline-offset:-4px}
.category .case-other{display:flex;gap:10px;flex-wrap:wrap;padding:10px clamp(24px,5.5vw,112px) clamp(65px,7vw,105px)}
.category .case-other a{border-color:#b5b3a4;color:#343a31;font-size:13px}
.category .case-other a:hover,.category .case-other a[aria-current]{background:#303831;border-color:#303831;color:#f0e9da}
/* The campaigns read as a dark gallery, while the project covers keep their own colors. */
.case-campaigns{background:#252d29;color:#ece7da}
.case-campaigns .case-jump{background:rgba(37,45,41,.96);border-bottom-color:#586158}
.case-campaigns .case-jump-label,.case-campaigns .case-jump a span,.case-campaigns .case-rule,.case-campaigns .case-kicker,.case-campaigns .case-mission h3,.case-campaigns .case-deliverables h3{color:#d0af71}
.case-campaigns .case-jump a{color:#e2dfd3}
.case-campaigns .case-jump a:hover,.case-campaigns .case-jump a[aria-current="location"]{background:#d0af71;border-color:#d0af71;color:#252d29}
.case-campaigns .case-jump a:hover span,.case-campaigns .case-jump a[aria-current="location"] span{color:#252d29}
.case-campaigns .case-study{border-top-color:#566057}
.case-campaigns .case-mission,.case-campaigns .case-deliverables{border-top-color:#626b61}
.case-campaigns .case-deliverables li{border-color:#71796e}
.case-campaigns .case-carousel-viewport,.case-campaigns .case-slide,.case-campaigns .case-carousel.is-five-up.five-up-ready .case-carousel-viewport{background:#363f38}
.case-campaigns .case-slide.is-pending{background:linear-gradient(135deg,#3b453e,#303932);border-color:#5a655b;color:#bfc3b5}
.case-campaigns .case-carousel-footer{border-bottom-color:#626b61}
.case-campaigns .case-carousel-count{color:#d0af71}
.case-campaigns .case-carousel-caption{color:#c1c6b9}
.case-campaigns .case-carousel-scrub{accent-color:#d0af71}
.case-campaigns .case-carousel-controls button{color:#e8e4d8}
.case-campaigns .case-carousel-controls button:hover:not(:disabled){color:#fff;background:rgba(255,255,255,.1)}
.case-campaigns .case-other a{border-color:#737d71;color:#e8e4d8}
.case-campaigns .case-other a:hover,.case-campaigns .case-other a[aria-current]{background:#d0af71;border-color:#d0af71;color:#252d29}
.case-list.reveal-ready .case-study{opacity:0;transform:translateY(38px);transition:opacity .8s ease,transform 1s cubic-bezier(.17,.75,.25,1)}
.case-list.reveal-ready .case-study.is-visible{opacity:1;transform:none}
@media(max-width:950px){.case-layout{grid-template-columns:1fr;gap:36px}.case-copy h2{margin-bottom:42px}.case-mission p{margin-bottom:34px}.case-deliverables{margin-bottom:16px}.case-cover{min-height:0}}
@media(max-width:600px){
  .case-intro{padding-top:70px;padding-bottom:50px}
  .case-intro h1{font-size:clamp(49px,11.7vw,70px);overflow-wrap:anywhere}
  .case-intro-foot{display:block;margin-top:65px}
  .case-intro-foot p{font-size:18px}
  .case-intro-foot span{display:block;margin-top:22px}
  .category .case-jump{gap:12px;padding:9px 18px}
  .case-jump-label{font-size:10px}
  .category .case-jump a{padding:9px 11px;font-size:12px}
  .case-list{padding:0 20px}
  .case-study{padding-top:28px;padding-bottom:82px;scroll-margin-top:74px}
  .case-layout{margin-top:38px}
  .case-copy h2{font-size:clamp(45px,11vw,65px)}
  .case-deliverables li{font-size:12px}
  .cover-eyebrow{top:14px;left:15px;font-size:9px}
  .case-cover figcaption{bottom:14px;left:15px;font-size:10px}
  .case-marks{width:83%;gap:7px}
  .case-marks img{max-height:63px}
  .case-marks.multiple img{max-height:50px}
  .case-marks.triple img{max-height:43px}
  .cover-name{font-size:clamp(35px,10vw,60px)}
  .case-carousel-viewport{aspect-ratio:4/3}
  .case-carousel.is-five-up.five-up-ready .case-carousel-viewport{height:clamp(280px,76vw,400px)}
  .case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-2"],.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="2"]{width:18%;height:54%}
  .case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-2"]{left:7%}
  .case-carousel.is-five-up.five-up-ready .case-slide[data-slot="2"]{left:93%}
  .case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-1"],.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="1"]{width:24%;height:74%}
  .case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-1"]{left:27%}
  .case-carousel.is-five-up.five-up-ready .case-slide[data-slot="1"]{left:73%}
  .case-carousel.is-five-up.five-up-ready .case-slide[data-slot="0"]{width:44%;height:94%}
  .case-slide.is-pending span{font-size:clamp(24px,6vw,32px)}
  .case-carousel-footer{min-height:48px}
  .case-carousel-controls button{width:35px;height:40px}
  .case-carousel-meta{gap:8px}
  .case-carousel-caption{font-size:11px}
  .case-carousel-scrub{min-width:45px}
  .category .case-other{padding:5px 20px 65px}
}
@media(prefers-reduced-motion:reduce){.case-list.reveal-ready .case-study{opacity:1;transform:none;transition:none}.category .case-jump a,.case-carousel-track,.case-carousel-controls button,.case-carousel.is-five-up.five-up-ready .case-slide{transition:none}}

/* Editorial collections supplied with the campaign projects. */
.case-media-groups{grid-column:1/-1;display:grid;gap:clamp(54px,7vw,110px);min-width:0;margin-top:clamp(22px,3vw,48px)}
.case-media-group{min-width:0}
.case-media-heading{display:flex;align-items:baseline;justify-content:space-between;gap:25px;margin-bottom:19px;padding-top:17px;border-top:1px solid rgba(220,224,211,.4)}
.case-media-heading h3{margin:0;font-size:clamp(22px,3vw,38px);font-weight:400;line-height:1.1}
.case-media-heading p{max-width:440px;margin:0;font-size:14px;line-height:1.55;opacity:.72}
.case-media-group .case-carousel{margin:0}
.case-film{min-width:0;margin:0}
.case-film video{display:block;width:100%;height:auto;max-height:min(75vh,760px);background:#111;object-fit:contain}
.case-film.portrait video{aspect-ratio:9/16}
.case-film figcaption{padding:12px 0 0;font-size:12px;letter-spacing:.06em;opacity:.75}
.case-visuals>.case-film{max-width:100%}
.case-video-grid{display:flex;align-items:flex-start;justify-content:center;flex-wrap:wrap;gap:clamp(20px,4vw,58px);padding:clamp(20px,4vw,50px);background:rgba(0,0,0,.16)}
.case-video-grid .case-film.portrait{width:min(100%,300px)}
.case-video-grid .case-film.landscape{width:min(100%,670px)}
.case-image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:clamp(14px,2vw,30px)}
.case-image-grid a{display:block;min-width:0;color:inherit;text-decoration:none}
.case-image-grid img{display:block;width:100%;height:clamp(240px,29vw,450px);object-fit:contain;background:rgba(0,0,0,.13);transition:transform .35s ease,background .35s ease}
.case-image-grid a:hover img{transform:scale(1.015);background:rgba(0,0,0,.22)}
.case-image-grid span{display:block;padding:10px 0;font-size:11px;letter-spacing:.04em;opacity:.72}
@media(max-width:600px){.case-media-heading{display:block}.case-media-heading p{margin-top:10px}.case-video-grid{padding:16px}.case-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-image-grid img{height:220px}}

.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-2"],.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="-1"],.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="0"],.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="1"],.case-carousel.is-five-up.five-up-ready .case-slide[data-slot="2"]{pointer-events:auto}
