/* TIFF case study. All overrides are scoped to this page. */
.tiff-case-study { --tiff-ink:#211d1c; --tiff-muted:#655c58; --tiff-line:#ded7d3; --tiff-accent:#8b3838; background:#fffdfb; color:var(--tiff-ink); padding-top:var(--navigation-height,71px); }
.tiff-case-study .project-page-main { width:min(1240px,calc(100% - 2 * clamp(20px,5vw,80px))); margin:30px auto 80px; }
.tiff-case-study .project-page-main > .back-to-work:first-child { display:table; margin:0 0 20px; padding:4px 0; text-align:left; }
.tiff-case-study .project-frame { display:block; border:0; border-radius:0; box-shadow:none; background:none; overflow:visible; }
.tiff-case-study .project-preview { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:start; gap:clamp(24px,4vw,56px); padding:28px 0 40px; background:none; }
.tiff-case-study .project-preview-text { min-width:0; padding:0; margin:0; container-type:inline-size; }
.tiff-case-study h1.project-title { margin:0 0 28px; padding:0; font-family:'Amoria',Georgia,serif; font-weight:400; line-height:1.15; letter-spacing:-.035em; text-align:left; white-space:nowrap; font-size:clamp(21px,2.6vw,38px); font-size:clamp(18px,6.7cqi,40px); }
.tiff-case-study .tiff-intro { font:17px/1.75 Arial,sans-serif; margin:0 0 20px; max-width:60ch; }
.tiff-case-study .tiff-intro:last-child { margin:0; }
.tiff-case-study .tiff-preview-group { min-width:0; align-self:start; }
.tiff-case-study .project-live-preview { margin:0; border-radius:12px; }
.tiff-case-study a { color:inherit; text-underline-offset:5px; }
.tiff-case-study a:hover { color:var(--tiff-accent); }
.tiff-case-study a.tiff-site-link { display:inline-flex; align-items:center; min-height:44px; max-width:100%; padding:12px 18px; margin-top:20px; border:1px solid var(--tiff-ink); border-radius:30px; background:#fffdfb; color:var(--tiff-ink); font:600 14px/1.5 Arial,sans-serif; text-decoration:none; }
.tiff-case-study a.tiff-site-link:hover { background:var(--tiff-ink); color:#fffdfb; }
.tiff-case-study .tiff-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin:0 0 40px; padding:28px 0; border-block:1px solid var(--tiff-line); font:15px/1.6 Arial,sans-serif; }
.tiff-case-study .tiff-facts dt { font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--tiff-muted); margin-bottom:8px; }
.tiff-case-study .tiff-facts dd { margin:0; overflow-wrap:break-word; }
.tiff-case-study .tiff-story { display:grid; width:100%; gap:28px; }
.tiff-case-study .tiff-card { min-width:0; margin:0; padding:clamp(24px,3.5vw,48px); border:1px solid var(--tiff-line); border-radius:12px; background:#f5f0ec; }
.tiff-case-study .tiff-eyebrow { margin:0 0 16px; color:var(--tiff-accent); font:700 12px/1.6 Arial,sans-serif; letter-spacing:.13em; text-transform:uppercase; }
.tiff-case-study h2 { font-family:'Amoria',Georgia,serif; font-size:clamp(28px,2.8vw,40px); font-weight:400; line-height:1.22; letter-spacing:normal; text-transform:none; text-wrap:balance; max-width:24ch; margin:0 0 20px; }
.tiff-case-study .tiff-copy { max-width:62ch; min-width:0; }
.tiff-case-study .tiff-copy p { font:17px/1.75 Arial,sans-serif; margin:0 0 18px; }
.tiff-case-study .tiff-copy p:last-child { margin:0; }
.tiff-case-study .tiff-wide { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.35fr); gap:clamp(28px,5vw,72px); }
.tiff-case-study .tiff-story-row { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); align-items:stretch; gap:28px; }
.tiff-case-study .tiff-theme-panel { display:flex; flex-direction:column; justify-content:center; min-width:0; margin:0; padding:clamp(24px,3.5vw,48px); background:#ede5df; border:1px solid var(--tiff-line); border-radius:12px; }
.tiff-case-study .tiff-theme-word { margin:0; font:400 clamp(36px,4.5vw,62px)/1.15 'Amoria',Georgia,serif; letter-spacing:-.025em; }
.tiff-case-study .tiff-theme-note { max-width:28ch; margin:24px 0 0; color:var(--tiff-muted); font:15px/1.7 Arial,sans-serif; }
.tiff-case-study .tiff-outcome .tiff-site-link { margin-top:18px; }
.tiff-case-study .tiff-reflection { background:#eae0dc; padding-block:clamp(32px,4vw,56px); }
.tiff-case-study .tiff-bottom-back { margin-top:40px; }
.tiff-case-study :is(a,[tabindex]):focus-visible { outline:3px solid var(--tiff-accent); outline-offset:5px; }
.tiff-case-study :is(section,div)[id] { scroll-margin-top:calc(var(--navigation-height,71px) + 24px); }
.tiff-skip { position:fixed; top:0; left:16px; z-index:10001; padding:12px; background:white; transform:translateY(-150%); }
.tiff-skip:focus { transform:translateY(0); }
@media (max-width:760px) {
 .tiff-case-study .project-page-main { margin-top:24px; }
 .tiff-case-study .project-preview { grid-template-columns:minmax(0,1fr); padding:20px 0 28px; }
 .tiff-case-study .tiff-facts { grid-template-columns:minmax(0,1fr); gap:20px; }
 .tiff-case-study .tiff-facts div { display:grid; grid-template-columns:100px minmax(0,1fr); gap:16px; }
 .tiff-case-study .tiff-facts dt { margin:0; }
 .tiff-case-study .tiff-story { gap:20px; }
 .tiff-case-study .tiff-wide,.tiff-case-study .tiff-story-row { grid-template-columns:minmax(0,1fr); gap:24px; }
 .tiff-case-study .horizontal-menu { flex-wrap:wrap; gap:12px; padding:16px 20px; }
 .tiff-case-study .horizontal-menu ul { flex-wrap:wrap; gap:18px; padding:0; }
 .tiff-case-study .tiff-theme-word { font-size:clamp(38px,10vw,60px); }
}
@media (prefers-reduced-motion:reduce) { html:has(.tiff-case-study) { scroll-behavior:auto; } }
