@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Cormorant+Garamond:wght@400;500;600;700&family=Montserrat:wght@400;500;600;650;700&display=swap');

/* Typography follows each supplied project brief within the case study. */
.case-theme-kivuli .case-main{--body:'Montserrat',Arial,sans-serif;--display:'Montserrat',Arial,sans-serif}
.case-theme-urban .case-main{--body:'Montserrat',Arial,sans-serif;--display:'Bebas Neue','Arial Narrow',sans-serif}
.case-theme-veloura .case-main{--body:'Manrope',Arial,sans-serif;--display:'Cormorant Garamond',Georgia,serif}
.case-page .case-main{font-family:var(--body)}
.case-page .case-main :is(h1,h2,h3,h4,h5,h6){font-family:var(--display)}
.case-theme-kivuli .case-hero h1{font-weight:600;letter-spacing:-.045em}
.case-theme-urban .case-main :is(h1,h2,h3,h4,h5,h6){font-weight:400;letter-spacing:.015em;line-height:1.1}
.case-theme-veloura .case-main :is(h1,h2,h3,h4,h5,h6){font-weight:500;letter-spacing:-.025em}

/* Project palettes extend through the page as solid editorial colour blocks. */
.case-theme-kivuli{--brand-dark:#2c1a0e;--brand-light:#f5f0e8;--brand-tint:#e5d6bd;--brand-accent:#dfb65c;--brand-muted:#65503d}
.case-theme-urban{--brand-dark:#400101;--brand-light:#faf1e4;--brand-tint:#ead6b7;--brand-accent:#e9bc6a;--brand-muted:#704d45}
.case-theme-veloura{--brand-dark:#031d40;--brand-light:#f0f1f3;--brand-tint:#ded2df;--brand-accent:#d8b9d3;--brand-muted:#4c596a}
.case-page{--paper:var(--brand-light);--ink:var(--brand-dark);--navy:var(--brand-dark);--teal:var(--brand-dark);--muted:var(--brand-muted);--gutter:max(56px,calc((100% - 1440px)/2));background:var(--brand-light)}
.case-page .case-main.shell{width:100%;padding:32px 0 0}
.case-page .case-breadcrumb{margin:0 var(--gutter) 32px;font-size:.9375rem}
.case-page :is(.case-hero,.case-intro,.expanded-chapter,.kivuli-chapter,.case-footer){--block-ink:var(--brand-dark);--block-muted:var(--brand-muted);--block-bg:var(--brand-light);background:var(--block-bg);color:var(--block-ink);padding:64px var(--gutter);margin:0;border:0;min-width:0}
.case-page :is(.case-hero,.expanded-chapter:nth-of-type(odd),.kivuli-chapter:nth-of-type(odd),.case-footer){--block-bg:var(--brand-dark);--block-ink:var(--brand-light);--block-muted:var(--brand-light)}
.case-page .case-intro{--block-bg:var(--brand-tint)}
.case-page .case-hero{padding-block:76px 84px;align-items:center}
.case-page .case-hero h1{color:var(--brand-light)}
.case-page .case-hero h1 span{color:var(--brand-accent)}
.case-page .case-kicker{color:var(--brand-accent);font-size:.875rem}
.case-page :is(.case-lead,.case-intro p,.expanded-intro,.kivuli-chapter-intro,.case-gallery-heading span,figcaption){color:var(--block-muted,var(--brand-muted))}
.case-page .case-meta span{color:var(--brand-light);border-color:var(--brand-accent);font-size:.875rem}
.case-page .case-gallery-heading{padding-top:0}
.case-page .case-gallery-heading h2{color:var(--block-ink);font-size:clamp(1.5rem,2.6vw,2.5rem);letter-spacing:-.035em}
.case-page .kivuli-cover{margin:0;padding:48px var(--gutter);background:var(--brand-light)}
.case-page .case-cover{margin:0;padding:48px var(--gutter);background:var(--brand-light)}
.case-cover a{display:block;max-width:1080px;margin-inline:auto}
.case-cover img{display:block;width:100%;height:auto;max-height:800px;object-fit:contain;border-radius:3px}
@media(max-width:760px){.case-page .case-cover{padding-block:28px}}
.case-page .case-footer{padding-block:32px;font-size:.875rem;align-items:center}
.case-page .case-footer a{color:var(--brand-accent)}
.case-page .expanded-gallery .logo-plate a{background:var(--brand-light)}
.case-page :focus-visible{outline-color:var(--block-ink,var(--brand-dark))}
.case-page .site-header :focus-visible,.case-page .case-breadcrumb:focus-visible{outline-color:var(--brand-dark)}
@media(max-width:1100px){.case-page{--gutter:32px}}
@media(max-width:760px){.case-page{--gutter:20px}.case-page :is(.case-hero,.case-intro,.expanded-chapter,.kivuli-chapter){padding-block:42px}.case-page .case-hero{gap:30px}.case-page .case-main.shell{padding-top:24px}.case-page .case-breadcrumb{margin-bottom:24px}.case-page .kivuli-cover{padding-block:28px}.case-page .case-footer{padding-block:28px}.case-page .case-hero h1{overflow-wrap:normal}.case-page .case-meta{gap:8px}}
@media print{.case-page :is(.case-hero,.case-intro,.expanded-chapter,.kivuli-chapter,.case-footer){background:white;color:#111;--block-ink:#111;--block-muted:#333;padding:24px 0}.case-page .case-hero h1,.case-page .case-hero h1 span,.case-page .case-kicker,.case-page .case-meta span,.case-page .case-footer a{color:#111}.case-page .case-main.shell{width:100%}}
