:root{--case-accent:#133ec7;--case-soft:#dce8ff}.case-page{background:#f7f7f2;color:#171714}.case-nav{position:sticky;top:0;z-index:20;height:72px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;background:rgba(247,247,242,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(23,23,20,.16)}.case-nav .brand{color:#171714}.case-nav .brand-mark{border-color:#171714;color:var(--case-accent)}.case-nav>a:last-child{font-size:12px;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid;padding:8px 0}.case-hero{padding:54px 20px 32px;min-height:auto}.case-kicker,.case-label,.case-meta dt,.placeholder-tag{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.case-kicker{color:var(--case-accent);margin:0 0 26px}.case-hero h1{font:300 clamp(64px,18vw,112px)/.84 var(--display);letter-spacing:-.055em;margin:0 0 30px}.case-deck{font-size:21px;line-height:1.35;max-width:720px;margin:0}.case-meta{margin:48px 0 0;padding:22px 0;border-top:1px solid;border-bottom:1px solid;display:grid;grid-template-columns:1fr 1fr;gap:22px}.case-meta div:last-child{grid-column:1/-1}.case-meta dl,.case-meta dd{margin:0}.case-meta dt{color:#6a6962;margin-bottom:7px}.case-meta dd{font-size:15px}.case-visual{padding:0 20px 78px}.case-frame{background:var(--case-soft);padding:12px}.case-frame img{display:block;width:100%;height:auto;aspect-ratio:1.46/1;object-fit:cover;object-position:top}.case-frame figcaption{display:flex;justify-content:space-between;gap:16px;padding:12px 2px 0;font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#62615b}.case-section{padding:78px 20px;border-top:1px solid rgba(23,23,20,.16)}.case-section h2{font:300 48px/1 var(--display);letter-spacing:-.035em;margin:14px 0 30px;max-width:800px}.case-section .lead{font:300 29px/1.15 var(--display);max-width:880px;margin:0}.case-grid{display:grid;gap:14px;margin-top:42px}.case-card{padding:24px;border:1px solid rgba(23,23,20,.18);background:#fff}.case-card b{display:block;font-size:12px;letter-spacing:.1em;color:var(--case-accent);margin-bottom:22px}.case-card h3{font:300 28px/1.05 var(--display);margin:0 0 14px}.case-card p{margin:0;color:#55544e}.process-list{list-style:none;padding:0;margin:40px 0 0;border-top:1px solid}.process-list li{display:grid;grid-template-columns:38px 1fr;padding:24px 0;border-bottom:1px solid;gap:16px}.process-list b{color:var(--case-accent)}.process-list h3{font:300 27px var(--display);margin:0 0 8px}.process-list p{margin:0;color:#55544e}.outcome-band{background:var(--case-accent);color:#fff}.outcome-band .case-label{color:rgba(255,255,255,.7)}.outcome-band h2{color:#fff}.outcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.28);margin-top:42px}.outcome{background:var(--case-accent);padding:24px 12px 24px 0}.outcome:nth-child(even){padding-left:18px}.outcome strong{display:block;font:300 38px var(--display);margin-bottom:8px}.outcome span{font-size:13px;color:rgba(255,255,255,.78)}.placeholder-tag{display:inline-block;border:1px solid currentColor;border-radius:999px;padding:7px 10px;margin-bottom:14px}.measure-box{margin-top:40px;background:var(--case-soft);padding:24px}.measure-box h3{font:300 30px var(--display);margin:0 0 14px}.measure-box p{margin:0 0 18px}.measure-box ul{margin:0;padding-left:18px}.measure-box li{margin:8px 0}.case-quote{background:#171714;color:#fff;padding:74px 20px}.case-quote blockquote{font:300 36px/1.1 var(--display);margin:0;max-width:960px}.case-next{padding:72px 20px;background:#fff}.case-next a{display:flex;justify-content:space-between;align-items:end}.case-next span{font-size:12px;text-transform:uppercase;letter-spacing:.12em}.case-next strong{font:300 38px var(--display)}.case-next b{font-size:30px;font-weight:400}.case-footer{padding:28px 20px;display:flex;justify-content:space-between;border-top:1px solid rgba(23,23,20,.16);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.verdure{--case-accent:#1f3d2b;--case-soft:#e7eddf}.odura{--case-accent:#9a6b32;--case-soft:#eee4d4}.rachel{--case-accent:#a94f31;--case-soft:#f2dfd4}@media(min-width:760px){.case-nav{height:88px;padding:0 5vw}.case-hero,.case-section,.case-quote,.case-next{padding-left:8vw;padding-right:8vw}.case-hero{padding-top:110px}.case-hero h1{font-size:clamp(100px,11vw,160px);max-width:1100px}.case-deck{font-size:27px;margin-left:33%}.case-meta{grid-template-columns:repeat(5,1fr);margin-top:78px}.case-meta div:last-child{grid-column:auto}.case-visual{padding:20px 8vw 120px}.case-frame{padding:24px}.case-frame img{aspect-ratio:1.56/1}.case-section{padding-top:120px;padding-bottom:120px}.case-section h2{font-size:76px}.case-section .lead{font-size:47px;margin-left:24%}.case-grid{grid-template-columns:repeat(3,1fr);margin-top:70px}.process-list{margin-left:24%}.process-list li{grid-template-columns:60px 1fr;padding:34px 0}.outcome-grid{grid-template-columns:repeat(4,1fr)}.outcome{padding:34px 24px}.outcome:nth-child(even){padding-left:24px}.outcome strong{font-size:52px}.measure-box{margin-left:24%;padding:38px}.case-quote blockquote{font-size:60px;margin-left:16%}.case-next strong{font-size:58px}.case-footer{padding:32px 5vw}}

/* Shared agency accents; individual case-study palettes remain intact. */
:root{--case-accent:#2044b0;--case-soft:#e5eafa}

.case-live{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;margin-top:32px;padding:14px 0;border-bottom:2px solid var(--case-accent);color:var(--case-accent);font-size:15px;font-weight:600;text-decoration:none}.case-live span{font-size:22px;font-weight:400;line-height:1}.case-live:hover,.case-live:focus-visible{background:var(--case-soft);outline-offset:4px}

/* Agency chrome uses the official palette; project imagery retains its own character. */
.case-page{--case-accent:#093b93;--case-soft:#f7f7f2;background:var(--paper);color:var(--ink)}
.case-nav{height:80px;background:rgba(247,247,242,.96);border-color:var(--line)}
.case-nav .brand{display:block;line-height:0}
.case-nav .brand img{display:block;width:90px;height:auto}
.case-quote{background:var(--ink)}
@media(min-width:760px){.case-nav{height:88px}}

.case-hero{position:relative;isolation:isolate;overflow:hidden}
.case-hero::before{content:"";position:absolute;left:0;top:0;width:5px;height:42%;background:linear-gradient(to bottom,var(--lime) 0 31%,var(--blue) 31% 69%,var(--red) 69% 100%);pointer-events:none}
.case-hero::after{content:"";position:absolute;z-index:0;right:0;bottom:0;width:clamp(180px,24vw,340px);height:clamp(286px,38vw,540px);background:var(--paper) url("../imgs/brand-pattern.png") right bottom/contain no-repeat;background-blend-mode:multiply;opacity:.34;pointer-events:none}
.case-hero>*{position:relative;z-index:1}
.case-label{border-left:3px solid var(--lime);padding-left:12px}
.process-list li{border-bottom-style:dotted}
.measure-box{background:rgba(4,78,231,.06)}
@media(max-width:759px){.case-hero::before{width:4px}.case-hero::after{right:-55px;width:185px;height:294px;opacity:.18}}

.comparison-table{border-top:1px solid var(--ink);margin-top:50px}
.comparison-heading,.comparison-row{display:grid;grid-template-columns:minmax(160px,.8fr) repeat(2,minmax(0,1.5fr));gap:36px;align-items:start;padding:24px 0;border-bottom:1px solid rgba(23,23,20,.22)}
.comparison-heading{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--case-accent)}
.comparison-row h3{font:300 29px/1.05 var(--display);margin:0}
.comparison-row p{margin:0;font-size:16px;line-height:1.5;color:#42413b}
.comparison-note,.measurement-note{font-size:14px;line-height:1.5;color:#686760;margin:22px 0 0}
.measure-box .measurement-note{margin-top:24px}
@media(max-width:759px){
  .comparison-heading{display:none}
  .comparison-row{display:block;padding:26px 0}
  .comparison-row h3{margin-bottom:16px}
  .comparison-row p+p{margin-top:14px}
  .comparison-row p::before{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--case-accent);margin-bottom:5px}
  .comparison-row p:nth-child(2)::before{content:"Before"}
  .comparison-row p:nth-child(3)::before{content:"After"}
}
.case-nav>a:last-child{font-size:14px}
.case-meta dd{font-size:16px}
.case-footer{flex-wrap:wrap;gap:18px 28px}
@media(max-width:759px){.case-footer .legal-links{flex-basis:100%;order:2}}

.cms-gallery{display:grid;gap:24px;margin-top:48px}.cms-shot{margin:0;background:#fff;border:1px solid rgba(23,23,20,.18);padding:12px}.cms-shot a{display:block;height:520px;overflow-y:auto;overflow-x:hidden;background:#f7f4ef}.cms-shot img{width:100%;height:auto;display:block}.cms-shot figcaption{display:flex;justify-content:space-between;gap:16px;padding:14px 4px 2px;font-size:14px}.cms-shot figcaption span:last-child{color:#666}.cms-note{font-size:14px;color:#686760;margin:14px 0 0}@media(min-width:760px){.cms-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.cms-shot{padding:20px}.cms-shot a{height:690px}}

/* Give ODÙRÀ's uppercase accents room below the category line. */
.odura .case-hero h1{padding-top:.23em}
