:root{--palladio-motion:cubic-bezier(.4,0,.2,1)}
html{scroll-behavior:auto}
/* Framer reference: navigation -12px/.55s; hero +16px/.7s. */
@keyframes navigation-in{from{opacity:.001;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-in{from{opacity:.001;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-word-in{from{opacity:.001;filter:blur(10px);transform:translateY(14px)}to{opacity:1;filter:blur(0);transform:translateY(0)}}
body:not(.motion-paused) .site-header{animation:navigation-in .55s var(--palladio-motion) backwards}
body:not(.motion-paused) .fresco-hero .eyebrow,body:not(.motion-paused) .fresco-hero .hero-description,body:not(.motion-paused) .contact-fresco-content>div{animation:hero-in .7s var(--palladio-motion) both}
.hero-word{display:inline-block;animation:hero-word-in .7s var(--palladio-motion) both;animation-delay:calc(.05s + var(--word-index)*.04s)}
.enhanced [data-reveal]{transition:opacity .7s var(--palladio-motion),transform .7s var(--palladio-motion);transition-delay:var(--reveal-delay,0ms)}
.enhanced [data-reveal]:not(.visible){opacity:.001;transform:translateY(16px)}
.enhanced [data-reveal].visible{opacity:1;transform:translateY(0)}
/* Sliding labels echo the reference's paired text layers. */
.button{transition:background-color .3s var(--palladio-motion),color .3s var(--palladio-motion);transform:none}
.button:hover,.button:focus-visible{transform:none}
.button .button-roll{position:relative;display:block;height:1.5em;line-height:1.5;overflow:hidden}
.button .button-roll>span{display:block;transition:transform .4s var(--palladio-motion)}
.button:hover .button-roll>span,.button:focus-visible .button-roll>span{transform:translateY(-100%)}
.p-work-card .work-image img,.p-article-card>img,.operations-track img{transition:transform .6s var(--palladio-motion)}
.p-work-card .work-link>span{transition:background-color .3s var(--palladio-motion),color .3s var(--palladio-motion),transform .3s var(--palladio-motion)}
.p-work-card:hover .work-link>span{transform:rotate(-45deg)}
/* Reference case index: 438px opening at 1280px, 110px to filters, 50px to cards. */
.archive-index-page .page-hero{height:438px;min-height:438px;max-height:none}
.archive-index-page .page-hero .hero-content{height:100%;padding:0 50px 50px;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);column-gap:20px;align-content:end;align-items:end}
.archive-index-page .page-hero .eyebrow{grid-column:1;grid-row:1;margin:0 0 20px}
.archive-index-page .page-hero h1{grid-column:1;grid-row:2;font-size:96px;line-height:1.05;max-width:760px;letter-spacing:-.03em}
.archive-index-page .page-hero .hero-description{grid-column:2;grid-row:2;position:static;max-width:380px;padding-bottom:4px}
.archive-index-page .page-hero .hero-description>p{font-family:'Instrument Serif',Georgia,serif;font-size:26px;line-height:1.25;letter-spacing:-.025em}
.archive-index-page main>.section{padding-top:110px;padding-bottom:100px}
.archive-index-page .case-filter-label{font-size:10px;letter-spacing:1.5px;margin-bottom:14px}
.archive-index-page .filter-bar{gap:8px;margin-bottom:50px}
.archive-index-page .filter-bar button{padding:8px 15px;min-height:35px;font-size:13px;line-height:1.3;border:1px dashed #c0bdb3;background:transparent;border-radius:999px;transition:background-color .3s,color .3s,border-color .3s}
.archive-index-page .filter-bar button.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.archive-index-page .p-work-grid{gap:30px 10px;grid-template-columns:repeat(3,minmax(0,1fr))}
.archive-index-page .p-work-card{padding:10px;min-width:0}
.archive-index-page .p-work-card h3{font-size:20.8px;line-height:1.3;margin-top:15px;margin-bottom:10px}
.archive-index-page .p-work-card>p{min-height:52px;margin-bottom:22px;font-size:12.8px;line-height:1.35}
.archive-index-page .p-work-card .work-link{margin-top:auto}
@media(min-width:1800px){.archive-index-page .page-hero .hero-content{padding-inline:max(50px,calc((100vw - 1600px)/2 - 10px))}}
@media(max-width:1199px) and (min-width:810px){.archive-index-page .p-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-index-page .page-hero h1{font-size:80px}.archive-index-page .page-hero .hero-content{grid-template-columns:1.6fr 1fr}}
@media(max-width:809px){.archive-index-page .page-hero{height:auto;min-height:440px}.archive-index-page .page-hero .hero-content{padding:70px 22px 32px;grid-template-columns:1fr;gap:0}.archive-index-page .page-hero .eyebrow{grid-row:1}.archive-index-page .page-hero h1{grid-row:2;font-size:60px}.archive-index-page .page-hero .hero-description{grid-column:1;grid-row:3;max-width:420px;margin-top:25px}.archive-index-page .page-hero .hero-description>p{font-size:23px}.archive-index-page main>.section{padding-top:65px}.archive-index-page .p-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-index-page .filter-bar{margin-bottom:35px}}
@media(max-width:600px){.archive-index-page .p-work-grid{grid-template-columns:1fr;gap:20px}.archive-index-page .page-hero h1{font-size:52px}.archive-index-page .p-work-card>p{min-height:0;font-size:14px;line-height:1.6}.archive-index-page .p-work-card h3{font-size:27px}}
.motion-paused .hero-word,.motion-paused .site-header,.motion-paused [data-reveal],.motion-paused .button-roll>span{animation:none!important;transition:none!important;opacity:1!important;transform:none!important;filter:none!important}
@media(prefers-reduced-motion:reduce){.hero-word,.site-header,[data-reveal],.fresco-hero .eyebrow,.fresco-hero .hero-description,.contact-fresco-content>div{animation:none!important;transition:none!important;opacity:1!important;transform:none!important;filter:none!important}.button .button-roll>span{transition:none}.button:hover .button-roll>span{transform:none}}

.case-listing .p-work-card[hidden]{display:none!important}
.archive-index-page .p-work-card h3{min-height:0}
@media(min-width:601px){.archive-index-page .p-work-card>p{min-height:35px}}
.p-work-card:focus-visible .work-link>span{transform:rotate(-45deg)}

/* Cancel the legacy two-column card span on the case index. */
.archive-index-page .case-listing>.p-work-card{grid-column:auto}
.archive-index-page .article-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 10px;align-items:stretch}
.article-index-grid>[data-article-category]{display:flex;min-width:0}
.article-index-grid>[data-article-category][hidden]{display:none!important}
.article-index-card{width:100%;height:100%}
.article-card-meta{display:flex;justify-content:space-between;gap:12px;margin:17px 10px 0;font-size:11px;color:var(--reference-muted);line-height:1.5}
.archive-index-page .article-index-card h3{margin-top:10px}
.insights-index-page main>.section:last-child{padding-top:0}
@media(max-width:1199px) and (min-width:601px){.archive-index-page .article-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.archive-index-page .article-index-grid{grid-template-columns:1fr;gap:20px}.article-card-meta{font-size:12px}}
/* Related reading shares the archive card component instead of large image overlays. */
.related-reading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 12px;align-items:stretch}
.related-reading-grid>.p-work-card{grid-column:auto;min-width:0}
.related-reading-grid .work-image{height:auto;aspect-ratio:4/3;flex-shrink:0}
.related-reading-grid .article-index-card h3{font-size:24px;line-height:1.25;min-height:0;margin:12px 10px}
.related-reading-grid .article-index-card>p{font-size:13px;line-height:1.65;min-height:0;margin-bottom:25px}
.related-reading-grid .work-link{margin-top:auto}
.related-reading>.section-heading{margin-bottom:40px}
@media(max-width:1199px) and (min-width:601px){.related-reading-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.related-reading-grid{grid-template-columns:1fr;gap:20px}.related-reading-grid .article-index-card h3{font-size:27px}.related-reading-grid .article-index-card>p{font-size:14px}}
