
/* fonts.css */
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/219b02c7d8884817.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/468d56b6b25b05b7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/219b02c7d8884817.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/468d56b6b25b05b7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/219b02c7d8884817.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/468d56b6b25b05b7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/219b02c7d8884817.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/468d56b6b25b05b7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/e8c0b39992f06b3d.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/95a493061fe0a8d0.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/40af11327fe53081.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/bab757f8a0a1bc04.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/ce093b341d9c1065.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/e310b55a7fd9677f.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/e8c0b39992f06b3d.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/95a493061fe0a8d0.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/40af11327fe53081.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/bab757f8a0a1bc04.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/ce093b341d9c1065.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/e310b55a7fd9677f.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/e8c0b39992f06b3d.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/95a493061fe0a8d0.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/40af11327fe53081.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/bab757f8a0a1bc04.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/ce093b341d9c1065.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/e310b55a7fd9677f.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/e8c0b39992f06b3d.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/95a493061fe0a8d0.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/40af11327fe53081.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/bab757f8a0a1bc04.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/ce093b341d9c1065.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/e310b55a7fd9677f.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/e8c0b39992f06b3d.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/95a493061fe0a8d0.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/40af11327fe53081.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* vietnamese */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/bab757f8a0a1bc04.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/ce093b341d9c1065.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/fonts/e310b55a7fd9677f.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/919a7720ae1671f0.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/3170a883f1968a2d.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/3512ad3b4ddd21fa.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/06bc9a8c179afaf7.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/e6d6d1d73858aa9b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/919a7720ae1671f0.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/3170a883f1968a2d.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/3512ad3b4ddd21fa.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/06bc9a8c179afaf7.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/e6d6d1d73858aa9b.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/d04439363ec80513.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/d81372bae1f872f1.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/826f73ca737feec0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/9dc38267bdee93a6.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/5d618c462b7a5b74.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/d04439363ec80513.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/d81372bae1f872f1.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/826f73ca737feec0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/9dc38267bdee93a6.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/5d618c462b7a5b74.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/d04439363ec80513.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/d81372bae1f872f1.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/826f73ca737feec0.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/9dc38267bdee93a6.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/5d618c462b7a5b74.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


/* styles.css */

:root{--bg:#101112;--ink:#f0f0e8;--muted:#aaa9a4;--accent:#e7fc70;--line:#ffffff28;--pad:5vw;color-scheme:dark;font-family:'DM Sans',Arial,sans-serif;background:var(--bg);color:var(--ink);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;overflow-x:hidden}body:has(dialog[open]){overflow:hidden}button,a,input,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{opacity:.25;cursor:default}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:500}button{background:none;border:0}a:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:var(--accent);color:#111}[hidden]{display:none!important}.micro{font-size:10px;font-weight:500;letter-spacing:.12em;line-height:1.6}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{position:fixed;top:15px;left:15px;z-index:1000;background:var(--accent);color:#111;padding:15px}.reading-progress{position:fixed;left:0;top:0;z-index:90;width:0;height:3px;background:var(--accent)}.site-header{height:102px;padding:0 var(--pad);display:flex;align-items:center;gap:5vw;position:relative;z-index:20;border-bottom:1px solid var(--line)}.wordmark{font-family:Manrope,Arial,sans-serif;font-size:15px;font-weight:800;line-height:1.1;letter-spacing:-.06em;position:relative}.wordmark span{display:block}.wordmark sup{position:absolute;top:0;right:-20px;font-size:15px;color:var(--accent)}.header-description{font-size:10px;line-height:1.5;color:var(--muted)}nav{display:flex;gap:34px;margin-left:auto;align-items:center;font-size:12px}nav a{padding:12px 0}nav a:hover{color:var(--accent)}nav sup{font-size:8px;vertical-align:top;margin-left:4px;color:var(--accent)}.contact-nav{border-bottom:1px solid var(--ink)}.opening{position:relative;height:calc(100vh + 190px);min-height:900px;max-height:1190px;padding:30px var(--pad) 45px;isolation:isolate}.opening-top{display:flex;justify-content:space-between}.opening-title{position:relative;z-index:5;padding-top:70px;pointer-events:none;mix-blend-mode:exclusion}.opening h1{font-size:clamp(90px,13.65vw,225px);line-height:.96;letter-spacing:-.082em;font-weight:500}.opening h1 span{color:var(--accent)}.floating-gallery{position:absolute;inset:0;z-index:2}.float-art{position:absolute;transition:transform 1s cubic-bezier(.2,.7,.2,1);will-change:transform}.float-art img{height:100%;object-fit:cover;transition:filter .7s,scale .7s}.float-art:hover img{scale:1.035}.float-art>span{position:absolute;bottom:-26px;left:0;font-size:8px;letter-spacing:.1em;white-space:nowrap;color:var(--ink)}.art-fashion{right:8%;top:88px;width:25%;height:52%;rotate:7deg;background:#680b0e}.art-fashion img{object-position:center 40%}.art-digital{left:38%;bottom:170px;width:32%;height:26%;rotate:-8deg;box-shadow:0 30px 70px #0008}.art-digital img{object-fit:contain;background:#030404}.art-paint{left:8%;bottom:158px;width:22%;height:31%;rotate:-12deg}.gallery-note{position:absolute;right:7%;bottom:154px;width:140px;font-size:12px;line-height:1.5;color:var(--muted)}.gallery-note i{color:var(--ink)}.note-mark{display:block;color:var(--accent);font-size:65px;line-height:1;margin-top:30px;animation:turn 35s linear infinite;width:max-content}.opening-bottom{position:absolute;bottom:38px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;align-items:end;font-size:12px;line-height:1.5}.scroll-link{display:flex;gap:48px;align-items:center;font-size:10px;letter-spacing:.12em}.scroll-link span{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:48px;height:48px;font-size:22px;transition:background .3s}.scroll-link:hover span{background:var(--accent);color:#111}.work{padding:115px var(--pad) 90px;border-top:1px solid var(--line)}.work-intro{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:start;gap:35px}.work-intro h2{font-size:clamp(42px,5.7vw,88px);letter-spacing:-.06em;line-height:1.08}.work-intro h2 em{font-style:normal;color:var(--muted)}.work-intro>p{font-size:12px;line-height:1.8;align-self:end;padding-bottom:5px}.filter-bar{display:flex;gap:10px;margin:70px 0 38px;flex-wrap:wrap}.filter-bar button{font-size:11px;border:1px solid var(--line);padding:13px 22px;border-radius:30px;transition:all .25s}.filter-bar button sup{font-size:8px;margin-left:9px}.filter-bar button:hover{border-color:var(--accent)}.filter-bar button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#151610}.exhibit{position:relative;display:block;min-height:620px;margin-bottom:32px;overflow:hidden;background:var(--surface);--project-accent:var(--accent);isolation:isolate}.exhibit-top{position:absolute;left:35px;right:35px;top:30px;display:flex;justify-content:space-between;align-items:center;z-index:5;font-size:10px;letter-spacing:.1em}.exhibit-top span:last-child{color:var(--project-accent)}.exhibit-art{position:absolute;inset:0;z-index:1}.exhibit-art img{position:absolute;transition:transform .9s cubic-bezier(.2,.7,.2,1)}.exhibit:hover .exhibit-art img{transform:translateY(-12px) rotate(0)}.exhibit-label{position:absolute;bottom:36px;left:35px;right:35px;z-index:3;display:flex;align-items:end;justify-content:space-between;gap:24px}.exhibit-label h3{font-size:clamp(45px,6vw,95px);letter-spacing:-.065em;line-height:1}.exhibit-label p{font-size:12px;margin-top:16px;max-width:340px;line-height:1.6}.round-arrow{display:grid;place-items:center;flex-shrink:0;width:64px;height:64px;border:1px solid #ffffff80;border-radius:50%;font-size:28px;transition:background .3s,transform .3s}.exhibit:hover .round-arrow{background:var(--project-accent);border-color:var(--project-accent);color:#111;transform:rotate(45deg)}.exhibit.arabian-nights{background:#3c0c11}.arabian-nights .exhibit-art .main-art{height:91%;width:42%;object-fit:cover;right:22%;top:8%;rotate:-5deg}.arabian-nights .exhibit-art .support-art{height:60%;width:29%;object-fit:cover;right:-2%;top:13%;rotate:8deg}.arabian-nights .exhibit-label{max-width:70%;text-shadow:0 3px 40px #000}.exhibit.ecoride{background:#173a39}.ecoride .exhibit-art .main-art{width:66%;height:65%;object-fit:contain;right:3%;top:10%;rotate:-7deg;filter:drop-shadow(0 35px 30px #06171688)}.ecoride .exhibit-art:before{content:'';position:absolute;left:12%;top:15%;width:430px;height:430px;border:1px solid #9cf0df44;border-radius:50%}.ecoride .exhibit-label h3{color:#b3f2df}.exhibit.show-of-hands{background:#b3cbc1;color:#1b302a}.show-of-hands .exhibit-art .main-art{width:68%;height:115%;object-fit:contain;right:-1%;top:-7%;rotate:5deg}.show-of-hands .exhibit-top span:last-child{color:#304940}.show-of-hands .round-arrow{border-color:#304940}.show-of-hands .exhibit-label{max-width:70%}.show-of-hands .exhibit-label h3{max-width:380px}.exhibit.solar-system{background:#cfb055;color:#242019}.solar-system .exhibit-art .main-art{right:19%;height:93%;width:33%;bottom:0;object-fit:contain}.solar-system .exhibit-art .support-art{width:39%;height:70%;object-fit:cover;right:-5%;top:5%;border-radius:50%;z-index:-1;opacity:.6}.exhibit.bank-of-baroda{background:#592a17}.bank-of-baroda .exhibit-art .main-art{width:60%;height:73%;object-fit:cover;object-position:top;right:4%;top:10%;rotate:5deg}.exhibit.elderly-care{background:#484050}.elderly-care .exhibit-art .main-art{width:27%;height:75%;object-fit:contain;right:27%;top:6%;rotate:-7deg}.elderly-care .exhibit-art .support-art{width:24%;height:70%;object-fit:contain;right:5%;top:17%;rotate:8deg}.exhibit.wine-tasting{background:#461728}.wine-tasting .exhibit-art .main-art{width:70%;height:70%;object-fit:contain;right:2%;top:5%;rotate:-5deg}.exhibit.hand-sketches{background:#282330}.hand-sketches .exhibit-art .main-art{height:80%;width:40%;object-fit:contain;right:4%;top:10%;rotate:8deg}.exhibit.paintings{background:#182d35}.paintings .exhibit-art .main-art{width:55%;height:72%;object-fit:cover;right:4%;top:7%;rotate:5deg}.work-index-heading{display:flex;justify-content:space-between;padding:70px 0 20px;font-size:10px;letter-spacing:.1em}.index-row{display:grid;grid-template-columns:48px 1fr 220px 35px;align-items:center;border-top:1px solid var(--line);padding:28px 0;position:relative;transition:color .3s,padding .3s}.index-row:last-child{border-bottom:1px solid var(--line)}.index-row:hover{color:var(--accent);padding-left:16px}.index-row .index-number{font-size:10px;color:var(--muted)}.index-row h3{font-size:clamp(23px,3vw,45px);letter-spacing:-.05em}.index-row .index-category{font-size:10px;color:var(--muted)}.index-row .index-arrow{font-size:26px}.hover-preview{position:fixed;z-index:25;width:220px;height:250px;pointer-events:none;opacity:0;transform:translate(-50%,-50%) rotate(-7deg);transition:opacity .2s;box-shadow:0 20px 70px #0007}.hover-preview.active{opacity:1}.hover-preview img{width:100%;height:100%;object-fit:cover;background:#262727}.about{padding:140px var(--pad);background:#dfdfd5;color:#22261c}.about-heading{display:grid;grid-template-columns:1fr 3fr;gap:35px}.about h2{font-size:clamp(55px,8.3vw,130px);letter-spacing:-.07em;line-height:1.05}.about h2 em{font-style:normal;color:#7a7b65}.about-composition{display:grid;grid-template-columns:1fr 1fr;gap:12vw;margin-top:90px;align-items:center}.about-composition figure{rotate:-5deg;width:90%;margin-left:5%}.about-composition img{aspect-ratio:1;object-fit:cover}.about-composition figcaption{font-size:10px;margin-top:13px}.about-story p{font-size:15px;line-height:1.8;margin-bottom:22px;max-width:500px}.about-story .large-copy{font-size:25px;line-height:1.45;letter-spacing:-.035em;margin-bottom:35px}.line-link{display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid currentColor;padding:18px 0;font-size:10px;letter-spacing:.08em;margin-top:35px}.line-link span{font-size:20px}.resume{padding:125px var(--pad)}.resume h2{font-size:clamp(50px,7vw,100px);line-height:1.08;letter-spacing:-.06em;margin-top:30px}.resume h2 span{color:#888b83}.resume-details{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:70px;padding-top:25px;border-top:1px solid var(--line)}.resume-details h3{font-size:13px;margin-bottom:18px}.resume-details p{font-size:12px;line-height:1.9;color:var(--muted)}.contact{background:var(--accent);color:#23271a;padding:70px var(--pad) 0;overflow:hidden}.contact h2{font-size:clamp(60px,10.3vw,160px);line-height:1.05;letter-spacing:-.075em;margin:45px 0}.contact h2 em{font-style:normal;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:14px}.contact>div{display:flex;justify-content:space-between;align-items:center}.contact p{font-size:13px;line-height:1.7}.contact .line-link{margin:0;min-width:280px}.contact-name{display:block;font-family:Manrope,sans-serif;font-size:19vw;letter-spacing:-.09em;font-weight:700;margin:90px 0 -5vw;line-height:1}footer{padding:30px var(--pad);display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.06em;line-height:1.7;border-top:1px solid var(--line)}footer span:nth-child(2){color:var(--muted)}
/* Project worlds */
#project-view{--project-accent:#d9c593;--surface:#2c1819}.project-nav{display:flex;justify-content:space-between;align-items:center;padding:24px var(--pad);font-size:10px;letter-spacing:.07em;border-bottom:1px solid var(--line)}.project-nav a:hover{color:var(--project-accent)}.project-opening{position:relative;min-height:660px;background:var(--surface);overflow:hidden;display:grid;grid-template-columns:1fr 1fr;padding:65px var(--pad);gap:30px;align-items:center;isolation:isolate}.project-title{position:relative;z-index:3}.project-title h1{font-size:clamp(56px,8.5vw,138px);line-height:1;letter-spacing:-.07em;max-width:800px;margin:28px 0}.project-title .project-headline{font-size:21px;letter-spacing:-.02em;line-height:1.5;max-width:360px}.project-hero-image{height:600px;display:flex;justify-content:center;align-items:center}.project-hero-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 25px 40px #0004);rotate:4deg}.case-arabian-nights .project-hero-image img{object-fit:cover;max-width:460px;rotate:6deg}.case-ecoride .project-hero-image img{height:auto;max-height:500px;rotate:-6deg}.case-show-of-hands .project-hero-image img{width:120%;max-width:none;rotate:7deg}.case-solar-system .project-opening:after{content:'';position:absolute;width:500px;height:500px;right:-5%;top:8%;background:url('assets/editorial/solar-sun-print.webp') center/cover;border-radius:50%;z-index:-1;opacity:.6}.case-solar-system .project-hero-image img{height:620px}.case-elderly-care .project-hero-image img{max-width:290px;height:560px;rotate:6deg}.case-bank-of-baroda .project-hero-image img{height:520px;object-fit:cover;object-position:top;rotate:5deg}.case-hand-sketches .project-hero-image img{max-width:400px}.case-paintings .project-hero-image img{height:440px;object-fit:cover}.project-overview{padding:80px var(--pad) 95px;display:grid;grid-template-columns:1fr 2fr;gap:6vw}.project-overview .project-metadata{display:flex;flex-direction:column;gap:18px;font-size:11px;line-height:1.5}.project-metadata>span{border-bottom:1px solid var(--line);padding-bottom:18px;max-width:250px}.project-deck{font-size:clamp(22px,2.5vw,36px);line-height:1.5;letter-spacing:-.03em;max-width:800px}.chapter-links{display:flex;gap:22px;flex-wrap:wrap;margin-top:30px}.chapter-links a{font-size:10px;padding-bottom:6px;border-bottom:1px solid var(--line)}.chapter-links a:hover{color:var(--project-accent)}.project-feature{margin:0 var(--pad) 100px}.feature-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.feature-heading h2{font-size:clamp(35px,4vw,65px);letter-spacing:-.05em;line-height:1.15}.feature-heading>p{font-size:12px;line-height:1.7;max-width:320px;color:var(--muted)}.lookbook{display:grid;grid-template-columns:1fr .8fr 1fr;gap:22px;align-items:center}.lookbook figure:nth-child(2){margin-top:120px}.lookbook figure:nth-child(3){margin-top:-60px}.image-button{display:block;position:relative;padding:0;width:100%;text-align:left;overflow:hidden}.image-button:after{content:'VIEW CLOSER ↗';position:absolute;bottom:14px;right:14px;background:#101112dc;color:#eee;padding:10px 13px;font-size:8px;letter-spacing:.08em;opacity:0;transform:translateY(6px);transition:.3s}.image-button:hover:after,.image-button:focus-visible:after{opacity:1;transform:translateY(0)}.image-button img{transition:transform .7s}.image-button:hover img{transform:scale(1.025)}figcaption{font-size:10px;color:var(--muted);line-height:1.7;margin-top:13px}.palette{display:flex;gap:18px;margin-top:40px;align-items:center}.palette-item{display:flex;align-items:center;gap:10px;font-size:10px;color:var(--muted)}.palette-dot{width:24px;height:24px;border:1px solid #ffffff35;border-radius:50%}.project-chapters{padding:0 var(--pad)}.chapter{display:grid;grid-template-columns:1fr 1.25fr;gap:8vw;align-items:start;padding:90px 0;border-top:1px solid var(--line)}.chapter:nth-child(even){grid-template-columns:1.25fr 1fr}.chapter:nth-child(even) .chapter-copy{grid-column:2;grid-row:1}.chapter:nth-child(even) figure{grid-column:1;grid-row:1}.chapter-copy{position:sticky;top:45px}.chapter-number{font-size:10px;letter-spacing:.1em;color:var(--project-accent);display:block;margin-bottom:25px}.chapter h2{font-size:clamp(30px,3.6vw,56px);line-height:1.15;letter-spacing:-.05em;max-width:530px;margin-bottom:25px}.chapter p{font-size:14px;line-height:1.9;color:#b9bab3;max-width:540px;margin-bottom:20px}.chapter figure{width:100%}.chapter figure img{width:100%;max-height:780px;object-fit:contain;background:#191b1c}.chapter-figure-note{display:flex;justify-content:space-between;gap:20px}.chapter-figure-note span{white-space:nowrap;color:var(--project-accent)}.interaction-stage{background:var(--surface);padding:45px}.stage-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:35px}.stage-tabs button{padding:10px 18px;border:1px solid #ffffff35;border-radius:30px;font-size:11px}.stage-tabs button[aria-pressed=true]{background:var(--project-accent);color:#151818;border-color:var(--project-accent)}.demo-layout{display:grid;grid-template-columns:1.6fr 1fr;align-items:center;gap:50px}.demo-visual img{width:100%;max-height:540px;object-fit:contain}.demo-copy .micro{color:var(--project-accent)}.demo-copy h3{font-size:28px;line-height:1.2;letter-spacing:-.035em;margin:15px 0}.demo-copy p{font-size:13px;line-height:1.8;color:#c4c6bd}.demo-copy .image-open-link{font-size:10px;border-bottom:1px solid var(--line);padding:12px 0;margin-top:15px}.planet-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.planet-pair figure:first-child{grid-column:span 2}.planet-pair img{object-fit:contain;max-height:610px;background:#111}.planet-pair figure:first-child img{max-height:650px}.planet-pair figcaption{color:#d4d2bb}.phone-pair{display:flex;gap:35px;align-items:start;justify-content:center}.phone-pair img{max-height:580px;object-fit:contain;max-width:44%;rotate:-3deg}.phone-pair img:nth-child(2){rotate:5deg;margin-top:65px}.browser-frame{background:#313332;padding:30px 12px 12px;position:relative;border:1px solid #ffffff33;border-radius:8px}.browser-frame:before{content:'● ● ●';position:absolute;top:9px;left:14px;font-size:8px;letter-spacing:3px;color:#a5a69d}.browser-scroll{height:600px;overflow:auto;overscroll-behavior:contain;background:#fff}.browser-scroll img{width:100%;height:auto}.browser-caption{font-size:11px;color:var(--muted);margin-top:14px}.painting-wall{display:grid;grid-template-columns:1.4fr 1fr;gap:8vw;align-items:center}.painting-wall figure:nth-child(2){margin-top:110px}.sketch-controls{margin-bottom:25px}.source-archive{padding:80px var(--pad) 100px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.5fr;gap:6vw;background:#191b1a}.source-archive h2{font-size:42px;line-height:1.15;letter-spacing:-.05em;margin:20px 0}.source-archive p{font-size:13px;line-height:1.8;color:var(--muted);max-width:340px}.source-list button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:22px 0;border-bottom:1px solid var(--line);gap:20px;text-align:left;font-size:12px;line-height:1.5}.source-list button span{white-space:nowrap;font-size:10px;color:var(--muted)}.source-list button:hover{color:var(--project-accent)}.project-credit{padding:35px var(--pad);font-size:11px;line-height:1.8;color:var(--muted);border-top:1px solid var(--line)}.next-project{display:block;padding:70px var(--pad);background:var(--surface)}.next-project h2{display:flex;justify-content:space-between;font-size:clamp(35px,7vw,105px);line-height:1.15;letter-spacing:-.065em;margin-top:22px}.next-project:hover h2{color:var(--project-accent)}
/* Original work reader */
dialog{position:fixed;inset:15px;width:calc(100vw - 30px);max-width:none;height:calc(100dvh - 30px);max-height:none;padding:0;margin:0;border:1px solid #555;background:#151717;color:var(--ink);z-index:100}dialog::backdrop{background:#000d;backdrop-filter:blur(8px)}.viewer-header{padding:20px 30px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.viewer-header h2{font-size:17px;margin-top:5px;letter-spacing:-.025em}.viewer-header .micro{color:var(--accent);font-size:8px}.viewer-header button{font-size:11px}.viewer-header button span{font-size:24px;margin-left:20px}.viewer-controls{display:flex;justify-content:center;align-items:center;gap:20px;padding:13px;border-bottom:1px solid var(--line);font-size:11px}.viewer-controls button{padding:7px}.viewer-controls select{background:#303330;color:white;border:1px solid #555;padding:5px;max-width:100px}.viewer-controls a{border-bottom:1px solid var(--line)}#viewer-images{height:calc(100% - 157px);overflow:auto;padding:20px;overscroll-behavior:contain;scrollbar-gutter:stable}#viewer-images img{display:block;max-height:100%;object-fit:contain;width:auto;max-width:100%;margin:0 auto 20px;background:white}#viewer-images.zoomed img{max-height:none;max-width:none;width:1600px}.viewer-error{text-align:center;padding:60px;color:var(--muted)}.reveal{transition:opacity .8s,transform 1s}.js-motion .reveal:not(.revealed){opacity:0;transform:translateY(40px)}@keyframes turn{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal:not(.revealed){opacity:1;transform:none}}
@media(min-width:1800px){:root{--pad:max(6vw,calc((100vw - 1700px)/2))}.opening{max-height:1250px}}
@media(max-width:1000px){.header-description{display:none}.opening{min-height:880px}.opening-title{padding-top:100px}.opening h1{font-size:13.5vw}.art-fashion{top:110px;width:29%;height:45%}.art-digital{left:40%;width:36%;height:24%;bottom:205px}.art-paint{width:26%;height:31%;bottom:180px}.gallery-note{right:6%;bottom:100px;font-size:10px}.note-mark{display:none}.work-intro{grid-template-columns:1fr 2fr}.work-intro>p{grid-column:2}.exhibit{min-height:570px}.exhibit-label h3{font-size:65px}.work-intro h2{font-size:64px}.exhibit-label{left:25px;right:25px}.exhibit-top{left:25px;right:25px}.index-row{grid-template-columns:35px 1fr 160px 30px}.index-category{max-width:130px;line-height:1.5}.about-heading{grid-template-columns:1fr 2fr}.about-composition{gap:7vw}.project-opening{min-height:560px}.project-hero-image{height:450px}.project-title h1{font-size:9vw}.case-solar-system .project-hero-image img{height:470px}.case-bank-of-baroda .project-hero-image img{height:410px}.case-elderly-care .project-hero-image img{height:420px}.chapter{gap:5vw}.demo-layout{gap:25px}.interaction-stage{padding:25px}.demo-copy h3{font-size:23px}.lookbook{gap:14px}.phone-pair{gap:10px}.project-overview{gap:4vw}}
@media(max-width:650px){:root{--pad:6vw}.site-header{height:80px;gap:20px}.wordmark{font-size:12px}nav{gap:18px;font-size:10px}.contact-nav,.header-description{display:none}nav sup{font-size:7px;margin-left:2px}.opening{height:830px;min-height:0;padding-top:23px}.opening-top .micro{font-size:7px;letter-spacing:.09em}.opening-top span:last-child{display:none}.opening-title{padding-top:90px}.opening h1{font-size:15.3vw;line-height:1.05;letter-spacing:-.08em}.floating-gallery{inset:0}.art-fashion{top:51px;right:8%;height:330px;width:42%;rotate:7deg}.art-digital{left:35%;width:58%;height:157px;bottom:178px;rotate:-7deg}.art-paint{left:9%;bottom:275px;width:36%;height:210px;rotate:-10deg}.float-art>span{font-size:6px;bottom:-20px}.gallery-note{display:none}.opening-bottom{bottom:36px;align-items:end;font-size:10px}.scroll-link{font-size:8px;gap:12px}.scroll-link span{width:36px;height:36px;font-size:20px}.work{padding:70px var(--pad)}.work-intro{display:block}.work-intro .micro{font-size:8px}.work-intro h2{font-size:49px;margin-top:25px}.work-intro>p{font-size:11px;margin-top:25px}.filter-bar{gap:8px;margin:35px 0 24px}.filter-bar button{padding:10px 13px;font-size:9px}.filter-bar button sup{font-size:7px;margin-left:5px}.exhibit{min-height:580px;margin-bottom:20px}.exhibit-top{left:20px;right:20px;top:22px;font-size:8px;gap:20px}.exhibit-top span:first-child{max-width:180px;line-height:1.6}.exhibit-label{left:20px;right:20px;bottom:25px;align-items:end}.exhibit-label h3{font-size:46px;line-height:1.06}.exhibit-label p{font-size:10px;max-width:240px;margin-top:12px}.round-arrow{width:40px;height:40px;font-size:22px}.arabian-nights .exhibit-art .main-art{right:22%;width:58%;height:60%;top:11%}.arabian-nights .exhibit-art .support-art{width:43%;height:42%;right:-8%;top:23%}.arabian-nights .exhibit-label{max-width:none}.ecoride .exhibit-art .main-art{width:100%;height:47%;right:-3%;top:13%}.ecoride .exhibit-art:before{left:0;width:300px;height:300px}.show-of-hands .exhibit-art .main-art{width:125%;height:89%;right:-21%;top:0}.show-of-hands .exhibit-label{max-width:none}.show-of-hands .exhibit-label h3{max-width:250px}.solar-system .exhibit-art .main-art{height:62%;width:49%;top:12%;right:27%}.solar-system .exhibit-art .support-art{height:46%;width:70%;top:10%;right:-15%}.bank-of-baroda .exhibit-art .main-art{width:85%;height:55%;top:12%;right:6%}.elderly-care .exhibit-art .main-art{height:53%;width:39%;right:43%;top:13%}.elderly-care .exhibit-art .support-art{height:49%;width:36%;right:9%;top:21%}.wine-tasting .exhibit-art .main-art{width:120%;height:65%;right:-10%;top:4%}.hand-sketches .exhibit-art .main-art{width:65%;height:56%;right:15%;top:12%}.paintings .exhibit-art .main-art{width:88%;height:51%;right:4%;top:13%}.work-index-heading{padding-top:40px;font-size:8px}.index-row{grid-template-columns:24px 1fr 25px;padding:23px 0;gap:10px}.index-row h3{font-size:25px}.index-row .index-category{grid-column:2;grid-row:2;max-width:none;font-size:9px}.index-arrow{grid-column:3;grid-row:1}.index-number{grid-row:1}.hover-preview{display:none}.about{padding:70px var(--pad)}.about-heading{display:block}.about-heading .micro{font-size:8px}.about h2{font-size:59px;margin-top:30px}.about-composition{grid-template-columns:1fr;gap:55px;margin-top:50px}.about-composition figure{width:80%;margin-left:10%}.about-story .large-copy{font-size:23px}.about-story p{font-size:13px}.resume{padding:70px var(--pad)}.resume h2{font-size:47px}.resume-details{grid-template-columns:1fr;margin-top:40px;gap:30px}.resume-details h3{margin-bottom:10px}.contact{padding-top:45px}.contact .micro{font-size:8px}.contact h2{font-size:60px;margin:35px 0}.contact h2 em{text-underline-offset:7px}.contact>div{display:block}.contact .line-link{margin-top:25px}.contact-name{margin-top:55px;font-size:18.5vw}footer{flex-wrap:wrap;font-size:7px;gap:15px}footer span:nth-child(2){display:none}.project-nav{padding:20px var(--pad);font-size:8px}.project-opening{grid-template-columns:1fr;padding:40px var(--pad) 35px;gap:30px}.project-title .micro{font-size:8px}.project-title h1{font-size:17vw;margin:20px 0}.project-title .project-headline{font-size:17px;max-width:280px}.project-hero-image{height:400px;margin-top:10px}.case-arabian-nights .project-hero-image img{max-width:280px}.case-show-of-hands .project-hero-image img{max-width:450px;height:500px}.case-solar-system .project-hero-image img{height:440px}.case-solar-system .project-opening:after{width:400px;height:400px;top:auto;bottom:40px}.case-ecoride .project-hero-image{height:270px}.case-bank-of-baroda .project-hero-image img{height:330px;max-width:320px}.case-bank-of-baroda .project-hero-image{height:360px}.case-elderly-care .project-hero-image img{height:380px}.case-hand-sketches .project-hero-image img{max-width:280px;height:390px}.case-paintings .project-hero-image img{height:280px}.case-paintings .project-hero-image{height:320px}.case-wine-tasting .project-hero-image{height:270px}.project-overview{grid-template-columns:1fr;padding:45px var(--pad) 65px;gap:30px}.project-overview .project-metadata{gap:12px;font-size:9px;flex-direction:row;flex-wrap:wrap}.project-metadata>span{padding-bottom:12px;max-width:none}.project-deck{font-size:23px}.chapter-links{gap:18px}.chapter-links a{font-size:9px}.project-feature{margin-bottom:60px}.feature-heading{display:block}.feature-heading h2{font-size:34px}.feature-heading>p{font-size:11px;margin-top:20px}.lookbook{grid-template-columns:1fr 1fr;gap:14px}.lookbook figure:first-child{grid-column:span 2;width:80%}.lookbook figure:nth-child(2){margin-top:0}.lookbook figure:nth-child(3){margin-top:65px}.palette{gap:15px;flex-wrap:wrap}.palette-item{font-size:9px}.chapter,.chapter:nth-child(even){display:flex;flex-direction:column;padding:50px 0;gap:20px}.chapter-copy{position:static}.chapter h2{font-size:35px}.chapter p{font-size:13px;line-height:1.85}.chapter-number{margin-bottom:18px}.chapter figure img{max-height:650px}.chapter-figure-note{display:block}.chapter-figure-note span{display:none}.interaction-stage{padding:22px 16px}.stage-tabs{gap:7px;margin-bottom:25px}.stage-tabs button{font-size:9px;padding:9px 12px}.demo-layout{grid-template-columns:1fr;gap:25px}.demo-copy h3{font-size:26px}.demo-copy p{font-size:12px}.planet-pair{grid-template-columns:1fr}.planet-pair figure:first-child{grid-column:1}.phone-pair img{max-height:420px}.phone-pair img:nth-child(2){margin-top:40px}.browser-scroll{height:440px}.painting-wall{grid-template-columns:1fr;gap:40px}.painting-wall figure:nth-child(2){width:80%;margin:0 0 0 auto}.source-archive{grid-template-columns:1fr;gap:30px;padding:50px var(--pad)}.source-archive h2{font-size:36px}.source-list button{font-size:11px;padding:20px 0}.source-list button span{font-size:8px}.project-credit{font-size:10px}.next-project{padding:45px var(--pad)}.next-project h2{font-size:43px}dialog{inset:5px;width:calc(100vw - 10px);height:calc(100dvh - 10px)}.viewer-header{padding:16px;align-items:start}.viewer-header h2{font-size:13px;line-height:1.4}.viewer-header button{font-size:0}.viewer-header button span{font-size:27px;margin:0}.viewer-controls{flex-wrap:wrap;gap:10px;font-size:10px;padding:8px}#viewer-images{padding:8px;height:calc(100% - 173px)}#viewer-images.zoomed img{width:1200px}.viewer-controls a{font-size:9px}}
/* Keep the opening statement legible as the artwork moves underneath. */
.opening-title{mix-blend-mode:normal}.opening h1{text-shadow:0 2px 24px #10111233}
.case-arabian-nights{--surface:#360e14!important}.case-arabian-nights .project-opening{background:#360e14}.case-arabian-nights .interaction-stage{background:#281116}
@media(prefers-reduced-motion:no-preference){.project-opening{animation:project-enter .7s cubic-bezier(.2,.7,.2,1) both}.project-hero-image{animation:art-enter 1s cubic-bezier(.2,.7,.2,1) both}@keyframes project-enter{from{opacity:0}to{opacity:1}}@keyframes art-enter{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}}
body{background:var(--bg);transition:background .55s ease}.project-title h1{color:var(--project-accent)}.source-archive{background:color-mix(in srgb,var(--surface) 65%,#101112)}.chapter-number,.project-nav a{color:var(--project-accent)}
/* Distinct stages for the objects, garments, and experiences. */
.case-arabian-nights .project-opening{display:block;height:820px;padding:0}.case-arabian-nights .project-title{position:static}.case-arabian-nights .project-title .micro{position:absolute;left:var(--pad);top:45px;z-index:5}.case-arabian-nights .project-title h1{position:absolute;bottom:35px;left:var(--pad);font-size:12.5vw;max-width:70%;margin:0;z-index:5;color:#efdbac;line-height:.9;text-shadow:0 4px 40px #260b1580}.case-arabian-nights .project-headline{position:absolute;left:var(--pad);top:98px;width:235px;z-index:5;font-size:18px}.case-arabian-nights .project-hero-image{position:absolute;inset:0;height:100%;display:block;margin:0}.case-arabian-nights .project-hero-image>img:first-child{position:absolute;right:25%;top:7%;width:39%;height:85%;max-width:none;rotate:-5deg;object-fit:cover}.case-arabian-nights .project-hero-image .hero-companion{position:absolute;right:-3%;top:18%;width:30%;height:64%;max-width:none;rotate:7deg;object-fit:cover}.case-ecoride .project-opening{display:flex;flex-direction:column;gap:20px;padding-top:45px;padding-bottom:70px;background:#12383e}.case-ecoride .project-title{width:100%;text-align:center}.case-ecoride .project-title h1{font-size:7.8vw;max-width:none;margin:20px 0 12px}.case-ecoride .project-title .project-headline{margin:auto;max-width:none;font-size:17px}.case-ecoride .project-hero-image{height:390px;width:70%;max-width:980px;transform:perspective(1000px) rotateX(7deg)}.case-ecoride .project-hero-image img{max-height:100%;height:100%;rotate:-3deg}.case-show-of-hands .project-opening{background:#b3cbc1;color:#1e372d}.case-show-of-hands .project-title h1{color:#1e372d}.case-show-of-hands .project-hero-image{height:660px;margin-bottom:-100px}.case-solar-system .project-title h1{font-size:10vw;line-height:.95}.case-wine-tasting .project-opening{display:flex;flex-direction:column;align-items:start;gap:10px;background:#401626}.case-wine-tasting .project-title{width:100%}.case-wine-tasting .project-title h1{font-size:7.5vw;max-width:850px}.case-wine-tasting .project-hero-image{height:auto;width:100%}.case-wine-tasting .project-hero-image img{height:420px;width:100%;object-fit:contain;rotate:0}.case-paintings .project-opening{padding-bottom:100px}.case-elderly-care .project-title h1{font-size:7vw}.case-hand-sketches .project-title h1{font-size:10vw}
@media(min-width:1600px){.case-arabian-nights .project-opening{height:950px}}
@media(max-width:1000px){.case-arabian-nights .project-opening{height:700px}.case-arabian-nights .project-headline{width:190px;font-size:15px}.case-show-of-hands .project-hero-image{height:520px}.case-ecoride .project-hero-image{height:310px;width:86%}.case-wine-tasting .project-hero-image img{height:330px}}
@media(max-width:650px){.case-arabian-nights .project-opening{height:760px;min-height:0}.case-arabian-nights .project-title .micro{top:30px}.case-arabian-nights .project-headline{top:66px;font-size:15px;width:220px}.case-arabian-nights .project-title h1{font-size:22vw;max-width:90%;bottom:40px}.case-arabian-nights .project-hero-image>img:first-child{right:22%;top:20%;width:67%;height:54%;rotate:-6deg}.case-arabian-nights .project-hero-image .hero-companion{right:-12%;top:35%;width:45%;height:38%}.case-ecoride .project-opening{padding-top:35px;padding-bottom:55px;gap:30px;min-height:0}.case-ecoride .project-title h1{font-size:19vw}.case-ecoride .project-title .project-headline{font-size:15px}.case-ecoride .project-hero-image{height:230px;width:100%}.case-show-of-hands .project-hero-image{height:440px;margin-bottom:-60px}.case-show-of-hands .project-hero-image img{height:440px}.case-solar-system .project-title h1{font-size:19vw}.case-wine-tasting .project-title h1{font-size:17vw}.case-wine-tasting .project-hero-image img{height:280px}.case-elderly-care .project-title h1{font-size:16vw}.case-hand-sketches .project-title h1{font-size:20vw}.case-paintings .project-opening{padding-bottom:35px}}

/* LOOM and Bumble — source-led design management studies. */
.management-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:50px 0 0;border-top:1px solid #ffffff28;padding-top:22px;align-items:stretch}.management-index>a,.management-index>div{display:flex;flex-direction:column;align-items:start;gap:10px;font-size:22px;letter-spacing:-.025em;padding:7px 0}.management-index span{font-size:9px;color:#cbbda5;letter-spacing:.07em}.management-index small{font-size:10px;letter-spacing:0;color:#9fa69d}.management-index>div{opacity:.55}.management-index a:hover{color:#d2c6ab}.forthcoming-project{padding:55px 0 20px;border-top:1px solid #ffffff28}.forthcoming-project h2{font-size:45px;letter-spacing:-.055em;margin:25px 0 12px;color:#b8bcb2}.forthcoming-project p{font-size:13px;color:#989e92}.exhibit.loom{background:#071f29;min-height:680px}.loom .exhibit-art .main-art{height:75%;width:84%;right:0;top:4%;object-fit:contain;rotate:0deg;opacity:.8}.loom .exhibit-label h3{color:#65dedc}.exhibit.bumble{background:#302a20;min-height:680px}.bumble .exhibit-art .main-art{width:65%;height:85%;object-fit:cover;right:3%;top:8%;rotate:3deg}.bumble .exhibit-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#302a20 3%,#302a20aa 35%,transparent 70%)}.bumble .exhibit-label h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:110px;color:#eccb83}.case-loom .project-opening,.case-bumble .project-opening{display:block;padding-top:60px;padding-bottom:65px}.case-loom .project-title,.case-bumble .project-title{display:grid;grid-template-columns:1.2fr 1fr;align-items:end;gap:0 50px;margin-bottom:50px}.case-loom .project-title>.micro,.case-bumble .project-title>.micro{grid-column:1/3}.case-loom .project-title h1,.case-bumble .project-title h1{font-size:clamp(80px,13vw,185px);margin-bottom:0}.case-loom .project-headline,.case-bumble .project-headline{font-size:30px;max-width:450px;padding-bottom:9px}.case-loom .project-title h1{color:#65dedc}.case-bumble .project-title h1{color:#eccb83;font-family:'Cormorant Garamond',Georgia,serif;font-weight:500}.case-loom .project-hero-image,.case-bumble .project-hero-image{height:auto;max-width:1400px;margin:auto}.case-loom .project-hero-image img,.case-bumble .project-hero-image img{rotate:0deg;filter:none;max-height:750px;object-fit:contain;width:100%;height:auto}.case-bumble .project-hero-image{max-width:1150px}.case-loom .demo-layout,.case-bumble .demo-layout{grid-template-columns:1.7fr 1fr}.case-loom .demo-visual img,.case-bumble .demo-visual img{rotate:0deg;max-height:500px;object-fit:contain}.case-loom .demo-visual,.case-bumble .demo-visual{padding:0}.source-list .source-pdf{display:flex;justify-content:space-between;align-items:center;padding:24px 0;gap:20px;border-bottom:1px solid #ffffff28;font-size:13px}.source-pdf span{font-size:9px;white-space:nowrap;color:var(--project-accent)}.case-bumble .chapter h2{font-family:'Cormorant Garamond',Georgia,serif;letter-spacing:-.03em;font-size:clamp(38px,4vw,65px)}.case-loom .source-list button,.case-bumble .source-list button{gap:20px}.case-loom .source-list button span,.case-bumble .source-list button span{white-space:nowrap}body{transition:background-color .6s ease}
@media(max-width:760px){.management-index{grid-template-columns:1fr 1fr;gap:23px;margin-top:30px}.management-index>a,.management-index>div{font-size:21px}.management-index small{font-size:9px}.exhibit.loom,.exhibit.bumble{min-height:420px}.loom .exhibit-art .main-art{width:100%;height:60%;right:0;top:11%;object-fit:contain}.bumble .exhibit-art .main-art{width:90%;right:-8%;height:80%;top:8%}.bumble .exhibit-label h3{font-size:68px}.case-loom .project-opening,.case-bumble .project-opening{padding-top:35px;padding-bottom:35px}.case-loom .project-title,.case-bumble .project-title{display:block;margin-bottom:30px}.case-loom .project-title h1,.case-bumble .project-title h1{font-size:22vw;margin:25px 0 20px}.case-loom .project-headline,.case-bumble .project-headline{font-size:23px;max-width:320px}.case-loom .demo-layout,.case-bumble .demo-layout{grid-template-columns:1fr}.case-bumble .chapter h2{font-size:42px}.source-list .source-pdf{font-size:11px}.source-pdf span{font-size:8px}}
@media(prefers-reduced-motion:reduce){body{transition:none}}
/* Starbucks: an academic data story, presented in its original green palette. */
.exhibit.starbucks{background:#073c2d;min-height:690px}.starbucks .exhibit-art .main-art{object-fit:contain;width:78%;height:75%;right:-1%;top:2%;rotate:-3deg;opacity:.95}.starbucks .exhibit-label h3{color:#e5ebd1;font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;font-size:110px}.starbucks .exhibit-label p{color:#bed2bb}.case-starbucks .project-opening{display:block;padding-top:60px;padding-bottom:60px;background:#073c2d}.case-starbucks .project-title{display:grid;grid-template-columns:1.1fr 1fr;gap:0 45px;align-items:end;margin-bottom:45px}.case-starbucks .project-title>.micro{grid-column:1/3;color:#aac5ad}.case-starbucks .project-title h1{font:500 clamp(80px,12vw,175px)/.95 'Cormorant Garamond',Georgia,serif;letter-spacing:-.045em;color:#e7ecd5;margin:35px 0 0}.case-starbucks .project-headline{font:400 clamp(30px,3.5vw,52px)/1.1 'Cormorant Garamond',Georgia,serif;max-width:450px;color:#d0dfba}.case-starbucks .project-hero-image{height:auto;max-width:1300px;margin:auto}.case-starbucks .project-hero-image img{width:100%;height:auto;max-height:740px;object-fit:contain;rotate:0deg;filter:none;border-radius:20px}.case-starbucks .project-overview{background:#edf1e1;color:#24483b}.case-starbucks .project-metadata{color:#587260}.case-starbucks .project-deck{font-size:clamp(24px,3vw,40px);color:#274b3c}.case-starbucks .chapter-links a{color:#315e48;border-color:#52735955}.case-starbucks .project-feature{padding-top:80px}.case-starbucks .interaction-stage{background:#e7edd9;color:#264c3b}.case-starbucks .demo-layout{grid-template-columns:1.7fr 1fr}.case-starbucks .demo-visual{padding:0}.case-starbucks .demo-visual img{rotate:0deg;width:100%;object-fit:contain;border-radius:12px}.case-starbucks .demo-copy p{color:#4c6b5a}.case-starbucks .image-open-link{color:#2f5d47}.case-starbucks .stage-tabs button{color:#345d48;border-color:#345d4840}.case-starbucks .stage-tabs button[aria-pressed=true]{background:#174b37;color:#f2f4e7;border-color:#174b37}.case-starbucks .chapter h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(38px,4vw,66px);line-height:1.06;letter-spacing:-.035em}.case-starbucks .chapter figure img{border-radius:12px}.case-starbucks .project-credit{max-width:1100px;line-height:1.8}
@media(max-width:760px){.exhibit.starbucks{min-height:420px}.starbucks .exhibit-art .main-art{width:100%;height:60%;right:-3%;top:6%}.starbucks .exhibit-label h3{font-size:68px}.case-starbucks .project-opening{padding-top:35px;padding-bottom:35px}.case-starbucks .project-title{display:block;margin-bottom:30px}.case-starbucks .project-title h1{font-size:22vw;margin:25px 0 20px}.case-starbucks .project-headline{font-size:31px;max-width:320px}.case-starbucks .demo-layout{grid-template-columns:1fr}.case-starbucks .project-feature{padding-top:55px}.case-starbucks .chapter h2{font-size:42px}}
.case-starbucks .feature-heading>p,.case-starbucks .demo-copy p,.case-starbucks .chapter p{font-size:16px;line-height:1.75}.case-starbucks .stage-tabs button{font-size:14px}.case-starbucks .project-credit{font-size:14px}.case-starbucks .chapter-figure-note{font-size:13px}


/* home.css */

/* Shared category pages retain the individual projects' visual worlds. */
.category-heading{padding:35px var(--pad) 65px}.category-back{display:inline-block;font-size:12px;letter-spacing:.06em;border-bottom:1px solid #ffffff35;padding-bottom:10px}.category-heading-row{display:flex;justify-content:space-between;margin-top:60px}.category-heading h1{font-size:clamp(65px,9vw,145px);line-height:1.1;letter-spacing:-.065em;margin:25px 0 20px;max-width:1150px}.category-heading>p{font-size:16px;line-height:1.7;max-width:550px;color:#aeb6ab}.category-tabs{display:flex;margin:40px 0 0;gap:30px;flex-wrap:wrap}.category-tabs a{font-size:14px;border-bottom:1px solid transparent;padding:12px 0;color:#9ba596}.category-tabs a[aria-current=page]{color:#e7e5da;border-bottom-color:#c8cbb9}.category-exhibitions{padding:0 var(--pad) 80px}.category-exhibitions .exhibit{margin-bottom:35px}
.home-surface{--paper:#e6dcd1;--wine:#6c190c;--ink:#3c2821;--muted:#b59f91;--line:#e6dcd12a;--accent:#b38966;background:#160703;color:#e6dcd1;color-scheme:dark}
.home-surface .site-header{height:82px;border:0;padding:0 26px;background:transparent;max-width:1800px;margin:auto}.home-surface .wordmark{font:500 29px/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em}.home-surface .wordmark span{display:inline!important}.home-surface .site-header nav{gap:34px;font-size:13px;letter-spacing:.03em}.site-header nav a{position:relative}.site-header nav a:after{content:'';height:1px;position:absolute;left:0;right:0;bottom:6px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .65s}.site-header nav a:hover:after,.site-header nav a[aria-current=page]:after{transform:scaleX(1)}.home-surface .reading-progress{height:2px;background:#ba8c6e}
.editorial-opening{padding:0 26px 0;max-width:1800px;margin:auto}.opening-composition{display:grid;grid-template-columns:1.26fr .85fr 1fr;grid-template-rows:44fr 30fr 22fr;gap:24px;height:calc(100svh - 139px);min-height:700px;max-height:1100px;position:relative;isolation:isolate}.opening-panel{position:relative;min-width:0;min-height:0;overflow:hidden;border-radius:29px;transform-origin:center;contain:paint}.flower-panel{grid-column:1;grid-row:1/3;background:#e4d8cc;color:#4a362d}.flower-art{position:absolute;inset:0}.flower-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%;transition:scale 1.5s cubic-bezier(.22,.61,.36,1);transform:translate3d(0,var(--scroll-y,0px),0);scale:1.035}.flower-panel:hover .flower-art img{scale:1.065}.flower-top{position:absolute;inset:29px 28px auto;display:flex;justify-content:space-between;gap:14px;z-index:1;align-items:start}.flower-top p{font-size:clamp(16px,1.33vw,23px);line-height:1.35;letter-spacing:-.025em;margin:0}.widget-label{display:flex;align-items:center;gap:10px;font-size:clamp(14px,1.35vw,22px);line-height:1.15;letter-spacing:-.025em;white-space:nowrap}.widget-label>span:first-child{font-size:1.25em}.flower-top .widget-label{color:#752a1c}
.story-note{grid-column:2;grid-row:1;background:#6b190c;color:#dfc6b6;display:flex;flex-direction:column;justify-content:space-between;padding:30px}.story-note h2{font:400 clamp(30px,3vw,49px)/1.1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em;margin:0 0 22px}.story-note p{font-size:clamp(16px,1.35vw,22px);line-height:1.45;letter-spacing:-.018em;margin:0;max-width:320px}.story-note .widget-label{margin-top:25px}.widget-arrow{margin-left:auto;transition:translate .65s}.story-note:hover .widget-arrow{translate:3px -3px}
.work-note{grid-column:2;grid-row:2/4;background:#f1eae0;color:#681b10;display:flex;flex-direction:column;align-items:center;justify-content:end;padding:32px 24px;isolation:isolate}.word-pattern{position:absolute;inset:-25px -45px;font:italic 500 clamp(57px,6.5vw,110px)/.92 'Cormorant Garamond',Georgia,serif;letter-spacing:-.045em;color:#ddd3c67a;white-space:nowrap;z-index:-1;pointer-events:none;transition:translate 1.4s cubic-bezier(.22,.61,.36,1)}.work-note:hover .word-pattern{translate:0 -13px}.work-note-content{text-align:center;margin:auto 0 35px}.work-number{font-size:clamp(88px,9.7vw,165px);font-weight:400;line-height:.92;letter-spacing:-.095em;padding-right:.09em;display:block}.work-note-content p{font-size:clamp(17px,1.7vw,28px);margin:13px 0 0;color:#6e5749;letter-spacing:-.03em}.work-note .widget-label{font-size:clamp(14px,1.15vw,19px);color:#352920;gap:12px;justify-content:center}
.hello-note{grid-column:1;grid-row:3;background:#6b190c;color:#e4d0c1;padding:22px 28px;display:flex;flex-direction:column;justify-content:space-between}.hello-top{display:flex;align-items:center;justify-content:space-between}.hello-arrow{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#e5d8c9;color:#392920;font-size:32px;line-height:1;transition:transform .8s cubic-bezier(.22,.61,.36,1)}.hello-note:hover .hello-arrow{transform:rotate(45deg)}.hello-note p{font-size:clamp(18px,1.55vw,27px);letter-spacing:-.025em;line-height:1.25;margin:16px 0 0}
.portrait-space{grid-column:3;grid-row:1/4;background:#3d100b;color:#e8d9ce;z-index:4}.portrait-media{position:absolute;inset:0;background:#3d100b}.portrait-media>img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 42%}.portrait-media:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(22,7,3,.48) 0%,transparent 20%,transparent 62%,rgba(22,7,3,.78) 100%)}.portrait-top{position:absolute;text-shadow:0 1px 12px #16070366;top:29px;left:20px;right:20px;display:flex;gap:12px;align-items:center;justify-content:center}.portrait-top h1{font-size:clamp(14px,1.35vw,23px);font-weight:400;line-height:1.25;letter-spacing:-.02em;margin:0}.portrait-top>span{font-size:23px}.portrait-caption{position:absolute;text-shadow:0 1px 16px #16070355;bottom:30px;left:28px;right:28px;text-align:center}.portrait-caption p{font-size:clamp(18px,1.65vw,28px);line-height:1.3;letter-spacing:-.025em;margin:0 0 15px}.portrait-caption>span{font-size:12px;color:#e0c9b9}
.opening-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:57px;font-size:12px;color:#bfa696}.opening-foot button{font-size:12px;padding:8px;color:#bfa696}.opening-foot button span{margin-left:8px}.resume-link{font-size:13px}.resume-link span{margin-left:10px}

.home-surface footer{display:none}.home-surface:has(#info-view:not([hidden])) footer{display:flex}.info-back{display:block;max-width:1400px;margin:25px auto;padding:0 3.5vw;font-size:13px}.home-surface .about,.home-surface .resume,.home-surface .contact{background:#e6dbce;color:#3d2b24;padding-top:70px;padding-bottom:80px}.home-surface #info-view h2{font-family:'Cormorant Garamond',Georgia,serif;letter-spacing:-.04em;font-weight:500}.home-surface .about h2 em,.home-surface .resume h2 span,.home-surface .contact h2 em{color:#702516;text-decoration:none}.home-surface .about-story p,.home-surface .resume-details p{color:#695044;font-size:16px}.home-surface .contact-pending{font-size:14px;margin-top:50px;color:#70594c}.home-surface footer{background:#160703;color:#bfa696}.home-surface footer span:nth-child(2){color:#bfa696}.home-surface #info-view .micro{font-size:12px}
.soft-reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity 1.25s cubic-bezier(.22,.61,.36,1),transform 1.25s cubic-bezier(.22,.61,.36,1)}.soft-reveal.in-view{opacity:1;transform:translate3d(0,0,0)}:where(h1,h2,main,section)[tabindex="-1"]:focus{outline:none}
@media(max-width:1100px) and (min-width:761px){.opening-composition{gap:18px;min-height:670px}.editorial-opening{padding:0 20px}.home-surface .site-header{padding:0 20px}.opening-panel{border-radius:23px}.flower-top{inset:25px 23px auto;display:block}.flower-top .widget-label{position:absolute;top:0;right:0;font-size:14px}.flower-top p{font-size:16px;padding-top:34px}.story-note{padding:25px 23px}.story-note h2{font-size:34px;margin-bottom:18px}.story-note p{font-size:16px}.story-note .widget-label{font-size:15px;gap:8px}.hello-note{padding:20px 23px}.hello-note p{font-size:19px}.hello-arrow{width:42px;height:42px}.portrait-top{gap:7px}.portrait-top h1{font-size:15px}.portrait-top>span{font-size:19px}.portrait-caption{left:20px;right:20px}.portrait-caption p{font-size:21px}.portrait-caption>span{font-size:12px}.work-note{padding:26px 15px}.work-note .widget-label{font-size:14px;gap:8px}.opening-foot>span{font-size:12px}}
@media(max-width:760px){.home-surface .site-header{height:75px;padding:0 18px}.home-surface .wordmark{font-size:25px}.home-surface .site-header nav{gap:18px;font-size:12px}.editorial-opening{padding:0 16px}.opening-composition{height:auto;max-height:none;min-height:0;grid-template-columns:1fr 1fr;grid-template-rows:540px 460px 290px 170px;gap:14px}.opening-panel{border-radius:23px}.flower-panel{grid-column:1/3;grid-row:2}.flower-top{inset:24px 23px auto}.flower-top p{font-size:16px;line-height:1.4}.flower-top .widget-label{font-size:15px;gap:7px}.flower-art img{object-position:center 45%}.portrait-space{grid-column:1/3;grid-row:1;margin:0 17px}.portrait-top{top:26px;gap:12px}.portrait-top h1{font-size:21px}.portrait-caption{bottom:28px}.portrait-caption p{font-size:26px}.portrait-caption>span{font-size:13px}.story-note{grid-column:1;grid-row:3;padding:22px 18px}.story-note h2{font-size:29px;margin-bottom:15px;line-height:1.05}.story-note p{font-size:14px;line-height:1.5}.story-note .widget-label{font-size:13px;gap:6px;margin-top:16px}.story-note .widget-arrow{display:none}.work-note{grid-column:2;grid-row:3;padding:24px 13px}.work-note-content{margin:auto 0 31px}.work-number{font-size:93px}.work-note-content p{font-size:17px;line-height:1.3}.work-note .widget-label{font-size:13px;gap:5px;flex-wrap:wrap;white-space:normal;text-align:center}.word-pattern{font-size:72px;inset:-13px -20px}.hello-note{grid-column:1/3;grid-row:4;padding:23px}.hello-note .widget-label{font-size:18px}.hello-arrow{width:43px;height:43px;font-size:29px}.hello-note p{font-size:23px;line-height:1.2;margin-top:10px}.opening-foot{gap:12px;flex-wrap:wrap;padding:20px 1px 0;font-size:12px}.opening-foot>span{width:100%;font-size:12px}.opening-foot button{padding-left:0}.category-heading{padding:25px var(--pad) 40px}.category-heading-row{margin-top:45px}.category-heading h1{font-size:15vw;margin:22px 0}.category-heading>p{font-size:15px}.category-tabs{gap:17px;margin-top:22px}.category-tabs a{font-size:12px}}
@media(max-width:370px){.home-surface .wordmark{font-size:22px}.home-surface .site-header nav{gap:12px;font-size:11px}.flower-top{inset:21px 19px auto}.flower-top p{font-size:15px}.flower-top .widget-label{font-size:13px;gap:5px}.opening-composition{grid-template-rows:490px 420px 315px 170px;gap:12px}.story-note{padding:22px 15px}.story-note h2{font-size:27px}.work-number{font-size:80px}.work-note .widget-label>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.opening-panel,.opening-panel *{animation:none!important;transition:none!important}.soft-reveal{opacity:1;transform:none;transition:none}.flower-art img{transform:none!important}.opening-foot #replay-intro{display:none}}
@media(max-width:370px){.portrait-caption p{font-size:21px}.portrait-caption{left:22px;right:22px}.portrait-caption>span{font-size:12px}}
@media(min-width:761px) and (max-width:950px){.opening-composition{min-height:830px}}


/* chapters.css */
/* The personal chapters extend the landing's cream, wine and editorial rhythm. */
.chapter-navigation{max-width:1748px;width:calc(100% - 52px);margin:6px auto 24px;justify-content:flex-start;gap:32px;flex-wrap:wrap;border-top:1px solid #e3eef122;padding-top:8px;color:#376f8a;font-size:14px}
.chapter-navigation a{white-space:nowrap;padding:12px 0;border-bottom:1px solid transparent;transition:color .6s,border-color .6s}.chapter-navigation a:hover,.chapter-navigation a[aria-current=page]{color:#f5eedd;border-bottom-color:#376f8a}
.personal-page{max-width:1748px;width:calc(100% - 52px);margin:0 auto 30px;--chapter-ink:#16587b;--chapter-wine:#16587b;--chapter-paper:#e3eef1;--chapter-muted:#376f8a}
.paper-card,.wine-card,.beige-card{border-radius:29px;overflow:hidden}.paper-card{background:var(--chapter-paper);color:var(--chapter-ink)}.wine-card{background:#16587b;color:#e3eef1}.beige-card{background:#e3eef1;color:#16587b}
.personal-page .page-eyebrow{display:block;font-size:14px;line-height:1.6;letter-spacing:.035em;font-weight:400}
.personal-page h1,.personal-page h2,.personal-page h3,.serif-note,.story-large,.next-title,.story-questions em,.lenses-end{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;letter-spacing:-.035em}
.personal-page em{font-weight:400}.personal-page h1{font-size:clamp(76px,8.4vw,140px);line-height:.94;color:var(--chapter-wine);margin:30px 0 38px;max-width:1250px}
.personal-page h2{font-size:clamp(45px,4.8vw,76px);line-height:1.02}.personal-page .reading-copy{font-size:17px;line-height:1.85;max-width:680px}.reading-copy p+p{margin-top:24px}.personal-page .lead-copy{font-size:clamp(20px,1.8vw,27px);line-height:1.65;letter-spacing:-.015em}
.page-hero{padding:48px 54px}.page-hero .page-eyebrow{color:#376f8a}.identity-line{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #16587b2b;padding-top:25px;font-size:15px;line-height:1.5}
.about-introduction{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;margin-top:24px;padding:60px 54px}.intro-aside .page-eyebrow{color:#376f8a}.serif-note{font-size:clamp(52px,5vw,80px);line-height:1.04;margin:35px 0 45px;color:#16587b}
.editorial-link{display:inline-flex;align-items:center;gap:35px;font-size:14px;padding:12px 0;border-bottom:1px solid currentColor;transition:gap .8s cubic-bezier(.22,.61,.36,1)}.editorial-link span{font-size:25px}.editorial-link:hover{gap:45px}
.capability-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;margin:24px 0}.capability-card{padding:36px;display:flex;flex-direction:column;min-height:350px}.capability-card h2{font-size:clamp(40px,3.7vw,59px);margin:28px 0 34px}.capability-card p{font-size:16px;line-height:1.85;margin-top:auto}.capability-card.paper-card h2{color:#16587b}
.currently-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding:55px 54px;margin-top:24px}.currently-section h2{margin-top:30px;color:#16587b}.interest-list{list-style:none;padding:24px 0 0;margin:30px 0 0;display:flex;flex-wrap:wrap;gap:12px 24px;border-top:1px solid #16587b2b}.interest-list li{font-size:14px;line-height:1.5}
.education-section{padding:45px 54px;margin:24px 0}.education-section>h2{font-size:44px;margin-bottom:28px;color:#16587b}.education-item{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding:28px 0;border-top:1px solid #16587b2b}.education-item>span{font-size:14px;line-height:1.7;color:#376f8a}.education-item h3{font-size:30px;line-height:1.25;margin-bottom:10px}.education-item p{font-size:16px;line-height:1.75}.education-item .education-detail{font-size:14px;color:#376f8a;margin-top:7px}
.chapter-next{position:relative;display:block;padding:38px 54px 46px;margin-top:24px}.next-title{display:block;font-size:clamp(45px,5.2vw,82px);line-height:1.1;margin-top:20px;padding-right:80px}.next-arrow{position:absolute;right:54px;bottom:48px;width:58px;height:58px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:30px;transition:transform .8s}.chapter-next:hover .next-arrow{transform:rotate(45deg)}
.story-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;padding:48px 54px}.story-hero>div{display:flex;flex-direction:column}.story-hero h1{font-size:clamp(76px,8vw,130px);margin-bottom:50px}.story-first-line{font-size:clamp(21px,2vw,29px);line-height:1.55;max-width:480px;margin-top:auto}.story-hero figure{position:relative;align-self:stretch;margin:0}.story-hero img{width:100%;height:520px;object-fit:cover;border-radius:20px}.story-hero figcaption,.chapter-art figcaption{font-size:12px;line-height:1.6;margin-top:12px;color:#376f8a}
.story-prologue{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:24px;padding:65px 54px}.story-large{font-size:clamp(37px,3.8vw,60px);line-height:1.16;color:#16587b;max-width:600px}
.story-chapter{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:60px 54px;margin-top:24px}.story-chapter h2{margin:26px 0 35px;max-width:570px}.story-chapter.paper-card h2{color:#16587b}.story-chapter .reading-copy{padding-top:42px}.chapter-art{max-width:350px;margin-top:50px}.chapter-art img{height:400px;width:100%;object-fit:cover;border-radius:20px}.chapter-art.interface-art{max-width:470px}.chapter-art.interface-art img{height:auto;object-fit:contain;border-radius:14px}.story-questions{border-top:1px solid #16587b2b;margin-top:32px;padding-top:28px}.story-questions em{display:block;font-size:35px;line-height:1.35;color:#16587b;margin-top:8px}.wine-card .reading-copy{color:#e3eef1}.wine-card .page-eyebrow{color:#e3eef1}
.story-lenses{padding:50px 40px;margin-top:24px}.story-lenses>h2{margin:26px 14px 40px;color:#16587b}.story-lenses>.page-eyebrow{margin-left:14px}.lens-panels{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.lens-panels>a{position:relative;background:#e3eef1;border-radius:22px;overflow:hidden;min-width:0;padding:27px 26px 0;display:flex;flex-direction:column}.lens-panels>a:first-child{background:#16587b;color:#e3eef1}.lens-panels>a:last-child{background:#e3eef1}.lens-panels .page-eyebrow{font-size:12px}.lens-panels h3{font-size:clamp(32px,3vw,49px);line-height:1.04;margin:25px 0 30px;min-height:150px}.lens-panels img{height:270px;width:100%;object-fit:contain;object-position:center bottom;margin-top:auto;transition:transform 1s cubic-bezier(.22,.61,.36,1)}.lens-panels>a:first-child img{object-fit:cover;object-position:center 15%;border-radius:14px 14px 0 0}.lens-panels>a:nth-child(2) img{padding-top:10px}.lens-panels>a:last-child img{width:120%;max-width:none;margin-left:-10%}.lens-arrow{position:absolute;right:20px;bottom:20px;background:#e3eef1;color:#16587b;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;font-size:25px;transition:transform .8s}.lens-panels>a:hover img{transform:translateY(-6px)}.lens-panels>a:hover .lens-arrow{transform:rotate(45deg)}.lenses-end{font-size:clamp(29px,3.1vw,45px);line-height:1.35;margin:50px 14px 5px;max-width:1080px}.lenses-end em{color:#16587b}
.story-ending{padding:65px 54px;margin-top:24px}.story-ending h2{font-size:clamp(57px,7vw,115px);line-height:1.05;margin-bottom:40px;max-width:1200px}
.contact-intro{font-size:19px;line-height:1.8;max-width:650px;margin-top:30px}.contact-intro span{display:block;margin-top:18px}.contact-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:24px;margin-top:24px}.contact-details{padding:20px 42px}.contact-detail{padding:27px 0;border-bottom:1px solid #e3eef133}.contact-detail:last-child{border:0}.contact-detail h2{font:400 13px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:.03em;color:#e3eef1;margin-bottom:14px}.contact-detail a,.contact-detail p{font-size:clamp(20px,2vw,30px);line-height:1.5;letter-spacing:-.025em}.contact-detail a{display:flex;justify-content:space-between;gap:15px;overflow-wrap:anywhere}.contact-detail a span{flex-shrink:0;transition:translate .7s}.contact-detail a:hover span{translate:3px -3px}.contact-current{padding:43px 42px}.contact-current h2{font-size:clamp(40px,4.2vw,65px);line-height:1.02;margin:26px 0 18px;color:#16587b}.contact-current p{font-size:16px;line-height:1.8}.opportunity-copy{margin-top:30px}.contact-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.contact-actions>a{display:flex;align-items:center;gap:20px;padding:13px 17px;border:1px solid #16587b42;border-radius:30px;font-size:14px;line-height:1.5;transition:background .6s,color .6s}.contact-actions>a:hover{background:#16587b;color:#f5eedd}.contact-actions small{font-size:12px}
.category-current{padding:40px;border:1px solid #ffffff2b;border-radius:22px;margin-top:40px;max-width:900px}.category-current .micro{font-size:12px}.category-current h2{font:400 clamp(34px,4vw,58px)/1.15 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em;margin:20px 0}.category-current p{font-size:16px;line-height:1.7;color:#b3b7b0}
.home-surface:has(#info-view:not([hidden])) footer{max-width:1800px;margin:auto;padding:35px 26px;font-size:12px}.home-surface #info-view h2{font-weight:400}
@media(max-width:1100px){.personal-page,.chapter-navigation{width:calc(100% - 40px)}.personal-page h1{font-size:86px}.page-hero,.about-introduction,.currently-section,.education-section,.story-hero,.story-prologue,.story-chapter,.story-ending{padding:40px 36px}.about-introduction,.currently-section,.education-item{gap:45px}.capability-grid{gap:18px}.capability-card{padding:28px 24px;min-height:350px}.capability-card h2{font-size:42px}.story-hero{gap:40px}.story-hero img{height:450px}.story-hero h1{font-size:83px}.story-prologue,.story-chapter{gap:40px}.story-chapter h2{font-size:58px}.lens-panels{gap:16px}.lens-panels>a{padding:24px 18px 0}.lens-panels h3{font-size:35px}.lens-panels .page-eyebrow{font-size:12px}.contact-layout{gap:18px}.contact-current{padding:35px 28px}.contact-details{padding:10px 28px}.contact-detail a,.contact-detail p{font-size:23px}.contact-current h2{font-size:48px}}
@media(max-width:800px){.capability-grid{grid-template-columns:1fr}.capability-card{min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:20px 35px}.capability-card .page-eyebrow{grid-column:1/3}.capability-card h2{margin:0}.capability-card p{margin:0}.contact-layout{grid-template-columns:1fr}.story-lenses{padding:40px 28px}.lens-panels{grid-template-columns:1fr}.lens-panels>a{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:26px}.lens-panels .page-eyebrow{grid-column:1;align-self:start}.lens-panels h3{grid-column:1;margin:0;min-height:0;font-size:37px;align-self:start}.lens-panels img,.lens-panels>a:last-child img{grid-column:2;grid-row:1/3;width:100%;margin:0;height:240px;border-radius:12px}.lens-panels>a:first-child img{border-radius:12px}.lens-panels>a:last-child img{object-fit:contain}.lens-arrow{bottom:16px;right:16px}.story-chapter .reading-copy{padding-top:35px}}
@media(max-width:600px){.personal-page,.chapter-navigation{width:calc(100% - 32px)}.chapter-navigation{font-size:13px;gap:8px 20px;margin-top:0;margin-bottom:18px;flex-wrap:wrap}.paper-card,.wine-card,.beige-card{border-radius:23px}.personal-page .page-eyebrow{font-size:12px}.page-hero,.about-introduction,.currently-section,.education-section,.story-hero,.story-prologue,.story-chapter,.story-ending{padding:32px 24px}.personal-page h1{font-size:clamp(48px,12vw,76px);line-height:.98;margin-top:28px;margin-bottom:32px}.identity-line{font-size:12px;gap:20px;line-height:1.6}.identity-line span:last-child{max-width:130px;text-align:right}.about-introduction,.currently-section{grid-template-columns:1fr;gap:35px;margin-top:16px}.serif-note{font-size:57px;margin:25px 0}.personal-page .reading-copy{font-size:16px;line-height:1.85}.personal-page .lead-copy{font-size:20px;line-height:1.7}.reading-copy p+p{margin-top:23px}.capability-grid{gap:16px;margin:16px 0}.capability-card{display:block;padding:30px 24px}.capability-card h2{font-size:45px;margin:24px 0}.capability-card p{font-size:16px}.currently-section h2{font-size:49px;margin-top:24px}.interest-list{font-size:13px;gap:12px 18px}.education-section{margin:16px 0}.education-section>h2{font-size:40px;margin-bottom:24px}.education-item{display:block;padding:25px 0}.education-item>span{display:block;margin-bottom:14px;font-size:13px}.education-item h3{font-size:27px}.education-item p{font-size:15px}.education-item .education-detail{font-size:13px}.chapter-next{padding:30px 24px;margin-top:16px}.next-title{font-size:46px;padding-right:45px;margin-top:24px}.next-arrow{width:40px;height:40px;font-size:25px;right:24px;bottom:34px}.story-hero{grid-template-columns:1fr;gap:35px}.story-first-line{font-size:23px;margin:0}.story-hero img{height:365px;object-position:center}.story-hero figcaption,.chapter-art figcaption{font-size:12px}.story-prologue,.story-chapter{grid-template-columns:1fr;gap:30px;margin-top:16px}.story-large{font-size:39px}.story-chapter h2{font-size:53px;margin:24px 0 0}.story-chapter .reading-copy{padding-top:0}.chapter-art{margin-top:30px;max-width:100%}.chapter-art img{height:310px;object-position:center 30%}.story-questions em{font-size:31px}.story-lenses{padding:32px 24px;margin-top:16px}.story-lenses>.page-eyebrow{margin-left:0}.story-lenses>h2{font-size:53px;margin:24px 0 32px}.lens-panels>a{display:block;padding:25px 22px 0}.lens-panels h3{font-size:38px;margin:24px 0}.lens-panels img,.lens-panels>a:last-child img{height:280px;margin-top:25px}.lens-panels>a:first-child img{border-radius:12px 12px 0 0}.lenses-end{font-size:30px;margin:35px 0 0}.lenses-end em{display:block;margin-top:12px}.story-ending{margin-top:16px}.story-ending h2{font-size:clamp(45px,10vw,62px);margin-bottom:28px}.contact-intro{font-size:17px;line-height:1.8}.contact-layout{gap:16px;margin-top:16px}.contact-details{padding:8px 24px}.contact-detail{padding:26px 0}.contact-detail h2{font-size:13px}.contact-detail a,.contact-detail p{font-size:21px}.contact-current{padding:32px 24px}.contact-current h2{font-size:49px;margin-top:24px}.contact-actions{gap:12px}.contact-actions>a{font-size:13px;padding:12px 15px}.category-current{padding:28px 22px;margin-top:28px}.category-current h2{font-size:35px}.category-current p{font-size:15px}}
@media(prefers-reduced-motion:reduce){.personal-page *{transition:none!important}.lens-panels>a:hover img{transform:none}.chapter-next:hover .next-arrow,.lens-panels>a:hover .lens-arrow{transform:none}}

.home-surface #info-view .contact-detail h2{font-family:'DM Sans',Arial,sans-serif;font-size:13px;letter-spacing:.03em}
/* Keep the expanded collection name inside its existing project composition. */
.case-solar-system .project-title{min-width:0}.case-solar-system .project-title h1{font-size:clamp(54px,6.5vw,105px)}
@media(max-width:760px){.case-solar-system .project-title h1{font-size:clamp(40px,13.3vw,58px)}.exhibit.solar-system .exhibit-label>div{min-width:0}.exhibit.solar-system .exhibit-label h3{font-size:clamp(34px,10.5vw,46px)}}


/* work.css */
/* One editorial language, from the opening cards to the work inside. */
:root{--portfolio-canvas:var(--coastal-canvas);--portfolio-paper:var(--coastal-wash);--portfolio-cream:var(--coastal-canvas);--portfolio-wine:var(--coastal-ink);--portfolio-ink:var(--coastal-ink);--portfolio-muted:var(--coastal-ink);--portfolio-radius:29px;--portfolio-gap:24px;--portfolio-serif:'Cormorant Garamond',Georgia,serif}
.discipline-section{max-width:1748px;width:calc(100% - 52px);margin:65px auto 30px;padding:0;scroll-margin-top:28px;color:var(--portfolio-ink)}
.discipline-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;padding:38px 40px;margin-bottom:24px;background:var(--portfolio-paper);border-radius:var(--portfolio-radius)}
.small-label{display:flex;align-items:center;gap:10px;font-size:13px;line-height:1.5;color:var(--coastal-ink)}.small-label:before{content:'✦';font-size:20px}
.discipline-heading h2{font:400 clamp(58px,6.4vw,100px)/.96 var(--portfolio-serif);letter-spacing:-.04em;margin:20px 0 0;color:var(--coastal-ink)}.discipline-heading h2 em{font-weight:400}
.discipline-heading>p{max-width:300px;margin:0 0 4px;font-size:14px;line-height:1.7;color:var(--portfolio-muted)}
.discipline-panels{display:grid;grid-template-columns:.9fr 1.1fr;grid-template-rows:320px 320px;gap:var(--portfolio-gap)}
.discipline-panel{position:relative;min-width:0;overflow:hidden;border-radius:var(--portfolio-radius);background:var(--portfolio-paper);color:var(--coastal-ink);display:grid;grid-template-columns:1.1fr 1fr;grid-template-rows:1fr auto;padding:30px;gap:18px 24px;isolation:isolate;outline-offset:5px}
.discipline-copy{min-width:0;grid-column:1;grid-row:1}.panel-number{display:block;font-size:12px;letter-spacing:.04em;color:var(--portfolio-muted);margin-bottom:22px}
.discipline-copy h3{font:400 clamp(39px,3.7vw,60px)/.96 var(--portfolio-serif);letter-spacing:-.03em;margin:0 0 20px}.discipline-copy h3 em{font-weight:400}.discipline-copy p{font-size:12px;line-height:1.7;margin:0;color:var(--portfolio-muted)}
.discipline-image{grid-column:2;grid-row:1/3;min-width:0;min-height:0;position:relative;overflow:hidden;border-radius:18px;background:var(--coastal-wash);align-self:stretch}
.discipline-image img{width:100%;height:100%;object-fit:contain;transform:none;transition:scale 1.2s cubic-bezier(.22,.61,.36,1)}
.discipline-bottom{grid-column:1;grid-row:2;display:flex;justify-content:space-between;align-items:end;gap:16px}.panel-caption{font-size:12px;line-height:1.6;max-width:190px;color:var(--portfolio-muted)}
.panel-arrow{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;background:var(--coastal-wash);color:var(--coastal-ink);border-radius:50%;font-size:27px;transition:transform .8s cubic-bezier(.22,.61,.36,1),background .6s}
.fashion-panel{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;padding:30px;gap:0;background:var(--coastal-canvas)}.fashion-panel .discipline-copy{display:block}.fashion-panel h3 br{display:none}.fashion-panel h3{font-size:clamp(48px,4.6vw,74px)}.fashion-panel .discipline-image{margin-top:26px;flex:1;min-height:220px;width:100%;background:var(--coastal-ink)}.fashion-panel .discipline-image img{object-fit:cover;object-position:50% 28%}.fashion-panel .discipline-bottom{padding-top:22px;align-items:center}.fashion-panel .panel-caption{max-width:none}
.uiux-panel{background:var(--portfolio-wine);color:var(--coastal-canvas)}.uiux-panel .panel-number,.uiux-panel .discipline-copy p,.uiux-panel .panel-caption{color:var(--coastal-wash)}.uiux-panel .discipline-image{background:var(--coastal-ink);display:grid;place-items:center}.uiux-panel .discipline-image img{height:auto;width:94%}.uiux-panel .panel-arrow{background:var(--coastal-wash)}
.management-panel .discipline-image img{width:125%;max-width:none;height:100%;margin-left:-12.5%;object-position:center bottom}
/* Quiet assembly echoes the opening; finished cards stay in place on return. */
.work-reveal-ready{transition:opacity 1.15s cubic-bezier(.22,.61,.36,1),transform 1.35s cubic-bezier(.22,.61,.36,1);transition-delay:var(--work-reveal-delay,0ms);transform-origin:50% 25%}
.work-reveal-ready:not(.in-view){opacity:0;transform:translate3d(0,38px,0) scale(.987)}
.discipline-heading.work-reveal-ready:not(.in-view){transform:translate3d(0,24px,0)}
.work-reveal-ready.in-view{opacity:1;transform:none}
.work-reveal-ready h2,.work-reveal-ready .discipline-image{transition:transform 1.4s cubic-bezier(.22,.61,.36,1),opacity 1.1s cubic-bezier(.22,.61,.36,1);transition-delay:calc(var(--work-reveal-delay,0ms) + 110ms)}
.work-reveal-ready:not(.in-view) h2{transform:translate3d(0,12px,0)}
.work-reveal-ready:not(.in-view) .discipline-image{transform:translate3d(0,16px,0);opacity:.65}
.work-reveal-ready.in-view h2,.work-reveal-ready.in-view .discipline-image{transform:none;opacity:1}
.discipline-image img{transform:translate3d(0,var(--work-image-y,0px),0)}
.fashion-panel .discipline-image img{transform:translate3d(0,var(--work-image-y,0px),0) scale(1.045)}
.discipline-panel{transition:translate .85s cubic-bezier(.22,.61,.36,1)}
.discipline-panel.work-reveal-ready{transition:opacity 1.15s cubic-bezier(.22,.61,.36,1),transform 1.35s cubic-bezier(.22,.61,.36,1),translate .85s cubic-bezier(.22,.61,.36,1);transition-delay:var(--work-reveal-delay,0ms),var(--work-reveal-delay,0ms),0ms}
.work-settled,.work-settled h2,.work-settled .discipline-image{transition:none!important}
@media(hover:hover) and (pointer:fine){.discipline-panel.in-view:hover{translate:0 -4px}.discipline-panel:hover .discipline-image img{scale:1.025}.discipline-panel:hover .panel-arrow{transform:rotate(45deg)}}
@media(max-width:800px){.work-reveal-ready:not(.in-view){transform:translate3d(0,20px,0)}.work-reveal-ready:not(.in-view) .discipline-image{transform:translate3d(0,8px,0)}.work-reveal-ready,.discipline-panel.work-reveal-ready{transition-duration:1s,1.15s;transition-delay:0ms}.work-reveal-ready h2,.work-reveal-ready .discipline-image{transition-duration:1.15s}}
@media(max-width:1100px){.discipline-section{width:calc(100% - 40px)}.discipline-heading{padding:32px}.discipline-panels{grid-template-columns:.86fr 1.14fr;grid-template-rows:320px 320px;gap:18px}.discipline-panel{padding:25px;gap:18px}.fashion-panel{gap:0}.discipline-copy h3{font-size:43px}.fashion-panel h3{font-size:59px}.discipline-copy p{font-size:11px}.panel-caption{font-size:11px}.management-panel{grid-template-columns:1.2fr .8fr}}
@media(max-width:800px){.discipline-heading{display:block}.discipline-heading>p{max-width:none;margin-top:24px}.discipline-panels{display:flex;flex-direction:column;gap:18px}.discipline-panel{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto;min-height:310px}.fashion-panel{gap:18px}.fashion-panel .discipline-image{margin:0;height:340px;min-height:0}.fashion-panel .discipline-copy h3 br{display:block}.fashion-panel .discipline-bottom{padding:0}.fashion-panel h3{font-size:55px}.management-panel .discipline-image{height:285px}}
@media(max-width:600px){:root{--portfolio-radius:23px;--portfolio-gap:16px}.discipline-section{width:calc(100% - 32px);margin-top:46px;margin-bottom:16px}.discipline-heading{padding:30px 24px;margin-bottom:16px}.discipline-heading h2{font-size:60px}.discipline-heading>p{font-size:13px}.small-label{font-size:12px}.discipline-panels{gap:16px}.discipline-panel,.fashion-panel{display:flex;flex-direction:column;min-height:0;padding:25px 24px;gap:0}.discipline-copy h3,.fashion-panel h3{font-size:52px}.discipline-copy h3 br,.fashion-panel .discipline-copy h3 br{display:none}.discipline-copy p{font-size:12px}.panel-number{margin-bottom:20px}.discipline-panel .discipline-image{width:100%;height:260px;flex:none;margin-top:24px}.fashion-panel .discipline-image{height:340px}.management-panel .discipline-image{height:290px}.discipline-panel .discipline-bottom{padding:23px 0 0;align-items:center}.panel-caption{font-size:12px;max-width:205px}.management-panel .discipline-image img{width:110%;margin-left:-5%}.uiux-panel .discipline-image img{max-height:90%}}
@media(prefers-reduced-motion:reduce){.work-reveal-ready,.work-reveal-ready:not(.in-view){opacity:1;transform:none;translate:none;transition:none!important}.work-reveal-ready h2,.work-reveal-ready .discipline-image{opacity:1!important;transform:none!important;transition:none!important}.discipline-image img,.fashion-panel .discipline-image img{transform:none!important}.discipline-panel *{transition:none!important}.discipline-panel.in-view:hover{translate:none}.discipline-panel:hover .discipline-image img{scale:1}.discipline-panel:hover .panel-arrow{transform:none}}

/* The shared shell stays the same as the landing page. */
.work-surface{--bg:var(--coastal-canvas);--ink:var(--coastal-ink);--muted:var(--coastal-ink);--accent:var(--coastal-ink);--line:color-mix(in srgb, var(--coastal-accent) 40%, transparent);background:var(--coastal-canvas);color:var(--coastal-ink);color-scheme:light}
.work-surface .site-header{height:82px;border:0;padding:0 26px;max-width:1800px;margin:auto}.work-surface .wordmark{font:500 29px/1 var(--portfolio-serif);letter-spacing:-.025em}.work-surface .wordmark span{display:inline}.work-surface .site-header nav{gap:34px;font-size:13px;letter-spacing:.03em}.work-surface .reading-progress{height:2px;background:var(--coastal-accent)}.work-surface footer{max-width:1800px;margin:auto;padding:35px 26px;font-size:12px;color:var(--coastal-ink);border:0}
#category-view,#project-view{width:calc(100% - 52px);max-width:1748px;margin:0 auto 30px}
#category-view .category-breadcrumb,#project-view .project-nav{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px 4px 30px;border:0;font-size:12px;letter-spacing:.025em;color:var(--coastal-wash)}
.category-breadcrumb a:hover,#project-view .project-nav a:hover{color:var(--coastal-canvas)}
#category-view .category-heading{padding:0;display:grid;grid-template-columns:1.7fr 1fr;gap:24px}
.category-introduction,.category-summary{border-radius:var(--portfolio-radius);padding:42px;min-width:0}.category-introduction{background:var(--portfolio-paper);color:var(--coastal-ink);display:flex;flex-direction:column;justify-content:space-between;min-height:320px}
#category-view .category-heading h1{font:400 clamp(66px,7.6vw,122px)/.95 var(--portfolio-serif);letter-spacing:-.04em;margin:45px 0 0;max-width:920px}
.category-summary{background:var(--portfolio-wine);color:var(--coastal-wash);display:flex;flex-direction:column;justify-content:space-between;gap:28px}.category-summary>span:first-child{font-size:26px}.category-summary>p{font:400 clamp(25px,2.7vw,42px)/1.18 var(--portfolio-serif);letter-spacing:-.02em}.category-summary-label{font-size:12px;color:var(--coastal-wash);line-height:1.6}
#category-view .category-tabs{display:flex;gap:12px;margin:24px 0;flex-wrap:wrap;justify-content:flex-start}.category-tabs a{display:flex;align-items:center;gap:25px}
#category-view .category-tabs a{padding:14px 20px;border:1px solid color-mix(in srgb, var(--coastal-accent) 25.1%, transparent);border-radius:30px;color:var(--coastal-wash);font-size:13px;transition:background .6s,color .6s}
#category-view .category-tabs a[aria-current=page],#category-view .category-tabs a:hover{background:var(--coastal-wash);color:var(--coastal-ink);border-color:var(--coastal-wash)}
#category-view .category-exhibitions{padding:0;display:grid;grid-template-columns:1.08fr .92fr;gap:24px;align-items:start}
.portfolio-project{min-width:0;overflow:hidden;border-radius:var(--portfolio-radius);background:var(--portfolio-paper);color:var(--coastal-ink);padding:28px;display:flex;flex-direction:column}
.project-card-index{display:flex;justify-content:space-between;gap:22px;font-size:11px;line-height:1.6;color:var(--coastal-ink);min-height:32px}.project-card-index>span:last-child{white-space:nowrap}
.project-card-art{position:relative;isolation:isolate;border-radius:18px;overflow:hidden;background:var(--coastal-wash);height:390px;margin:22px 0 28px;display:flex;align-items:center;justify-content:center;padding:24px;gap:16px}
.project-card-art .main-art{position:relative;width:100%;height:100%;object-fit:contain;min-width:0;transition:scale 1.2s cubic-bezier(.22,.61,.36,1)}
.project-card-art .support-art{position:relative;width:34%;height:78%;object-fit:contain;align-self:end;min-width:0}
.portfolio-project.arabian-nights .project-card-art{background:var(--coastal-ink);padding:18px;gap:18px;height:450px}.portfolio-project.arabian-nights .main-art{width:63%;object-fit:cover;object-position:center 25%;border-radius:12px}.portfolio-project.arabian-nights .support-art{width:32%;object-fit:cover;border-radius:12px;height:73%}
.portfolio-project.solar-system .main-art{width:57%;z-index:1}.portfolio-project.solar-system .support-art{width:42%;height:auto;aspect-ratio:1;border-radius:50%;align-self:center}
.portfolio-project.ecoride .project-card-art{padding:26px;background:var(--coastal-ink)}.portfolio-project.elderly-care .main-art{width:48%}.portfolio-project.elderly-care .support-art{width:43%;height:90%}
.portfolio-project.hand-sketches .project-card-art{height:450px;background:var(--coastal-wash)}.portfolio-project.show-of-hands .project-card-art{padding:0;background:var(--coastal-ink)}.portfolio-project.bumble .project-card-art{padding:0}.portfolio-project.bumble .main-art{object-fit:cover}
.portfolio-project:nth-child(even){background:var(--coastal-canvas)}.portfolio-project:nth-child(2){margin-top:54px}
.project-card-label{display:flex;align-items:end;justify-content:space-between;gap:22px}.project-card-label>div{min-width:0}.project-card-label h3{font:400 clamp(35px,3.9vw,62px)/.98 var(--portfolio-serif);letter-spacing:-.035em}.project-card-label p{font-size:14px;line-height:1.6;margin-top:18px;color:var(--coastal-ink)}.project-card-label .panel-arrow{flex-shrink:0}
.portfolio-project:focus-visible{outline-color:var(--coastal-wash)}.portfolio-project:hover .panel-arrow{transform:rotate(45deg)}
#category-view .category-current{grid-column:1/-1;max-width:none;margin:0;padding:36px 40px;border:1px solid color-mix(in srgb, var(--coastal-accent) 31.37%, transparent);background:var(--coastal-ink);border-radius:var(--portfolio-radius)}#category-view .category-current h2{color:var(--coastal-canvas);font-size:46px}#category-view .category-current p{color:var(--coastal-wash)}

/* Case studies use the same paper, wine, spacing and type. Artwork retains its colour. */
#project-view{--surface:var(--coastal-wash)!important;--project-accent:var(--coastal-ink);--muted:var(--coastal-ink);--line:color-mix(in srgb, var(--coastal-ink) 18.82%, transparent);color:var(--coastal-ink)}
#project-view .project-opening{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px;align-items:stretch;height:auto;min-height:0;max-height:none;padding:0;background:transparent;overflow:visible}
#project-view .project-opening:after{display:none}
#project-view .project-title{position:relative;display:flex;flex-direction:column;grid-template-columns:none;align-items:start;gap:0;padding:42px;background:var(--coastal-wash);border-radius:var(--portfolio-radius);min-width:0;min-height:540px;margin:0}
#project-view .project-title>.micro{position:static;font-size:12px;letter-spacing:.045em;color:var(--coastal-ink);max-width:none;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 15.69%, transparent);padding-bottom:20px;width:100%}
#project-view .project-title h1{position:static;inset:auto;font:400 clamp(58px,6.7vw,108px)/.94 var(--portfolio-serif);letter-spacing:-.04em;color:var(--coastal-ink);max-width:100%;margin:38px 0 40px;text-shadow:none;overflow-wrap:normal}
#project-view.case-solar-system .project-title h1{font-size:clamp(50px,5.2vw,82px)}
#project-view .project-title .project-headline{position:static;width:auto;max-width:380px;margin-top:auto;padding:0;font-size:20px;line-height:1.5;color:var(--coastal-ink);letter-spacing:-.02em}
#project-view .project-hero-image{position:relative;inset:auto;display:flex;align-items:center;justify-content:center;gap:18px;width:100%;height:auto;min-height:540px;max-height:none;max-width:none;padding:28px;margin:0;background:var(--coastal-wash);border-radius:var(--portfolio-radius);overflow:hidden}
#project-view .project-hero-image>img{position:relative;inset:auto;rotate:0deg;transform:none;filter:none;width:100%;height:490px;max-height:560px;max-width:100%;min-width:0;object-fit:contain;object-position:center;margin:0;border-radius:12px}
#project-view.case-arabian-nights .project-hero-image{background:var(--coastal-ink);padding:22px;gap:18px}
#project-view.case-arabian-nights .project-hero-image>img:first-child{width:64%;height:510px;object-fit:cover;object-position:50% 22%;align-self:center}
#project-view.case-arabian-nights .project-hero-image>.hero-companion{width:32%;height:355px;object-fit:cover;align-self:end;margin-bottom:22px}
#project-view.case-ecoride .project-hero-image{background:var(--coastal-ink)}
#project-view.case-show-of-hands .project-hero-image{background:var(--coastal-ink);padding:0}
#project-view.case-show-of-hands .project-hero-image img{height:560px}
#project-view.case-bumble .project-hero-image{padding:0}#project-view.case-bumble .project-hero-image img{height:100%;min-height:540px;object-fit:cover;border-radius:0}
#project-view .project-overview{display:grid;grid-template-columns:.65fr 1.35fr;gap:24px;padding:0;margin:24px 0}
#project-view .project-metadata{padding:35px 38px;border-radius:var(--portfolio-radius);background:var(--coastal-ink);color:var(--coastal-wash);gap:16px;font-size:13px;line-height:1.6}
#project-view .project-metadata>span{max-width:none;border-bottom:1px solid color-mix(in srgb, var(--coastal-wash) 16.86%, transparent);padding-bottom:16px}#project-view .project-metadata>span:last-child{border:0;padding-bottom:0}
#project-view .project-overview>div:last-child{padding:38px 42px;background:var(--coastal-canvas);border-radius:var(--portfolio-radius);min-width:0}
#project-view .project-deck{font:400 clamp(25px,2.7vw,39px)/1.27 var(--portfolio-serif);letter-spacing:-.015em;max-width:950px;color:var(--coastal-ink)}
#project-view .chapter-links{gap:20px;margin-top:30px}#project-view .chapter-links a{font-size:12px;letter-spacing:.02em;border-color:color-mix(in srgb, var(--coastal-ink) 25.1%, transparent);color:var(--coastal-ink);padding-bottom:8px}
#project-view .project-feature{margin:24px 0;padding:42px;background:var(--coastal-wash);border-radius:var(--portfolio-radius);overflow:hidden}
#project-view .feature-heading{gap:40px;align-items:start;margin-bottom:35px}#project-view .feature-heading h2{font:400 clamp(40px,4.6vw,72px)/.98 var(--portfolio-serif);letter-spacing:-.035em;max-width:730px;color:var(--coastal-ink)}#project-view .feature-heading>p{font-size:14px;line-height:1.7;max-width:330px;color:var(--coastal-ink)}
#project-view .lookbook{gap:24px;align-items:start;grid-template-columns:1fr .8fr 1fr;padding-top:5px}#project-view .lookbook figure:nth-child(2){margin-top:60px}#project-view .lookbook figure:nth-child(3){margin-top:0}
#project-view .image-button{border-radius:16px;background:var(--coastal-wash)}#project-view .image-button:after{background:color-mix(in srgb, var(--coastal-ink) 92.94%, transparent);color:var(--coastal-canvas);border-radius:20px;transition:opacity .5s,transform .5s}#project-view .image-button:hover img{transform:scale(1.015)}
#project-view figcaption{font-size:12px;line-height:1.65;color:var(--coastal-ink)}
#project-view .palette{gap:16px;flex-wrap:wrap;margin-top:30px}#project-view .palette-item{font-size:12px;color:var(--coastal-ink)}#project-view .palette-dot{width:18px;height:18px;border-color:color-mix(in srgb, var(--coastal-ink) 18.82%, transparent)}
#project-view .project-chapters{padding:0;display:grid;gap:24px;margin:24px 0}
#project-view .chapter,#project-view .chapter:nth-child(even){display:grid;grid-template-columns:1fr 1.1fr;gap:24px;padding:0;align-items:stretch;border:0}
#project-view .chapter .chapter-copy{position:static;grid-column:1;grid-row:1;padding:40px;background:var(--coastal-canvas);border-radius:var(--portfolio-radius);min-width:0}
#project-view .chapter:nth-child(even) .chapter-copy{grid-column:2;background:var(--coastal-wash)}
#project-view .chapter figure{grid-column:2;grid-row:1;background:var(--coastal-wash);border-radius:var(--portfolio-radius);padding:24px;min-width:0;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
#project-view .chapter:nth-child(even) figure{grid-column:1}
#project-view .chapter-number{font-size:11px;letter-spacing:.06em;color:var(--coastal-ink);margin-bottom:28px}
#project-view .chapter h2{font:400 clamp(36px,3.8vw,60px)/1.04 var(--portfolio-serif);letter-spacing:-.025em;max-width:600px;margin-bottom:28px;color:var(--coastal-ink)}
#project-view .chapter p{font-size:15px;line-height:1.85;color:var(--coastal-ink);max-width:680px;margin-bottom:20px}#project-view .chapter p:last-child{margin-bottom:0}
#project-view .chapter figure img{max-height:720px;object-fit:contain;background:var(--coastal-wash)}#project-view .chapter-figure-note{color:var(--coastal-ink);gap:16px}#project-view .chapter-figure-note span{font-size:10px;color:var(--coastal-ink)}
#project-view .interaction-stage{background:var(--coastal-wash);border-radius:20px;padding:30px}
#project-view .stage-tabs{gap:10px;margin-bottom:30px}#project-view .stage-tabs button{border:1px solid color-mix(in srgb, var(--coastal-ink) 25.1%, transparent);background:transparent;color:var(--coastal-ink);font-size:12px;padding:12px 18px;transition:background .5s,color .5s}#project-view .stage-tabs button[aria-pressed=true]{background:var(--coastal-ink);color:var(--coastal-canvas);border-color:var(--coastal-ink)}#project-view .stage-tabs button:hover{border-color:var(--coastal-ink)}
#project-view .demo-layout{grid-template-columns:1.5fr 1fr;gap:35px}#project-view .demo-visual{min-width:0;padding:0;background:transparent}#project-view .demo-visual img{max-height:540px;object-fit:contain;rotate:0deg;transform:none}
#project-view .demo-copy .micro{color:var(--coastal-ink)}#project-view .demo-copy h3{font:400 37px/1.12 var(--portfolio-serif);letter-spacing:-.025em;color:var(--coastal-ink)}#project-view .demo-copy p{font-size:14px;line-height:1.8;color:var(--coastal-ink)}#project-view .image-open-link{color:var(--coastal-ink);border-color:color-mix(in srgb, var(--coastal-ink) 25.1%, transparent)}
#project-view .planet-pair img{background:var(--coastal-wash);border-radius:12px}#project-view .planet-pair figcaption{color:var(--coastal-ink)}
#project-view .phone-pair img{rotate:0deg;filter:none;margin:0;border-radius:16px;max-height:550px}#project-view .phone-pair img:nth-child(2){margin-top:35px}
#project-view .browser-frame{border-radius:20px;background:var(--coastal-wash);border:0;padding:35px 14px 14px}#project-view .browser-frame:before{color:var(--coastal-ink);top:12px}#project-view .browser-scroll{border-radius:10px}#project-view .browser-caption{color:var(--coastal-ink);font-size:12px}
#project-view .project-credit{padding:30px 36px;margin:24px 0;border:1px solid color-mix(in srgb, var(--coastal-accent) 25.1%, transparent);border-radius:var(--portfolio-radius);color:var(--coastal-wash);font-size:12px;line-height:1.85}
#project-view .next-project{display:block;padding:38px 42px 45px;background:var(--coastal-ink);color:var(--coastal-wash);border-radius:var(--portfolio-radius);margin:24px 0 0}
#project-view .next-project .micro{font-size:12px;color:var(--coastal-wash)}#project-view .next-project h2{font:400 clamp(43px,6vw,94px)/1.02 var(--portfolio-serif);letter-spacing:-.035em;gap:30px;margin-top:30px;color:var(--coastal-canvas)}#project-view .next-project h2 span{align-self:end;flex:none;font-family:Arial,sans-serif;font-size:38px;transition:translate .7s}#project-view .next-project:hover h2 span{translate:4px -4px}
.work-surface a:focus-visible,.work-surface button:focus-visible{outline-color:var(--coastal-accent)}
#project-view .project-nav a{color:var(--coastal-wash)}#project-view .project-nav a:hover{color:var(--coastal-canvas)}.fashion-panel .discipline-image img{object-position:center top}
#project-view .project-title{text-align:left;width:auto}#project-view .project-title .project-headline{margin-left:0;margin-right:0}#project-view .project-opening{animation:none}#project-view .project-overview{background:transparent}
#viewer{border:1px solid var(--coastal-ink);border-radius:20px;background:var(--coastal-ink);color:var(--coastal-wash)}#viewer::backdrop{background:color-mix(in srgb, var(--coastal-canvas) 87.06%, transparent)}#viewer .viewer-header{background:var(--coastal-wash);color:var(--coastal-ink);border:0}#viewer .viewer-header .micro{color:var(--coastal-ink)}#viewer .viewer-header h2{font-family:var(--portfolio-serif);font-size:25px;font-weight:400}#viewer .viewer-controls{border-color:color-mix(in srgb, var(--coastal-wash) 16.86%, transparent);background:var(--coastal-ink);color:var(--coastal-wash)}#viewer-images img{border-radius:12px;background:var(--coastal-wash)}
#project-view .project-title .project-headline{font-family:'DM Sans',Arial,sans-serif}#viewer[open]{display:flex;flex-direction:column}#viewer .viewer-header,#viewer .viewer-controls{flex:none}#viewer-images{flex:1;min-height:0;height:auto}
.work-surface .reveal{transition:opacity 1s cubic-bezier(.22,.61,.36,1),transform 1s cubic-bezier(.22,.61,.36,1)}.work-surface.js-motion .reveal:not(.revealed){transform:translateY(12px)}
@media(hover:hover) and (pointer:fine){.portfolio-project:hover .main-art{scale:1.02}}
@media(max-width:1100px){#category-view,#project-view{width:calc(100% - 40px)}#category-view .category-heading{grid-template-columns:1.5fr 1fr;gap:18px}.category-introduction,.category-summary{padding:32px}.category-introduction{min-height:290px}#category-view .category-exhibitions{gap:18px}.portfolio-project{padding:24px}.project-card-art{height:330px}.portfolio-project.arabian-nights .project-card-art,.portfolio-project.hand-sketches .project-card-art{height:390px}#project-view .project-opening{gap:18px;grid-template-columns:1fr 1.1fr}#project-view .project-title{padding:32px;min-height:470px}#project-view .project-title h1{font-size:70px}#project-view.case-solar-system .project-title h1{font-size:56px}#project-view .project-title .project-headline{font-size:18px}#project-view .project-hero-image{padding:20px;min-height:470px}#project-view .project-hero-image>img{height:420px}#project-view.case-arabian-nights .project-hero-image>img:first-child{height:430px}#project-view.case-arabian-nights .project-hero-image>.hero-companion{height:295px}#project-view .project-overview{gap:18px;grid-template-columns:.75fr 1.25fr}#project-view .project-metadata{padding:30px;font-size:12px}#project-view .project-overview>div:last-child{padding:32px}#project-view .project-feature{padding:32px}#project-view .feature-heading{gap:28px}#project-view .feature-heading>p{max-width:260px;font-size:13px}#project-view .chapter,#project-view .chapter:nth-child(even){gap:18px;grid-template-columns:1fr 1fr}#project-view .chapter .chapter-copy{padding:32px}#project-view .chapter figure{padding:20px}#project-view .chapter p{font-size:14px}#project-view .demo-layout{gap:28px;grid-template-columns:1.3fr 1fr}#project-view .demo-copy h3{font-size:33px}}
@media(max-width:800px){.work-surface .site-header{padding:0 20px}.work-surface .site-header nav{gap:22px}#category-view .category-heading{grid-template-columns:1fr}.category-introduction{min-height:0}#category-view .category-heading h1{font-size:82px;margin-top:35px}.category-summary{display:block}.category-summary>span:first-child{display:none}.category-summary>p{font-size:29px;max-width:580px}.category-summary-label{display:block;margin-top:20px}#category-view .category-exhibitions{grid-template-columns:1fr 1fr}.portfolio-project:nth-child(2),.portfolio-project:nth-child(3){margin-top:0}.project-card-art,.portfolio-project.arabian-nights .project-card-art,.portfolio-project.hand-sketches .project-card-art{height:290px;padding:15px}.portfolio-project.arabian-nights .project-card-art{gap:10px}.project-card-label{gap:14px;align-items:start}.project-card-label h3{font-size:37px}.project-card-label p{font-size:12px}.project-card-label .panel-arrow{width:34px;height:34px;flex-basis:34px;font-size:23px}#project-view .project-opening{grid-template-columns:1fr}#project-view .project-title{min-height:310px}#project-view .project-title h1{font-size:83px;margin:30px 0}#project-view.case-solar-system .project-title h1{font-size:67px}#project-view .project-hero-image{min-height:400px}#project-view .project-title .project-headline{max-width:580px;font-size:20px}#project-view .project-overview{grid-template-columns:1fr}#project-view .project-metadata{display:flex;flex-direction:row;flex-wrap:wrap;gap:15px 25px}#project-view .project-metadata>span{border:0;padding:0;max-width:240px}#project-view .chapter,#project-view .chapter:nth-child(even){grid-template-columns:1fr}#project-view .chapter .chapter-copy,#project-view .chapter:nth-child(even) .chapter-copy{grid-column:1;grid-row:1}#project-view .chapter figure,#project-view .chapter:nth-child(even) figure{grid-column:1;grid-row:2}#project-view .chapter h2{font-size:51px}#project-view .chapter p{font-size:16px}#project-view .chapter figure{padding:24px}#project-view .feature-heading{display:block}#project-view .feature-heading>p{margin-top:25px;max-width:560px;font-size:15px}#project-view .demo-layout{grid-template-columns:1fr}#project-view .demo-copy h3{font-size:37px}#project-view .demo-copy p{font-size:15px}#project-view .next-project h2{font-size:63px}}
@media(max-width:600px){.work-surface .site-header{height:75px;padding:0 18px}.work-surface .wordmark{font-size:25px}.work-surface .site-header nav{gap:18px;font-size:12px}.work-surface footer{padding:30px 18px;font-size:10px}#category-view,#project-view{width:calc(100% - 32px);margin-bottom:16px}#category-view .category-breadcrumb,#project-view .project-nav{font-size:10px;gap:18px;padding:10px 0 24px}.category-introduction,.category-summary{padding:29px 24px}#category-view .category-heading{gap:16px}#category-view .category-heading h1{font-size:64px}.category-summary>p{font-size:29px}.category-summary-label{font-size:11px}#category-view .category-tabs{gap:8px;margin:18px 0}#category-view .category-tabs a{padding:11px 13px;font-size:11px;gap:14px}.category-tabs a>span{display:none}#category-view .category-exhibitions{display:flex;flex-direction:column;gap:16px}.portfolio-project{width:100%;padding:24px}.project-card-index{font-size:10px;min-height:0}.project-card-art,.portfolio-project.arabian-nights .project-card-art,.portfolio-project.hand-sketches .project-card-art{height:330px;margin:22px 0 25px;padding:16px}.portfolio-project.ecoride .project-card-art{height:260px;padding:16px}.portfolio-project.show-of-hands .project-card-art,.portfolio-project.bumble .project-card-art{padding:0}.portfolio-project.loom .project-card-art,.portfolio-project.starbucks .project-card-art,.portfolio-project.wine-tasting .project-card-art{height:245px;padding:12px}.project-card-label h3{font-size:43px}.project-card-label p{font-size:13px;margin-top:15px}.project-card-label .panel-arrow{width:38px;height:38px;flex-basis:38px}#category-view .category-current{padding:30px 24px}#category-view .category-current h2{font-size:37px}#category-view .category-current .micro{font-size:10px}#project-view .project-opening{gap:16px}#project-view .project-title{padding:30px 25px;min-height:0}#project-view .project-title>.micro{font-size:10px;padding-bottom:18px}#project-view .project-title h1{font-size:65px;margin:32px 0}#project-view.case-solar-system .project-title h1{font-size:51px}#project-view .project-title .project-headline{font-size:18px}#project-view .project-hero-image{padding:22px;min-height:310px}#project-view .project-hero-image>img{height:340px;max-height:450px}#project-view.case-ecoride .project-hero-image img,#project-view.case-wine-tasting .project-hero-image img,#project-view.case-loom .project-hero-image img,#project-view.case-starbucks .project-hero-image img{height:auto;max-height:300px}#project-view.case-arabian-nights .project-hero-image{padding:15px;gap:12px}#project-view.case-arabian-nights .project-hero-image>img:first-child{height:340px}#project-view.case-arabian-nights .project-hero-image>.hero-companion{height:235px;margin-bottom:8px}#project-view.case-show-of-hands .project-hero-image img{height:370px}#project-view.case-bumble .project-hero-image img{min-height:350px;height:350px}#project-view .project-overview{margin:16px 0;gap:16px}#project-view .project-metadata{padding:28px 25px;font-size:12px;gap:14px}#project-view .project-metadata>span{max-width:none}#project-view .project-overview>div:last-child{padding:30px 25px}#project-view .project-deck{font-size:28px}#project-view .chapter-links{gap:18px}#project-view .chapter-links a{font-size:10px}#project-view .project-feature{margin:16px 0;padding:30px 24px}#project-view .feature-heading{margin-bottom:28px}#project-view .feature-heading h2{font-size:45px}#project-view .feature-heading>p{font-size:14px;margin-top:23px}#project-view .lookbook{gap:15px;grid-template-columns:1fr 1fr}#project-view .lookbook figure:first-child{grid-column:1/3;width:100%}#project-view .lookbook figure:nth-child(2),#project-view .lookbook figure:nth-child(3){margin-top:0}#project-view figcaption{font-size:11px}#project-view .project-chapters{gap:16px;margin:16px 0}#project-view .chapter,#project-view .chapter:nth-child(even){gap:16px}#project-view .chapter .chapter-copy{padding:30px 25px}#project-view .chapter h2{font-size:43px}#project-view .chapter p{font-size:15px;line-height:1.8}#project-view .chapter-number{font-size:10px;margin-bottom:23px}#project-view .chapter figure{padding:18px}#project-view .chapter-figure-note span{display:none}#project-view .interaction-stage{padding:20px 16px;border-radius:16px}#project-view .stage-tabs{gap:8px;margin-bottom:25px}#project-view .stage-tabs button{font-size:11px;padding:10px 13px}#project-view .demo-layout{gap:25px}#project-view .demo-copy h3{font-size:34px}#project-view .demo-copy p{font-size:14px}#project-view .planet-pair{grid-template-columns:1fr}#project-view .planet-pair figure:first-child{grid-column:1}#project-view .phone-pair{gap:16px}#project-view .phone-pair img{max-width:46%;max-height:370px}#project-view .phone-pair img:nth-child(2){margin-top:25px}#project-view .project-credit{padding:26px 24px;font-size:11px;margin:16px 0}#project-view .next-project{padding:30px 25px 35px;margin-top:16px}#project-view .next-project h2{font-size:47px;gap:15px}#project-view .next-project h2 span{font-size:27px}#project-view .next-project .micro{font-size:10px}}
@media(max-width:370px){.work-surface .wordmark{font-size:22px}.work-surface .site-header nav{gap:12px;font-size:11px}.discipline-copy h3,.fashion-panel h3{font-size:47px}.project-card-label h3{font-size:37px}.portfolio-project{padding:20px}#project-view .project-title h1{font-size:57px}#project-view.case-solar-system .project-title h1{font-size:47px}}
@media(prefers-reduced-motion:reduce){.work-surface .reveal{transition:none;transform:none!important}.work-surface.js-motion .reveal:not(.revealed){opacity:1;transform:none}.portfolio-project:hover .main-art{scale:1}.portfolio-project .panel-arrow{transition:none}#project-view .image-button:hover img{transform:none}}


/* artwork.css */
/* Frames follow the work. Never fill a frame by cropping its image. */
.discipline-section .discipline-image {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px;
}
.discipline-section .discipline-image img,
.discipline-section .discipline-panel:hover .discipline-image img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  margin: 0;
  object-fit: contain;
  object-position: center;
  transform: none;
  scale: 1;
  border-radius: 0;
}

/* Complete photographs and spreads sit on quiet mats, with room at every edge. */
#category-view .project-card-art {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  height: auto;
  min-height: 280px;
  padding: 24px;
  gap: 20px;
  overflow: visible;
}
#category-view .project-card-art.has-support {
  grid-template-columns: minmax(0, 1.35fr) minmax(0, .85fr);
}
#category-view .project-card-art img,
#category-view .portfolio-project:hover .project-card-art img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  max-height: 470px;
  margin: 0;
  aspect-ratio: auto;
  border-radius: 0;
  object-fit: contain;
  object-position: center;
  align-self: center;
  transform: none;
  scale: 1;
}
#category-view .portfolio-project.elderly-care .project-card-art {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
#category-view .portfolio-project.hand-sketches .project-card-art {
  min-height: 0;
}
#category-view .portfolio-project.bank-of-baroda .project-card-art {
  background: var(--coastal-wash);
}

/* The hero is a complete artwork, and opens the same full-image viewer. */
#project-view[class] .project-hero-image {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  justify-items: center;
  padding: 28px;
  gap: 22px;
  min-height: 0;
  transform: none;
  overflow: visible;
}
#project-view[class] .project-hero-image.has-companion {
  grid-template-columns: minmax(0, 1.3fr) minmax(0, .8fr);
}
#project-view[class] .project-hero-image .image-button {
  position: relative;
  inset: auto;
  rotate: none;
  transform: none;
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 0;
  margin: 0;
  align-self: center;
  background: transparent;
  padding: 0;
}
#project-view[class] .project-hero-image .image-button img {
  position: static;
  display: block;
  width: 100%;
  height: auto;
  min-height: 0;
  max-width: 100%;
  max-height: 640px;
  margin: 0;
  object-fit: contain;
  object-position: center;
  rotate: none;
  filter: none;
  border-radius: 0;
}

/* Preserve page edges, including during hover. Motion belongs to the frame. */
#project-view .image-button {
  overflow: visible;
  border-radius: 0;
  background: transparent;
}
#project-view .image-button img,
#project-view .image-button:hover img,
#project-view .image-button:focus-visible img {
  display: block;
  width: 100%;
  height: auto;
  max-width: 100%;
  aspect-ratio: auto;
  object-fit: contain;
  border-radius: 0;
  transform: none;
  scale: 1;
}
#project-view .image-button:focus-visible {
  outline: 2px solid var(--coastal-ink);
  outline-offset: 6px;
}
#project-view .image-button:after { bottom: 12px; right: 12px; }
#project-view .lookbook {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  align-items: start;
}
#project-view .lookbook figure,
#project-view .lookbook figure:first-child,
#project-view .lookbook figure:nth-child(2),
#project-view .lookbook figure:nth-child(3) {
  width: 100%;
  margin: 0;
}
#project-view .lookbook .image-button {
  padding: 14px;
  background: var(--coastal-wash);
  border-radius: 18px;
}
#project-view .lookbook figcaption { margin-top: 16px; }
#project-view .chapter figure .image-button img,
#project-view .planet-pair .image-button img,
#project-view .demo-visual .image-button img {
  max-height: none;
  background: transparent;
}
#project-view .chapter figure {
  padding: 28px;
  gap: 16px;
}
#project-view .demo-visual { padding: 16px; }
#project-view .phone-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 680px;
  margin: auto;
  gap: 32px;
  align-items: start;
}
#project-view .phone-pair .image-button img {
  width: 100%;
  max-width: 100%;
  height: auto;
  max-height: none;
  margin: 0;
  rotate: none;
}
#project-view .website-study {
  max-width: 1000px;
  margin: auto;
  padding: 24px;
  border-radius: 18px;
  background: var(--coastal-wash);
}
#project-view .website-study img { max-height: none; }
#project-view .website-study figcaption { margin-top: 18px; }
#viewer-images img { border-radius: 0; }

@media (min-width: 801px) {
  #project-view.case-ecoride .chapter,
  #project-view.case-elderly-care .chapter,
  #project-view.case-bank-of-baroda .chapter { align-items: start; }
  #project-view.case-ecoride .chapter .chapter-copy,
  #project-view.case-elderly-care .chapter .chapter-copy,
  #project-view.case-bank-of-baroda .chapter .chapter-copy {
    position: sticky;
    top: 28px;
  }
}

@media (max-width: 800px) {
  #category-view .project-card-art { min-height: 220px; padding: 18px; gap: 14px; }
  #project-view[class] .project-hero-image { padding: 24px; }
  #project-view[class] .project-hero-image .image-button img { max-height: 580px; }
  #project-view .lookbook { gap: 16px; }
  #project-view .lookbook .image-button { padding: 10px; border-radius: 14px; }
}
@media (max-width: 600px) {
  .discipline-section .discipline-image { padding: 14px; }
  #category-view .project-card-art { min-height: 0; padding: 18px; }
  #category-view .project-card-art img { max-height: 410px; }
  #project-view[class] .project-hero-image { padding: 20px; gap: 16px; }
  #project-view[class] .project-hero-image .image-button img { max-height: 490px; }
  #project-view[class] .project-hero-image.has-companion { grid-template-columns: minmax(0, 1fr); }
  #project-view[class] .project-hero-image .hero-secondary { display: none; }
  #project-view .lookbook { grid-template-columns: minmax(0, 1fr); gap: 30px; }
  #project-view .lookbook figure:first-child { grid-column: auto; }
  #project-view .lookbook .image-button { padding: 14px; }
  #project-view .chapter figure { padding: 18px; gap: 14px; }
  #project-view .phone-pair { gap: 18px; }
  #project-view .demo-visual { padding: 0; }
  #project-view .website-study { padding: 12px; }
}


/* resume.css */
#resume-viewer{inset:18px;margin:auto;width:min(1100px,calc(100vw - 36px));height:calc(100dvh - 36px);border:1px solid #84b3ce;border-radius:20px;background:#f5eedd;color:#16587b;overflow:hidden;--accent:#16587b;color-scheme:light}
#resume-viewer[open]{display:flex;flex-direction:column;animation:resume-arrive .3s ease-out}
#resume-viewer::backdrop{background:#16587b99;backdrop-filter:blur(7px)}
.resume-toolbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:20px 28px;border-bottom:1px solid #84b3ce66;flex:none}
.resume-toolbar h2{font-family:Georgia,serif;font-size:28px;line-height:1.15;font-weight:400;letter-spacing:-.03em}
.resume-toolbar p{font-size:12px;color:#376f8a;margin-top:7px}
.resume-close{display:flex;align-items:center;gap:14px;min-height:44px;padding:8px;font-size:13px}.resume-close span{font-size:26px;line-height:1}
.resume-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:8px 28px;background:#e3eef1;flex:none;font-size:13px}
.resume-zoom{display:flex;align-items:center;gap:4px}.resume-zoom button{height:40px;min-width:40px;border-radius:7px;padding:6px 10px}.resume-zoom button:not([data-zoom=fit]){font-size:24px}.resume-zoom [data-zoom=fit]{width:87px;font-size:12px}
.resume-tools button:hover:not(:disabled),.resume-close:hover{background:#16587b12}.resume-download{display:flex;align-items:center;gap:12px;min-height:40px;border-bottom:1px solid #84b3ce}.resume-download:hover{color:#376f8a}
.resume-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:28px 24px;scrollbar-gutter:stable;scroll-behavior:auto;outline-offset:-4px;touch-action:pan-x pan-y pinch-zoom}
.resume-pages{display:flex;flex-direction:column;gap:24px;align-items:center;width:max-content;min-width:100%;padding-bottom:8px}
.resume-sheet{position:relative;flex:none;background:#fdfbf7;box-shadow:0 8px 25px #16587b22;overflow:hidden;--scale-round-x:1px;--scale-round-y:1px}
.resume-sheet canvas,.resume-sheet>img{display:block;width:100%;height:100%}.resume-sheet>img{height:auto}
.resume-pdf-link{position:absolute;z-index:2;border-bottom:1px solid transparent}.resume-pdf-link:hover{background:#16587b12;border-bottom-color:#16587b}.resume-pdf-link:focus-visible{outline:2px solid #16587b;outline-offset:2px}
/* Text layer sizing follows Mozilla PDF.js 5.6.205 (Apache-2.0). */
.resume-sheet .textLayer{color-scheme:only light;position:absolute;text-align:initial;inset:0;overflow:clip;opacity:1;line-height:1;text-size-adjust:none;-webkit-text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;caret-color:CanvasText;z-index:1;--min-font-size:1;--text-scale-factor:calc(var(--total-scale-factor) * var(--min-font-size));--min-font-size-inv:calc(1 / var(--min-font-size))}
.resume-sheet .textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;transform-origin:0 0}
.resume-sheet .textLayer>:not(.markedContent),.resume-sheet .textLayer .markedContent span:not(.markedContent){z-index:1;--font-height:0;font-size:calc(var(--text-scale-factor) * var(--font-height));--scale-x:1;--rotate:0deg;transform:rotate(var(--rotate)) scaleX(var(--scale-x)) scale(var(--min-font-size-inv))}
.resume-sheet .textLayer .markedContent{display:contents}.resume-sheet .textLayer span[role=img]{user-select:none;cursor:default}.resume-sheet .textLayer ::selection{background:#16587b40;color:transparent}.resume-sheet .textLayer br::selection{background:transparent}
@keyframes resume-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){#resume-viewer{inset:5px;width:calc(100vw - 10px);height:calc(100dvh - 10px);border-radius:14px}.resume-toolbar{padding:16px}.resume-toolbar h2{font-size:25px}.resume-toolbar p{font-size:10px}.resume-tools{padding:6px 10px;gap:8px;font-size:11px}.resume-close{gap:8px;font-size:12px}.resume-scroll{padding:16px 8px;scrollbar-gutter:auto}.resume-pages{gap:16px}.resume-zoom{gap:0}.resume-zoom [data-zoom=fit]{width:75px}.resume-zoom button{min-width:36px}.resume-download{gap:6px}}
@media(prefers-reduced-motion:reduce){#resume-viewer[open]{animation:none}}

.resume-actions{display:flex;align-items:center;gap:20px}.resume-tools{flex-wrap:wrap}.resume-actions a{white-space:nowrap}@media(max-width:600px){.resume-actions{gap:12px}}

#resume-viewer :is(a,button,[tabindex]):focus-visible{outline-color:#16587b}
#resume-viewer .resume-scroll{scrollbar-color:#84b3ce #f5eedd}


/* saathi.css */
/* Saathi shares the portfolio's paper and wine, with a quieter, human scale. */
.saathi-cover{width:100%;min-width:0;min-height:470px;height:100%;padding:36px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:30px;background:var(--coastal-ink);color:var(--coastal-canvas);border-radius:20px;text-align:center}
.saathi-cover-kicker,.saathi-cover-foot{font-size:12px;line-height:1.6;color:var(--coastal-wash);letter-spacing:.035em}
.saathi-signature{font:400 clamp(76px,8vw,122px)/.9 var(--portfolio-serif);letter-spacing:-.045em}
.saathi-signature>span{display:block;font:400 14px/1.6 'DM Sans',sans-serif;letter-spacing:0;margin-top:18px;color:var(--coastal-wash)}
.saathi-cover-note{width:100%;max-width:300px;background:var(--coastal-canvas);color:var(--coastal-ink);padding:24px 28px;border-radius:20px;text-align:left;box-shadow:0 14px 30px color-mix(in srgb, var(--coastal-canvas) 7.06%, transparent)}
.saathi-cover-note>span{font-size:11px;color:var(--coastal-ink)}.saathi-cover-note p{font:400 27px/1.1 var(--portfolio-serif);margin:10px 0 18px}
.saathi-cover-moods{display:flex;gap:18px}.saathi-cover-moods svg{width:36px;height:36px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
#category-view .portfolio-project.elderly-care .project-card-art{grid-template-columns:minmax(0,1fr);padding:0;background:transparent}
#category-view .saathi-cover{min-height:420px;padding:28px;gap:26px}
#category-view .saathi-signature{font-size:94px}
#project-view.case-elderly-care .project-hero-image{display:block;padding:0;background:var(--coastal-ink);overflow:hidden}
#project-view.case-elderly-care .saathi-cover{min-height:540px;border-radius:var(--portfolio-radius);padding:36px}
.saathi-walkthrough{margin-top:8px}
.saathi-step-nav{display:flex;gap:10px;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 14.51%, transparent);padding-bottom:24px;margin-bottom:32px}
.saathi-step-nav button{display:flex;align-items:center;gap:13px;padding:14px 20px;border:1px solid color-mix(in srgb, var(--coastal-ink) 18.82%, transparent);border-radius:30px;font:400 14px/1.4 'DM Sans',sans-serif;color:var(--coastal-ink);transition:background .3s,color .3s}
.saathi-step-nav button>span{opacity:.65;font-size:11px}
.saathi-step-nav button[aria-pressed=true]{background:var(--coastal-ink);color:var(--coastal-canvas);border-color:var(--coastal-ink)}
.saathi-stage{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(32px,7vw,110px);padding:14px 28px 28px}
.saathi-context{max-width:390px;min-width:0}
.saathi-eyebrow{display:block;font-size:12px;line-height:1.4;color:var(--coastal-ink);margin-bottom:26px}
#project-view .saathi-context h3{font:400 clamp(35px,3.8vw,58px)/1.05 var(--portfolio-serif);letter-spacing:-.025em;color:var(--coastal-ink);margin-bottom:24px}
.saathi-context>p{font-size:16px;line-height:1.8;color:var(--coastal-ink)}
.saathi-context .saathi-hint{font-size:13px;margin-top:24px;color:var(--coastal-ink)}
.saathi-source{display:flex;gap:20px;justify-content:space-between;width:100%;font:400 13px/1.5 'DM Sans',sans-serif;color:var(--coastal-ink);text-align:left;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 20.78%, transparent);margin-top:30px;padding:16px 0}
.saathi-source span{font-size:20px}
.saathi-demo{width:100%;max-width:470px;margin:auto;background:var(--coastal-canvas);border:1px solid color-mix(in srgb, var(--coastal-ink) 9.41%, transparent);border-radius:28px;box-shadow:0 22px 60px color-mix(in srgb, var(--coastal-ink) 4.71%, transparent);color:var(--coastal-ink);overflow:hidden}
.saathi-demo>header{padding:24px 30px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 9.02%, transparent)}
.saathi-demo>header>span:first-child{font:500 32px/1 var(--portfolio-serif);letter-spacing:-.04em;color:var(--coastal-ink)}
.saathi-demo>header>span:last-child{font-size:10px;color:var(--coastal-ink)}
#saathi-screen{padding:28px 30px;min-height:458px}
.saathi-screen-label{font-size:12px;color:var(--coastal-ink)}
#project-view #saathi-screen h4{font:400 38px/1.06 var(--portfolio-serif);letter-spacing:-.02em;color:var(--coastal-ink);margin:13px 0 25px}
.saathi-task-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.saathi-task-grid button{display:flex;align-items:center;gap:10px;min-height:62px;padding:13px 14px;border:1px solid color-mix(in srgb, var(--coastal-ink) 12.55%, transparent);background:var(--coastal-wash);border-radius:12px;font-size:13px;color:var(--coastal-ink);text-align:left;transition:background .3s,color .3s}
.saathi-task-grid button>span{flex:0 0 24px;width:24px;font-size:23px;color:var(--coastal-ink);text-align:center}
.saathi-task-grid button[aria-pressed=true]{background:var(--coastal-ink);color:var(--coastal-canvas);border-color:var(--coastal-ink)}
.saathi-task-grid button[aria-pressed=true]>span{color:var(--coastal-canvas)}
.saathi-task-note,.saathi-selection-note{font-size:13px;line-height:1.65;margin-top:22px;min-height:63px;color:var(--coastal-ink)}
.saathi-mood-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.saathi-mood-grid button{padding:14px 3px;border-radius:15px;display:flex;flex-direction:column;align-items:center;gap:11px;background:var(--coastal-wash);border:1px solid transparent;color:var(--coastal-ink);font-size:12px}
.saathi-mood-grid svg{width:40px;height:40px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.saathi-mood-grid button[aria-pressed=true]{border-color:var(--coastal-ink);background:var(--coastal-wash);color:var(--coastal-ink)}
.saathi-connect{margin-top:30px}.saathi-connect p{font-size:16px;line-height:1.5;margin-bottom:15px}
.saathi-connect>div{display:flex;gap:10px}.saathi-connect button{padding:12px 18px;font-size:13px;border:1px solid color-mix(in srgb, var(--coastal-ink) 18.82%, transparent);border-radius:30px;color:var(--coastal-ink)}
.saathi-connect button[aria-pressed=true]{background:var(--coastal-ink);color:var(--coastal-canvas)}
.saathi-reading{padding:23px 25px;border-radius:17px;background:var(--coastal-wash);color:var(--coastal-ink);transition:background .35s,color .35s}
.saathi-reading>span{font-size:12px}.saathi-reading p{font:400 calc(21px * var(--reading-scale))/1.4 'DM Sans',sans-serif;margin-top:12px;letter-spacing:-.02em}
.saathi-reading.is-contrast{background:var(--coastal-ink);color:var(--coastal-canvas)}
.saathi-size-controls{display:flex;gap:8px;margin-top:22px}.saathi-size-controls button{flex:1;min-height:44px;padding:9px 8px;border:1px solid color-mix(in srgb, var(--coastal-ink) 14.51%, transparent);border-radius:24px;font-size:12px;color:var(--coastal-ink)}
.saathi-size-controls button[aria-pressed=true]{background:var(--coastal-ink);color:var(--coastal-canvas)}
.saathi-contrast{display:flex;justify-content:space-between;align-items:center;width:100%;padding:20px 0 4px;font-size:14px;color:var(--coastal-ink)}
.saathi-switch{position:relative;width:39px;height:23px;border-radius:30px;background:var(--coastal-wash);transition:background .3s}.saathi-switch:after{content:'';position:absolute;width:17px;height:17px;left:3px;top:3px;background:var(--coastal-canvas);border-radius:50%;transition:translate .3s}.saathi-contrast[aria-pressed=true] .saathi-switch{background:var(--coastal-ink)}.saathi-contrast[aria-pressed=true] .saathi-switch:after{translate:16px 0}
.saathi-demo>footer{display:flex;align-items:center;justify-content:space-between;padding:20px 30px;border-top:1px solid color-mix(in srgb, var(--coastal-ink) 9.02%, transparent);font-size:11px;color:var(--coastal-ink)}
.saathi-demo>footer>button{display:flex;align-items:center;gap:22px;color:var(--coastal-ink);font-size:14px;padding:8px 0}.saathi-demo>footer>button>span{font-size:23px}
.saathi-study-note{font-size:12px;color:var(--coastal-ink);line-height:1.7;border-top:1px solid color-mix(in srgb, var(--coastal-ink) 14.51%, transparent);margin-top:28px;padding-top:22px}
.saathi-walkthrough button:focus-visible{outline:2px solid var(--coastal-ink);outline-offset:4px}
#project-view.case-bank-of-baroda .browser-scroll{height:600px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:var(--coastal-ink) var(--coastal-wash);scrollbar-width:thin}
#project-view.case-bank-of-baroda .browser-scroll img{display:block;width:100%;height:auto;max-height:none;max-width:100%;object-fit:contain}
#project-view.case-bank-of-baroda .browser-scroll:focus-visible{outline:2px solid var(--coastal-ink);outline-offset:4px}
@media(max-width:1000px){.saathi-stage{gap:32px;padding:0}.saathi-step-nav button{padding:13px 15px}.saathi-context>p{font-size:15px}.saathi-demo>header,#saathi-screen,.saathi-demo>footer{padding-left:22px;padding-right:22px}.saathi-task-grid button{padding:12px 9px;gap:7px}}
@media(max-width:800px){.saathi-stage{grid-template-columns:1fr;gap:28px}.saathi-context{max-width:590px}.saathi-context .saathi-hint{margin-top:15px}.saathi-source{max-width:360px;margin-top:12px}.saathi-demo{max-width:480px}.saathi-step-nav{flex-wrap:wrap;margin-bottom:28px}.saathi-demo>header,#saathi-screen,.saathi-demo>footer{padding-left:28px;padding-right:28px}#project-view.case-elderly-care .saathi-cover{min-height:510px}}
@media(max-width:600px){#category-view .saathi-cover{min-height:370px;padding:25px 20px;gap:25px}#category-view .saathi-signature{font-size:82px}.saathi-signature>span{font-size:12px}.saathi-cover-note{padding:20px 22px}.saathi-cover-kicker,.saathi-cover-foot{font-size:11px}#project-view.case-elderly-care .saathi-cover{min-height:445px;padding:30px 24px}.saathi-step-nav{gap:8px}.saathi-step-nav button{font-size:12px;padding:12px 13px;gap:8px}.saathi-step-nav button>span{font-size:10px}#project-view .saathi-context h3{font-size:39px}.saathi-context>p{font-size:15px}.saathi-demo{border-radius:22px}.saathi-demo>header,#saathi-screen,.saathi-demo>footer{padding-left:20px;padding-right:20px}#saathi-screen{min-height:460px}.saathi-task-grid{gap:8px}.saathi-task-grid button{font-size:12px;min-height:66px;gap:6px;padding:10px 8px}.saathi-task-grid button>span{font-size:20px;min-width:24px;width:24px}#project-view #saathi-screen h4{font-size:35px}.saathi-mood-grid{gap:5px}.saathi-mood-grid button{font-size:11px;padding:12px 2px}.saathi-mood-grid svg{width:34px;height:34px}.saathi-connect button{padding:11px 14px;font-size:12px}.saathi-reading{padding:20px}.saathi-size-controls{gap:5px}.saathi-size-controls button{font-size:11px;padding:9px 4px}.saathi-study-note{font-size:11px}#project-view.case-bank-of-baroda .browser-scroll{height:440px}}
@media(prefers-reduced-motion:reduce){.saathi-walkthrough *{transition:none!important}}


/* mobile.css */
/* A phone-sized composition, with the same paper, wine and original artwork. */
@media (max-width: 800px) {
  #viewer[open] { display:flex; flex-direction:column; overflow:hidden; }
  #viewer .viewer-header, #viewer .viewer-controls { flex:none; }
  #viewer .viewer-header > div { min-width:0; }
  #viewer .viewer-header h2 { overflow-wrap:anywhere; font-size:18px; line-height:1.35; }
  #viewer .viewer-header .micro { font-size:11px; }
  #viewer #close-viewer { min-width:44px; min-height:44px; flex:none; }
  #viewer #viewer-images { flex:1; min-height:0; height:auto; touch-action:pan-x pan-y pinch-zoom; }
  #viewer .viewer-controls button { min-height:44px; padding:10px 16px; font-size:14px; }
  #viewer .viewer-controls { font-size:12px; }
  #project-view .stage-tabs button { min-height:44px; font-size:13px; }
  .chapter-navigation a, .site-header nav a { min-height:44px; display:inline-flex; align-items:center; }
  .browser-full-view { display:inline-flex; align-items:center; justify-content:space-between; gap:20px; min-height:44px; padding:12px 0; margin-top:10px; width:100%; text-align:left; font-size:14px; color:var(--coastal-ink); border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 20.78%, transparent); }
  .browser-full-view > span { font-size:23px; }
}
@media (min-width: 801px) { .browser-full-view { display:none; } }
@media (max-width: 600px) {
  .opening-composition { grid-template-rows:540px 460px auto auto; }
  .story-note, .work-note { min-height:320px; }
  .hello-note { min-height:170px; }
  .opening-foot button, .opening-foot a { min-height:44px; display:inline-flex; align-items:center; }
  .opening-foot { row-gap:2px; }
  #category-view .category-heading h1 { font-size:clamp(44px,13.8vw,64px); overflow-wrap:anywhere; }
  #project-view .project-title h1 { font-size:clamp(44px,13.4vw,65px); overflow-wrap:anywhere; }
  #project-view.case-solar-system .project-title h1 { font-size:clamp(40px,12.5vw,51px); }
  #project-view .next-project h2, .project-card-label h3, .personal-page h2, .personal-page h3 { overflow-wrap:anywhere; }
  .project-card-label > div { min-width:0; }
  #category-view .category-tabs a { min-height:44px; font-size:12px; }
  #project-view .chapter-links { flex-wrap:wrap; gap:4px 20px; }
  #project-view .chapter-links a { min-height:44px; display:inline-flex; align-items:center; font-size:12px; }
  #project-view .chapter p, #project-view .demo-copy p, #project-view .feature-heading > p { font-size:16px; }
  #project-view .project-nav, #category-view .category-breadcrumb { font-size:12px; }
  #project-view .project-nav > a, .category-breadcrumb > a { min-height:44px; display:inline-flex; align-items:center; }
  #project-view .project-nav > span { text-align:right; flex:none; }
  #project-view .chapter figure { padding:14px; }
  .saathi-task-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .saathi-task-grid button { flex-direction:column; align-items:flex-start; gap:9px; padding:13px 10px; min-height:90px; font-size:12px; }
  .saathi-task-grid button > span { flex-basis:auto; text-align:left; }
  .saathi-step-nav button { min-height:44px; }
  .saathi-size-controls button { min-height:44px; }
  .saathi-connect button { min-height:44px; }
  .saathi-contrast { min-height:48px; }
  .saathi-demo > footer > button { min-height:44px; }
  .resume-toolbar p { font-size:12px; }
  .resume-zoom button { min-width:44px; min-height:44px; }
  .resume-tools { padding:8px 12px; gap:4px 12px; font-size:12px; }
  .resume-actions { flex:1; justify-content:flex-end; gap:16px; }
  .resume-actions a { min-height:44px; }
}
@media (max-width: 370px) {
  .home-surface .wordmark, .work-surface .wordmark { font-size:20px; white-space:nowrap; }
  .home-surface .site-header, .work-surface .site-header { padding-inline:16px; }
  .home-surface .site-header nav, .work-surface .site-header nav { gap:10px; font-size:11.5px; }
  .opening-composition { grid-template-rows:490px 420px auto auto auto; }
  .story-note { grid-column:1 / -1; grid-row:3; min-height:240px; padding:26px; }
  .story-note h2 { font-size:36px; }
  .story-note p { font-size:16px; }
  .story-note .widget-label { font-size:14px; }
  .work-note { grid-column:1 / -1; grid-row:4; min-height:270px; }
  .work-note .widget-label { font-size:14px; }
  .hello-note { grid-row:5; }
  .discipline-copy h3, .fashion-panel h3 { font-size:43px; }
  .discipline-heading h2 { font-size:51px; }
  #project-view .project-title, #project-view .chapter .chapter-copy { padding-inline:22px; }
  #project-view .chapter h2 { font-size:39px; }
  #project-view .next-project h2 { font-size:40px; }
  .saathi-demo > header, #saathi-screen, .saathi-demo > footer { padding-inline:14px; }
  .saathi-task-grid { gap:6px; }
  .saathi-task-grid button { padding-inline:8px; font-size:11px; }
  #project-view #saathi-screen h4 { font-size:31px; }
  .saathi-reading { padding:17px 13px; }
  .saathi-reading p { font-size:calc(19px * var(--reading-scale)); }
  .saathi-signature { font-size:68px; }
  #category-view .saathi-signature { font-size:70px; }
  .saathi-cover-note { padding:20px 16px; }
  .saathi-cover-note p { font-size:25px; }
  .contact-detail a, .contact-detail p { font-size:19px; }
  .story-chapter h2, .story-lenses > h2 { font-size:46px; }
}
@media (min-width: 601px) and (max-width: 900px) {
  .opening-composition { grid-template-columns:1fr 1fr; grid-template-rows:clamp(480px,65vw,580px) auto 150px; height:auto; min-height:0; max-height:none; gap:18px; }
  .flower-panel { grid-column:1; grid-row:1; }
  .portrait-space { grid-column:2; grid-row:1; margin:0; }
  .story-note { grid-column:1; grid-row:2; min-height:280px; padding:28px; }
  .story-note h2 { font-size:38px; margin-bottom:18px; }
  .story-note p { font-size:17px; line-height:1.5; }
  .story-note .widget-label { margin-top:25px; font-size:15px; }
  .work-note { grid-column:2; grid-row:2; min-height:280px; padding:28px; }
  .work-number { font-size:112px; }
  .work-note-content { margin:auto 0 25px; }
  .work-note-content p { font-size:20px; }
  .work-note .widget-label { font-size:15px; }
  .hello-note { grid-column:1 / -1; grid-row:3; padding:25px 28px; }
  .hello-note p { font-size:25px; }
  .portrait-top { gap:8px; }
  .portrait-top h1 { font-size:18px; }
  .portrait-top > span { font-size:20px; }
  .portrait-caption { left:22px; right:22px; bottom:25px; }
  .portrait-caption p { font-size:23px; }
  .portrait-caption > span { font-size:12px; }
}


/* motion.css */
/* A single quiet tempo; preserve the layout and complete project imagery. */
.reading-progress { width:100%; transform:scaleX(0); transform-origin:left; will-change:transform; }
.flower-art img { will-change:transform; }
.opening-composition[data-assembling] > .opening-panel { will-change:transform,opacity; }

.work-reveal-ready,
.discipline-panel.work-reveal-ready {
  transition-duration: .85s, 1s, .65s;
}
.work-reveal-ready:not(.in-view) { transform:translate3d(0,24px,0); }
.work-reveal-ready h2,
.work-reveal-ready .discipline-image {
  transition-duration: 1s, .85s;
  transition-delay:calc(var(--work-reveal-delay,0ms) + 60ms);
}
.work-reveal-ready:not(.in-view) .discipline-image { transform:translate3d(0,8px,0); }
/* Route cards already provide the entrance; don't animate the same artwork twice. */
#project-view .project-hero-image { animation:none; }
/* Keep dialog scrolling inexpensive, especially on phones. */
dialog::backdrop,#resume-viewer::backdrop { backdrop-filter:none; }
@media (pointer:coarse) {
  .flower-art img { will-change:auto; }
  .flower-panel:hover .flower-art img { scale:1.035; }
  .work-reveal-ready,.discipline-panel.work-reveal-ready { transition-duration:.65s,.8s,.65s; }
}
@media (prefers-reduced-motion:reduce) {
  .flower-art img { will-change:auto; transform:none!important; }
  .work-reveal-ready,.work-reveal-ready:not(.in-view),
  .work-reveal-ready h2,.work-reveal-ready .discipline-image {
    opacity:1; transform:none; transition:none!important;
  }
}


/* case-studies.css */
/* The landing palette becomes an open editorial page, with room for evidence. */
.case-plates .plate-panel[hidden]{display:none!important}
#project-view[data-editorial=true]{--case-ink:var(--coastal-ink);--case-copy:var(--coastal-ink);--case-rule:color-mix(in srgb, var(--coastal-accent) 16.86%, transparent);color:var(--case-copy)}
.case-paper{background:var(--coastal-canvas);border-radius:29px;overflow:hidden;padding:clamp(26px,4.8vw,78px);color:var(--case-copy)}
.case-kicker{display:block;font:400 11px/1.6 'DM Sans',sans-serif;letter-spacing:.07em;color:var(--coastal-ink);text-transform:uppercase}
.case-intro{display:grid;grid-template-columns:1fr 1.08fr;gap:6%;align-items:center;padding:26px 0 68px}
.case-title h1{font:400 clamp(64px,7.3vw,116px)/.92 var(--portfolio-serif);letter-spacing:-.04em;color:var(--case-ink);margin:32px 0}
.case-title>p{font:400 clamp(24px,2.5vw,38px)/1.2 var(--portfolio-serif);max-width:590px;color:var(--case-ink)}
.case-start{display:inline-flex;align-items:center;gap:36px;font-size:12px;border-bottom:1px solid color-mix(in srgb, var(--coastal-accent) 37.65%, transparent);padding:18px 0 12px;margin-top:22px;color:var(--case-ink)}
.case-start span{font-size:20px;transition:transform .6s}.case-start:hover span{transform:translateY(4px)}
.case-figure{margin:0;min-width:0}.case-figure .image-button{display:block;width:100%;padding:0;background:transparent;border:0;border-radius:0;overflow:visible}
#project-view .case-figure img{display:block;width:100%;height:auto;max-height:780px;object-fit:contain;transform:none;rotate:none;filter:none;background:transparent;border-radius:0}
.case-figure .image-button:after{display:none}.case-figure figcaption{display:flex;justify-content:space-between;gap:20px;font:400 11px/1.6 'DM Sans',sans-serif;color:var(--coastal-ink);margin-top:14px;padding:0}.case-figure figcaption span{white-space:nowrap;color:var(--coastal-ink)}
.case-lead-image{width:100%}.case-lead-image img{max-height:580px!important}.case-intro.type-led{display:block;max-width:1050px}.case-intro.type-led .case-title>p{max-width:800px}
.case-brief{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;padding:42px 0 64px;border-top:1px solid var(--case-rule)}
.case-brief>div>p{font:400 clamp(21px,2vw,29px)/1.5 var(--portfolio-serif);margin:17px 0 0;color:var(--coastal-ink)}
.case-brief dl{margin:0;display:grid;gap:20px}.case-brief dt{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--coastal-ink);margin-bottom:6px}.case-brief dd{font-size:13px;line-height:1.65;margin:0}
.case-process{padding:70px 0;border-top:1px solid var(--case-rule);scroll-margin-top:28px}
.case-section-heading{max-width:870px}.case-section-heading h2,.case-section h2,.case-outcome h2{font:400 clamp(38px,4.5vw,66px)/1.03 var(--portfolio-serif);letter-spacing:-.027em;color:var(--case-ink);margin:17px 0 24px}
.case-section-heading>p{font-size:13px;line-height:1.8;color:var(--coastal-ink)}
.process-steps{display:flex;margin-top:42px;border-bottom:1px solid var(--case-rule)}
.process-steps button{flex:1;display:flex;align-items:center;gap:13px;text-align:left;padding:18px 14px 20px 0;border:0;border-bottom:2px solid transparent;font-size:16px;color:var(--coastal-ink);transition:color .3s,border-color .3s;min-width:0}
.process-steps button>span{font-size:10px;color:var(--coastal-ink)}.process-steps button>i{margin-left:auto;margin-right:18px;font-style:normal;opacity:.4}.process-steps button:last-child>i{display:none}.process-steps button[aria-pressed=true]{color:var(--case-ink);border-color:var(--case-ink)}.process-steps button:hover{color:var(--case-ink)}
.process-reasoning{display:grid;grid-template-columns:1fr 45px 1fr;gap:16px 25px;min-height:228px;padding:25px 0 0;align-content:start}
.process-method{grid-column:1/-1;color:var(--case-accent);font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding-bottom:7px}
.process-reasoning>div>span{font-size:11px;color:var(--coastal-ink)}.process-reasoning>div>p{font:400 clamp(21px,2.1vw,30px)/1.3 var(--portfolio-serif);color:var(--coastal-ink);margin-top:11px;max-width:620px}.reasoning-arrow{align-self:center;font-size:32px;color:var(--case-accent)}
.case-section{padding:76px 0;border-top:1px solid var(--case-rule)}.case-section-copy{max-width:730px}.case-section-copy>p{font-size:15px;line-height:1.9;max-width:680px;margin:20px 0 0}
.case-section.has-art{display:grid;grid-template-columns:1fr 1.12fr;gap:7%;align-items:start}.case-section.has-art .case-section-copy{padding-top:16px}.case-section.has-art:nth-child(even){grid-template-columns:1.12fr 1fr}.case-section.has-art:nth-child(even) .case-section-copy{grid-column:2;grid-row:1}.case-section.has-art:nth-child(even) .case-figure{grid-column:1;grid-row:1}
.case-section.full-art{display:block}.case-section.full-art .case-section-copy{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:0 8%}.case-section.full-art .case-kicker{grid-column:1/-1}.case-section.full-art h2{margin-bottom:32px}.case-section.full-art .case-figure{margin-top:35px}.case-section.full-art img{max-height:880px}
.case-diagram{margin-top:40px}.evidence-chart{border-top:2px solid var(--case-accent);padding-top:18px}.chart-heading{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--coastal-ink)}.comparison-columns{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:35px 0}.comparison-columns h3{font-size:16px;font-weight:400;margin-bottom:26px;color:var(--coastal-ink)}.proportion-value{font:400 90px/.9 var(--portfolio-serif);letter-spacing:-.06em;color:var(--case-accent);margin-bottom:20px}.proportion-value span{font-size:36px;letter-spacing:0}.proportion-track{height:15px;background:var(--coastal-wash)}.proportion-track span{display:block;height:100%;background:var(--case-accent)}.comparison-columns p{font-size:13px;line-height:1.65;margin-top:14px}.comparison-columns .chart-note{font-size:12px;color:var(--coastal-ink);max-width:360px;margin-top:20px}.comparison-bar{margin:0 0 22px}.comparison-bar>div{display:flex;justify-content:space-between;font-size:12px;margin-bottom:12px}.comparison-bar strong{font-weight:500}.comparison-bar i{display:block;height:15px;background:var(--case-accent);width:var(--bar-size)}.comparison-bar:nth-of-type(2) i{opacity:.55}.case-source{font-size:10px!important;color:var(--coastal-ink);line-height:1.7;border-top:1px solid var(--case-rule);padding-top:15px}
.connected-flow{list-style:none;display:flex;gap:0;margin:0;padding:0}.connected-flow li{flex:1;min-width:0;position:relative;padding:0 25px 0 0}.connected-flow li:before{content:'';position:absolute;left:0;right:0;top:22px;height:1px;background:color-mix(in srgb, var(--coastal-accent) 33.33%, transparent)}.connected-flow li:last-child:before{display:none}.flow-node{position:relative;display:grid;place-items:center;width:45px;height:45px;border:1px solid var(--case-accent);border-radius:50%;background:var(--coastal-canvas);color:var(--case-accent);font-size:11px;margin-bottom:25px}.connected-flow h4{font-size:15px;font-weight:500;color:var(--case-ink);margin-bottom:12px}.connected-flow p{font-size:13px;line-height:1.7;color:var(--case-copy);max-width:250px}
.format-comparison{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--case-rule);padding-top:35px}.format-mark{font:400 43px/1.4 var(--portfolio-serif);color:var(--case-accent)}.format-comparison h3{font-size:17px;font-weight:400;margin:22px 0 12px;color:var(--case-ink)}.format-comparison p{font-size:13px;line-height:1.8;max-width:340px}
.case-outcome{border-top:1px solid var(--case-rule);padding:65px 0 40px;display:grid;grid-template-columns:1fr 1.15fr;gap:9%}.case-outcome .case-result{font:400 27px/1.4 var(--portfolio-serif);color:var(--case-ink);margin-bottom:22px}.case-outcome p{font-size:14px;line-height:1.85}.case-credits{font-size:10px;line-height:1.8;color:var(--coastal-ink);padding-top:25px;border-top:1px solid var(--case-rule);max-width:960px}
.case-next{padding:45px 8px;display:grid;grid-template-columns:1fr auto;gap:20px;color:var(--coastal-wash);align-items:center}.case-next .case-kicker{grid-column:1/-1;color:var(--coastal-ink)}.case-next>span:nth-child(2){font:400 clamp(36px,5vw,75px)/1.1 var(--portfolio-serif);letter-spacing:-.03em}.case-next i{font:normal 40px var(--portfolio-serif);transition:transform .6s}.case-next:hover i{transform:translate(4px,-4px)}
@media(max-width:1000px){.case-paper{padding:38px}.case-intro{gap:5%}.case-title h1{font-size:70px}.case-title>p{font-size:29px}.case-brief{gap:7%}.process-steps button{font-size:14px}.process-steps button>i{margin-right:6px}.case-section.has-art{gap:5%}.case-section h2{font-size:44px}.case-section-copy>p{font-size:14px}}
@media(max-width:700px){.case-paper{padding:28px 22px;border-radius:22px}.case-intro{display:flex;flex-direction:column;gap:36px;padding:10px 0 36px;align-items:stretch}.case-title h1{font-size:clamp(51px,13vw,80px);margin:26px 0 22px}.case-title>p{font-size:28px}.case-lead-image img{max-height:480px!important}.case-brief{display:block;padding:30px 0 40px}.case-brief>div>p{font-size:24px}.case-brief dl{margin-top:30px;gap:18px}.case-process{padding:40px 0}.case-section-heading h2,.case-section h2{font-size:40px}.process-steps{margin-top:25px;flex-wrap:wrap}.process-steps button{flex-basis:50%;font-size:14px;padding:14px 8px 14px 0;min-height:58px}.process-steps button>i{display:none}.process-reasoning{grid-template-columns:1fr;min-height:355px;gap:17px;padding-top:24px}.process-method{grid-column:1}.process-reasoning>div>p{font-size:24px}.reasoning-arrow{display:none}.process-reasoning>div:last-child{border-left:2px solid var(--case-accent);padding-left:16px}.case-section,.case-section.has-art,.case-section.has-art:nth-child(even){display:flex;flex-direction:column;padding:44px 0;gap:30px}.case-section.has-art .case-section-copy{padding:0}.case-section.full-art .case-section-copy{display:block}.case-section-copy>p{font-size:14px;line-height:1.85}.case-section.full-art .case-figure{margin-top:0}.case-figure figcaption{font-size:10px;gap:12px}.case-figure figcaption span{align-self:end}.case-diagram{margin-top:0;width:100%}.comparison-columns{display:block;padding:25px 0}.comparison-columns>div+div{margin-top:40px}.chart-heading{flex-direction:column;gap:5px}.connected-flow{display:block}.connected-flow li{padding:0 0 26px 65px;min-height:110px}.connected-flow li:before{left:22px;right:auto;top:0;width:1px;height:100%}.flow-node{position:absolute;left:0;top:0}.connected-flow h4{padding-top:9px}.connected-flow p{max-width:none}.format-comparison{gap:24px}.format-mark{font-size:28px}.case-outcome{display:block;padding:40px 0 30px}.case-outcome .case-result{font-size:26px}.case-next{padding:32px 3px}.case-next>span:nth-child(2){font-size:38px}.case-next i{font-size:30px}.case-kicker{font-size:10px}.case-start{margin-top:13px}}
@media(prefers-reduced-motion:reduce){.case-paper *,.case-next *{scroll-behavior:auto;transition:none!important;animation:none!important}}
.garment-comparison{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:end}.garment-comparison .case-figure img{height:650px!important;max-height:650px!important;object-fit:contain}.garment-comparison .case-figure figcaption{min-height:48px}.range-comparison .case-figure img{height:570px!important}.detail-controls,.plate-controls,.bank-jump-controls{display:flex;gap:26px;flex-wrap:wrap;border-bottom:1px solid var(--case-rule);margin:24px 0}.detail-controls button,.plate-controls button,.bank-jump-controls button{font-size:13px;padding:14px 0;border:0;border-bottom:2px solid transparent;color:var(--coastal-ink);display:flex;gap:12px;align-items:center;transition:color .3s,border-color .3s}.detail-controls button[aria-pressed=true],.plate-controls button[aria-pressed=true],.bank-jump-controls button[aria-pressed=true]{color:var(--case-ink);border-bottom-color:var(--case-ink)}.detail-controls button:hover,.plate-controls button:hover,.bank-jump-controls button:hover{color:var(--case-ink)}.detail-observation{min-height:60px;font-size:14px;line-height:1.8;max-width:750px;color:var(--case-copy)}.plate-controls{margin-top:0}.plate-controls button>span{font-size:10px}.plate-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:center;min-height:480px;padding:20px 0}.plate-panel[hidden]{display:none}.plate-note h3{font:400 clamp(28px,3vw,46px)/1.1 var(--portfolio-serif);color:var(--case-ink);letter-spacing:-.02em;margin:0 0 20px}.plate-note>p{font-size:14px;line-height:1.85;max-width:430px}.plate-panel .case-figure img{height:450px!important;max-height:450px!important}.carry-forward{border-top:1px solid var(--case-rule);margin-top:24px;padding-top:20px}.carry-forward>span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--case-accent)}.carry-forward p{font:400 24px/1.35 var(--portfolio-serif);color:var(--case-ink);margin-top:10px}.plate-panel>.connected-flow{align-self:center}.plate-panel .connected-flow{display:block}.plate-panel .connected-flow li{padding:0 0 26px 65px;min-height:105px}.plate-panel .connected-flow li:before{left:22px;right:auto;top:0;width:1px;height:100%}.plate-panel .flow-node{position:absolute;left:0;top:0}.plate-panel .connected-flow h4{padding-top:9px}.cycle-type{display:flex;gap:25px;align-items:center;color:var(--case-accent);justify-content:center}.cycle-type strong{font:400 150px/1 var(--portfolio-serif);letter-spacing:-.06em}.cycle-type span{font:400 27px/1.3 var(--portfolio-serif)}.commitment-comparison{display:flex;gap:35px;align-items:center;border-top:1px solid var(--case-rule);padding-top:30px}.commitment-comparison>div{flex:1}.commitment-comparison>div>span{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--coastal-ink)}.commitment-comparison p{font:400 clamp(26px,3vw,43px)/1.2 var(--portfolio-serif);color:var(--case-ink);margin-top:16px}.commitment-comparison>span{font-size:30px;color:var(--case-accent)}.making-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start}.making-strip .case-figure img{height:210px!important;max-height:210px!important}.making-strip figcaption{font-size:10px}.making-strip figcaption span{display:none}.annotated-drawing{display:grid;grid-template-columns:1fr .7fr;gap:8%;align-items:center}.annotated-drawing .case-figure img{max-height:650px!important}.annotated-drawing .detail-controls{display:block;border:0;margin-top:0}.annotated-drawing .detail-controls button{width:100%;text-align:left;font-size:18px;padding:18px 0;border-bottom:1px solid var(--case-rule)}.annotated-drawing .detail-controls button[aria-pressed=true]{border-bottom-color:var(--case-ink)}.annotated-drawing .detail-observation{margin-top:24px;min-height:95px}
#project-view[data-editorial=true] .browser-frame{background:var(--coastal-wash);border:1px solid color-mix(in srgb, var(--coastal-accent) 18.04%, transparent);border-radius:12px;padding:34px 10px 10px}#project-view[data-editorial=true] .browser-frame:before{color:var(--coastal-ink)}#project-view[data-editorial=true] .browser-scroll{height:620px;background:#fff}#project-view[data-editorial=true] .browser-scroll img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}#project-view[data-editorial=true] .browser-caption{color:var(--coastal-ink);font-size:11px;margin-top:14px}.case-original{display:inline-block;padding:14px 0;border-bottom:1px solid var(--case-rule);font-size:12px;color:var(--case-ink);margin-top:8px}.case-plates[data-plates=ride] .plate-panel{grid-template-columns:.6fr 1.4fr}.case-plates[data-plates=ride] .plate-panel .case-figure img{height:auto!important;max-height:780px!important}.case-section.print-study .case-figure{max-width:410px;margin:auto}.case-section.print-study .case-figure img{max-height:480px!important}.case-plates[data-plates=solar] .plate-panel .case-figure img{max-height:590px!important;height:590px!important}.case-plates[data-plates=solar] .plate-panel{min-height:645px}.case-plates[data-plates=hwca] .plate-panel{min-height:560px}.case-plates[data-plates=hwca] .plate-panel .case-figure img{height:450px!important}#project-view[data-editorial=true] .saathi-stage{padding-left:0;padding-right:0}#project-view[data-editorial=true] .saathi-demo>footer{padding:20px 30px;color:var(--coastal-ink)}#project-view[data-editorial=true] .saathi-study-note{color:var(--coastal-ink)}
@media(max-width:1000px){.garment-comparison .case-figure img{height:480px!important}.making-strip{grid-template-columns:1fr 1fr}.case-plates[data-plates=ride] .plate-panel{grid-template-columns:1fr}.case-plates[data-plates=ride] .plate-note{max-width:680px}.plate-panel{gap:5%}}
@media(max-width:700px){.garment-comparison{gap:16px}.garment-comparison .case-figure img,.range-comparison .case-figure img{height:310px!important}.garment-comparison figcaption{font-size:9px;display:block}.garment-comparison figcaption span{display:block;margin-top:8px}.detail-controls,.plate-controls,.bank-jump-controls{gap:16px;margin:20px 0}.detail-controls button,.plate-controls button,.bank-jump-controls button{font-size:12px;padding:12px 0;min-height:44px}.plate-panel,.case-plates[data-plates=ride] .plate-panel{display:flex;flex-direction:column;align-items:stretch;gap:28px;min-height:0;padding-top:0}.plate-panel[hidden]{display:none}.plate-note h3{font-size:31px}.plate-note>p{font-size:14px}.plate-panel .case-figure img{height:auto!important;max-height:500px!important}.case-plates[data-plates=solar] .plate-panel{min-height:680px}.case-plates[data-plates=solar] .plate-panel .case-figure img{height:370px!important}.case-plates[data-plates=hwca] .plate-panel{min-height:690px;justify-content:start}.case-plates[data-plates=hwca] .plate-panel .case-figure img{height:300px!important}.case-plates[data-plates=hwca] .plate-controls{gap:6px 18px}.cycle-type{margin-top:30px}.cycle-type strong{font-size:120px}.cycle-type span{font-size:23px}.making-strip{grid-template-columns:1fr 1fr;gap:25px 15px}.making-strip .case-figure img{height:135px!important}.annotated-drawing{display:flex;flex-direction:column;gap:15px}.annotated-drawing .detail-controls{display:flex;gap:18px}.annotated-drawing .detail-controls button{width:auto;font-size:13px}.annotated-drawing .detail-observation{margin-top:0}.commitment-comparison{gap:18px;flex-wrap:wrap}.commitment-comparison p{font-size:26px}.commitment-comparison>span{font-size:24px}.case-plates[data-plates=ride] .plate-panel .case-figure img{max-height:650px!important}#project-view[data-editorial=true] .browser-scroll{height:440px}#project-view[data-editorial=true] .browser-frame{padding:28px 6px 6px}.bank-jump-controls{gap:6px 16px}.bank-jump-controls button{font-size:11px}.case-figure .image-button{touch-action:manipulation}.case-section.full-art h2{margin-bottom:20px}}
.case-entry-links{display:flex;gap:30px;flex-wrap:wrap}.case-entry-links .case-start{gap:25px}.js-motion #project-view .case-section-copy.reveal,.js-motion #project-view .case-section-heading.reveal{transition:opacity .65s ease,transform .75s cubic-bezier(.22,.61,.36,1);transform:translateY(15px)}.js-motion #project-view .case-section-copy.revealed,.js-motion #project-view .case-section-heading.revealed{transform:none}.case-figure button:focus-visible,.case-paper button:focus-visible,.case-paper a:focus-visible{outline:2px solid var(--coastal-ink);outline-offset:5px}.case-figure button:hover{opacity:.97}.case-figure button{transition:opacity .3s}#project-view .case-figure .image-button{min-height:0}
@media(max-width:700px){.case-entry-links{gap:22px}.case-entry-links .case-start{font-size:11px;gap:14px}.case-paper .case-figure{width:100%}}
@media(prefers-reduced-motion:reduce){.js-motion #project-view .reveal{opacity:1!important;transform:none!important;transition:none!important}}
.category-sheet{background:var(--coastal-canvas);border-radius:29px;padding:clamp(26px,4.8vw,78px);color:var(--coastal-ink);overflow:hidden}.category-editorial-heading{max-width:1050px;padding:20px 0 45px}.category-editorial-heading h1{font:400 clamp(65px,8vw,122px)/.95 var(--portfolio-serif);letter-spacing:-.04em;color:var(--coastal-ink);margin:30px 0 25px}.category-editorial-heading>p{max-width:640px;font:400 28px/1.3 var(--portfolio-serif);color:var(--coastal-ink)}.category-editorial-tabs{display:flex;gap:35px;flex-wrap:wrap;border-top:1px solid color-mix(in srgb, var(--coastal-accent) 16.86%, transparent);border-bottom:1px solid color-mix(in srgb, var(--coastal-accent) 16.86%, transparent);padding:20px 0;margin-bottom:20px}.category-editorial-tabs a{font-size:12px;color:var(--coastal-ink);padding:8px 0;display:flex;gap:18px}.category-editorial-tabs a[aria-current=page]{color:var(--coastal-ink)}.category-editorial-tabs a:hover{color:var(--coastal-ink)}.portfolio-entry{display:grid;grid-template-columns:1.12fr 1fr;gap:8%;padding:60px 0;border-bottom:1px solid color-mix(in srgb, var(--coastal-accent) 16.86%, transparent);align-items:center;color:var(--coastal-ink)}.portfolio-entry:last-child{border:0;padding-bottom:25px}.portfolio-entry:nth-child(even){grid-template-columns:1fr 1.12fr}.portfolio-entry:nth-child(even) .portfolio-entry-art{grid-column:2;grid-row:1}.portfolio-entry:nth-child(even) .portfolio-entry-copy{grid-column:1;grid-row:1}.portfolio-entry-art{min-width:0}.portfolio-entry-art img{width:100%;height:440px;object-fit:contain;transition:opacity .4s;display:block}.portfolio-entry:hover .portfolio-entry-art img{opacity:.93}.portfolio-entry h2{font:400 clamp(42px,4.3vw,69px)/1.03 var(--portfolio-serif);letter-spacing:-.03em;color:var(--coastal-ink);margin:22px 0}.portfolio-entry-copy>p{font-size:17px;line-height:1.7;max-width:400px}.portfolio-entry-methods{display:block;font-size:11px;line-height:1.8;color:var(--coastal-ink);margin-top:25px;max-width:390px}.portfolio-read{display:inline-flex;gap:32px;padding:17px 0 10px;border-bottom:1px solid color-mix(in srgb, var(--coastal-accent) 37.65%, transparent);margin-top:20px;font-size:12px;color:var(--coastal-ink)}.portfolio-read>span{font-size:22px;transition:transform .5s}.portfolio-entry:hover .portfolio-read>span{transform:translate(3px,-3px)}.portfolio-entry .saathi-cover{min-height:380px!important;border-radius:14px}#category-view .portfolio-entry .saathi-signature{font-size:85px}
@media(max-width:1000px){.portfolio-entry{gap:5%}.portfolio-entry-art img{height:360px}.portfolio-entry h2{font-size:46px}.portfolio-entry-copy>p{font-size:15px}}
@media(max-width:700px){.category-sheet{padding:30px 22px;border-radius:22px}.category-editorial-heading{padding:10px 0 30px}.category-editorial-heading h1{font-size:57px}.category-editorial-heading>p{font-size:25px}.category-editorial-tabs{gap:13px 22px;padding:12px 0}.category-editorial-tabs a{font-size:11px;gap:8px}.portfolio-entry,.portfolio-entry:nth-child(even){display:flex;flex-direction:column;align-items:stretch;gap:25px;padding:35px 0}.portfolio-entry-art img{height:auto;max-height:380px}.portfolio-entry h2{font-size:43px;margin:17px 0}.portfolio-entry-copy>p{font-size:15px}.portfolio-entry-methods{margin-top:17px}.portfolio-entry .saathi-cover{min-height:350px!important}#category-view .portfolio-entry .saathi-signature{font-size:72px}.portfolio-read{margin-top:15px}}
@media(max-width:700px){#project-view[data-editorial=true] .project-nav{align-items:flex-start}#project-view[data-editorial=true] .project-nav a{flex-shrink:0}#project-view[data-editorial=true] .project-nav>span{min-width:0;max-width:62%;white-space:normal;text-align:right;line-height:1.6;overflow-wrap:anywhere}.case-title h1,.case-next>span:nth-child(2){overflow-wrap:anywhere}}
@media(max-width:700px){.category-editorial-heading h1{font-size:clamp(40px,12vw,57px);overflow-wrap:anywhere}.portfolio-entry h2{overflow-wrap:anywhere}.case-title h1{font-size:clamp(43px,13vw,80px)}}


/* fashion-visuals.css */
/* Fashion modules keep the original artwork whole and inherit the page surface. */
.fx-visual{--fx-wine:var(--coastal-ink);--fx-paper:var(--coastal-canvas);--fx-beige:var(--coastal-wash);--fx-cream:var(--coastal-wash);--fx-brown:var(--coastal-ink);width:100%;min-width:0;background:transparent;color:var(--fx-brown);font:inherit}
.fx-visual *{box-sizing:border-box}
.fx-visual [hidden]{display:none!important}
.fx-visual button{font:inherit;color:inherit;-webkit-tap-highlight-color:transparent}
.fx-visual button:focus-visible,.fx-reference-rail:focus-visible{outline:2px solid var(--fx-wine);outline-offset:5px}
.fx-visual h3{font-family:var(--serif,var(--portfolio-serif,Georgia,serif));font-weight:400;font-size:clamp(32px,3.6vw,55px);line-height:1.08;letter-spacing:-.025em;color:var(--fx-wine);margin:10px 0 18px}
.fx-overline{font:inherit;font-size:12px;line-height:1.6;letter-spacing:.09em;text-transform:uppercase;color:var(--fx-wine);margin:0}
.fx-caption{font:inherit;font-size:14px;line-height:1.75;margin:0;max-width:44ch;color:var(--fx-brown)}
.fx-selector{display:flex;flex-wrap:wrap;gap:0;margin:0 0 35px;border-bottom:1px solid var(--fx-beige)}
.fx-selector button{flex:1;min-width:120px;display:flex;align-items:center;gap:12px;min-height:62px;padding:14px 18px 14px 0;text-align:left;background:transparent;border:0;border-bottom:2px solid transparent;font-size:13px;line-height:1.4;transition:color 300ms,border-color 300ms}
.fx-selector button[aria-pressed=true]{color:var(--fx-wine);border-bottom-color:var(--fx-wine)}
.fx-selector button:hover{color:var(--fx-wine)}
.fx-index{font-size:12px;letter-spacing:.05em;opacity:.65}
.fx-stage,.fx-panel,.fx-figure{min-width:0;width:100%}
.fx-figure{margin:0}
.fx-image{display:block;width:100%;padding:0;border:0;background:var(--fx-cream);cursor:zoom-in;border-radius:0}
.fx-visual .fx-image img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;object-position:center;transform:none;rotate:none;filter:none;border-radius:0;background:transparent}
.fx-figure figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin:10px 0 0;padding:0;font:inherit;font-size:12px;line-height:1.65;color:var(--fx-brown)}
.fx-figure figcaption>span{color:var(--fx-wine);font-size:15px;flex:none}
.fx-look-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.8fr) minmax(0,.7fr);gap:clamp(18px,2.3vw,34px);align-items:start}
.fx-garment .fx-image,.fx-illustration .fx-image{height:clamp(380px,43vw,650px)}
.fx-visual .fx-garment img,.fx-visual .fx-illustration img{height:100%;max-height:650px}
.fx-look-note{display:flex;flex-direction:column;gap:24px;padding-top:12px;min-width:0}
.fx-look-note h3{font-size:clamp(28px,2.7vw,43px)}
.fx-details-list{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-wrap:wrap;gap:8px 15px;font-size:12px;line-height:1.6;color:var(--fx-brown)}
.fx-details-list li{position:relative;padding-left:10px}
.fx-details-list li:before{content:'';position:absolute;left:0;top:.65em;width:3px;height:3px;border-radius:50%;background:var(--fx-wine)}
.fx-detail{max-width:230px}
.fx-detail .fx-image{height:245px}
.fx-visual .fx-detail img{height:100%;object-fit:contain}
.fx-closing{max-width:920px;margin:0 auto}
.fx-closing .fx-image{background:transparent}
.fx-visual.fx-closing img{width:100%;height:auto;max-height:1000px;object-fit:contain}
.fx-closing figcaption{margin-top:17px;font-family:var(--serif,var(--portfolio-serif,Georgia,serif));font-size:clamp(23px,3vw,37px);color:var(--fx-wine)}
.fx-system{position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:5px;margin:0 0 35px;padding:8px 0 22px;border-bottom:1px solid var(--fx-beige)}
.fx-system:before{content:'';position:absolute;z-index:-1;left:4%;right:4%;top:56px;height:1px;background:var(--fx-beige)}
.fx-world{min-width:0;display:flex;flex-direction:column;align-items:center;gap:11px;padding:0 2px 12px;background:transparent;border:0;border-bottom:2px solid transparent;transition:border-color 300ms,color 300ms}
.fx-world-art{display:flex;align-items:center;justify-content:center;width:100%;height:95px}
.fx-visual .fx-world-art img{width:var(--fx-planet-size);height:var(--fx-planet-size);max-width:100%;object-fit:contain;transition:transform 300ms cubic-bezier(.2,.65,.3,1);filter:none;rotate:none}
.fx-world-name{font-size:12px;line-height:1.4}
.fx-world[aria-pressed=true]{color:var(--fx-wine);border-bottom-color:var(--fx-wine)}
.fx-world[aria-pressed=true] .fx-world-art img{transform:translateY(-5px) scale(1.08)}
.fx-world:hover .fx-world-art img{transform:translateY(-4px)}
.fx-solar-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr);align-items:center;gap:clamp(32px,6vw,90px)}
.fx-world-reversed .fx-world-illustration{grid-column:2;grid-row:1}
.fx-world-reversed .fx-world-story{grid-column:1;grid-row:1}
.fx-world-illustration .fx-image{height:clamp(450px,47vw,650px)}
.fx-visual .fx-world-illustration img{height:100%;max-height:650px;object-fit:contain}
.fx-world-story{min-width:0;padding:10px 0}
.fx-world-story h3{font-size:clamp(43px,5.2vw,78px)}
.fx-surface{margin-top:30px;max-width:320px}
.fx-surface .fx-image{height:255px}
.fx-visual .fx-surface img{height:100%;object-fit:contain}
.fx-technical-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:62px;margin-top:35px;padding:17px 0;text-align:left;border:0;border-top:1px solid var(--fx-beige);border-bottom:1px solid var(--fx-beige);background:transparent;font-size:13px!important;color:var(--fx-wine)!important}
.fx-toggle-symbol{font-size:24px;line-height:1;font-weight:400}
.fx-technical{padding:28px 0 12px}
.fx-flat-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-top:18px}
.fx-flat-side{min-width:0}
.fx-flat-side h4{font:inherit;font-size:13px;font-weight:500;line-height:1.5;margin:0 0 15px;color:var(--fx-wine)}
.fx-flat-items{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
.fx-flat-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.fx-flat .fx-image{height:340px}
.fx-visual .fx-flat img{height:100%;object-fit:contain}
.fx-study-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin:0 0 25px}
.fx-study-heading h3{margin-bottom:0}
.fx-study-heading>.fx-caption{max-width:43ch;font-size:13px;padding-bottom:3px}
.fx-study-art .fx-image{background:var(--fx-cream)}
.fx-visual .fx-study-art img{width:100%;height:auto;max-height:760px;object-fit:contain}
.fx-reference-intro{display:flex;justify-content:space-between;align-items:start;gap:30px;margin-bottom:28px}
.fx-reference-intro .fx-caption{font-size:13px;max-width:48ch}
.fx-reference-rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(190px,24%);gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--fx-wine) var(--fx-cream);padding:2px 2px 20px;outline-offset:5px}
.fx-reference{scroll-snap-align:start}
.fx-reference .fx-image{height:315px;padding:13px}
.fx-visual .fx-reference img{height:100%;width:100%;object-fit:contain}
.fx-rail-note{display:flex;gap:15px;align-items:center;font-size:12px;line-height:1.7;margin:12px 0 0;color:var(--fx-brown)}
.fx-rail-note span{font-size:18px;color:var(--fx-wine)}
.fx-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:1000px){.fx-look-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.fx-look-note{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,.55fr);gap:30px;align-items:start;padding:0}.fx-detail{justify-self:end;width:100%;max-width:230px}.fx-look-copy{padding-top:12px}.fx-system{gap:2px}.fx-world-name{font-size:12px}.fx-flat .fx-image{height:285px}}
@media(max-width:700px){.fx-selector{margin-bottom:25px;row-gap:2px}.fx-selector button{flex-basis:30%;min-width:95px;min-height:55px;font-size:12px;gap:9px;padding-right:8px}.fx-look-layout{gap:16px}.fx-garment .fx-image,.fx-illustration .fx-image{height:clamp(290px,61vw,440px)}.fx-look-note{grid-template-columns:minmax(0,1fr) minmax(105px,.55fr);gap:18px;margin-top:10px}.fx-look-note h3{font-size:31px}.fx-caption{font-size:12px;line-height:1.8}.fx-details-list{margin-top:15px;font-size:12px;gap:5px 10px}.fx-detail .fx-image{height:210px}.fx-system{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;margin-bottom:25px;padding-bottom:16px}.fx-system:before{display:none}.fx-world-art{height:76px}.fx-visual .fx-world-art img{max-height:71px}.fx-world{gap:6px;padding-bottom:9px;min-height:105px}.fx-world-name{font-size:12px}.fx-solar-layout{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:20px;align-items:start}.fx-world-reversed .fx-world-illustration,.fx-world-reversed .fx-world-story{grid-column:auto;grid-row:auto}.fx-world-illustration .fx-image{height:clamp(345px,78vw,460px)}.fx-world-story h3{font-size:38px;margin:8px 0 13px}.fx-world-story{padding:8px 0}.fx-world-story .fx-caption{font-size:12px;line-height:1.7}.fx-world-story .fx-details-list{font-size:12px;display:block}.fx-world-story .fx-details-list li+li{margin-top:5px}.fx-surface{margin-top:20px}.fx-surface .fx-image{height:145px}.fx-technical-toggle{margin-top:24px;min-height:57px}.fx-flat-comparison{gap:18px}.fx-flat-pair{grid-template-columns:1fr;gap:20px}.fx-flat .fx-image{height:260px}.fx-study-heading{display:block;margin-bottom:22px}.fx-study-heading>.fx-caption{margin-top:15px;font-size:12px;max-width:48ch}.fx-study-heading h3{font-size:36px}.fx-reference-intro{display:block;margin-bottom:22px}.fx-reference-intro .fx-caption{margin-top:12px;font-size:12px}.fx-reference-rail{grid-auto-columns:65%;gap:16px}.fx-reference .fx-image{height:300px;padding:12px}.fx-figure figcaption{font-size:12px;gap:7px}.fx-closing figcaption{font-size:25px}.fx-rail-note{flex-wrap:wrap;gap:9px;font-size:12px}}
@media(max-width:400px){.fx-look-note{grid-template-columns:1fr}.fx-detail{max-width:200px;justify-self:start}.fx-solar-layout{grid-template-columns:1fr}.fx-world-illustration .fx-image{height:430px}.fx-world-story{display:grid;grid-template-columns:1fr 1fr;column-gap:18px;align-items:start}.fx-world-story>.fx-overline,.fx-world-story>h3,.fx-world-story>.fx-caption,.fx-world-story>.fx-details-list{grid-column:1}.fx-world-story .fx-surface{grid-column:2;grid-row:2/5;margin-top:4px}.fx-world-story .fx-surface .fx-image{height:180px}.fx-world-story .fx-caption{font-size:12px}.fx-flat .fx-image{height:230px}}
@media(prefers-reduced-motion:reduce){.fx-visual *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.fx-world[aria-pressed=true] .fx-world-art img,.fx-world:hover .fx-world-art img{transform:none}}


/* management-visuals.css */
/* Management stories: original artwork, quiet controls, native research diagrams. */
.mv-root {
  --mv-wine: var(--coastal-ink);
  --mv-paper: var(--coastal-canvas);
  --mv-beige: var(--coastal-wash);
  --mv-cream: var(--coastal-wash);
  --mv-brown: var(--coastal-ink);
  --mv-rule: color-mix(in srgb, currentColor 24%, transparent);
  color: inherit;
  width: 100%;
  min-width: 0;
  margin-block: clamp(30px, 4vw, 66px) 0;
}
.mv-root *, .mv-root *::before, .mv-root *::after { box-sizing: border-box; }
.mv-root [hidden] { display: none !important; }
.mv-root button { color: inherit; font: inherit; border-radius: 0; }
.mv-root button:focus-visible, .mv-root summary:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
.mv-root h3, .mv-root h4, .mv-root p, .mv-root ol, .mv-root figure { margin: 0; }
.mv-root h3 { font: 400 clamp(27px, 3vw, 44px)/1.08 var(--portfolio-serif, Georgia, serif); letter-spacing: -.025em; text-wrap: balance; }
.mv-root h4 { font-size: 15px; font-weight: 500; line-height: 1.4; letter-spacing: -.01em; }
.mv-root p { color: inherit; font-size: 15px; line-height: 1.65; max-width: none; }
.mv-root .mv-eyebrow { display: block; font-size:12px; line-height: 1.5; letter-spacing: .11em; text-transform: uppercase; margin-bottom: 17px; }
.mv-root .mv-note { font-size: 12px; line-height: 1.7; opacity: .78; }
.mv-root .mv-figure { min-width: 0; width: 100%; }
.mv-root .mv-art { display: block; width: 100%; height: auto; padding: 0; border: 0; border-radius: 0; background: transparent; cursor: zoom-in; overflow: visible; }
.mv-root .mv-art::after { display: none; }
.mv-root .mv-art img { display: block; width: 100%; height: auto; max-width: 100%; max-height: none; object-fit: contain; object-position: center; background: transparent; border-radius: 0; transform: none; rotate: none; filter: none; transition: opacity .25s ease; }
.mv-root .mv-art:hover img { transform: none; opacity: .92; }
.mv-root .mv-figure figcaption { display: flex; justify-content: space-between; gap: 18px; font-size:12px; line-height: 1.65; color: inherit; opacity: .78; margin: 12px 0 0; }
.mv-root .mv-figure figcaption span { flex: 0 0 auto; font-size:12px; padding-top: 2px; }
.mv-root .mv-source { display: inline-flex; gap: 20px; justify-content: space-between; align-items: center; background: transparent; border: 0; border-bottom: 1px solid var(--mv-rule); min-height: 44px; padding: 12px 0; margin-top: 25px; text-align: left; font-size:12px; line-height: 1.5; cursor: pointer; }
.mv-root .mv-source:hover { border-bottom-color: currentColor; }
.mv-root .mv-details { border-top: 1px solid var(--mv-rule); border-bottom: 1px solid var(--mv-rule); margin-top: 36px; }
.mv-root .mv-details summary { display: flex; justify-content: space-between; align-items: center; gap: 20px; list-style: none; cursor: pointer; min-height: 54px; padding: 15px 0; font-size: 12px; line-height: 1.5; }
.mv-root .mv-details summary::-webkit-details-marker { display: none; }
.mv-root .mv-details summary > span { font-size: 21px; line-height: 1; transition: rotate .2s; }
.mv-root .mv-details[open] summary > span { rotate: 45deg; }
.mv-root .mv-details-content { padding: 0 0 25px; max-width: 780px; }
.mv-root .mv-details-content p { font-size: 13px; line-height: 1.75; }
.mv-root .mv-switch-nav { display: flex; flex-wrap: wrap; gap: 0 28px; align-items: stretch; border-bottom: 1px solid var(--mv-rule); }
.mv-root .mv-select { display: flex; gap: 10px; align-items: baseline; text-align: left; min-height: 52px; padding: 15px 0; border: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; font-size: 13px; line-height: 1.45; background: transparent; opacity: .64; cursor: pointer; transition: opacity .2s, border-color .2s; }
.mv-root .mv-select:hover, .mv-root .mv-select[aria-pressed="true"] { opacity: 1; }
.mv-root .mv-select[aria-pressed="true"] { border-bottom-color: currentColor; }
.mv-root .mv-select-number { font-size:12px; opacity: .7; font-variant-numeric: tabular-nums; }
.mv-root .mv-switch-stage { padding-top: 32px; }
.mv-root .mv-panel { min-width: 0; }
.mv-root .mv-next { display: flex; align-items: center; justify-content: space-between; gap: 65px; margin: 25px 0 0 auto; padding: 12px 0; min-height: 44px; border: 0; border-bottom: 1px solid var(--mv-rule); background: transparent; cursor: pointer; font-size: 12px; }
.mv-root .mv-next:hover { border-bottom-color: currentColor; }
.mv-root .mv-next span { font-size: 22px; }

/* Real co-creation work: one lead photograph and a staggered pair. */
.mv-root .mv-workshop-opening { display: grid; grid-template-columns: minmax(0,.28fr) minmax(0,1fr); gap: clamp(28px,5vw,80px); align-items: center; }
.mv-root .mv-workshop-rail p { font: 400 clamp(38px,5.2vw,78px)/.98 var(--portfolio-serif, Georgia, serif); letter-spacing: -.035em; margin: 28px 0; }
.mv-root .mv-workshop-rail .mv-note { display: block; max-width: 160px; }
.mv-root .mv-workshop-pair { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.78fr); align-items: start; gap: clamp(28px,6vw,95px); margin-top: clamp(36px,5vw,78px); padding-left: 8%; }
.mv-root .mv-workshop-pair > :last-child { margin-top: 18%; }
.mv-root .mv-workshop-close { font: 400 clamp(25px,3.2vw,43px)/1.2 var(--portfolio-serif, Georgia, serif); max-width: 670px; margin: 55px 0 0 auto; letter-spacing: -.025em; }

/* Frameworks keep the visual evidence beside a short reading of the work. */
.mv-root .mv-tabs { justify-content: space-between; gap: 10px 25px; }
.mv-root .mv-tabs > .mv-select { font: 400 clamp(20px,2.05vw,29px)/1.1 var(--portfolio-serif, Georgia, serif); padding: 18px 0 23px; }
.mv-root .mv-tabs > .mv-select .mv-select-number { font: 9px/1.4 sans-serif; }
.mv-root .mv-subnav { gap: 0 24px; border-bottom: 0; }
.mv-root .mv-subnav .mv-select { font-size:12px; min-height: 44px; padding-block: 11px; }
.mv-root .mv-subnav .mv-select-number { display: none; }
.mv-root .mv-diagnostic-panel { display: grid; grid-template-columns: minmax(0,.36fr) minmax(0,1fr); gap: clamp(28px,5vw,65px); align-items: center; }
.mv-root .mv-framework-intro p { font-size: 14px; line-height: 1.7; margin-top: 22px; }
.mv-root .mv-archetypes .mv-switch-nav { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 26px; margin-top: 12px; }
.mv-root .mv-archetypes .mv-select { font-size: 14px; padding-block: 22px; }
.mv-root .mv-archetype-detail { min-height: 180px; padding-block: 18px 8px; max-width: 760px; }
.mv-root .mv-archetype-detail h3 { font-size: clamp(36px,5vw,68px); }
.mv-root .mv-archetype-detail p { margin-top: 20px; max-width: 590px; }
.mv-root .mv-ogsm { margin-top: 15px; }
.mv-root .mv-chain { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); list-style: none; padding: 0; gap: 28px; }
.mv-root .mv-chain li { min-width: 0; position: relative; border-top: 1px solid var(--mv-rule); padding-top: 20px; }
.mv-root .mv-chain li:not(:last-child)::after { content: '→'; position: absolute; right: 0; top: 16px; font-size: 22px; }
.mv-root .mv-chain-number { display: block; font-size:12px; line-height: 1.5; opacity: .65; margin-bottom: 30px; }
.mv-root .mv-chain h4 { margin-bottom: 13px; }
.mv-root .mv-chain p { font-size: 14px; line-height: 1.6; max-width: 240px; }
.mv-root .mv-ogsm-chain { margin-top: 10px; }
.mv-root .mv-canvas { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); grid-template-areas: 'partners activities value support beneficiaries' 'partners resources value deployment beneficiaries' 'cost cost achievement achievement achievement'; border-top: 1px solid var(--mv-rule); border-left: 1px solid var(--mv-rule); }
.mv-root .mv-canvas-node { display: flex; flex-direction: column; gap: 18px; text-align: left; min-width: 0; min-height: 125px; padding: clamp(14px,1.7vw,25px); background: transparent; border: 0; border-right: 1px solid var(--mv-rule); border-bottom: 1px solid var(--mv-rule); cursor: pointer; transition: background .25s; }
.mv-root .mv-canvas-node > span { font-size:12px; line-height: 1.4; letter-spacing: .02em; }
.mv-root .mv-canvas-node strong { font: 400 clamp(18px,1.85vw,27px)/1.16 var(--portfolio-serif, Georgia, serif); letter-spacing: -.02em; }
.mv-root .mv-canvas-node:hover, .mv-root .mv-canvas-node[aria-pressed="true"] { background: color-mix(in srgb, currentColor 9%, transparent); }
.mv-root .mv-canvas-node[aria-pressed="true"] > span::after { content: ' ↗'; }
.mv-root .mv-canvas-partners { grid-area: partners; }
.mv-root .mv-canvas-activities { grid-area: activities; }
.mv-root .mv-canvas-resources { grid-area: resources; }
.mv-root .mv-canvas-value { grid-area: value; }
.mv-root .mv-canvas-support { grid-area: support; }
.mv-root .mv-canvas-deployment { grid-area: deployment; }
.mv-root .mv-canvas-beneficiaries { grid-area: beneficiaries; }
.mv-root .mv-canvas-cost { grid-area: cost; }
.mv-root .mv-canvas-achievement { grid-area: achievement; }
.mv-root .mv-canvas-detail { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,2fr); gap: 32px; margin: 32px 0 0; min-height: 125px; align-items: start; }
.mv-root .mv-canvas-detail h3 { font-size: clamp(26px,3vw,37px); }
.mv-root .mv-canvas-detail p { font-size: 14px; line-height: 1.7; max-width: 690px; }
.mv-root .mv-canvas-detail ~ .mv-note { margin-top: 18px; }

/* Sensory materials, qualitative cues, then the documented workshop outputs. */
.mv-root .mv-sensory-layout { display: grid; grid-template-columns: minmax(0,.72fr) minmax(0,1fr); gap: clamp(36px,7vw,100px); align-items: center; }
.mv-root .mv-stimulus-figure { max-width: 445px; }
.mv-root .mv-cue-tabs { column-gap: 19px; }
.mv-root .mv-cue-tabs .mv-select { font-size: 12px; }
.mv-root .mv-cue-tabs .mv-select-number { display: none; }
.mv-root .mv-cue-panel { min-height: 220px; }
.mv-root .mv-cue-panel h3 { max-width: 450px; }
.mv-root .mv-cue-meaning { margin-top: 23px; max-width: 450px; }
.mv-root .mv-cue-emotion { display: flex; flex-wrap: wrap; gap: 10px 20px; font-size: 13px; margin-top: 26px; }
.mv-root .mv-cue-emotion span { font-size:12px; text-transform: uppercase; letter-spacing: .08em; opacity: .7; padding-top: 2px; }
.mv-root .mv-sensory-layout .mv-source + .mv-note { margin-top: 16px; }
.mv-root .mv-sensory-evidence { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.36fr); gap: clamp(30px,5vw,75px); align-items: center; margin-top: clamp(50px,7vw,100px); }
.mv-root .mv-sensory-evidence > div > .mv-note { margin-top: 24px; }
.mv-root .mv-sensory-bridge { grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: clamp(45px,6vw,85px); }
.mv-root .mv-sensory-bridge p { max-width: 300px; }

/* Proposed café rituals: one full concept view at a time. */
.mv-root .mv-ritual-nav { justify-content: space-between; }
.mv-root .mv-ritual-nav .mv-select { font: 400 clamp(22px,2.5vw,34px)/1.1 var(--portfolio-serif, Georgia, serif); padding: 15px 0 23px; }
.mv-root .mv-ritual-nav .mv-select-number { font: 9px/1.4 sans-serif; }
.mv-root .mv-ritual-stage { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.33fr); gap: clamp(30px,5vw,70px); align-items: center; }
.mv-root .mv-ritual-step { display: flex; align-items: baseline; gap: 10px; font: 400 55px/1 var(--portfolio-serif, Georgia, serif); margin-bottom: 35px; }
.mv-root .mv-ritual-step > span { font: 10px/1.4 sans-serif; opacity: .55; }
.mv-root .mv-ritual-copy h3 { font-size: clamp(28px,3vw,44px); }
.mv-root .mv-ritual-copy p { font-size: 14px; line-height: 1.7; margin-top: 22px; }
.mv-root.mv-rituals > .mv-note { margin-top: 32px; }

/* Starbucks: distinct question/process artworks and one format viewer. */
.mv-root .mv-starbucks-question { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.3fr); align-items: center; gap: clamp(30px,5vw,75px); }
.mv-root .mv-starbucks-question h3 { font-size: clamp(30px,4vw,57px); }
.mv-root .mv-starbucks-journey { margin: clamp(45px,6vw,90px) 0 0 auto; max-width: 88%; }
.mv-root .mv-starbucks-journey > .mv-note { margin-top: 15px; }
.mv-root .mv-print-heading { display: flex; gap: 35px; justify-content: space-between; align-items: baseline; margin-bottom: 20px; }
.mv-root .mv-print-heading .mv-eyebrow { flex: 0 0 auto; }
.mv-root .mv-print-viewer .mv-switch-stage { padding-top: 24px; }
.mv-root .mv-print-viewer .mv-art img { max-height: 900px; }
.mv-root .mv-print-portrait { max-width: 580px; margin-inline: auto; }

@media (max-width: 980px) {
  .mv-root .mv-diagnostic-panel { grid-template-columns: minmax(0,.42fr) minmax(0,1fr); gap: 30px; }
  .mv-root .mv-canvas { grid-template-columns: repeat(3,minmax(0,1fr)); grid-template-areas: 'partners activities resources' 'value value beneficiaries' 'support deployment beneficiaries' 'cost achievement achievement'; }
  .mv-root .mv-archetypes .mv-switch-nav { grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 30px; }
  .mv-root .mv-chain { gap: 20px; }
  .mv-root .mv-sensory-layout { gap: 35px; }
  .mv-root .mv-ritual-stage { grid-template-columns: minmax(0,1fr) minmax(0,.43fr); gap: 30px; }
  .mv-root .mv-starbucks-question { grid-template-columns: minmax(0,1fr) minmax(0,.35fr); gap: 30px; }
}
@media (max-width: 650px) {
  .mv-root { margin-top: 28px; }
  .mv-root .mv-figure figcaption { font-size:12px; gap: 12px; }
  .mv-root .mv-figure figcaption span { font-size:12px; }
  .mv-root .mv-workshop-opening, .mv-root .mv-workshop-pair { display: block; }
  .mv-root .mv-workshop-rail { display: grid; grid-template-columns: 1fr 1fr; column-gap: 25px; align-items: end; margin-bottom: 28px; }
  .mv-root .mv-workshop-rail > .mv-eyebrow { grid-column: 1 / -1; }
  .mv-root .mv-workshop-rail p { font-size: 48px; margin: 4px 0 0; }
  .mv-root .mv-workshop-rail .mv-note { padding-bottom: 4px; }
  .mv-root .mv-workshop-pair { margin-top: 32px; padding-left: 0; }
  .mv-root .mv-workshop-pair > :last-child { width: 84%; margin: 35px 0 0 auto; }
  .mv-root .mv-workshop-close { margin-top: 35px; font-size: 28px; max-width: 320px; }
  .mv-root .mv-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 18px; }
  .mv-root .mv-tabs > .mv-select { font-size: 21px; padding: 15px 0; }
  .mv-root .mv-subnav { gap: 0 18px; }
  .mv-root .mv-switch-stage { padding-top: 26px; }
  .mv-root .mv-diagnostic-panel { display: flex; flex-direction: column; gap: 25px; align-items: stretch; }
  .mv-root .mv-diagnostic-panel > .mv-figure { order: -1; }
  .mv-root .mv-framework-intro h3 { max-width: 370px; }
  .mv-root .mv-framework-intro p { margin-top: 15px; }
  .mv-root .mv-archetypes .mv-switch-nav { gap: 0 22px; }
  .mv-root .mv-archetypes .mv-select { padding-block: 18px; font-size: 12px; }
  .mv-root .mv-archetype-detail { min-height: 190px; }
  .mv-root .mv-archetype-detail h3 { font-size: 37px; }
  .mv-root .mv-chain { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 30px 20px; }
  .mv-root .mv-chain-number { margin-bottom: 20px; }
  .mv-root .mv-chain h4 { font-size: 14px; }
  .mv-root .mv-chain p { font-size: 13px; }
  .mv-root .mv-canvas { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-areas: 'value value' 'partners activities' 'resources beneficiaries' 'support deployment' 'cost achievement'; }
  .mv-root .mv-canvas-node { min-height: 125px; padding: 15px; }
  .mv-root .mv-canvas-value { min-height: 105px; }
  .mv-root .mv-canvas-node strong { font-size: 23px; }
  .mv-root .mv-canvas-detail { display: block; min-height: 185px; margin-top: 26px; }
  .mv-root .mv-canvas-detail p { margin-top: 17px; }
  .mv-root .mv-sensory-layout { display: block; }
  .mv-root .mv-stimulus-figure { width: 78%; max-width: 360px; margin: 0 auto 35px; }
  .mv-root .mv-cue-tabs { gap: 0 18px; }
  .mv-root .mv-cue-panel { min-height: 220px; }
  .mv-root .mv-sensory-evidence { display: block; margin-top: 45px; }
  .mv-root .mv-sensory-evidence > div { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.75fr); gap: 24px; align-items: center; margin-top: 35px; }
  .mv-root .mv-sensory-evidence > div > .mv-note { margin-top: 0; font-size:12px; }
  .mv-root .mv-sensory-bridge { grid-template-columns: 1fr; gap: 22px; margin-top: 40px; }
  .mv-root .mv-sensory-bridge li { padding-left: 33px; }
  .mv-root .mv-sensory-bridge .mv-chain-number { position: absolute; left: 0; }
  .mv-root .mv-sensory-bridge li:not(:last-child)::after { content: '↓'; top: 17px; }
  .mv-root .mv-sensory-bridge p { max-width: 86%; }
  .mv-root .mv-ritual-nav { gap: 0 19px; }
  .mv-root .mv-ritual-nav .mv-select { font-size: 23px; padding-block: 15px; }
  .mv-root .mv-ritual-nav .mv-select-number { display: none; }
  .mv-root .mv-ritual-stage { display: block; }
  .mv-root .mv-ritual-copy { position: relative; padding: 30px 0 0 56px; }
  .mv-root .mv-ritual-step { position: absolute; top: 30px; left: 0; font-size: 38px; }
  .mv-root .mv-ritual-step > span { display: none; }
  .mv-root .mv-ritual-copy .mv-eyebrow { font-size:12px; margin-bottom: 14px; }
  .mv-root .mv-ritual-copy h3 { font-size: 33px; }
  .mv-root .mv-ritual-copy p { margin-top: 16px; }
  .mv-root .mv-starbucks-question { display: flex; flex-direction: column; gap: 24px; align-items: start; }
  .mv-root .mv-starbucks-question h3 { font-size: 35px; }
  .mv-root .mv-starbucks-question .mv-eyebrow { margin-bottom: 10px; }
  .mv-root .mv-starbucks-journey { max-width: 100%; margin-top: 35px; }
  .mv-root .mv-print-heading { display: block; }
  .mv-root .mv-print-heading h3 { font-size: 32px; }
  .mv-root .mv-print-heading .mv-eyebrow { margin-bottom: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .mv-root *, .mv-root *::before, .mv-root *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}


/* experience-visuals.css */
/* Source colors remain in the artwork; the surrounding system shares the landing palette. */
.ex-visual{--ex-wine:var(--coastal-ink);--ex-paper:var(--coastal-canvas);--ex-beige:var(--coastal-wash);--ex-cream:var(--coastal-wash);--ex-brown:var(--coastal-ink);--ex-rule:color-mix(in srgb, var(--coastal-ink) 18.82%, transparent);position:relative;color:var(--ex-brown);min-width:0;isolation:isolate}
.ex-visual [hidden]{display:none!important}
.ex-overline{display:block;font:400 12px/1.5 'DM Sans',sans-serif;letter-spacing:.095em;text-transform:uppercase;color:var(--ex-wine)}
.ex-visual h3{font:400 clamp(29px,3vw,48px)/1.08 var(--portfolio-serif);letter-spacing:-.025em;color:var(--ex-wine);margin:14px 0}
.ex-visual p{font-size:14px;line-height:1.75;max-width:40em}
.ex-visual button:focus-visible,.ex-visual summary:focus-visible,.ex-audience-window:focus-visible{outline:2px solid var(--ex-wine);outline-offset:5px}
.ex-art{margin:0;min-width:0}
#project-view .ex-visual .image-button{display:block;width:100%;padding:0;min-height:0;border:0;border-radius:0;background:transparent;overflow:visible;transform:none;box-shadow:none}
#project-view .ex-visual .image-button:after{display:none}
#project-view .ex-visual img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain;object-position:center;transform:none;rotate:none;filter:none;border-radius:0;max-height:none}
.ex-art figcaption{display:flex;gap:20px;justify-content:space-between;font:400 12px/1.6 'DM Sans',sans-serif;margin-top:14px;color:var(--ex-brown);opacity:.72}
.ex-art figcaption span{flex:none;color:var(--ex-wine);font-size:15px}
.ex-visual .ex-source-note{font-size:12px;line-height:1.7;opacity:.65;margin-top:24px;max-width:680px}
.ex-choice-nav{display:flex;gap:12px 24px;flex-wrap:wrap;border-bottom:1px solid var(--ex-rule);margin-bottom:32px}
.ex-choice-nav button{padding:14px 0;font-size:12px;line-height:1.5;min-height:46px;border-bottom:2px solid transparent;color:var(--ex-brown)}
.ex-choice-nav button[aria-pressed=true]{border-bottom-color:var(--ex-wine);color:var(--ex-wine)}
.ex-choice-nav button:hover{color:var(--ex-wine)}
.ex-thinking{border-top:1px solid var(--ex-rule);margin-top:28px;max-width:540px}
.ex-thinking summary{display:flex;justify-content:space-between;align-items:center;gap:30px;cursor:pointer;list-style:none;min-height:46px;padding:14px 0;font-size:12px;color:var(--ex-wine)}
.ex-thinking summary::-webkit-details-marker{display:none}
.ex-thinking summary>span{font-size:21px;transition:transform .3s}
.ex-thinking[open] summary>span{transform:rotate(45deg)}
.ex-thinking p{padding:0 0 17px;font-size:12px;line-height:1.8;max-width:520px}
.ex-stage{min-width:0}
.ex-ride{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;align-items:center}
.ex-ride-context{position:relative;padding-right:7%}
#project-view .ex-rider img{max-height:710px}
.ex-context-line{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:27px;white-space:nowrap;font-size:12px;color:var(--ex-wine)}
.ex-context-line i{font-style:normal;opacity:.55}
.ex-ride-context:after{content:'';position:absolute;top:46%;left:92%;width:18%;border-top:1px solid var(--ex-rule);transform:rotate(-14deg);transform-origin:left center;z-index:-1}
.ex-ride-screen{margin:18px 0 26px}
#project-view .ex-ride-screen img{max-height:380px}
.ex-state-copy h3{font-size:clamp(27px,2.8vw,41px);margin-bottom:12px}
.ex-state-copy p{max-width:390px}
.ex-flow{display:grid;grid-template-columns:.5fr 1fr;gap:10%;align-items:center}
.ex-flow-thread{list-style:none;padding:0;margin:0}
.ex-flow-thread li{padding:0 0 48px 56px;position:relative}
.ex-flow-thread li:last-child{padding-bottom:0}
.ex-flow-thread li:before{content:'';position:absolute;top:22px;bottom:-1px;left:17px;border-left:1px solid var(--ex-rule)}
.ex-flow-thread li:last-child:before{display:none}
.ex-flow-thread li>span{position:absolute;left:0;top:0;display:grid;place-items:center;width:35px;height:35px;background:var(--ex-paper);border:1px solid var(--ex-rule);border-radius:50%;font-size:12px;color:var(--ex-wine)}
.ex-flow-thread strong{display:block;font:400 clamp(25px,2.6vw,40px)/1.2 var(--portfolio-serif);color:var(--ex-wine);margin-bottom:10px}
.ex-flow-thread p{font-size:12px;max-width:210px}
#project-view .ex-flow-art img{max-height:850px}
.ex-saathi{display:grid;grid-template-columns:.6fr 1.5fr;gap:8%}
.ex-saathi-nav{display:flex;flex-direction:column;align-self:center;position:relative}
.ex-saathi-nav:before{content:'';position:absolute;left:12px;top:25px;bottom:25px;border-left:1px solid var(--ex-rule);z-index:-1}
.ex-saathi-nav button{display:flex;align-items:center;gap:17px;text-align:left;font:400 clamp(20px,2vw,29px)/1.2 var(--portfolio-serif);padding:21px 0;color:var(--ex-brown);transition:color .25s}
.ex-saathi-nav button>span{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:var(--ex-paper);border:1px solid var(--ex-rule);font:400 12px 'DM Sans',sans-serif;transition:background .3s,color .3s}
.ex-saathi-nav button>i{font:normal 16px 'DM Sans',sans-serif;margin-left:auto;opacity:0;transition:opacity .25s,transform .25s}
.ex-saathi-nav button[aria-pressed=true]{color:var(--ex-wine)}
.ex-saathi-nav button[aria-pressed=true]>span{background:var(--ex-wine);color:var(--ex-paper)}
.ex-saathi-nav button[aria-pressed=true]>i,.ex-saathi-nav button:hover>i{opacity:1;transform:translateX(3px)}
.ex-saathi-stage{display:grid;grid-template-columns:1fr .9fr;gap:9%;align-items:center;min-height:700px}
#project-view .ex-phone-art img{height:650px;max-height:650px;width:100%}
.ex-saathi-note h3{font-size:clamp(28px,2.8vw,42px)}
.ex-saathi-note>p{font-size:13px}
.ex-saathi>.ex-source-note{grid-column:1/-1;margin-top:5px}
.ex-strip-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:28px}
.ex-strip-controls{display:flex;gap:12px}
.ex-strip-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--ex-rule);border-radius:50%;font-size:22px;color:var(--ex-wine);transition:background .3s}
.ex-strip-controls button:hover{background:var(--ex-cream)}
.ex-audience-window{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--ex-beige) transparent;padding-bottom:12px}
.ex-audience-track{list-style:none;padding:0;margin:0;display:flex;width:max-content;gap:32px}
.ex-audience{width:clamp(260px,27vw,390px);padding:18px 0 28px;border-top:1px solid var(--ex-rule);flex:none}
.ex-audience-number{font-size:12px;color:var(--ex-wine)}
.ex-audience-images{display:flex;align-items:end;height:275px;gap:8px;margin:24px 0 18px}
#project-view .ex-audience-images img{height:100%;width:100%;min-width:0;object-position:center bottom}
#project-view .ex-audience-pair .ex-audience-images img{width:calc(50% - 4px)}
.ex-audience h3{font-size:clamp(29px,3vw,43px);margin:20px 0 12px}
.ex-audience>p{font-size:12px;max-width:240px}
.ex-strip-progress{height:1px;background:var(--ex-rule);margin-top:14px;overflow:hidden}
.ex-strip-progress span{display:block;height:100%;width:100%;background:var(--ex-wine);transform:scaleX(.18);transform-origin:left center}
.ex-product-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;border-bottom:1px solid var(--ex-rule);margin-bottom:38px}
.ex-product-nav button{display:grid;grid-template-columns:1fr auto;gap:13px 15px;padding:14px 0 22px;border-bottom:2px solid transparent;text-align:left;min-width:0;transition:transform .3s,border-color .3s}
.ex-product-nav button>span{grid-column:1;font-size:12px;color:var(--ex-wine)}
.ex-product-nav strong{grid-column:1;font:400 clamp(24px,2.6vw,38px)/1.1 var(--portfolio-serif);color:var(--ex-wine)}
.ex-product-nav small{grid-column:1;font-size:12px;color:var(--ex-brown);opacity:.72}
.ex-product-nav i{grid-column:2;grid-row:2;font-style:normal;color:var(--ex-wine);opacity:.45}
.ex-product-nav button[aria-pressed=true]{border-bottom-color:var(--ex-wine)}
.ex-product-nav button[aria-pressed=true] i{opacity:1}
.ex-product-nav button:hover{transform:translateY(-4px)}
.ex-product-stage{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center;min-height:530px}
.ex-product-copy h3{font-size:clamp(32px,3.7vw,57px)}
.ex-product-copy>p{max-width:340px}
#project-view .ex-product-art img{max-height:570px}
.ex-bank-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:4%;align-items:center}
.ex-bank-hero-type>p{font:400 clamp(40px,4.5vw,73px)/1.08 var(--portfolio-serif);letter-spacing:-.035em;color:var(--ex-wine);margin:25px 0 32px}
.ex-bank-hero-route{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--ex-wine)}
.ex-bank-hero-route i{font-style:normal;opacity:.5}
.ex-bank-hero-art{position:relative;padding:0 15% 14% 0}
#project-view .ex-bank-phone img{max-height:600px}
.ex-bank-offer-cards{position:absolute;right:0;bottom:0;width:40%;height:65%;pointer-events:none}
.ex-bank-offer{position:absolute;width:62%;filter:drop-shadow(0 15px 20px color-mix(in srgb, var(--coastal-ink) 7.84%, transparent));pointer-events:auto}
.ex-offer-one{left:0;top:3%;transform:rotate(-10deg)}
.ex-offer-two{right:0;top:24%;transform:rotate(8deg)}
.ex-bank-offer figcaption{display:none}
.ex-bank-hero>.ex-source-note{grid-column:1/-1;margin-top:20px}
@media(max-width:1050px){
  .ex-ride{gap:5%;grid-template-columns:.7fr 1fr}.ex-ride-context{padding-right:0}.ex-context-line{gap:7px;font-size:12px}.ex-ride-context:after{display:none}
  .ex-saathi{grid-template-columns:.55fr 1.4fr;gap:5%}.ex-saathi-stage{gap:7%;grid-template-columns:1fr .9fr;min-height:600px}#project-view .ex-phone-art img{height:550px;max-height:550px}.ex-saathi-nav button{font-size:23px;gap:12px}.ex-saathi-note h3{font-size:31px}
  .ex-product-stage{min-height:440px}.ex-product-nav{gap:20px}.ex-bank-hero-type>p{font-size:50px}
}
@media(max-width:760px){
  .ex-ride{grid-template-columns:1fr;gap:38px}.ex-ride-context{display:grid;grid-template-columns:1fr .65fr;gap:25px;align-items:center}.ex-context-line{display:flex;flex-direction:column;align-items:start;font-size:12px;gap:17px}.ex-context-line i{transform:rotate(90deg)}#project-view .ex-rider img{max-height:490px}.ex-choice-nav{gap:8px 22px;margin-bottom:26px}.ex-state-copy h3{font-size:35px}#project-view .ex-ride-screen img{max-height:380px}
  .ex-flow{grid-template-columns:1fr;gap:35px}.ex-flow-thread{display:flex;gap:20px}.ex-flow-thread li{flex:1;padding:45px 0 0}.ex-flow-thread li:before{left:18px;top:17px;bottom:auto;width:calc(100% + 20px);border-left:0;border-top:1px solid var(--ex-rule)}.ex-flow-thread strong{font-size:28px}.ex-flow-thread p{font-size:12px}.ex-flow-thread li>span{z-index:1}#project-view .ex-flow-art img{max-height:900px}
  .ex-saathi{display:block}.ex-saathi-nav{flex-direction:row;flex-wrap:wrap;gap:0 22px;margin-bottom:26px;border-bottom:1px solid var(--ex-rule)}.ex-saathi-nav:before{display:none}.ex-saathi-nav button{font:400 12px/1.5 'DM Sans',sans-serif;gap:8px;min-height:48px;padding:10px 0}.ex-saathi-nav button>i{display:none}.ex-saathi-nav button>span{flex-basis:22px;height:22px;font-size:12px}.ex-saathi-stage{grid-template-columns:1fr 1fr;min-height:590px;gap:7%}#project-view .ex-phone-art img{height:530px;max-height:530px}.ex-saathi-note h3{font-size:31px}.ex-saathi-note>p{font-size:12px}
  .ex-audience{width:clamp(235px,67vw,330px)}.ex-audience-images{height:240px}.ex-audience h3{font-size:34px}.ex-strip-heading{margin-bottom:15px}.ex-strip-heading>.ex-overline{max-width:180px}.ex-strip-controls{gap:8px}
  .ex-product-nav{gap:15px;margin-bottom:30px}.ex-product-nav strong{font-size:25px}.ex-product-nav small{font-size:12px}.ex-product-nav i{display:none}.ex-product-stage{grid-template-columns:1fr;gap:25px;min-height:0}.ex-product-art{grid-row:1}.ex-product-copy h3{font-size:37px;max-width:420px}.ex-product-copy>p{max-width:480px}#project-view .ex-product-art img{max-height:520px}
  .ex-bank-hero{grid-template-columns:1fr;gap:30px}.ex-bank-hero-type>p{font-size:49px;margin:18px 0 25px}.ex-bank-hero-art{width:100%;max-width:580px;margin:auto}#project-view .ex-bank-phone img{max-height:580px}.ex-bank-hero>.ex-source-note{margin-top:10px}
}
@media(max-width:480px){
  .ex-ride-context{grid-template-columns:1fr .5fr;gap:17px}.ex-context-line{font-size:12px;gap:13px}.ex-choice-nav{gap:4px 17px}.ex-choice-nav button{font-size:12px}.ex-state-copy h3{font-size:31px}.ex-art figcaption{font-size:12px;gap:12px}
  .ex-saathi-stage{display:flex;flex-direction:column;gap:25px;min-height:0;align-items:stretch}.ex-phone-art{width:100%;max-width:290px;margin:auto}#project-view .ex-phone-art img{height:570px;max-height:570px}.ex-saathi-note{max-width:380px}.ex-saathi-note h3{font-size:34px}.ex-saathi>.ex-source-note{margin-top:24px}.ex-saathi-nav{gap:0 16px}.ex-saathi-nav button{font-size:12px}
  .ex-product-nav{gap:12px}.ex-product-nav strong{font-size:22px}.ex-product-nav small{line-height:1.5}.ex-product-copy h3{font-size:34px}.ex-flow-thread{gap:13px}.ex-flow-thread strong{font-size:24px}.ex-flow-thread p{font-size:12px}.ex-bank-hero-type>p{font-size:43px}
}
@media(prefers-reduced-motion:reduce){.ex-visual *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.ex-product-nav button:hover{transform:none}}


/* visual-stories.css */
/* The landing page's five surfaces, used consistently through every discipline. */
#project-view[data-visual-story=true]{--story-wine:var(--coastal-ink);--story-paper:var(--coastal-canvas);--story-beige:var(--coastal-wash);--story-cream:var(--coastal-wash);--story-brown:var(--coastal-ink);--story-text:var(--coastal-ink);--case-accent:var(--coastal-ink)}
.visual-story{border-radius:29px;overflow:clip;isolation:isolate}.surface-paper{--story-fg:var(--coastal-ink);--story-secondary:var(--coastal-ink);--story-line:color-mix(in srgb, var(--coastal-accent) 17.25%, transparent);background:var(--coastal-canvas);color:var(--story-fg)}.surface-wine{--story-fg:var(--coastal-canvas);--story-secondary:var(--coastal-canvas);--story-line:color-mix(in srgb, var(--coastal-canvas) 23.14%, transparent);background:var(--coastal-ink);color:var(--story-fg)}.surface-beige{--story-fg:var(--coastal-ink);--story-secondary:var(--coastal-ink);--story-line:color-mix(in srgb, var(--coastal-accent) 25.1%, transparent);background:var(--coastal-wash);color:var(--story-fg)}.surface-brown{--story-fg:var(--coastal-canvas);--story-secondary:var(--coastal-wash);--story-line:color-mix(in srgb, var(--coastal-canvas) 20.39%, transparent);background:var(--coastal-ink);color:var(--story-fg)}
.story-eyebrow{display:block;font-size:12px;letter-spacing:.065em;line-height:1.6;color:var(--story-secondary);text-transform:uppercase}.story-opening{display:grid;grid-template-columns:.82fr 1.18fr;gap:38px 6%;padding:55px 4.8vw 35px;align-items:center}.story-opening h1{font:400 clamp(52px,5.8vw,92px)/.98 var(--portfolio-serif);letter-spacing:-.035em;margin:30px 0;overflow-wrap:anywhere}.story-opening-copy>p{font:400 clamp(24px,2.7vw,40px)/1.2 var(--portfolio-serif);max-width:490px}.story-entry{display:inline-flex;align-items:center;gap:35px;font-size:14px;border-bottom:1px solid var(--story-line);padding:18px 0 12px;margin-top:20px}.story-entry span{font-size:25px;transition:transform .6s}.story-entry:hover span{transform:translateY(5px)}.story-opening-art{background:var(--coastal-wash);padding:28px;border-radius:20px;min-width:0;color:var(--coastal-ink)}.story-opening-art .story-art img{max-height:560px}.story-opening-summary{grid-column:1/-1;border-top:1px solid var(--story-line);padding-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:6%;font-size:14px;line-height:1.7;color:var(--story-secondary)}.story-opening-summary>.story-more{margin:0;border:0}.story-opening-summary>.story-more>summary{padding-top:0}.story-opening-summary dl{font-size:14px;display:grid;gap:18px;margin:25px 0 0}.story-opening-summary dt{color:var(--coastal-canvas);font-size:12px;margin-bottom:5px}.story-opening-summary dd{margin:0;color:var(--coastal-canvas)}.story-type-art{min-height:450px;display:flex;flex-direction:column;justify-content:space-between;gap:25px}.story-type-art>span{font-size:13px}.story-type-art strong{white-space:pre-line;font:400 65px/1.05 var(--portfolio-serif);letter-spacing:-.03em}
.story-progress{position:sticky;top:0;z-index:20;display:flex;background:color-mix(in srgb, var(--coastal-canvas) 96.08%, transparent);color:var(--coastal-wash);gap:28px;padding:18px 8px;margin-bottom:14px;overflow:auto;scrollbar-width:none;border-bottom:1px solid color-mix(in srgb, var(--coastal-canvas) 14.51%, transparent);max-width:100%}.story-progress::-webkit-scrollbar{display:none}.story-progress a{white-space:nowrap;font-size:12px;display:flex;gap:9px;align-items:center;padding:8px 0;flex:none;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}.story-progress a>span:first-child{font-size:11px;color:var(--coastal-ink)}.story-progress a[aria-current=step]{color:var(--coastal-canvas);border-bottom-color:var(--coastal-wash)}.story-progress a>span:last-child{max-width:185px;overflow:hidden;text-overflow:ellipsis}.story-progress a:hover{color:var(--coastal-canvas)}
.story-method{padding:44px 4.8vw 42px}.story-method h2{font:400 clamp(32px,3.2vw,48px)/1.1 var(--portfolio-serif);letter-spacing:-.02em;margin:15px 0 25px;max-width:850px}.story-method .process-steps{margin-top:0}.story-method .process-steps button{font-size:16px;color:var(--coastal-ink);border-bottom-color:transparent;min-height:60px}.story-method .process-steps button[aria-pressed=true]{border-bottom-color:var(--coastal-ink);color:var(--coastal-ink)}.story-method .process-steps button>span{font-size:12px;color:var(--coastal-ink)}.story-method .process-reasoning{min-height:190px;padding-top:22px}.story-method .process-method{font-size:12px;color:var(--coastal-ink)}.story-method .process-reasoning>div>span{font-size:13px;color:var(--coastal-ink)}.story-method .process-reasoning>div>p{font-size:23px;line-height:1.35}.story-method .reasoning-arrow{color:var(--coastal-ink)}
.story-section{padding:65px 4.8vw 70px;scroll-margin-top:83px;position:relative}.story-section.with-art{display:grid;grid-template-columns:.75fr 1.25fr;gap:6%;align-items:center}.story-section.with-art:nth-child(even){grid-template-columns:1.25fr .75fr}.story-section.with-art:nth-child(even)>.story-section-copy{grid-column:2;grid-row:1}.story-section.with-art:nth-child(even)>.story-art{grid-column:1;grid-row:1}.story-section h2{font:400 clamp(38px,4vw,62px)/1.04 var(--portfolio-serif);letter-spacing:-.025em;margin:20px 0 22px;max-width:850px}.story-lead{font-size:16px;line-height:1.8;color:var(--story-secondary);max-width:580px}.story-section.with-visual>.story-section-copy{max-width:750px;margin-bottom:36px}.story-section.full-art{display:block}.story-section.full-art>.story-section-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 8%;align-items:start;margin-bottom:35px;max-width:none}.story-section.full-art .story-eyebrow{grid-column:1/-1}.story-section.full-art h2{grid-column:1;grid-row:2/4}.story-section.full-art .story-lead{grid-column:2}.story-section.full-art .story-more{grid-column:2}.story-visual{min-width:0}.story-art{margin:0;min-width:0}.story-art .image-button{background:transparent;padding:0;border:0;overflow:visible}.story-art .image-button:after{display:none!important}#project-view .story-art img{display:block;width:100%;height:auto;max-height:800px;object-fit:contain;transform:none;rotate:none;filter:none;border-radius:0;background:transparent}.story-art figcaption{display:flex;justify-content:space-between;gap:22px;font-size:12px;line-height:1.65;margin:16px 0 0;color:var(--story-secondary,var(--coastal-ink))}.story-opening-art figcaption{color:var(--coastal-ink)}.story-art figcaption>span{flex:none;color:inherit;font-size:19px}.story-art button{transition:opacity .35s}.story-art button:hover{opacity:.96}.story-more{border-top:1px solid var(--story-line);margin-top:22px;color:var(--story-secondary)}.story-more>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:14px;padding:16px 0;gap:24px}.story-more>summary::-webkit-details-marker{display:none}.story-more>summary span{font-size:20px;transition:transform .4s}.story-more[open]>summary span{transform:rotate(45deg)}.story-more>div{font-size:15px;line-height:1.85;padding:0 0 12px;max-width:700px}.story-more p+p{margin-top:16px}.story-more[open]>div{animation:story-detail-in .45s ease both}@keyframes story-detail-in{from{opacity:.3;transform:translateY(5px)}to{opacity:1;transform:none}}
.story-outcome{padding:60px 4.8vw;scroll-margin-top:83px}.story-outcome h2{font:400 clamp(44px,5vw,78px)/1 var(--portfolio-serif);letter-spacing:-.03em;margin:20px 0 30px}.story-outcome>p:not(.story-credits){font:400 clamp(25px,3.1vw,42px)/1.2 var(--portfolio-serif);max-width:1040px}.story-outcome .story-more{max-width:900px}.story-outcome .story-credits{font-size:12px;line-height:1.8;color:var(--coastal-wash);max-width:950px;border-top:1px solid var(--story-line);padding-top:25px;margin-top:35px}
.visual-story .case-figure figcaption,.visual-story .plate-note>p,.visual-story .detail-observation,.visual-story .connected-flow p{color:var(--story-secondary)}.visual-story .case-figure .image-button{background:transparent}.visual-story .case-figure img{background:transparent!important;transform:none!important}.visual-story .plate-note h3,.visual-story .connected-flow h4,.visual-story .carry-forward p,.visual-story .commitment-comparison p{color:var(--story-fg)}.visual-story .detail-controls button,.visual-story .plate-controls button,.visual-story .bank-jump-controls button{font-size:14px;color:var(--story-secondary);border-bottom-color:transparent}.visual-story [aria-pressed=true]{color:var(--story-fg)}.visual-story .detail-controls button[aria-pressed=true],.visual-story .plate-controls button[aria-pressed=true],.visual-story .bank-jump-controls button[aria-pressed=true]{border-bottom-color:var(--story-fg)}.visual-story .detail-controls,.visual-story .plate-controls,.visual-story .bank-jump-controls,.visual-story .carry-forward{border-color:var(--story-line)}.visual-story .detail-observation{font-size:16px}.visual-story .plate-note>p{font-size:16px}.visual-story .connected-flow p{font-size:15px}.visual-story .connected-flow h4{font-size:17px}.visual-story .flow-node{background:var(--story-fg);border-color:var(--story-fg);color:var(--story-wine);font-size:13px}.visual-story .surface-paper .flow-node,.visual-story .surface-beige .flow-node{background:var(--coastal-ink);color:var(--coastal-canvas)}.visual-story .connected-flow li:before{background:var(--story-line)}.visual-story .cycle-type,.visual-story .carry-forward>span{color:var(--story-fg)}.visual-story .plate-panel{min-height:510px}.visual-story .case-source{font-size:12px!important;color:var(--story-secondary);border-color:var(--story-line)}.visual-story .evidence-chart{border-color:var(--coastal-ink)}.visual-story .proportion-value,.visual-story .comparison-columns h3{color:var(--coastal-ink)}.visual-story .proportion-track span,.visual-story .comparison-bar i{background:var(--coastal-ink)}.visual-story .proportion-track{background:var(--coastal-wash)}.visual-story .comparison-columns p,.visual-story .comparison-bar>div{font-size:14px;color:var(--coastal-ink)}.visual-story .comparison-columns .chart-note,.visual-story .chart-heading{font-size:12px;color:var(--coastal-ink)}.visual-story .format-comparison h3,.visual-story .format-mark{color:var(--story-fg)}.visual-story .format-comparison p{font-size:16px;color:var(--story-secondary)}.visual-story .format-comparison{border-color:var(--story-line)}
.story-reveal{opacity:0;transform:translateY(16px);transition:opacity .75s ease,transform .9s cubic-bezier(.22,.61,.36,1)}.story-reveal.story-visible{opacity:1;transform:none}.story-reveal .comparison-bar i,.story-reveal .proportion-track span{transform:scaleX(0);transform-origin:left;transition:transform 1.2s cubic-bezier(.22,.61,.36,1)}.story-visible .comparison-bar i,.story-visible .proportion-track span{transform:scaleX(1)}.story-reveal.connected-flow li:before{transform:scaleX(0);transform-origin:left;transition:transform 1s ease}.story-visible.connected-flow li:before{transform:scaleX(1)}.visual-story button:focus-visible,.visual-story a:focus-visible,.visual-story summary:focus-visible{outline:2px solid var(--story-fg);outline-offset:5px}
/* Category introductions and project canvases use the same surface rhythm. */
.category-sheet{padding:0;background:var(--coastal-canvas)}.category-editorial-heading{max-width:none;background:var(--coastal-ink);color:var(--coastal-canvas);padding:48px 4.8vw}.category-editorial-heading h1{color:var(--coastal-canvas)}.category-editorial-heading>p,.category-editorial-heading .case-kicker{color:var(--coastal-canvas)}.category-editorial-tabs{padding:16px 4.8vw;margin:0;background:var(--coastal-wash);border:0}.portfolio-entry{padding:55px 4.8vw;border:0;gap:7%}.portfolio-entry:nth-child(3n+2){background:var(--coastal-wash)}.portfolio-entry:nth-child(3n){background:var(--coastal-wash)}.portfolio-entry:last-child{padding-bottom:55px}.portfolio-entry-copy>p{font-size:17px}.portfolio-entry-methods{font-size:13px}.portfolio-entry .case-kicker{font-size:12px}.portfolio-read{font-size:14px}
@media(max-width:1000px){.story-opening{gap:30px 4%;padding:40px 35px 30px}.story-opening h1{font-size:58px}.story-opening-art{padding:20px}.story-type-art strong{font-size:49px}.story-section{padding:50px 35px}.story-section h2{font-size:44px}.story-method,.story-outcome{padding:40px 35px}.story-method .process-steps button{font-size:14px}.story-method .process-reasoning>div>p{font-size:22px}}
@media(max-width:700px){.visual-story{border-radius:22px}.story-progress{gap:20px;padding:9px 0;margin-bottom:12px}.story-progress a{font-size:12px}.story-progress a>span:last-child{max-width:120px}.story-opening{display:flex;flex-direction:column;align-items:stretch;padding:30px 22px;gap:30px}.story-opening h1{font-size:clamp(43px,12vw,65px);margin:22px 0}.story-opening-copy>p{font-size:29px}.story-opening-art{padding:18px;border-radius:14px}.story-opening-art .story-art img{max-height:450px!important}.story-opening-summary{display:block;font-size:14px}.story-opening-summary>.story-more{margin-top:22px}.story-opening-summary>.story-more>summary{padding-top:16px;border-top:1px solid var(--story-line)}.story-type-art{min-height:270px}.story-type-art strong{font-size:45px}.story-method,.story-outcome{padding:35px 22px}.story-method h2{font-size:33px}.story-method .process-reasoning{min-height:320px}.story-method .process-reasoning>div>p{font-size:23px}.story-method .process-steps button{min-height:53px}.story-section,.story-section.with-art,.story-section.with-art:nth-child(even){padding:40px 22px;display:flex;flex-direction:column;gap:28px;align-items:stretch}.story-section h2{font-size:38px;margin:17px 0}.story-section.with-visual>.story-section-copy{margin-bottom:0}.story-section.full-art>.story-section-copy{display:block;margin:0}.story-section>.story-art{order:2}.story-art figcaption{font-size:12px}.story-lead{font-size:16px;line-height:1.7}.story-more>div{font-size:15px}.story-outcome h2{font-size:45px}.story-outcome>p:not(.story-credits){font-size:28px}.story-outcome .story-credits{font-size:12px}.story-eyebrow{font-size:12px}.visual-story .plate-panel{min-height:0}.visual-story .plate-panel .case-figure figcaption{font-size:12px}.visual-story .detail-controls,.visual-story .plate-controls{gap:14px}.visual-story .detail-controls button,.visual-story .plate-controls button{font-size:14px}.story-reveal.connected-flow li:before{transform:scaleY(0);transform-origin:top}.story-visible.connected-flow li:before{transform:scaleY(1)}.category-editorial-heading{padding:30px 22px}.category-editorial-tabs{padding:12px 22px}.portfolio-entry,.portfolio-entry:nth-child(even){padding:35px 22px}.portfolio-entry:last-child{padding-bottom:35px}}
@media(prefers-reduced-motion:reduce){.visual-story *{animation:none!important;transition:none!important}.story-reveal{opacity:1;transform:none}.story-reveal .comparison-bar i,.story-reveal .proportion-track span,.story-reveal.connected-flow li:before{transform:none}.story-progress{scroll-behavior:auto}}
/* Connected evidence follows the same visual rhythm as the landing cards. */
#project-view .story-opening-art .story-art img{max-height:560px}
.story-atlas{min-width:0}.atlas-stages{display:flex;gap:0;border-bottom:1px solid var(--story-line);margin-bottom:32px;overflow:auto;scrollbar-width:thin}.atlas-stages button{flex:1;min-width:135px;display:flex;gap:12px;align-items:center;color:var(--story-secondary);background:none;border:0;border-bottom:2px solid transparent;padding:18px 16px 18px 0;cursor:pointer;font-size:16px}.atlas-stages button>span{font-size:11px}.atlas-stages button>i{font-style:normal;margin-left:auto}.atlas-stages button[aria-pressed=true]{color:var(--story-fg);border-color:currentColor}.atlas-panel{display:grid;grid-template-columns:.62fr 1.38fr;gap:6%;align-items:start;min-height:530px}.atlas-panel[hidden]{display:none}.atlas-note{padding-top:18px}.atlas-note h3{font:400 clamp(28px,3vw,43px)/1.15 var(--portfolio-serif);letter-spacing:-.015em;margin:24px 0 20px}.atlas-note .story-eyebrow{text-transform:none;letter-spacing:0;font-size:13px;line-height:1.6}.atlas-note .story-lead{font-size:15px}.atlas-note .story-more{font-size:14px}.atlas-panel>.story-art{background:var(--coastal-canvas);padding:25px;border-radius:16px}.atlas-panel .story-art img{height:450px!important;max-height:450px!important;width:100%!important;object-fit:contain}.atlas-panel .story-art figcaption{color:var(--coastal-ink)}
.solar-intro-art{position:relative;isolation:isolate;aspect-ratio:1;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--coastal-wash);color:var(--coastal-ink);border-radius:15px}.solar-intro-art strong{font:400 clamp(90px,11vw,170px)/.8 var(--portfolio-serif);text-align:center;z-index:1;letter-spacing:-.07em}.solar-intro-art strong span{display:block;font:italic 24px/1.8 var(--portfolio-serif);letter-spacing:0;margin-top:12px}.orbit-ring{position:absolute;border:1px solid color-mix(in srgb, var(--coastal-ink) 18.82%, transparent);border-radius:50%;aspect-ratio:1}.orbit-one{width:54%}.orbit-two{width:78%}.orbit-three{width:105%}.orbit-label{position:absolute;top:4%;left:4%;font-size:12px}.solar-intro-art p{position:absolute;bottom:2%;left:4%;font-size:13px;line-height:1.6}.orbit-dot{position:absolute;border-radius:50%;background:var(--coastal-ink)}.orbit-dot-one{height:35px;width:35px;top:16%;left:22%}.orbit-dot-two{height:22px;width:22px;bottom:28%;right:23%;background:var(--coastal-ink)}.orbit-dot-three{height:55px;width:55px;top:41%;right:-2%;background:var(--coastal-wash);border:1px solid color-mix(in srgb, var(--coastal-ink) 25.1%, transparent)}.story-saathi-cover .saathi-cover{height:auto;min-height:460px;border-radius:15px;background:var(--coastal-canvas)!important;color:var(--coastal-ink)!important}.story-saathi-cover .saathi-cover-note{background:var(--coastal-wash);color:var(--coastal-ink)}.story-saathi-cover .saathi-signature{color:var(--coastal-ink)}.story-saathi-cover .saathi-cover-kicker,.story-saathi-cover .saathi-cover-foot{color:var(--coastal-ink)}
#project-view .browser-frame{border-radius:14px;border-color:var(--coastal-ink);background:var(--coastal-wash)}#project-view .browser-caption,#project-view .case-original{color:var(--story-secondary)}
@media(max-width:1000px){.atlas-panel{grid-template-columns:.8fr 1.2fr;gap:4%}.atlas-note h3{font-size:32px}.atlas-panel>.story-art{padding:16px}}
@media(max-width:700px){.atlas-stages{margin-bottom:24px}.atlas-stages button{min-width:115px;font-size:14px;padding-right:15px}.atlas-panel{display:flex;flex-direction:column;min-height:0;gap:24px}.atlas-note{padding-top:0}.atlas-note h3{font-size:30px;margin:15px 0}.atlas-panel>.story-art{order:2;width:100%;padding:12px}.atlas-panel .story-art img{height:auto!important;max-height:500px!important}.story-saathi-cover .saathi-cover{min-height:380px}.solar-intro-art strong{font-size:110px}.solar-intro-art strong span{font-size:20px}.solar-intro-art p{font-size:11px}.orbit-label{font-size:11px}.orbit-dot-one{width:22px;height:22px}}

.surface-wine .fx-visual{--fx-wine:var(--coastal-canvas);--fx-brown:var(--coastal-canvas);--fx-beige:color-mix(in srgb, var(--coastal-canvas) 25.1%, transparent)}.surface-wine .fx-visual .fx-image{background:transparent}
.story-opening-art .ex-bank-hero{display:block}.story-opening-art .ex-bank-hero-type{display:none}.story-opening-art .ex-bank-hero-art{max-width:500px;margin:auto}.story-opening-art .ex-bank-hero>.ex-source-note{margin-top:22px}.story-opening-art .ex-bank-phone figcaption{max-width:70%}.surface-wine .ex-visual{--ex-wine:var(--coastal-canvas);--ex-brown:var(--coastal-canvas);--ex-rule:color-mix(in srgb, var(--coastal-canvas) 25.1%, transparent)}

.story-output{display:flex;flex-direction:column;gap:9px}.story-output small{font-size:12px;color:var(--coastal-canvas)}.story-saathi-cover .saathi-signature>span{color:var(--coastal-ink)}

.visual-story .story-source-link{font-size:14px;margin-top:24px;padding:12px 0;display:inline-flex;gap:16px;border-bottom:1px solid var(--story-line)}


/* bank-live.css */
.bank-explore-toolbar{position:sticky;top:67px;z-index:4;background:var(--coastal-canvas);display:flex;gap:20px;align-items:center;justify-content:space-between}.bank-explore-toolbar .bank-jump-controls{flex:1;flex-wrap:wrap}.bank-autoplay-button{flex:none;padding:10px 14px;border:1px solid color-mix(in srgb, var(--coastal-ink) 25.1%, transparent);border-radius:24px;font-size:12px;color:var(--coastal-ink);white-space:nowrap}.bank-autoplay-button:disabled{opacity:.5}.bank-live-canvas{position:relative;width:100%;container-type:inline-size;isolation:isolate}
#project-view[data-editorial=true] .bank-original-backdrop{display:block;width:100%;height:auto;pointer-events:none;user-select:none}
.bank-live-audience{position:absolute;left:0;right:0;top:9.7612%;height:5.96724%;background:#fff}.bank-audience-window{width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;scroll-behavior:auto}.bank-audience-window::-webkit-scrollbar{display:none}.bank-audience-track{display:flex;gap:4.58cqw;width:max-content;padding:2.3cqw 11.33cqw 3cqw;align-items:start}
.bank-audience-card{position:relative;display:block;flex:none;width:22.5cqw;height:29.75cqw;padding:0;border:0;background:transparent;border-radius:2cqw;overflow:hidden;transition:translate .7s cubic-bezier(.22,.61,.36,1);isolation:isolate}
#project-view[data-editorial=true] .bank-audience-card>img{width:100%;height:100%;object-fit:contain;max-height:none;border-radius:0;transform:none}
.bank-defence{background:linear-gradient(color-mix(in srgb,var(--coastal-ink) 88%,var(--coastal-accent)),var(--coastal-ink));color:var(--coastal-canvas)}.bank-defence-copy{position:relative;z-index:1;padding:1.55cqw 2.6cqw}.bank-defence-copy h3{font:600 1.9cqw/1.2 'DM Sans',sans-serif!important;margin:0 0 .8cqw;color:var(--coastal-canvas)!important}.bank-defence-copy p{font:400 1.12cqw/1.35 'DM Sans',sans-serif;margin:0;color:var(--coastal-canvas)!important;max-width:none}#project-view[data-editorial=true] .bank-defence>img{position:absolute;bottom:0;right:0;width:100%;height:74%;object-position:center bottom}
.bank-live-arrows{display:flex;align-items:center;justify-content:center;gap:1.2cqw;position:absolute;left:0;right:0;bottom:.15cqw;pointer-events:none;color:var(--coastal-ink);font:400 .85cqw/1 'DM Sans',sans-serif}.bank-live-arrows button{pointer-events:auto;border:1px solid color-mix(in srgb, var(--coastal-ink) 20%, transparent);border-radius:50%;width:2.6cqw;height:2.6cqw;display:grid;place-items:center;background:#fff;color:var(--coastal-ink);font-size:1.5cqw;min-width:25px;min-height:25px}
.bank-live-products{position:absolute;left:3.89105%;width:92.607%;top:33.81417%;height:4.72883%;display:flex;gap:1.58cqw;padding:.8cqw .65cqw .5cqw;background:var(--coastal-canvas)}.bank-account{display:block;flex:1;min-width:0;position:relative;padding:0;background:transparent;border:0;transition:translate .65s cubic-bezier(.22,.61,.36,1);isolation:isolate}.bank-account-glint{position:absolute;inset:0;overflow:hidden;border-radius:0 4cqw 0 0;pointer-events:none}.bank-account-glint:after{content:'';position:absolute;inset:-10% 0;width:70%;background:linear-gradient(105deg,transparent,#fff8,transparent);animation:quiet-sweep 12s ease-in-out var(--motion-delay,0s) infinite;pointer-events:none}
#project-view[data-editorial=true] .bank-account img{width:100%;height:100%;object-fit:contain;transform:none;border-radius:0}
.bank-community{position:absolute;left:0;width:100%;top:39.55994%;height:8.98189%;background:#fff;overflow:hidden}.bank-community h3{position:absolute;left:32.5%;top:39.7%;width:36%;font:650 2.55cqw/1.18 'DM Sans',sans-serif!important;letter-spacing:-.06cqw;text-align:center;color:var(--coastal-ink)!important;margin:0;z-index:2}.bank-customer{position:absolute;animation:quiet-bubble var(--float-duration,8s) ease-in-out var(--motion-delay,0s) infinite;pointer-events:none}#project-view[data-editorial=true] .bank-customer img{width:100%;height:auto;object-fit:contain;border-radius:0;transform:none}.bank-support-marker{position:absolute;top:88%;left:0}.bank-concept-note{font-size:12px;line-height:1.7;color:var(--coastal-ink);max-width:650px;margin-top:13px}
@media(hover:hover) and (pointer:fine){.bank-audience-card:hover,.bank-account:hover{translate:0 -5px}.bank-account:hover .bank-account-glint:after{animation-duration:4s}}
@media(max-width:700px){.bank-live-canvas{min-width:720px}.bank-explore-toolbar{align-items:start;flex-wrap:wrap;gap:4px;margin-bottom:18px}.bank-explore-toolbar .bank-jump-controls{margin:0;flex-basis:100%;gap:10px}.bank-explore-toolbar .bank-jump-controls button{font-size:12px}.bank-autoplay-button{font-size:12px;margin-top:8px}.bank-customer{--float-y:-3px!important;--float-x:1px!important}.bank-live-arrows{gap:12px}.bank-live-arrows button{min-width:32px;min-height:32px;font-size:17px}.bank-live-arrows span{font-size:10px}.bank-live-arrows{bottom:0}.bank-audience-card{height:28.8cqw}.bank-community h3{font-size:2.55cqw!important}}
@media(prefers-reduced-motion:reduce){.bank-audience-card,.bank-account{transition:none}.bank-customer,.bank-account-glint:after{animation:none!important}.bank-account-glint{display:none}}

@media(max-width:700px){.bank-explore-toolbar{top:51px;padding:6px 0}.bank-explore-toolbar .bank-jump-controls{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.bank-explore-toolbar .bank-jump-controls button{text-align:left;min-height:42px}.bank-explore-toolbar .bank-autoplay-button{margin:2px 0 8px}}


/* project-motion.css */
/* Motion stays inside projects. Original work is never clipped for an effect. */
.project-motion-toggle{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;font-size:12px;color:var(--coastal-ink);padding:10px 0 10px 15px;border-left:1px solid color-mix(in srgb, var(--coastal-accent) 40%, transparent)}
.project-motion-toggle:disabled{opacity:.6;cursor:default}.project-motion-toggle:focus-visible{outline:1px solid currentColor;outline-offset:5px}
.story-method-heading{display:flex;gap:5%;align-items:center;justify-content:space-between;margin:8px 0 28px}.story-method-heading h2{margin:10px 0;max-width:780px;flex:1}
.project-motif{width:clamp(145px,20vw,265px);flex:none;max-width:32%;color:var(--coastal-ink)}.project-motif svg{display:block;width:100%;height:auto;overflow:visible}.project-motif path{stroke-dasharray:1;stroke-dashoffset:0}.project-motif.motion-entered path{animation:motif-draw 1.9s cubic-bezier(.2,.6,.3,1) both}.project-motif .motion-thread{opacity:.48}.motion-dot{fill:currentColor;stroke:none}.motion-halo{opacity:.25}
@keyframes motif-draw{from{stroke-dashoffset:1;opacity:.1}to{stroke-dashoffset:0}}
@keyframes quiet-orbit{to{transform:rotate(360deg)}}
@keyframes quiet-breathe{0%,100%{opacity:.28}50%{opacity:.8}}
@keyframes quiet-bubble{0%,100%{translate:0 0}50%{translate:var(--float-x,3px) var(--float-y,-7px)}}
@keyframes quiet-pulse{0%,100%{scale:1;opacity:.18}50%{scale:1.1;opacity:.5}}
@keyframes quiet-sweep{0%,55%{translate:-150% 0;opacity:0}65%{opacity:.32}90%,100%{translate:180% 0;opacity:0}}
.motion-orbit{transform-origin:130px 85px;animation:quiet-orbit 30s linear infinite}.motion-orbit-inner{animation-duration:21s;animation-direction:reverse}.motion-halo{transform-box:fill-box;transform-origin:center;animation:quiet-pulse 7s ease-in-out infinite}.motion-breathe{animation:quiet-breathe 5s ease-in-out infinite}
.motion-scene:not(.motion-in-view) *,.motion-scene:not(.motion-in-view) *:before,.motion-scene:not(.motion-in-view) *:after,.motion-scene:not(.motion-in-view):before,.motion-scene:not(.motion-in-view):after{animation-play-state:paused!important}#project-view[data-motion-paused=true] .motion-scene *,#project-view[data-motion-paused=true] .motion-scene *:before,#project-view[data-motion-paused=true] .motion-scene *:after,#project-view[data-motion-paused=true] .motion-scene:before,#project-view[data-motion-paused=true] .motion-scene:after{animation-play-state:paused!important}
.fx-system .fx-world-art{animation:quiet-bubble 8s ease-in-out infinite}.fx-system .fx-world:nth-child(3n+2) .fx-world-art{animation-delay:-3s;--float-y:4px}.fx-system .fx-world:nth-child(3n) .fx-world-art{animation-delay:-5s;--float-x:-2px}
.solar-intro-art .orbit-dot{animation:quiet-breathe 6s ease-in-out infinite}.solar-intro-art .orbit-dot:nth-child(even){animation-delay:-3s}
.ex-bank-offer-cards .ex-offer-one{animation:quiet-bubble 8s ease-in-out infinite}.ex-bank-offer-cards .ex-offer-two{animation:quiet-bubble 9s ease-in-out -4s infinite;--float-y:6px}
.making-strip{position:relative}.making-strip:before{content:'';position:absolute;left:0;right:0;top:-15px;border-top:1px dashed currentColor;opacity:.3;transform-origin:left;scale:0 1;transition:scale 1.5s ease}.making-strip.motion-entered:before{scale:1}
.connected-flow .flow-node,.mv-chain-number{position:relative}.connected-flow .flow-node:after,.mv-chain-number:after{content:'';position:absolute;inset:-6px;border:1px solid currentColor;border-radius:50%;opacity:0;animation:quiet-pulse 6s ease-in-out infinite}.connected-flow li:nth-child(2) .flow-node:after,.mv-chain li:nth-child(2) .mv-chain-number:after{animation-delay:-4.5s}.connected-flow li:nth-child(3) .flow-node:after,.mv-chain li:nth-child(3) .mv-chain-number:after{animation-delay:-3s}.connected-flow li:nth-child(4) .flow-node:after,.mv-chain li:nth-child(4) .mv-chain-number:after{animation-delay:-1.5s}
.mv-chain li:before{transition:opacity .8s,scale 1.2s;transform-origin:left}.mv-chain:not(.motion-entered) li:before{scale:0 1}.mv-ritual-step{position:relative}.mv-ritual-step:after{content:'';position:absolute;inset:-10px auto -10px -14px;width:100px;border:1px solid currentColor;border-radius:50%;opacity:.13;animation:quiet-pulse 7s ease-in-out infinite}
.ex-context-line{position:relative;padding-bottom:13px}.ex-context-line:after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;opacity:.22}.ex-context-line:before{content:'';position:absolute;width:5px;height:5px;bottom:-2px;left:0;border-radius:50%;background:currentColor;animation:signal-travel 6s ease-in-out infinite}@keyframes signal-travel{0%,10%{left:0;opacity:0}20%{opacity:.8}80%{opacity:.8}90%,100%{left:100%;opacity:0}}
.material-swatch{display:block;width:65px;height:65px;border-radius:50%;margin:0 0 30px;background:#6b190c}.material-satin{background:linear-gradient(135deg,#492021 4%,#bd8b80 42%,#602828 69%,#9d605a 100%)}.material-velvet{background:radial-gradient(ellipse at 30% 20%,#995b5a,#4e2428 73%)}.material-lace{background:radial-gradient(circle at 5px 5px,#f1eae0 1.8px,transparent 2.4px) 0 0/10px 10px,#762a35}.material-leather{background:repeating-linear-gradient(29deg,#562a24,#562a24 2px,#61362d 3px,#562a24 4px)}
@media(max-width:700px){.project-nav{flex-wrap:wrap;gap:12px}.project-motion-toggle{font-size:11px}.project-nav>span{margin-left:auto}.story-method-heading{gap:12px}.project-motif{width:115px;max-width:30%}.story-method-heading h2{font-size:29px}.material-swatch{width:45px;height:45px;margin-bottom:18px}.motion-orbit,.motion-halo,.fx-world-art,.ex-bank-offer,.connected-flow .flow-node:after,.mv-chain-number:after{animation:none!important}.ex-context-line:before{display:none}}
@media(prefers-reduced-motion:reduce){.motion-scene *,.motion-scene:before,.motion-scene:after{animation:none!important;transition:none!important}.project-motif path{stroke-dashoffset:0}.making-strip:before{scale:1}.mv-chain li:before{scale:1}}


/* arabian-atelier.css */
/* One open fashion editorial, with the photograph's own backdrop left intact. */
#project-view[data-case-id="arabian-nights"]{--an-gold:#c7a66d;--an-ink:var(--coastal-ink)}
#project-view[data-case-id="arabian-nights"] .visual-story{background:var(--coastal-canvas)}
#project-view[data-case-id="arabian-nights"] .story-opening{grid-template-columns:.85fr 1.15fr;align-items:center;padding:55px 4.8vw 32px;gap:50px 7%;position:relative}
#project-view[data-case-id="arabian-nights"] .story-opening h1{font-size:clamp(76px,8.6vw,142px);line-height:.88;margin:36px 0;letter-spacing:-.055em;overflow-wrap:normal}
#project-view[data-case-id="arabian-nights"] .story-opening h1 em{font-weight:400}
#project-view[data-case-id="arabian-nights"] .story-opening-copy>p{font-size:clamp(24px,2.8vw,41px);max-width:400px;line-height:1.18}
#project-view[data-case-id="arabian-nights"] .story-opening-art{padding:0;border-radius:0;background:transparent;color:inherit}
#project-view[data-case-id="arabian-nights"] .story-opening-art .story-art img{height:auto;max-height:none;width:100%;object-fit:contain}
#project-view[data-case-id="arabian-nights"] .story-opening-art figcaption{color:var(--coastal-canvas);font-size:11px;max-width:48ch}
#project-view[data-case-id="arabian-nights"] .story-opening-summary{gap:7%}
#project-view[data-case-id="arabian-nights"] .story-entry{margin-top:12px}
.an-palette{display:flex;gap:22px;color:var(--coastal-canvas);font-size:11px;margin-top:18px}
.an-palette>span{display:flex;align-items:center;gap:8px}
.an-palette i{width:9px;height:9px;display:inline-block;border-radius:50%}
.an-swatch-black{background:#1b1715;border:1px solid #c7a66d80}.an-swatch-white{background:var(--coastal-canvas)}.an-swatch-gold{background:#c7a66d}
.an-ornament{width:min(100%,340px);margin:28px 0 0;color:var(--an-gold);pointer-events:none;transform:rotate(var(--an-light,0deg));transition:transform 1.8s cubic-bezier(.22,.61,.36,1)}
.an-ornament svg{display:block;width:100%;height:auto;overflow:visible}
.an-chain{stroke:#d6b573;stroke-width:.7;opacity:.62}
.an-coin{transform-box:fill-box;transform-origin:50% 0;animation:an-coin-turn 7s ease-in-out var(--coin-delay) infinite}
.an-coin>path{stroke:#d6b573;stroke-width:.65}.an-coin>ellipse{fill:url(#an-gold);stroke:#e8ce9c;stroke-width:.4}.an-coin>.an-coin-etch{fill:none;stroke:#6c4528;stroke-width:.45;opacity:.7}
.an-strand{transform-origin:180px 20px;animation:an-chain-sway 9s ease-in-out var(--strand-delay) infinite}
@keyframes an-chain-sway{0%,100%{transform:rotate(-1.3deg)}50%{transform:rotate(1.3deg)}}
@keyframes an-coin-turn{0%,100%{scale:.7 1}50%{scale:1 1}}
/* The cream ground continues between chapters instead of wrapping every item. */
#project-view[data-case-id="arabian-nights"] .story-method,
#project-view[data-case-id="arabian-nights"] .story-section:not(.surface-wine){background:var(--coastal-canvas);--story-secondary:var(--coastal-ink);--story-fg:var(--coastal-ink);--story-line:color-mix(in srgb, var(--coastal-accent) 17.25%, transparent)}
#project-view[data-case-id="arabian-nights"] .story-method{padding-top:70px;padding-bottom:30px}
#project-view[data-case-id="arabian-nights"] .story-method-heading .project-motif{display:none}
#project-view[data-case-id="arabian-nights"] .story-method-heading{margin-bottom:30px}
#project-view[data-case-id="arabian-nights"] .story-method h2{font-size:clamp(38px,4vw,62px);max-width:650px}
#project-view[data-case-id="arabian-nights"] .process-steps{border-top:1px solid var(--story-line)}
#project-view[data-case-id="arabian-nights"] .story-section{padding-top:85px;padding-bottom:85px}
#project-view[data-case-id="arabian-nights"] #project-step-0{border-top:1px solid color-mix(in srgb, var(--coastal-accent) 17.25%, transparent)}
#project-view[data-case-id="arabian-nights"] .story-section.with-visual>.story-section-copy{max-width:none;display:grid;grid-template-columns:1.2fr .8fr;gap:0 8%;margin-bottom:48px;align-items:end}
#project-view[data-case-id="arabian-nights"] .story-section.with-visual>.story-section-copy .story-eyebrow{grid-column:1/-1}
#project-view[data-case-id="arabian-nights"] .story-section.with-visual>.story-section-copy h2{grid-column:1;grid-row:2/4;margin-bottom:0}
#project-view[data-case-id="arabian-nights"] .story-section.with-visual>.story-section-copy .story-lead{grid-column:2;font-size:15px}
#project-view[data-case-id="arabian-nights"] .story-section.with-visual>.story-section-copy .story-more{grid-column:2;margin-top:14px}
.an-collection-controls{display:flex;gap:28px;align-items:center;border-bottom:1px solid color-mix(in srgb, var(--coastal-accent) 17.25%, transparent);margin-bottom:0}
.an-collection .fx-selector{flex:1;margin:0;border:0;flex-wrap:nowrap;gap:22px;overflow:auto;scrollbar-width:none}
.an-collection .fx-selector button{flex:none;min-width:0;white-space:nowrap;font-size:12px;gap:7px;padding:16px 0;min-height:58px;cursor:pointer}
.an-collection .an-play{display:flex;flex:none;align-items:center;gap:8px;border:0;background:transparent;font-size:11px;min-height:44px;padding:8px 0;cursor:pointer;color:var(--coastal-ink)}
.an-play:disabled{opacity:.4;cursor:default}
.an-look-clock{height:1px;margin-bottom:38px;overflow:hidden}
.an-look-clock span{display:block;height:100%;width:100%;background:var(--coastal-ink);transform:scaleX(0);transform-origin:left}
.an-look-layout{display:grid;grid-template-columns:1.22fr .64fr .58fr;gap:32px 5%;align-items:start}
.an-main-photo{grid-column:1;grid-row:1/3}
.an-look-copy{grid-column:2/4;display:flex;gap:22px;align-items:start;padding-top:12px}
.an-look-index{font:italic 400 clamp(55px,7vw,100px)/.85 var(--portfolio-serif);color:var(--coastal-ink);letter-spacing:-.07em}
.an-look-copy>div{flex:1;min-width:0}
.an-look-copy h3{font-size:clamp(33px,4vw,57px);margin:12px 0 18px}
.an-look-copy .fx-caption{font-size:14px;max-width:36ch}
.an-drawing{grid-column:2;grid-row:2}
.an-look-detail{grid-column:3;grid-row:2;padding-top:70px}
#project-view[data-case-id="arabian-nights"] .an-collection .fx-image{background:transparent;padding:0;border-radius:0;height:auto}
#project-view[data-case-id="arabian-nights"] .an-collection .fx-image img{width:100%;height:auto;max-height:none;object-fit:contain}
.an-collection .fx-figure figcaption{margin-top:13px;font-size:11px;border-top:1px solid color-mix(in srgb, var(--coastal-accent) 14.51%, transparent);padding-top:11px}
.an-look-detail .fx-details-list{display:block;font-size:12px;line-height:1.7;margin-top:22px}
.an-look-detail .fx-details-list li+li{margin-top:8px}
.an-look-detail .fx-details-list li:before{background:var(--coastal-ink)}
.an-look-footer{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid color-mix(in srgb, var(--coastal-accent) 17.25%, transparent);margin-top:35px;padding:17px 0 0;color:var(--coastal-ink);font-size:12px}
.an-look-footer>div{display:flex;align-items:center;gap:21px}
.an-look-footer button{width:44px;height:44px;border:1px solid color-mix(in srgb, var(--coastal-accent) 31.37%, transparent);border-radius:50%;background:transparent;cursor:pointer;font-size:22px;transition:background .35s,color .35s}
.an-look-footer button:hover{background:var(--coastal-ink);color:var(--coastal-canvas)}
/* Give the original research collage the whole page width, without a mat. */
#project-view[data-case-id="arabian-nights"] #project-step-1{display:block;border-top:1px solid color-mix(in srgb, var(--coastal-accent) 17.25%, transparent)}
#project-view[data-case-id="arabian-nights"] #project-step-1>.story-section-copy{display:grid;grid-template-columns:1.2fr .8fr;gap:0 8%;margin-bottom:45px;max-width:none;align-items:start}
#project-view[data-case-id="arabian-nights"] #project-step-1 .story-eyebrow{grid-column:1/-1}
#project-view[data-case-id="arabian-nights"] #project-step-1 h2{grid-column:1;grid-row:2/4}
#project-view[data-case-id="arabian-nights"] #project-step-1 .story-lead,
#project-view[data-case-id="arabian-nights"] #project-step-1 .story-more{grid-column:2}
#project-view[data-case-id="arabian-nights"] #project-step-1>.story-art{padding:0;background:transparent;border-radius:0}
#project-view[data-case-id="arabian-nights"] .making-strip{gap:4%;align-items:start;margin-top:50px;padding-top:30px}
#project-view[data-case-id="arabian-nights"] .making-strip>.case-figure:nth-child(even){margin-top:65px}
#project-view[data-case-id="arabian-nights"] .making-strip .image-button{padding:0;background:transparent}
#project-view[data-case-id="arabian-nights"] .making-strip img{width:100%;height:auto;max-height:320px;object-fit:contain;background:transparent}
#project-view[data-case-id="arabian-nights"] .making-strip figcaption{font-size:12px;padding-top:16px}
#project-view[data-case-id="arabian-nights"] .making-strip:before{border-top-color:var(--coastal-ink);top:0}
#project-view[data-case-id="arabian-nights"] .making-strip:after{content:'';position:absolute;top:-2px;left:0;width:5px;height:5px;border-radius:50%;background:var(--coastal-ink);animation:an-seam 13s ease-in-out infinite}
@keyframes an-seam{0%,8%{transform:translateX(0);opacity:0}15%{opacity:1}85%{opacity:1}92%,100%{transform:translateX(var(--an-seam-width,800px));opacity:0}}
#project-view[data-case-id="arabian-nights"] #project-step-3{display:grid;grid-template-columns:.7fr 1.3fr;gap:9%;align-items:center}
#project-view[data-case-id="arabian-nights"] #project-step-3>.story-section-copy{display:block;margin:0}
#project-view[data-case-id="arabian-nights"] #project-step-3 .fx-image{background:transparent}
#project-view[data-case-id="arabian-nights"] #project-step-3 .fx-closing{max-width:none}
#project-view[data-case-id="arabian-nights"] #project-step-3 .fx-closing img{max-height:none}
#project-view[data-case-id="arabian-nights"] #project-step-3 .fx-closing figcaption{font:12px/1.7 var(--portfolio-sans,Arial,sans-serif);color:var(--coastal-canvas)}
#project-view[data-case-id="arabian-nights"] .story-outcome{background:var(--coastal-ink);padding-top:40px;border-top:1px solid color-mix(in srgb, var(--coastal-canvas) 20%, transparent)}
@media(min-width:1001px){#project-view[data-case-id="arabian-nights"] .story-opening-copy{padding:10px 0 25px}}
@media(max-width:1000px){
 #project-view[data-case-id="arabian-nights"] .story-opening{gap:35px 5%;padding:40px 35px 30px}
 #project-view[data-case-id="arabian-nights"] .story-opening h1{font-size:clamp(65px,9vw,90px)}
 .an-ornament{max-width:245px;margin-top:20px}
 .an-look-layout{gap:28px 4%;grid-template-columns:1.1fr .65fr .6fr}
 .an-look-copy{gap:14px}.an-look-index{font-size:65px}.an-look-copy h3{font-size:38px}
 .an-collection-controls{display:block}.an-collection .fx-selector{gap:28px}.an-play{margin-left:auto}
 .an-look-detail{padding-top:25px}
}
@media(max-width:700px){
 #project-view[data-case-id="arabian-nights"] .story-opening{padding:34px 22px 28px;display:flex;gap:32px;align-items:stretch}
 #project-view[data-case-id="arabian-nights"] .story-opening-copy{position:relative}
 #project-view[data-case-id="arabian-nights"] .story-opening h1{font-size:clamp(70px,20vw,100px);margin:26px 0}
 #project-view[data-case-id="arabian-nights"] .story-opening-copy>p{font-size:26px;max-width:240px}
 #project-view[data-case-id="arabian-nights"] .story-opening-art .story-art img{max-height:none!important}
 .an-materials{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:15px}
 .an-ornament{position:static;width:170px;max-width:65%;margin:0;opacity:.9}
 .an-palette{flex-direction:column;gap:10px;margin:0;font-size:10px}
 #project-view[data-case-id="arabian-nights"] .story-method{padding:40px 22px 20px}
 #project-view[data-case-id="arabian-nights"] .story-method h2{font-size:36px}
 #project-view[data-case-id="arabian-nights"] .story-section{padding:46px 22px;gap:26px}
 #project-view[data-case-id="arabian-nights"] .story-section.with-visual>.story-section-copy,
 #project-view[data-case-id="arabian-nights"] #project-step-1>.story-section-copy{display:block;margin-bottom:8px}
 #project-view[data-case-id="arabian-nights"] .story-section.with-visual>.story-section-copy h2{margin-bottom:19px}
 #project-view[data-case-id="arabian-nights"] #project-step-1>.story-section-copy{margin-bottom:30px}
 .an-collection .fx-selector{gap:23px}.an-collection .fx-selector button{font-size:12px;min-width:0;flex-basis:auto}
 .an-collection .an-play{padding:9px 0;font-size:12px;min-height:44px}
 .an-look-clock{margin-bottom:24px}
 .an-look-layout{grid-template-columns:1fr 1fr;gap:25px 22px}
 .an-look-copy{grid-row:1;grid-column:1/-1;padding:0;align-items:center;gap:25px}
 .an-look-index{font-size:70px}.an-look-copy h3{font-size:36px;margin:8px 0 12px}.an-look-copy .fx-caption{font-size:13px}
 .an-main-photo{grid-column:1/-1;grid-row:2}
 .an-drawing{grid-column:1;grid-row:3}
 .an-look-detail{grid-column:2;grid-row:3;padding-top:32px}
 .an-look-detail .fx-details-list{font-size:11px;margin-top:16px}
 .an-look-footer{gap:12px;align-items:start;margin-top:28px;font-size:11px;line-height:1.6}
 .an-look-footer>span{max-width:120px;padding-top:5px}.an-look-footer>div{gap:12px;white-space:nowrap}
 #project-view[data-case-id="arabian-nights"] .making-strip{display:grid;grid-template-columns:1fr 1fr;gap:28px 22px;margin-top:10px}
 #project-view[data-case-id="arabian-nights"] .making-strip>.case-figure:nth-child(even){margin-top:28px}
 #project-view[data-case-id="arabian-nights"] .making-strip img{max-height:240px}
 #project-view[data-case-id="arabian-nights"] .making-strip:after{display:none}
 #project-view[data-case-id="arabian-nights"] #project-step-3{display:flex;gap:30px}
 #project-view[data-case-id="arabian-nights"] .story-outcome{padding-top:34px}
}
@media(prefers-reduced-motion:reduce){.an-ornament *{animation:none!important}.an-ornament{transform:none;transition:none}.an-look-clock{visibility:hidden}}


/* work-gallery.css */
/* Scoped to the landing page's second chapter; the opening stays intact. */
#work.work-gallery-section{width:calc(100% - 52px);max-width:1748px;margin:84px auto 42px;color:#e4d8cc;scroll-margin-top:28px}
.gallery-heading{display:flex;justify-content:space-between;align-items:end;gap:48px;padding:0 14px 32px}
.gallery-heading .small-label{color:#c8ab96;font-size:12px}
.gallery-heading h2{font:400 clamp(57px,6.5vw,104px)/.96 'Cormorant Garamond',Georgia,serif;letter-spacing:-.045em;margin:20px 0 0;color:#f1eae0}
.gallery-heading h2 em{font-weight:400}
.gallery-heading>p{max-width:282px;color:#bfa696;font-size:14px;line-height:1.75;margin:0 0 2px}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 14px 24px}
.gallery-tabs{display:flex;gap:8px;flex-wrap:wrap}
.gallery-tabs button{border:1px solid #e4d8cc35;color:#c4aa97;padding:13px 21px;border-radius:999px;min-height:46px;font-size:13px;transition:background .25s,color .25s,border-color .25s}
.gallery-tabs button[aria-selected=true]{color:#681b10;background:#e4d8cc;border-color:#e4d8cc}
.gallery-tabs button:hover{color:#f1eae0;border-color:#e4d8cc80}
.gallery-tabs button[aria-selected=true]:hover{color:#681b10}
.gallery-motion{color:#bfa696;font-size:12px;min-height:44px;white-space:nowrap;padding:10px 0 10px 16px}
.gallery-motion span{display:inline-block;width:20px;text-align:center;margin-right:5px}
.work-gallery{--gallery-card-width:clamp(280px,32vw,440px);--gallery-gap:18px;display:grid;gap:25px;min-width:0;align-content:start}
.gallery-lane{overflow:hidden;touch-action:pan-y;cursor:grab;scrollbar-width:none;overscroll-behavior-x:contain;border-radius:15px;padding:2px 0 4px;outline-offset:5px}
.gallery-lane.is-dragging{cursor:grabbing;user-select:none}
.gallery-lane::-webkit-scrollbar{display:none}
.gallery-track{display:flex;gap:var(--gallery-gap);width:max-content;align-items:start;will-change:transform}
.gallery-group{display:flex;flex:none;gap:var(--gallery-gap);align-items:start}
.gallery-project{width:var(--gallery-card-width);flex:none;display:block;color:#e4d8cc;outline-offset:-2px;border-radius:14px;-webkit-user-drag:none}
.gallery-art{aspect-ratio:3/2;width:100%;border-radius:14px;overflow:hidden;isolation:isolate;transition:opacity .35s;background:#e4d8cc}
.gallery-art img{display:block;width:100%;height:100%;object-fit:contain;transform:none}
.gallery-art--wine{background:#6b190c}.gallery-art--black{background:#080908}.gallery-art--charcoal{background:#25221f}.gallery-art--white{background:#fff}.gallery-art--paper{background:#e4d8cc}
.gallery-caption{display:flex;gap:10px;align-items:center;justify-content:space-between;padding:13px 3px 0;height:59px;box-sizing:border-box}
.gallery-caption strong{font:400 24px/1.1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.015em;display:block;color:#f1eae0}
.gallery-caption small{display:block;font-size:10px;line-height:1.5;color:#bfa696;margin-top:5px;letter-spacing:.02em}
.gallery-caption i{font:normal 20px/1 sans-serif;flex-shrink:0;color:#bb8c6e;transition:translate .3s}
.gallery-project:hover .gallery-caption i{translate:2px -2px}
.gallery-project:hover .gallery-art{opacity:.88}
.gallery-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:27px 14px 0;padding:25px 0 0;border-top:1px solid #e4d8cc26}
.gallery-footer-copy{display:flex;flex-direction:column;gap:7px;color:#bfa696;font-size:12px;line-height:1.5}
.gallery-footer-copy small{font-size:11px;color:#a28a78}
.gallery-touch-hint{display:none}
.gallery-footer-actions{display:flex;align-items:center;gap:25px}
.gallery-browse{display:flex;flex-wrap:wrap;gap:9px 20px;font-size:12px;line-height:1.5;color:#e4d8cc}
.gallery-browse span{margin-left:5px}
.gallery-arrows{display:flex;gap:8px}
.gallery-arrows button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #e4d8cc44;border-radius:50%;font:22px/1 Georgia,serif;color:#e4d8cc;transition:background .25s}
.gallery-arrows button:hover{background:#6b190c}
#work.work-gallery-section :is(button,a,[tabindex]):focus-visible{outline:2px solid #e4d8cc;outline-offset:4px}
@media(max-width:900px){.gallery-heading{gap:24px;padding-inline:3px}.gallery-heading>p{font-size:12px;max-width:230px}.gallery-toolbar{padding-inline:3px}.gallery-tabs button{padding:12px 16px;font-size:12px}.gallery-footer{margin-inline:3px}.gallery-caption strong{font-size:22px}}
@media(max-width:600px){
 #work.work-gallery-section{width:calc(100% - 32px);margin:57px auto 28px;scroll-margin-top:24px}
 .gallery-heading{display:block;padding-bottom:25px}.gallery-heading h2{font-size:58px;margin-top:17px}.gallery-heading>p{max-width:290px;margin-top:22px;font-size:13px;line-height:1.7}
 .gallery-toolbar{flex-wrap:wrap;gap:5px;padding-bottom:18px;position:relative}
 .gallery-tabs{gap:7px;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-tabs button{padding:11px 8px;min-height:44px;font-size:12px}
 .gallery-motion{margin-left:auto;padding:6px 0;min-height:35px;font-size:11px}
 .work-gallery{--gallery-card-width:clamp(238px,76vw,330px);--gallery-gap:12px;gap:20px}
 .gallery-art{border-radius:12px}.gallery-lane{border-radius:12px}.gallery-caption{padding-top:10px;height:56px;gap:8px}.gallery-caption small{font-size:9px}.gallery-caption strong{font-size:21px}.gallery-caption i{font-size:17px}
 .gallery-touch-hint{display:inline}.gallery-desktop-hint{display:none}
 .gallery-footer{flex-wrap:wrap;gap:18px;margin-top:19px;padding-top:20px}.gallery-footer-copy{width:100%;gap:4px}.gallery-footer-actions{width:100%;justify-content:space-between;gap:12px}.gallery-browse{font-size:12px}
}
@media(pointer:coarse){.gallery-touch-hint{display:inline}.gallery-desktop-hint{display:none}}
@media(prefers-reduced-motion:reduce){.gallery-motion{display:none}.work-gallery-section *{scroll-behavior:auto!important;transition:none!important;animation:none!important}.gallery-desktop-hint{display:none}}


/* burgundy-campaign.css */
/* Burgundy is a fashion editorial: full photographs, quiet margins, original evidence. */
.case-wine-tasting .burgundy-campaign{border-radius:0;overflow:visible;isolation:auto;background:var(--coastal-canvas);color:var(--coastal-ink)}
.case-wine-tasting .bc-nav{display:flex;justify-content:flex-end;gap:32px;padding:0 2px 24px;color:var(--coastal-wash);font-size:12px}
.bc-nav a{padding:8px 0;border-bottom:1px solid transparent}.bc-nav a[aria-current]{border-color:currentColor}
.burgundy-campaign h1,.burgundy-campaign h2,.burgundy-campaign h3{font-family:var(--portfolio-serif);font-weight:400;letter-spacing:-.035em}
.bc-film{position:relative;background:var(--coastal-wash);--film-ink:var(--coastal-ink);--bc-type-height:clamp(145px,23vw,370px)}

.bc-film-title{position:absolute;inset:0;z-index:3;pointer-events:none;color:var(--film-ink)}
.bc-film-title>div{position:sticky;top:calc(100svh - var(--bc-type-height));height:var(--bc-type-height);padding:0 2.8vw;text-align:right}
.bc-film-title span{display:block;font-size:clamp(11px,1.2vw,17px);letter-spacing:.15em;text-transform:uppercase;padding-right:.5em}
.bc-film-title h1{color:#70283f;font-size:clamp(76px,17vw,300px);line-height:.85;margin:8px 0 0}
.bc-film-note{position:absolute;top:26px;left:3%;right:3%;z-index:2;display:flex;justify-content:space-between;gap:30px;font-size:11px;line-height:1.55;color:var(--coastal-ink);letter-spacing:.035em}
.bc-film-note>span:last-child{text-align:right}
.bc-scene{margin:0;position:relative;background:var(--coastal-wash)}
#project-view .bc-scene img{width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:3/2;border-radius:0;filter:none;transform:none;background:none}
.bc-scene figcaption{position:relative;z-index:4;display:flex;justify-content:space-between;gap:30px;padding:20px 3%;color:var(--coastal-ink);background:var(--coastal-wash);font-size:12px;line-height:1.6}


.bc-kicker{display:block;font-size:11px;line-height:1.65;letter-spacing:.08em;text-transform:uppercase}
.bc-intro,.bc-palette,.bc-studies,.bc-ending{padding:90px 6%;scroll-margin-top:35px}
.bc-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:35px}
.bc-intro h2{font-size:clamp(65px,7vw,110px);line-height:.98}
.bc-intro-copy>p{font-size:16px;line-height:1.85;color:var(--coastal-ink);margin:0 0 22px}
.bc-intro-copy>p:first-child{font:400 clamp(25px,2.5vw,38px)/1.23 var(--portfolio-serif);color:var(--coastal-ink);letter-spacing:-.01em}
.bc-intro dl{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-block:1px solid color-mix(in srgb, var(--coastal-ink) 18.82%, transparent);padding:24px 0;margin:32px 0 22px}
.bc-intro dt{font-size:11px;margin-bottom:9px;text-transform:uppercase;letter-spacing:.07em}.bc-intro dd{margin:0;font-size:13px;line-height:1.75;color:var(--coastal-ink)}
.bc-intro-copy>.bc-small{font-size:12px;line-height:1.7}
.bc-palette{background:var(--coastal-ink);color:var(--coastal-canvas);display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}
.bc-palette h2,.bc-studies h2{font-size:clamp(43px,5vw,76px);line-height:1.04;margin-top:20px}
.bc-palette-body>p{font-size:16px;line-height:1.8;color:var(--coastal-wash)}
.bc-swatches{display:flex;margin:34px 0 22px;gap:12px}.bc-swatches>span{flex:1;min-width:0;font-size:11px;line-height:1.6}.bc-swatches i{display:block;aspect-ratio:1;background:var(--swatch);margin-bottom:12px;border:1px solid color-mix(in srgb, var(--coastal-canvas) 16.47%, transparent);border-radius:50%;transition:transform .5s cubic-bezier(.22,.61,.36,1)}
.bc-swatches>span:hover i{transform:translateY(-7px)}
.bc-text-link{display:inline-flex;justify-content:space-between;gap:24px;align-items:center;padding:14px 0;border-bottom:1px solid currentColor;font-size:12px;text-align:left;line-height:1.5;color:inherit}
.bc-studies-heading{display:flex;justify-content:space-between;gap:30px;align-items:end}.bc-studies-heading>p{font-size:13px;color:var(--coastal-ink);line-height:1.7}
.bc-study-select{display:flex;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 20.78%, transparent);margin-top:46px;gap:16px}
.bc-study-select button{flex:1;display:flex;align-items:center;gap:14px;min-height:60px;padding:12px 0;border-bottom:2px solid transparent;font-size:14px;color:var(--coastal-ink)}.bc-study-select button>span{font-size:11px}.bc-study-select button[aria-pressed=true]{border-color:var(--coastal-ink);color:var(--coastal-ink)}
.bc-study-stage{display:grid;grid-template-columns:.65fr 1.35fr;gap:5%;margin-top:36px;align-items:center;min-height:380px}
.bc-study-copy h3{font-size:clamp(35px,3.5vw,54px);line-height:1.05;margin:20px 0}.bc-study-copy>p{font-size:15px;line-height:1.85;color:var(--coastal-ink)}.bc-study-copy .bc-text-link{margin-top:17px}
.bc-original{margin:0;min-width:0}.bc-original button{display:block;padding:0;width:100%;background:none}.bc-original img{width:100%;height:auto;max-height:none;object-fit:contain;background:transparent;border-radius:0}.bc-original figcaption{font-size:11px;color:var(--coastal-ink);line-height:1.7;margin-top:14px}
.bc-ending{background:var(--coastal-wash)}.bc-ending h2{font-size:clamp(38px,4.8vw,72px);line-height:1.07;max-width:1140px;margin:25px 0 28px}.bc-ending>p{font-size:16px;line-height:1.8;color:var(--coastal-ink);max-width:630px}.bc-credit{display:block;font-size:11px;color:var(--coastal-ink);margin-top:45px}
.burgundy-campaign :is(button,a):focus-visible{outline:2px solid currentColor;outline-offset:6px}

@media(max-width:800px){
 .case-wine-tasting .bc-nav{gap:23px;justify-content:flex-start;padding-bottom:18px;font-size:11px}
 .bc-film-title>div{top:39svh}.bc-film-title h1{font-size:17vw}.bc-film-title span{font-size:10px;letter-spacing:.09em}
 .bc-film-note{top:14px;font-size:9px;gap:20px}.bc-film-note>span:first-child{max-width:130px}
 .bc-scene figcaption{font-size:10px;padding:14px 4%;gap:22px}.bc-scene figcaption>span:last-child{text-align:right;max-width:55%}
 
 .bc-intro,.bc-palette,.bc-studies,.bc-ending{padding:50px 6%}
 .bc-intro-grid{grid-template-columns:1fr;gap:35px;margin-top:25px}.bc-intro h2{font-size:67px}.bc-intro-copy>p:first-child{font-size:29px}
 .bc-palette{grid-template-columns:1fr;gap:32px}.bc-palette h2,.bc-studies h2{font-size:46px}.bc-swatches{max-width:500px}
 .bc-studies-heading{display:block}.bc-studies-heading>p{margin-top:22px}
 .bc-study-select{gap:8px;margin-top:25px}.bc-study-select button{font-size:12px;display:block;text-align:left;min-height:66px}.bc-study-select button>span{display:block;margin-bottom:7px}
 .bc-study-stage{grid-template-columns:1fr;gap:28px;min-height:0;margin-top:30px}.bc-study-copy h3{font-size:40px;margin:15px 0}.bc-study-copy>p{font-size:15px}.bc-original{order:-1}.bc-ending h2{font-size:40px}
}
@media(prefers-reduced-motion:reduce){.bc-film-title{position:relative;inset:auto;padding:30px 3%}.bc-film-title>div{position:static;height:auto;padding:0}.bc-film-title h1{font-size:15vw}.bc-film-note{position:relative;padding:18px 3%;inset:auto}.bc-film-title,.bc-swatches i{transition:none}.bc-swatches>span:hover i{transform:none}}


/* solar-campaign.css */
/* Solar System: a calm, cinematic campaign with unframed source work. */
.case-solar-system .solar-campaign{border-radius:0;overflow:visible;isolation:auto;background:var(--coastal-canvas);color:var(--coastal-ink)}
.case-solar-system .sc-nav{display:flex;justify-content:flex-end;gap:32px;padding:0 2px 24px;color:var(--coastal-wash);font-size:14px;line-height:1.5}
.sc-nav a{padding:8px 0;border-bottom:1px solid transparent}.sc-nav a[aria-current]{border-color:currentColor}
.solar-campaign{--sc-paper:var(--coastal-canvas);--sc-cream:var(--coastal-wash);--sc-wine:var(--coastal-ink);--sc-brown:var(--coastal-ink)}
.solar-campaign h1,.solar-campaign h2,.solar-campaign h3{font-family:var(--portfolio-serif);font-weight:400;letter-spacing:-.035em}
.sc-film{position:relative;aspect-ratio:107/80;background:var(--coastal-wash);overflow:hidden}
.sc-video{display:block;width:100%;height:100%;object-fit:contain}
.sc-title{position:absolute;inset:0 auto 0 5%;width:43%;display:flex;flex-direction:column;justify-content:center;pointer-events:none;color:var(--coastal-ink)}
.sc-title>span{font-size:13px;letter-spacing:.13em;text-transform:uppercase;line-height:1.6}
.sc-title h1{font-size:clamp(70px,9.3vw,155px);line-height:.88;margin:27px 0 28px}
.sc-title h1 em{font-weight:400}.sc-title p{font-size:18px;line-height:1.5;letter-spacing:.01em}
.sc-film-foot{position:absolute;inset:auto 3% 28px;display:flex;justify-content:space-between;align-items:end;gap:25px;color:var(--coastal-ink);font-size:12px;line-height:1.65}
.sc-film-control{display:flex;align-items:center;gap:12px;background:color-mix(in srgb, var(--coastal-canvas) 92.55%, transparent);color:var(--coastal-ink);border:1px solid color-mix(in srgb, var(--coastal-ink) 25.1%, transparent);padding:12px 18px;border-radius:30px;font-size:13px;min-height:48px}
.sc-film-control[hidden]{display:none}
.sc-film-control [data-sc-play-icon]{width:15px;text-align:center;font-size:15px}
.sc-caption{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:20px 3%;font-size:13px;line-height:1.65;background:var(--coastal-wash)}
.sc-caption a{flex:none;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 40%, transparent);padding:5px 0}
.sc-eyebrow{display:block;font-size:12px;line-height:1.7;letter-spacing:.09em;text-transform:uppercase}
.sc-intro,.sc-process,.sc-studies,.sc-closing{padding:90px 6%;scroll-margin-top:35px}
.sc-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:30px}
.sc-intro h2{font-size:clamp(50px,6vw,96px);line-height:1.02}
.sc-intro-grid p{font-size:16px;line-height:1.85;color:var(--sc-brown);margin:0 0 22px}
.sc-intro-grid .sc-lead{font:400 clamp(25px,2.5vw,36px)/1.3 var(--portfolio-serif);color:var(--sc-wine)}
.sc-facts{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid color-mix(in srgb, var(--coastal-ink) 18.82%, transparent);padding-top:25px;margin-top:30px}
.sc-facts span{font-size:12px;letter-spacing:.07em;text-transform:uppercase}.sc-facts p{max-width:510px;font-size:14px;color:var(--sc-brown);line-height:1.8;margin:10px 0 0}
.sc-editorial{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:var(--sc-paper)}
.sc-look{margin:0;min-width:0}
#project-view .sc-look>img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;aspect-ratio:2/3;background:none;border-radius:0;filter:none;transform:none}
.sc-look figcaption{padding:30px 7% 54px;color:var(--sc-wine)}
.sc-look figcaption>span{font-size:12px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase}.sc-look h3{font-size:clamp(34px,3.6vw,56px);line-height:1.05;margin:15px 0}.sc-look p{font-size:16px;line-height:1.8;color:var(--sc-brown);max-width:490px}
.sc-process{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;background:var(--sc-wine);color:var(--sc-paper)}
.sc-process h2{font-size:clamp(54px,6.4vw,98px);line-height:1.01;margin:30px 0 0}
.sc-process ol{list-style:none;margin:0;padding:0}.sc-process li{display:grid;grid-template-columns:30px 1fr;gap:25px;padding:28px 0;border-bottom:1px solid color-mix(in srgb, var(--coastal-wash) 26.67%, transparent)}.sc-process li:first-child{padding-top:0}.sc-process li>span{font-size:12px;padding-top:7px;opacity:.8}.sc-process h3{font-size:32px;line-height:1.15;margin:0 0 16px}.sc-process p{font-size:16px;line-height:1.8;color:var(--coastal-canvas);margin:0}
.sc-study-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:12%;align-items:end;margin-bottom:48px}
.sc-study-heading h2{font-size:clamp(43px,5vw,76px);line-height:1.03;margin:22px 0 0}.sc-study-heading>p{font-size:16px;line-height:1.8;color:var(--sc-brown);margin:0 0 3px}
.solar-campaign .fx-image{background:transparent!important}
.solar-campaign .fx-world-story .fx-caption{font-size:16px}.solar-campaign .fx-world-story .fx-details-list{font-size:13px}
.solar-campaign .fx-world-name{font-size:14px}.solar-campaign .fx-technical-toggle{font-size:14px!important}
.solar-campaign .fx-world-reversed .fx-world-illustration{grid-column:auto;grid-row:auto}.solar-campaign .fx-world-reversed .fx-world-story{grid-column:auto;grid-row:auto}
.sc-closing{background:var(--sc-cream);text-align:center}.sc-closing h2{font-size:clamp(47px,6.5vw,96px);line-height:1.02;margin:25px 0 30px}.sc-closing>p{font-size:16px;line-height:1.85;max-width:670px;margin:0 auto;color:var(--sc-brown)}.sc-closing>.sc-note{font-size:13px;line-height:1.8;margin:32px auto 0;max-width:710px}.sc-credit{display:block;font-size:12px;line-height:1.7;margin-top:35px;color:var(--sc-brown)}
.solar-campaign :is(button,a):focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(max-width:900px){.sc-intro,.sc-process,.sc-studies,.sc-closing{padding:62px 6%}.sc-title h1{font-size:10vw}.sc-title>span{font-size:11px}.sc-title p{font-size:15px}.sc-film-foot{bottom:18px}.sc-intro-grid{gap:6%}.sc-process{gap:7%}.sc-study-heading{gap:6%}}
@media(max-width:700px){
 .case-solar-system .sc-nav{justify-content:flex-start;gap:20px;padding-bottom:18px;font-size:12px}
 .sc-title{position:relative;inset:auto;width:auto;padding:30px 6%;display:block;order:-1;background:var(--sc-paper)}
 .sc-title>span{font-size:12px}.sc-title h1{font-size:clamp(58px,14vw,92px);line-height:.94;margin:16px 0}.sc-title h1 br{display:none}.sc-title h1 em{margin-left:.12em}.sc-title p{font-size:16px;line-height:1.5;margin:0}.sc-title p br{display:none}
 .sc-film{display:flex;flex-direction:column;aspect-ratio:auto;overflow:visible}.sc-video{width:100%;height:auto;aspect-ratio:107/80;order:0}
 .sc-film-foot{position:relative;inset:auto;order:1;padding:14px 6%;align-items:center}.sc-film-control{font-size:12px;padding:10px 14px}.sc-film-foot>span{font-size:12px}
 .sc-caption{display:block;padding:19px 6%;font-size:13px}.sc-caption>span{display:block;margin-bottom:12px}.sc-caption a{display:inline-block}
 .sc-intro-grid,.sc-process,.sc-study-heading{grid-template-columns:1fr;gap:30px}.sc-intro h2{font-size:58px}.sc-intro-grid{margin-top:25px}.sc-intro-grid .sc-lead{font-size:29px}.sc-intro-grid p:last-child{margin-bottom:0}
 .sc-facts{grid-template-columns:1fr;gap:25px;margin-top:28px}
 .sc-editorial{grid-template-columns:1fr;gap:0}.sc-look figcaption{padding:28px 6% 44px}.sc-look h3{font-size:43px}.sc-look p{font-size:16px}
 .sc-process h2{font-size:60px}.sc-process ol{margin-top:8px}.sc-process h3{font-size:31px}.sc-process li{gap:14px}
 .sc-study-heading h2{font-size:48px}.sc-study-heading{margin-bottom:35px}.sc-study-heading>p{font-size:16px}
 .solar-campaign .fx-solar-layout{grid-template-columns:1fr;gap:28px}.solar-campaign .fx-world-story{display:block}.solar-campaign .fx-world-illustration .fx-image{height:440px}.solar-campaign .fx-world-story .fx-caption{font-size:16px;max-width:none}.solar-campaign .fx-world-story h3{font-size:48px}.solar-campaign .fx-world-story .fx-details-list{display:flex;font-size:13px}.solar-campaign .fx-world-story .fx-surface{max-width:240px;margin-top:25px}.solar-campaign .fx-world-story .fx-surface .fx-image{height:200px}.solar-campaign .fx-flat-comparison{grid-template-columns:1fr;gap:35px}.solar-campaign .fx-flat-pair{grid-template-columns:1fr 1fr}
 .sc-closing h2{font-size:54px}
}
@media(prefers-reduced-motion:reduce){.solar-campaign *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


/* arabian-campaign.css */
/* An image-led editorial: a campaign, an endless lookbook, and the original atelier. */
#project-view.case-arabian-nights .arabian-campaign{background:var(--coastal-canvas);color:var(--coastal-ink);border-radius:0;overflow:clip;isolation:auto}
.arabian-campaign h1,.arabian-campaign h2{font-family:var(--portfolio-serif);font-weight:400;letter-spacing:-.035em}
.ar-masthead{text-align:center;padding:48px 5% 28px}
.ar-masthead>span{font-size:12px;letter-spacing:.14em;line-height:1.8}
.ar-masthead h1{font-size:clamp(62px,7.5vw,120px);line-height:1.04;margin:18px 0 32px}.ar-masthead h1 em{font-weight:400}
.ar-masthead nav{display:flex;gap:38px;justify-content:center;font-size:14px;line-height:1.5}.ar-masthead nav a{padding:8px 0;border-bottom:1px solid transparent}.ar-masthead nav a:hover{border-color:currentColor}
.ar-film{position:relative;aspect-ratio:93/64;background:var(--coastal-ink);scroll-margin-top:30px}
.ar-film video{display:block;width:100%;height:100%;object-fit:contain}



.ar-film-control{position:absolute;bottom:25px;right:25px;display:flex;align-items:center;gap:10px;padding:12px 17px;border:1px solid color-mix(in srgb, var(--coastal-canvas) 52.94%, transparent);background:color-mix(in srgb, var(--coastal-ink) 65.88%, transparent);color:var(--coastal-canvas);font-size:12px;min-height:46px;z-index:2;border-radius:24px}.ar-film-control[hidden]{display:none}.ar-film-control>span:first-child{min-width:15px;text-align:center}
.arabian-campaign .ar-film-control,.arabian-campaign .ar-film-control[aria-pressed=true]{color:var(--coastal-canvas)}
.ar-intro{text-align:center;padding:65px 6% 60px;max-width:800px;margin:auto}.ar-kicker{display:block;font-size:12px;line-height:1.7;letter-spacing:.1em;text-transform:uppercase}
.ar-intro p{font:400 clamp(23px,2.5vw,34px)/1.4 var(--portfolio-serif);margin:22px 0 25px}
.ar-colours{display:flex;justify-content:center;gap:11px}.ar-colours i{width:9px;height:9px;display:block;border-radius:50%;background:var(--colour);border:1px solid color-mix(in srgb, var(--coastal-ink) 20%, transparent)}
.ar-diptych{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 4%}
.ar-diptych figure{margin:0;min-width:0}
#project-view .ar-diptych img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:2/3;object-fit:contain;filter:none;transform:none;border-radius:0;background:none}
.ar-diptych figcaption{text-align:center;font-size:14px;letter-spacing:.07em;padding:20px 0 0}
.ar-lookbook{padding:80px 0 60px;scroll-margin-top:30px}.ar-lookbook-heading{text-align:center;padding:0 6% 38px}.ar-lookbook h2{font-size:clamp(42px,5vw,76px);line-height:1.05;margin:18px 0}.ar-lookbook-heading p{font-size:14px;line-height:1.7;color:var(--coastal-ink);margin:0}
.ar-reel{--ar-width:clamp(210px,29vw,430px);--ar-gap:18px;width:100%;overflow:hidden;touch-action:pan-y}
.ar-reel-track{display:flex;width:max-content;animation:ar-endless 75s linear infinite;animation-play-state:paused}
.ar-reel[data-running=true] .ar-reel-track{animation-play-state:running}
.ar-reel-group{display:flex;gap:var(--ar-gap);padding-right:var(--ar-gap);flex:none}
.ar-reel-item{margin:0;width:var(--ar-width);flex:none}
#project-view .ar-reel-item img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:4/5;object-fit:contain;border-radius:0;background:none;filter:none;transform:none}
.ar-reel-item figcaption{display:flex;gap:16px;align-items:baseline;padding:14px 0 0;font-size:14px;line-height:1.6}.ar-reel-item figcaption>span{font-size:12px;color:var(--coastal-ink)}
.ar-reel-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 5% 0;color:var(--coastal-ink);font-size:12px;line-height:1.6;letter-spacing:.02em}
.ar-reel-controls button{display:flex;align-items:center;gap:12px;color:var(--coastal-ink);font-size:14px;min-height:44px;padding:10px 0;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 40%, transparent)}
@keyframes ar-endless{to{transform:translateX(-50%)}}
.ar-reel[data-static=true]{overflow-x:auto;touch-action:pan-x pan-y;scrollbar-width:thin;scrollbar-color:var(--coastal-ink) var(--coastal-wash);padding-bottom:10px}
.ar-reel[data-static=true] .ar-reel-track{animation:none;transform:none}
.ar-reel[data-static=true] .ar-reel-group[aria-hidden]{display:none}
.ar-atelier{padding:65px 6% 45px;border-top:1px solid color-mix(in srgb, var(--coastal-ink) 16.86%, transparent);text-align:center;scroll-margin-top:30px}
.ar-atelier h2{font-size:clamp(39px,4.7vw,68px);line-height:1.08;margin:22px 0 44px}
.ar-disclosure{text-align:left;border-top:1px solid color-mix(in srgb, var(--coastal-ink) 20%, transparent)}
.ar-disclosure:last-of-type{border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 20%, transparent)}
.ar-disclosure summary{display:flex;list-style:none;justify-content:space-between;gap:20px;align-items:center;min-height:72px;padding:20px 0;cursor:pointer;font-size:16px;line-height:1.5}.ar-disclosure summary::-webkit-details-marker{display:none}.ar-disclosure summary>span{font-size:24px}
.ar-drawings{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px;padding:12px 0 36px;align-items:end}
.ar-drawings figure,.ar-making figure{margin:0;min-width:0}
.ar-drawings button,.ar-making button{display:block;width:100%;background:transparent;border:0;padding:0;cursor:zoom-in}
#project-view .ar-drawings img{display:block;width:100%;height:clamp(220px,26vw,390px);object-fit:contain;max-height:none;border-radius:0;background:transparent}
.ar-drawings figcaption,.ar-making figcaption{font-size:12px;line-height:1.7;padding-top:16px;color:var(--coastal-ink)}
.ar-making{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px;padding:12px 0 36px}
#project-view .ar-making img{width:100%;height:240px;object-fit:contain;background:transparent;border-radius:0;max-height:none}
.ar-credit{font-size:13px;line-height:1.8;margin:40px auto 0;color:var(--coastal-ink)}
.arabian-campaign :is(a,button,summary,[tabindex]):focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(max-width:800px){.ar-masthead{padding-top:34px}.ar-masthead h1{font-size:clamp(50px,9vw,75px);margin:15px 0 24px}.ar-masthead nav{gap:25px;font-size:12px}.ar-film-control{bottom:14px;right:14px}.ar-intro{padding:45px 8%}.ar-intro p{font-size:27px}.ar-lookbook{padding-top:55px}.ar-drawings{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.ar-making{grid-template-columns:1fr 1fr}.ar-reel{--ar-width:270px;--ar-gap:14px}.ar-atelier{padding:48px 6% 35px}}
@media(max-width:650px){.ar-masthead>span{font-size:10px;letter-spacing:.1em}.ar-masthead h1{font-size:clamp(44px,11.5vw,66px)}.ar-masthead nav{gap:20px;font-size:12px}.ar-film-control{font-size:11px;min-height:40px;padding:8px 12px;right:12px;bottom:12px;background:color-mix(in srgb, var(--coastal-ink) 85.1%, transparent)}.ar-diptych{padding:0;grid-template-columns:1fr;gap:35px}.ar-diptych figcaption{padding-top:17px;font-size:13px}.ar-lookbook h2{font-size:44px}.ar-lookbook-heading{padding-bottom:30px}.ar-reel{--ar-width:260px;--ar-gap:12px}.ar-reel-item figcaption{font-size:13px}.ar-atelier h2{font-size:42px}.ar-drawings{grid-template-columns:1fr 1fr;gap:26px 16px}#project-view .ar-drawings img{height:260px}.ar-making{gap:25px 16px}#project-view .ar-making img{height:180px}.ar-disclosure summary{font-size:15px;min-height:68px}.ar-lookbook{padding-bottom:40px}}
@media(prefers-reduced-motion:reduce){.ar-reel-track{animation-play-state:paused}.arabian-campaign *{scroll-behavior:auto!important}}
/* Motion is off by default for this preference; the explicit play control can opt in. */
@media(prefers-reduced-motion:reduce){.arabian-campaign .ar-reel[data-static=false] .ar-reel-track{animation:ar-endless 75s linear infinite!important;animation-play-state:paused!important}.arabian-campaign .ar-reel[data-static=false][data-running=true] .ar-reel-track{animation-play-state:running!important}}

.ar-campaign-film{margin:0;width:100%;scroll-margin-top:30px}
#project-view .ar-campaign-film :is(img,video){width:100%;height:auto;max-height:none;display:block;object-fit:contain;border-radius:0;background:transparent}

/* A quiet closing portrait of the people behind the collection. */
.ar-closing{padding:70px 6% 90px;background:var(--coastal-canvas);color:var(--coastal-ink);border-top:1px solid color-mix(in srgb, var(--coastal-ink) 16.86%, transparent)}
.ar-closing figure{display:grid;grid-template-columns:minmax(0,600px) minmax(0,360px);align-items:center;justify-content:center;gap:clamp(36px,6vw,90px);max-width:1100px;margin:0 auto}
.ar-closing button{display:block;width:100%;max-width:600px;min-width:0;padding:0;border:0;background:transparent;cursor:zoom-in}
#project-view .arabian-campaign .ar-closing img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;filter:none;transform:none;border-radius:0;background:transparent}
.ar-closing figcaption{min-width:0;text-align:left}
.ar-closing h2{font-size:clamp(42px,4.7vw,68px);line-height:1.06;margin:0 0 26px}
.ar-closing h2 em{font-weight:400}
.ar-closing p{max-width:28ch;margin:0;font-size:17px;line-height:1.8}
@media(max-width:800px){.ar-closing{padding:48px 6% 60px}.ar-closing figure{grid-template-columns:1fr;gap:30px;max-width:600px}.ar-closing figcaption{max-width:440px}.ar-closing h2{font-size:clamp(40px,7vw,56px);margin-bottom:18px}.ar-closing h2 br{display:none}.ar-closing h2 em:before{content:" "}.ar-closing p{max-width:34ch;font-size:16px}}


/* hive-campaign.css */
/* Warm material, open editorial space, and one immersive service scene. */
.hive-campaign{--hc-cream:var(--coastal-canvas);--hc-wine:var(--coastal-ink);--hc-gold:var(--coastal-wash);--hc-dark:var(--coastal-ink);background:var(--hc-cream);color:var(--hc-wine);overflow:clip;border-radius:22px}
.hive-campaign h1,.hive-campaign h2,.hive-campaign h3{font-family:var(--portfolio-serif);font-weight:400;letter-spacing:-.035em;line-height:1.05}.hive-campaign p{line-height:1.7}.hive-campaign figure{margin:0;min-width:0}.hive-campaign button{cursor:pointer}.hive-campaign .hc-eyebrow{display:block;font-size:12px;line-height:1.7;letter-spacing:.07em;text-transform:uppercase}.hive-campaign .hc-small{font-size:13px;line-height:1.7;color:var(--coastal-ink)}
.hc-opening{display:grid;grid-template-columns:.9fr 1.2fr .9fr;gap:14px;background:var(--hc-dark);padding:18px;align-items:stretch}.hc-title{padding:40px 20px 30px 24px;display:flex;flex-direction:column;color:var(--hc-cream)}.hc-title .hc-eyebrow{color:var(--hc-gold)}.hc-title h1{font-size:clamp(65px,7.6vw,118px);margin:42px 0 20px}.hc-title>p{font:400 clamp(28px,3vw,42px)/1.15 var(--portfolio-serif);margin:0 0 30px}.hc-title>a{display:flex;gap:36px;align-items:center;font-size:14px;padding:15px 0;border-bottom:1px solid color-mix(in srgb, var(--coastal-wash) 40%, transparent);align-self:flex-start}.hc-title>a span{font-size:23px}.hc-status{margin-top:auto;padding-top:35px;font-size:12px;line-height:1.7;color:var(--coastal-wash)}
.hc-opening figure{position:relative;border-radius:9px;overflow:hidden}.hc-opening figure img{display:block;width:100%;height:100%;object-fit:cover}#project-view .hc-opening figcaption{position:absolute;bottom:0;left:0;right:0;padding:18px 20px;background:color-mix(in srgb, var(--coastal-ink) 85.88%, transparent);color:var(--hc-cream);font:italic 400 26px/1.2 var(--portfolio-serif)}.hc-context-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:34px 5%;background:var(--hc-dark);color:var(--hc-cream)}.hc-context-strip p{font-size:14px;margin:0}.hc-context-strip span{font-size:12px;color:var(--coastal-wash)}
.hc-intro{text-align:center;padding:100px 6% 35px}.hc-intro h2,.hc-section-heading h2{font-size:clamp(42px,4.8vw,76px);margin:25px 0;line-height:1.08}.hc-intro>p{max-width:690px;font-size:17px;margin:30px auto 0;color:var(--coastal-ink)}.hc-section-heading{text-align:center}.hc-section-heading h2{margin-bottom:45px}
.hc-experience{padding:65px 4% 80px;scroll-margin-top:30px}.hc-scene-shell{background:var(--coastal-ink);color:var(--hc-cream);border-radius:20px;overflow:hidden}.hc-scene{min-height:520px;display:grid;grid-template-columns:.75fr 1.65fr;align-items:center;gap:3%;padding:40px 30px 20px 5%}.hc-scene-copy .hc-eyebrow{color:var(--hc-gold);font-size:12px}.hc-scene-copy h3{font-size:clamp(34px,3.5vw,54px);margin:28px 0 25px}.hc-scene-copy>p{font-size:16px;color:var(--coastal-canvas);max-width:350px}.hc-concept-note{display:block;font-size:12px;color:var(--coastal-wash);margin-top:30px}.hc-scene figure{align-self:center}.hc-scene figure img{width:100%;height:auto;max-height:540px;display:block;object-fit:contain;border-radius:0;background:transparent}.hc-scene-enlarge{display:block;background:none;border:0;font-size:13px;color:var(--hc-cream);padding:14px 0 0;margin-left:auto}.hc-scene-nav{display:flex;justify-content:center;gap:12px;padding:22px 25px 27px}.hc-scene-nav button{background:transparent;border:1px solid color-mix(in srgb, var(--coastal-wash) 33.33%, transparent);border-radius:30px;padding:13px 20px;display:flex;gap:12px;align-items:center;color:var(--coastal-canvas);font-size:14px;min-height:46px}.hc-scene-nav button>span{font-size:12px;color:inherit;opacity:.6}.hc-scene-nav button[aria-selected=true]{background:var(--hc-cream);border-color:var(--hc-cream);color:var(--hc-wine)}.hc-scene-foot{text-align:center;margin:18px 0 0}
.hc-research{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:4%;padding:75px 6%;background:var(--coastal-wash);align-items:center}.hc-research-copy h2{font-size:clamp(38px,4.1vw,62px);margin:24px 0}.hc-research-copy>p{font-size:16px;color:var(--coastal-ink);max-width:390px}.hc-research-copy .hc-small{font-size:13px;margin-top:30px}.hc-research button,.hc-evidence button{display:block;width:100%;background:transparent;border:0;padding:0;cursor:zoom-in}.hc-research img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;background:none;border-radius:0}.hc-research figcaption{font-size:12px;line-height:1.7;padding-top:16px;color:var(--coastal-ink)}
.hc-framework{padding:85px 6% 70px}.hc-phase-map{position:relative;display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;border-top:1px solid color-mix(in srgb, var(--coastal-accent) 40%, transparent)}.hc-phase-map button{border:0;background:none;text-align:left;position:relative;padding:32px 18px 27px 0;border-bottom:2px solid transparent;color:var(--coastal-ink)}.hc-phase-map button:before{content:'';position:absolute;top:-7px;left:0;width:13px;height:13px;border-radius:50%;background:var(--coastal-accent);box-shadow:0 0 0 7px var(--hc-cream)}.hc-phase-map button[aria-pressed=true]{border-color:var(--hc-wine);color:var(--hc-wine)}.hc-phase-map button[aria-pressed=true]:before{background:var(--hc-wine)}.hc-phase-map button>span{display:block;font-size:13px}.hc-phase-map strong{display:block;font:400 clamp(31px,3.5vw,50px)/1.2 var(--portfolio-serif);margin-top:14px}.hc-phase-map i{position:absolute;right:25px;bottom:32px;font-style:normal;font-size:24px}.hc-phase-detail{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-bottom:1px solid color-mix(in srgb, var(--coastal-accent) 26.67%, transparent);padding:36px 0;min-height:205px}.hc-phase-detail p{font-size:17px;color:var(--coastal-ink);max-width:520px}.hc-phase-detail .hc-eyebrow{color:var(--coastal-ink)}.hc-source{background:transparent;padding:8px 0;border:0;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 40%, transparent);font-size:14px;color:var(--hc-wine);min-height:44px}.hc-framework>.hc-small{margin:20px 0 0}
.hc-outcomes{padding:75px 5% 55px;background:var(--coastal-canvas)}.hc-evidence{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.hc-evidence img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:contain;max-height:none;border-radius:0;background:transparent}.hc-evidence figcaption{padding:20px 0}.hc-evidence figcaption>span{font-size:12px;color:var(--coastal-ink)}.hc-evidence h3{font-size:31px;line-height:1.12;margin:12px 0}.hc-credits{border-top:1px solid color-mix(in srgb, var(--coastal-ink) 26.67%, transparent);margin-top:35px;padding-top:5px}.hc-credits summary{list-style:none;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:20px 0;cursor:pointer;font-size:14px;min-height:64px}.hc-credits summary::-webkit-details-marker{display:none}.hc-credits summary>span{font-size:24px}.hc-credits>div{max-width:880px;font-size:14px;color:var(--coastal-ink)}.hive-campaign :is(a,button,summary):focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(max-width:1000px){.hc-title{padding:25px 10px}.hc-title h1{font-size:67px}.hc-title>p{font-size:28px}.hc-opening{gap:10px;padding:12px}#project-view .hc-opening figcaption{font-size:23px;padding:15px}.hc-scene{grid-template-columns:.75fr 1.25fr;min-height:430px;padding:28px 24px;gap:28px}.hc-scene-nav{gap:9px}.hc-scene-nav button{padding:12px 14px}.hc-research{grid-template-columns:1fr 1fr;gap:28px}.hc-research-copy{grid-column:1/-1;max-width:700px}.hc-research-copy>p{max-width:650px}.hc-phase-map i{right:10px;font-size:20px}.hc-evidence{gap:18px}.hc-evidence h3{font-size:26px}}
@media(max-width:700px){.hive-campaign{border-radius:16px}.hc-opening{grid-template-columns:1fr 1fr;gap:10px;padding:12px}.hc-title{grid-column:1/-1;padding:25px 16px 30px}.hc-title h1{font-size:clamp(58px,17vw,72px);white-space:nowrap;margin:22px 0 18px}.hc-title>p{font-size:29px}.hc-title>a{margin-top:5px}.hc-status{padding-top:25px}.hc-opening figure{border-radius:6px}.hc-opening figure img{height:auto;aspect-ratio:2/3;object-fit:contain}#project-view .hc-opening figcaption{position:static;font-size:20px;padding:17px 6px 10px;background:transparent;min-height:75px}.hc-context-strip{grid-template-columns:1fr;gap:20px;padding:25px 8% 35px}.hc-context-strip p{font-size:14px}.hc-intro{padding:55px 7% 10px}.hc-intro h2,.hc-section-heading h2{font-size:40px}.hc-intro>p{font-size:16px;text-align:left}.hc-experience{padding:45px 5%}.hc-scene-shell{border-radius:14px}.hc-scene{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:28px 20px 10px;gap:25px}.hc-scene-copy h3{font-size:36px;max-width:280px;margin:20px 0}.hc-scene-copy p{max-width:none;font-size:16px}.hc-concept-note{margin-top:20px}.hc-scene figure{width:100%}.hc-scene-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:17px 15px 24px}.hc-scene-nav button{justify-content:center;font-size:13px;padding:10px 8px;gap:8px;min-height:46px}.hc-research{padding:40px 7%;gap:24px 16px}.hc-research-copy h2{font-size:40px}.hc-research figcaption{font-size:12px}.hc-framework{padding:50px 7% 40px}.hc-phase-map{margin-top:40px;grid-template-columns:1fr;border-top:0;border-left:1px solid color-mix(in srgb, var(--coastal-accent) 33.33%, transparent);margin-left:7px}.hc-phase-map button{padding:18px 20px 18px 25px;border-bottom:0}.hc-phase-map button:before{left:-7px;top:26px}.hc-phase-map strong{font-size:37px;margin-top:7px}.hc-phase-map button[aria-pressed=true]{background:color-mix(in srgb, var(--coastal-wash) 40%, transparent)}.hc-phase-map i{right:20px;bottom:28px}.hc-phase-detail{display:block;min-height:0;padding:20px 0}.hc-phase-detail>div+div{margin-top:26px}.hc-phase-detail p{font-size:16px}.hc-outcomes{padding:45px 7% 35px}.hc-evidence{grid-template-columns:1fr;gap:28px}.hc-evidence img{aspect-ratio:auto}.hc-evidence h3{font-size:32px}.hc-evidence figcaption{padding:17px 0 0}.hc-credits{margin-top:35px}}
@media(prefers-reduced-motion:reduce){.hive-campaign *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}


/* hand-campaign.css */
/* A fashion notebook opens into an editorial. Full images, no nested picture mats. */
#project-view.case-hand-sketches .hand-campaign{--ih-paper:var(--coastal-canvas);--ih-ink:var(--coastal-ink);--ih-copy:var(--coastal-ink);--ih-rule:color-mix(in srgb, var(--coastal-ink) 18.82%, transparent);background:var(--ih-paper);color:var(--ih-ink);border-radius:0;overflow:visible;isolation:auto}
.hand-campaign :is(h1,h2,h3){font-family:var(--portfolio-serif);font-weight:400;letter-spacing:-.035em}
.hand-campaign p{font-size:16px;line-height:1.8}
.hand-campaign .ih-eyebrow{display:block;font-size:13px;line-height:1.65;letter-spacing:.075em;text-transform:uppercase}
.ih-title{padding:48px 5% 42px}
.ih-title>div{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-top:28px}
.ih-title h1{font-size:clamp(70px,10.8vw,172px);line-height:.95;white-space:nowrap}
.ih-title>div>p{color:var(--ih-copy);max-width:265px;font-size:16px;line-height:1.65;padding-bottom:6px}
.hand-campaign .ih-index{position:sticky;top:0;z-index:8;display:flex;gap:0;margin:0;padding:0 5%;justify-content:space-between;background:var(--ih-paper);border-block:1px solid var(--ih-rule);font-size:14px}
.ih-index a{display:flex;align-items:center;gap:16px;padding:19px 12px 17px 0;min-height:58px;border-bottom:2px solid transparent;color:var(--ih-copy);transition:color .3s,border-color .3s}
.ih-index a>span{font-size:12px}.ih-index a:hover,.ih-index a[aria-current]{color:var(--ih-ink);border-bottom-color:var(--ih-ink)}
.ih-chapter{scroll-margin-top:75px}
.ih-opening{display:grid;grid-template-columns:.85fr 1.15fr;align-items:start;padding:50px 5% 80px;gap:5%}
.ih-opening-copy{padding-top:24px;position:sticky;top:95px}
.ih-opening h2{font-size:clamp(48px,5.7vw,88px);line-height:1.02;margin:22px 0 26px}
.ih-opening .ih-lead{font:400 clamp(23px,2.2vw,32px)/1.35 var(--portfolio-serif);color:var(--ih-ink);margin-bottom:17px}
.ih-opening-copy>div>p:not(.ih-lead){max-width:470px;color:var(--ih-copy)}
.ih-details{padding:24px 0 0;margin:25px 0 32px;border-top:1px solid var(--ih-rule);display:grid;grid-template-columns:1fr auto;gap:12px 20px;font-size:13px;line-height:1.6;color:var(--ih-copy)}
.ih-details>span{grid-column:1/-1;font-size:12px;text-transform:uppercase;letter-spacing:.06em}
.ih-details ul{list-style:none;margin:0;padding:0}.ih-details li+li{margin-top:5px}
.ih-colour-notes{display:flex;align-items:center;gap:6px}.ih-colour-notes i{display:block;width:19px;height:45px}
.ih-original,.ih-photograph{margin:0;min-width:0}
.ih-original button{display:block;padding:0;width:100%;background:transparent;border-radius:0}
#project-view .hand-campaign .ih-original img{width:100%;height:auto;aspect-ratio:3/2;max-height:none;object-fit:contain;border-radius:0;background:transparent;transform:none;filter:none}
#project-view .hand-campaign .ih-photograph img{display:block;width:100%;height:auto;aspect-ratio:2/3;max-height:none;object-fit:contain;object-position:center;border-radius:0;background:transparent;filter:none;transform:none}
.hand-campaign :is(.ih-original,.ih-photograph) figcaption{display:flex;justify-content:space-between;gap:20px;font-size:12px;line-height:1.65;margin:14px 0 0;color:var(--ih-copy)}
.ih-original figcaption>span:last-child{white-space:nowrap;color:var(--ih-ink)}
.ih-interlude{display:grid;grid-template-columns:1fr auto;align-items:center;padding:45px 5%;background:var(--coastal-ink);color:var(--coastal-canvas);gap:18px 25px}
.ih-interlude>span{grid-column:1/-1;font-size:13px;letter-spacing:.03em}
.ih-interlude>p{font:400 clamp(33px,4.5vw,70px)/1.12 var(--portfolio-serif);letter-spacing:-.03em}
.ih-interlude>a{font-size:36px;min-height:48px;min-width:48px;text-align:center}
.ih-study{padding:75px 5% 80px;border-bottom:1px solid var(--ih-rule)}
.ih-study-heading{display:grid;grid-template-columns:auto 1fr .55fr;align-items:end;gap:4%;margin-bottom:38px}
.ih-number{font:italic 400 clamp(65px,10vw,150px)/.85 var(--portfolio-serif);color:var(--coastal-accent);align-self:start}
.ih-study-heading h2{font-size:clamp(41px,5vw,78px);line-height:1.05;margin-top:19px}
.ih-study-heading>p{max-width:250px;color:var(--ih-copy);padding-bottom:4px}
.ih-study-layout{display:grid;grid-template-columns:1.18fr .82fr;gap:7%;align-items:start}
.ih-study-side{position:sticky;top:100px;padding-top:70px}
.ih-study-note>p{font:400 clamp(24px,2.5vw,36px)/1.4 var(--portfolio-serif);color:var(--ih-ink)}
.ih-study-side .ih-original{margin-top:50px}
.ih-study-butterfly .ih-study-layout{grid-template-columns:.82fr 1.18fr}
.ih-study-butterfly .ih-photograph{grid-column:2;grid-row:1}
.ih-study-butterfly .ih-study-side{grid-column:1;grid-row:1}
.ih-study-bird{background:var(--coastal-wash);border-bottom:0}
.ih-practice{padding:80px 5%;background:var(--coastal-ink);color:var(--coastal-canvas);scroll-margin-top:80px}
.ih-practice-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:end;margin:28px 0 55px}
.ih-practice-heading h2{font-size:clamp(42px,5.8vw,88px);line-height:1.04}
.ih-practice-heading>p{color:var(--coastal-wash);max-width:430px}
.ih-practice ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;list-style:none;margin:0;gap:5%}
.ih-practice li{border-top:1px solid color-mix(in srgb, var(--coastal-wash) 33.33%, transparent);padding-top:22px}
.ih-practice li>span{font-size:13px;color:var(--coastal-wash)}.ih-practice h3{font-size:30px;line-height:1.18;margin:17px 0}.ih-practice li>p{color:var(--coastal-wash);max-width:330px}
.hand-campaign .ih-colophon{border:0;display:grid;grid-template-columns:1fr 1.4fr;gap:10%;padding:35px 5%;color:var(--ih-copy);letter-spacing:0;text-transform:none}
.ih-colophon p{font-size:13px;line-height:1.75}.ih-colophon strong{font-weight:500;color:var(--ih-ink)}
.hand-campaign :is(button,a):focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(min-width:1600px){.ih-opening-copy{padding-top:65px}.ih-opening-copy .ih-original{max-width:550px}}
@media(max-width:1100px){.ih-title>div{display:block}.ih-title>div>p{margin-top:20px;max-width:none}.ih-title>div>p br{display:none}.ih-opening-copy{position:static;padding-top:0}.ih-study-side{position:static;padding-top:20px}.ih-study-heading{grid-template-columns:auto 1fr}.ih-study-heading>p{grid-column:2;max-width:440px}.ih-opening{gap:4%;grid-template-columns:1fr 1fr}.ih-opening h2{font-size:50px}.ih-study-layout{gap:5%}.ih-details{margin:22px 0}.ih-study-side .ih-original{margin-top:30px}}
@media(max-width:760px){
 .ih-title{padding:30px 6%}.hand-campaign .ih-eyebrow{font-size:12px}.ih-title>div{margin-top:22px}.ih-title h1{font-size:clamp(48px,11.7vw,84px);white-space:normal;line-height:1.03}.ih-title h1 em{white-space:nowrap}.ih-title>div>p{font-size:16px;margin-top:20px}
 .hand-campaign .ih-index{padding:0 6%;gap:9px;display:grid;align-items:stretch;grid-template-columns:repeat(4,minmax(0,1fr))}.ih-index a{display:block;font-size:13px;line-height:1.3;white-space:normal;min-height:70px;padding:12px 0 10px}.ih-index a>span{display:block;font-size:12px;margin-bottom:4px}
 .ih-opening{display:flex;flex-direction:column;padding:25px 6% 45px;gap:30px}.ih-opening>.ih-photograph{order:-1;width:100%}.ih-opening-copy{width:100%}.ih-opening h2{font-size:48px;margin:18px 0 20px}.ih-opening .ih-lead{font-size:25px}.ih-opening-copy .ih-original{margin-top:30px}
 .hand-campaign :is(.ih-original,.ih-photograph) figcaption{font-size:12px;gap:15px;line-height:1.6}.ih-photograph figcaption>span:last-child{text-align:right;max-width:140px}
 .ih-interlude{padding:32px 6%}.ih-interlude>p{font-size:37px}.ih-interlude>a{font-size:29px}
 .ih-study{padding:45px 6% 50px}.ih-study-heading{gap:20px;grid-template-columns:48px 1fr;margin-bottom:28px}.ih-number{font-size:56px;line-height:1}.ih-study-heading h2{font-size:37px;line-height:1.08;margin-top:14px}.ih-study-heading>p{font-size:16px;grid-column:1/-1;padding:0;max-width:none}
 .ih-study-layout,.ih-study-butterfly .ih-study-layout{display:flex;flex-direction:column;gap:32px}.ih-study-layout>.ih-photograph{width:100%}.ih-study-side{width:100%;padding:0;position:static}.ih-study-note>p{font-size:26px}.ih-details{font-size:14px;padding-top:19px}.ih-study-side .ih-original{margin-top:30px}
 .ih-practice{padding:45px 6%}.ih-practice-heading{display:block;margin:22px 0 32px}.ih-practice-heading h2{font-size:45px}.ih-practice-heading>p{margin-top:25px}.ih-practice ol{grid-template-columns:1fr;gap:28px}.ih-practice h3{font-size:29px;margin:14px 0}.ih-practice li>p{max-width:none}
 .hand-campaign .ih-colophon{display:block;padding:30px 6%}.ih-colophon p+p{margin-top:22px}
}
@media(prefers-reduced-motion:reduce){.ih-index a{transition:none}.ih-opening-copy,.ih-study-side{position:static}}

/* The made work leads; the editorial interpretations follow as a separate chapter. */
.hand-campaign :is(.ih-runway-film,.ih-section-heading){margin:0}
.ih-runway{display:grid;grid-template-columns:1.35fr .65fr;gap:5%;padding:42px 5% 65px;align-items:center}
.ih-runway-film{min-width:0}
#project-view .ih-runway-film video{display:block;width:100%;height:auto;aspect-ratio:1080/850;object-fit:contain;background:var(--coastal-ink);border-radius:0}
.ih-runway-film figcaption{display:flex;justify-content:space-between;gap:20px;margin-top:15px;color:var(--ih-copy);font-size:12px;line-height:1.6}
.ih-runway-copy h2{font-size:clamp(43px,5.4vw,80px);line-height:1.02;margin:24px 0}
.ih-runway-copy>p{color:var(--ih-copy);max-width:360px}
.ih-runway-facts{display:flex;gap:30px;align-items:start;margin:28px 0;border-top:1px solid var(--ih-rule);padding-top:22px}
.ih-runway-facts p{font-size:13px;line-height:1.7;color:var(--ih-copy)}
.ih-runway-facts strong{display:block;font-weight:400;color:var(--ih-ink);font-size:16px;line-height:1.4;margin-bottom:8px}
.ih-runway-facts p:first-child strong{font:italic 44px/1 var(--portfolio-serif)}
.ih-text-link{display:inline-flex;gap:25px;border-bottom:1px solid var(--ih-rule);padding:10px 0;font-size:14px;line-height:1.6}
.ih-made{padding:60px 5% 70px;background:var(--coastal-wash)}
.ih-section-heading h2{font-size:clamp(42px,5.5vw,84px);line-height:1.07;margin:20px 0 0;max-width:980px}
.ih-section-heading>p{color:var(--ih-copy);margin-top:22px}
.ih-made-look{display:grid;grid-template-columns:1.5fr .5fr;align-items:center;gap:5%;padding-top:55px;scroll-margin-top:90px}
.ih-made-look h3{font-size:clamp(34px,3.8vw,56px);line-height:1.08;margin:20px 0}
.ih-made-look>div>p{color:var(--ih-copy);font-size:16px}
.ih-made-label{display:block;font-size:12px;line-height:1.6;text-transform:uppercase;letter-spacing:.065em;margin:24px 0 18px}
.ih-look-rule{height:3px;width:90px;background:var(--look-ink)}
.ih-made-purple{grid-template-columns:.5fr 1.5fr;padding-top:70px}
.ih-made-purple .ih-original{grid-column:2;grid-row:1}.ih-made-purple>div{grid-column:1;grid-row:1}
.ih-process{margin-top:65px;border-top:1px solid var(--ih-rule);padding-top:35px}
.ih-process-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:25px}
.ih-process-heading p{font:400 28px/1.3 var(--portfolio-serif)}
.ih-process-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.hand-campaign .ih-process-path button{border:0;border-top:1px solid var(--ih-rule);border-radius:0;background:none;color:var(--ih-copy);padding:22px 0;text-align:left;font-size:20px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}
.ih-process-path button>span{grid-column:1/-1;font-size:12px}.ih-process-path button>i{font-size:24px;font-style:normal;padding-right:25px}
.hand-campaign .ih-process-path button[aria-selected=true]{border-top:3px solid var(--ih-ink);color:var(--ih-ink);padding-top:20px}
.ih-process-panel{display:grid;grid-template-columns:1fr 1.2fr;gap:8%;border-top:1px solid var(--ih-rule);padding:30px 0 0;min-height:145px}
.ih-process-panel h3{font-size:36px;line-height:1.15}.ih-process-panel p{color:var(--ih-copy);max-width:620px}
.ih-interpretations{padding:0}
.ih-interpretations :is(.ih-opening,.ih-study){scroll-margin-top:90px}
.ih-notebook{padding:65px 5% 75px}
.ih-notebook-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:40px;border-bottom:1px solid var(--ih-rule)}
.hand-campaign .ih-notebook-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;display:flex;align-items:center;gap:20px;color:var(--ih-copy);padding:19px 0;text-align:left;font-size:16px}
.ih-notebook-tabs button>span{font-size:12px}.hand-campaign .ih-notebook-tabs button[aria-selected=true]{border-color:var(--ih-ink);color:var(--ih-ink)}
.ih-notebook-panel[hidden]{display:none!important}
.ih-notebook-caption{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start;padding:35px 0}
.ih-notebook-caption h3{font-size:38px;line-height:1.15;max-width:440px}.ih-notebook-caption p{color:var(--ih-copy)}
.ih-notebook-panel .ih-original{max-width:1150px;margin-inline:auto}
.ih-notebook-panel .ih-details{display:flex;justify-content:space-between;align-items:center;gap:25px;max-width:1150px;margin:25px auto 0}
.ih-notebook-panel .ih-details ul{display:flex;gap:30px}.ih-notebook-panel .ih-details li+li{margin-top:0}
.ih-notebook-panel .ih-colour-notes i{height:30px}
@media(max-width:1100px){.ih-runway{grid-template-columns:1.15fr .85fr;gap:4%;align-items:start}.ih-runway-copy h2{font-size:48px}.ih-runway-facts{gap:20px}.ih-made-look{grid-template-columns:1.35fr .65fr;gap:4%}.ih-made-purple{grid-template-columns:.65fr 1.35fr}.ih-made-look h3{font-size:38px}.ih-notebook-panel .ih-details ul{gap:18px}}
@media(max-width:760px){
 .ih-runway{display:flex;flex-direction:column;gap:32px;padding:25px 6% 40px}.ih-runway-film{width:100%}.ih-runway-film figcaption{gap:12px}.ih-runway-film figcaption>span:last-child{text-align:right;max-width:120px}.ih-runway-copy h2{font-size:51px;margin:20px 0}.ih-runway-copy>p{max-width:none}.ih-runway-facts{gap:35px;margin:22px 0 15px}
 .ih-made{padding:40px 6% 45px}.ih-section-heading h2{font-size:39px;line-height:1.08}.ih-made-look,.ih-made-purple{display:flex;flex-direction:column;gap:28px;padding-top:35px;align-items:stretch}.ih-made-look>div{order:-1}.ih-made-look h3{font-size:35px;margin:14px 0}.ih-made-look h3 br{display:none}.ih-made-label{margin:17px 0 13px}.ih-look-rule{width:70px}.ih-made-purple{padding-top:45px}
 .ih-process{margin-top:40px;padding-top:27px}.ih-process-heading{display:block}.ih-process-heading p{font-size:26px;margin-top:12px}.hand-campaign .ih-process-path button{font-size:16px;padding:18px 0;gap:12px}.ih-process-path button>i{font-size:17px;padding-right:12px}.hand-campaign .ih-process-path button[aria-selected=true]{padding-top:16px}.ih-process-panel{display:block;padding-top:24px;min-height:250px}.ih-process-panel h3{font-size:29px}.ih-process-panel p{margin-top:15px}
 .ih-notebook{padding:42px 6%}.ih-notebook-tabs{margin-top:28px}.hand-campaign .ih-notebook-tabs button{display:block;font-size:15px;line-height:1.5;padding:15px 8px 13px 0}.ih-notebook-tabs button>span{display:block;margin-bottom:4px}.ih-notebook-caption{display:block;padding:25px 0}.ih-notebook-caption h3{font-size:31px}.ih-notebook-caption p{margin-top:15px}.ih-notebook-panel .ih-details{display:grid;grid-template-columns:1fr auto;gap:12px}.ih-notebook-panel .ih-details ul{display:block}.ih-notebook-panel .ih-details li+li{margin-top:5px}
}

/* Preserve the archival recording at a comfortable viewing size. */
@media(min-width:1101px){.hand-campaign .ih-runway{grid-template-columns:minmax(0,720px) minmax(250px,380px);justify-content:center;gap:clamp(36px,5vw,80px)}}


/* saathi-campaign.css */
/* Saathi only: open editorial layouts, tactile devices and gentle motion. */
html:has(.case-elderly-care:not([hidden])){background:var(--coastal-canvas);scrollbar-color:var(--coastal-accent) var(--coastal-canvas)}
body:has(.case-elderly-care:not([hidden])){background:var(--coastal-canvas);color:var(--coastal-ink);--wine:var(--coastal-ink);--paper:var(--coastal-canvas);--muted:var(--coastal-ink);color-scheme:light}
body:has(.case-elderly-care:not([hidden])) .site-header{color:var(--coastal-ink)}body:has(.case-elderly-care:not([hidden])) .reading-progress{background:var(--coastal-accent)}
#project-view.case-elderly-care{--case-accent:var(--coastal-ink);background:var(--coastal-canvas);color:var(--coastal-ink)}
#project-view .stc-project-nav{display:flex;align-items:center;justify-content:space-between;padding:20px 2% 28px;font-size:14px;gap:20px;color:var(--coastal-ink)}
.stc-campaign{--stc-ink:var(--coastal-ink);--stc-muted:var(--coastal-ink);--stc-blue:var(--coastal-wash);--stc-paper:var(--coastal-canvas);color:var(--stc-ink);overflow:clip;border-radius:0!important}
.stc-campaign *{box-sizing:border-box}.stc-campaign h1,.stc-campaign h2,.stc-campaign h3,.stc-campaign h4,.stc-campaign p{margin:0}.stc-campaign h1,.stc-campaign h2,.stc-campaign h3{font-family:var(--portfolio-serif);font-weight:400;letter-spacing:-.045em;line-height:1.08}.stc-campaign h2{font-size:clamp(42px,5.5vw,82px)}.stc-campaign p{font-size:17px;line-height:1.65}.stc-campaign button{font:inherit;cursor:pointer;color:inherit}.stc-campaign svg{width:24px;height:24px;flex:none;vertical-align:middle}.stc-campaign :is(button,a,summary):focus-visible{outline:2px solid currentColor;outline-offset:4px}.stc-eyebrow{display:block;font-size:13px;line-height:1.5;text-transform:uppercase;letter-spacing:.1em}.stc-campaign em{font-weight:400}
.stc-hero-heading{display:flex;position:relative;align-items:end;justify-content:space-between;padding:38px 5% 48px}.stc-hero-heading>.stc-eyebrow{position:absolute;top:0;left:5%}.stc-hero-heading h1{font-size:clamp(110px,15vw,230px);letter-spacing:-.075em;line-height:.95}.stc-hero-heading h1>span{color:var(--coastal-accent)}.stc-hero-heading>div{padding-bottom:12px}.stc-hero-heading p{font-size:25px;line-height:1.4}.stc-hero-heading>div>span{display:block;font-size:13px;margin-top:20px}
.stc-hero-stage{height:740px;position:relative;isolation:isolate;overflow:hidden;background:var(--coastal-ink);color:var(--coastal-canvas);--stc-drift:0px}.stc-hero-statement{position:absolute;left:6%;top:27%;width:39%;z-index:2}.stc-hero-statement h2{font-size:clamp(42px,4.4vw,68px);margin:25px 0 37px}.stc-hero-statement h2 em{color:var(--coastal-accent)}.stc-hero-statement>a{display:inline-flex;align-items:center;gap:24px;padding:10px 0;border-bottom:1px solid color-mix(in srgb, var(--coastal-canvas) 40%, transparent);font-size:14px;min-height:44px}.stc-hero-foot{position:absolute;left:6%;bottom:35px;font-size:12px;color:var(--coastal-accent)}.stc-hero-devices{position:absolute;inset:0 0 0 44%;perspective:1300px}.stc-device-front,.stc-device-back{position:absolute;top:50%;width:310px;transition:transform .15s linear}.stc-device-front{left:7%;transform:translateY(calc(-45% + var(--stc-drift))) rotate(-9deg);z-index:1}.stc-device-back{left:40%;transform:translateY(calc(-55% - var(--stc-drift))) rotate(10deg);opacity:.96}.stc-device-back .stc-phone{background:#8ba3ac}.stc-device-back .stc-phone-glass{background:var(--coastal-wash)}
.stc-phone{width:100%;background:linear-gradient(130deg,#b9cbd1,#243b49 22%,#0b1f2a 77%,#8fabb7);padding:8px;border-radius:45px;box-shadow:0 35px 75px #041e3b33,0 2px 3px #ffffff55 inset;border:1px solid #668796;color:var(--coastal-ink);text-align:left}.stc-phone-glass{border-radius:37px;background:var(--coastal-canvas);overflow:hidden;position:relative;min-height:650px;display:flex;flex-direction:column;border:1px solid var(--coastal-ink)}.stc-status{height:43px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;font-size:10px;font-weight:600;color:var(--coastal-ink);position:relative}.stc-status i{position:absolute;width:80px;height:19px;border-radius:20px;background:#132b38;left:50%;top:9px;transform:translateX(-50%)}.stc-home-indicator{height:4px;width:90px;background:var(--coastal-ink);border-radius:8px;margin:8px auto 10px;flex:none}.stc-app-body{padding:8px 20px 12px;flex:1}.stc-app-brand{display:flex;align-items:center;gap:6px;font-size:24px;letter-spacing:-.06em;font-family:var(--portfolio-serif);margin-bottom:22px;color:var(--coastal-ink)}.stc-app-brand>svg{width:21px;height:21px}.stc-greeting>span{font-size:12px;color:var(--coastal-ink);display:block;margin-bottom:10px}.stc-campaign .stc-greeting h3{font-family:inherit;font-size:27px;font-weight:500;line-height:1.2;letter-spacing:-.035em}.stc-campaign .stc-greeting p{font-size:12px;margin-top:11px;color:var(--coastal-ink);line-height:1.5}.stc-reminder{background:var(--coastal-ink);color:var(--coastal-canvas);border-radius:17px;padding:17px 15px;margin:21px 0}.stc-reminder>strong{font-size:16px;font-weight:500;display:block;margin:9px 0 15px}.stc-reminder>span:last-child{font-size:12px;display:flex;align-items:center;justify-content:space-between}.stc-app-overline{font-size:10px;letter-spacing:.06em;line-height:1.5;display:block}.stc-campaign .stc-app-heading{font-family:inherit;font-size:14px;font-weight:500;margin:20px 0 13px;line-height:1.4}.stc-home-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stc-home-grid>div{border:1px solid color-mix(in srgb, var(--coastal-ink) 10.98%, transparent);border-radius:13px;min-height:65px;padding:10px 10px;display:flex;align-items:center;gap:8px;background:var(--coastal-wash);font-size:11px}.stc-home-grid svg{width:20px;height:20px}.stc-water-line{display:flex;align-items:center;gap:8px;margin:16px 0 3px;font-size:10px;color:var(--coastal-ink)}.stc-water-line svg{width:17px;height:17px}.stc-app-nav{margin-top:auto;display:flex;justify-content:space-around;gap:10px;padding:9px 12px 2px;border-top:1px solid color-mix(in srgb, var(--coastal-ink) 9.41%, transparent);font-size:9px;color:var(--coastal-ink)}.stc-app-nav>span{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:54px}.stc-app-nav>span>svg{width:20px;height:20px}.stc-app-nav .is-active{color:var(--coastal-ink)}.stc-health-card{margin-top:22px;background:var(--coastal-canvas);border-radius:20px;padding:18px;border:1px solid color-mix(in srgb, var(--coastal-ink) 9.41%, transparent)}.stc-health-card>svg{width:29px;height:29px;margin-bottom:12px;display:block}.stc-health-card>span{font-size:13px;display:block}.stc-health-card>strong{font-size:47px;font-weight:400;display:block;margin:8px 0;letter-spacing:-.05em}.stc-health-card>strong small{font-size:14px;letter-spacing:0;color:var(--coastal-ink)}.stc-health-card>small{font-size:10px;color:var(--coastal-ink)}.stc-chart{height:74px;display:flex;align-items:center;gap:7px;margin-bottom:14px}.stc-chart i{background:var(--coastal-accent);flex:1;border-radius:4px;min-width:0}.stc-health-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 10.2%, transparent);padding:17px 0}.stc-health-row>svg{width:22px;height:22px}.stc-health-row>div{flex:1;min-width:0}.stc-health-row strong{display:block;font-weight:500;font-size:13px}.stc-health-row>div>span{display:block;margin-top:5px;font-size:10px;color:var(--coastal-ink)}
.stc-meta{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:26px 5%;font-size:12px;border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 14.51%, transparent);color:var(--coastal-ink)}.stc-intro{padding:105px 7%;display:grid;grid-template-columns:1.4fr 1fr;gap:28px 7%;align-items:end}.stc-intro>.stc-eyebrow{grid-column:1/-1}.stc-intro h2{font-size:clamp(40px,4.6vw,70px)}.stc-intro>p{max-width:435px;color:var(--coastal-ink)}.stc-human{position:relative;isolation:isolate;min-height:650px;overflow:hidden;background:var(--coastal-wash)}.stc-human>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.stc-human:after{position:absolute;content:'';inset:0;z-index:0;background:linear-gradient(90deg,color-mix(in srgb, var(--coastal-canvas) 90.2%, transparent) 0%,color-mix(in srgb, var(--coastal-canvas) 54.9%, transparent) 26%,transparent 65%)}.stc-human>div{position:relative;z-index:1;padding:100px 6%;max-width:600px}.stc-human h2{font-size:clamp(52px,5.8vw,90px);margin:27px 0}.stc-human p{color:var(--coastal-ink)}
.stc-experience{padding:90px 6% 0;background:var(--coastal-canvas)}.stc-experience-heading>h2{margin:22px 0}.stc-experience-heading>p{color:var(--coastal-ink)}.stc-scroll-story{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start;position:relative}.stc-story-step{min-height:84vh;min-height:84svh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:90px 0;opacity:.45;transition:opacity .6s}.stc-story-step.is-active{opacity:1}.stc-story-step h3{font-size:clamp(37px,3.5vw,56px);margin:25px 0}.stc-story-step>p{color:var(--coastal-ink);max-width:370px}.stc-source-link{display:inline-flex;align-items:center;gap:25px;font-size:14px!important;text-align:left;background:transparent;border:0;border-bottom:1px solid currentColor;padding:13px 0;min-height:44px;margin-top:24px}.stc-source-link svg{width:22px;height:22px}.stc-device-sticky{position:sticky;top:26px;padding:28px 0;display:flex;flex-direction:column;align-items:center;min-width:0}.stc-device-label{display:flex;justify-content:space-between;width:100%;max-width:365px;font-size:12px;color:var(--coastal-ink);margin-bottom:17px;gap:15px}.stc-interactive-device{width:330px;max-width:100%}.stc-interactive-device .stc-phone-glass{min-height:640px}.stc-interactive-device .stc-app-body{padding:9px 20px 15px}.stc-interactive-device .stc-app-brand{margin-bottom:22px}.stc-interactive-device #stc-live-screen{display:flex;flex-direction:column;flex:1}.stc-screen-tabs{display:flex;align-items:center;justify-content:center;gap:4px;margin-top:23px}.stc-screen-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:11px 14px;font-size:13px}.stc-screen-tabs button[aria-selected=true]{border-bottom-color:var(--coastal-ink)}.stc-day-strip{display:flex;gap:4px;justify-content:space-between;margin:20px 0}.stc-day-strip>span{font-size:10px;padding:8px 8px;text-align:center;line-height:1.5}.stc-day-strip b{display:block;font-size:12px;font-weight:500;margin-top:4px}.stc-day-strip .is-active{background:var(--coastal-ink);border-radius:14px;color:var(--coastal-canvas)}.stc-routine-card{background:var(--coastal-wash);border-radius:22px;padding:19px 16px}.stc-routine-card>svg{margin-bottom:18px;width:31px;height:31px}.stc-routine-card h4{font-size:20px;font-weight:500;line-height:1.25;letter-spacing:-.04em;margin:11px 0}.stc-campaign .stc-routine-card p{font-size:12px;line-height:1.5;margin-bottom:19px}.stc-routine-card>button,.stc-connect-card button:first-child{border:0;background:var(--coastal-ink);color:var(--coastal-canvas);border-radius:12px;min-height:45px;padding:11px 14px;width:100%;font-size:14px;display:flex;align-items:center;justify-content:center;gap:8px}.stc-routine-card>button>svg{width:18px;height:18px}.stc-campaign .stc-app-feedback{display:block;font-size:11px;line-height:1.5;min-height:33px;margin-top:12px;color:var(--coastal-ink)}.stc-campaign .stc-app-fine{font-size:10px;line-height:1.5;color:var(--coastal-ink);margin-top:17px}.stc-mood-options{display:flex;gap:9px;margin:25px 0}.stc-mood-options button{flex:1;display:flex;flex-direction:column;align-items:center;gap:9px;font-size:12px;padding:13px 5px;border:1px solid color-mix(in srgb, var(--coastal-ink) 20%, transparent);border-radius:17px;background:transparent;min-height:87px}.stc-mood-options svg{width:36px;height:36px;stroke:currentColor;stroke-width:1.5}.stc-mood-options button[aria-pressed=true]{background:var(--coastal-wash);border-color:var(--coastal-ink)}.stc-connect-card{background:var(--coastal-wash);border-radius:22px;padding:20px 17px}.stc-connect-card h4{font-family:var(--portfolio-serif);font-weight:400;font-size:31px;line-height:1.1;margin:15px 0}.stc-campaign .stc-connect-card p{font-size:12px;line-height:1.6;margin-bottom:20px}.stc-connect-card button:last-child{width:100%;background:transparent;border:0;font-size:13px;min-height:44px;margin-top:7px}.stc-connect-card button[aria-pressed=true]{box-shadow:0 0 0 2px var(--coastal-accent)}.stc-reading{margin:27px 0;background:var(--coastal-wash);padding:21px 18px;border-radius:17px;color:var(--coastal-ink)}.stc-reading>span{font-size:9px;letter-spacing:.06em}.stc-campaign .stc-reading p{font-size:var(--stc-reading-size);line-height:1.45;margin-top:13px;min-height:114px;letter-spacing:-.03em}.stc-reading.is-contrast{background:#102f40;color:var(--coastal-canvas)}.stc-size-options{display:flex;gap:7px;margin-bottom:20px}.stc-size-options button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:5px;font-size:11px;min-height:70px;padding:9px 4px;border:1px solid color-mix(in srgb, var(--coastal-ink) 13.33%, transparent);border-radius:12px;background:transparent}.stc-size-options b{font-size:20px;font-weight:400}.stc-size-options button:nth-child(2) b{font-size:25px}.stc-size-options button:nth-child(3) b{font-size:30px}.stc-size-options button[aria-pressed=true]{border-color:var(--coastal-ink);background:var(--coastal-wash)}.stc-contrast{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;background:transparent;border:0;border-top:1px solid color-mix(in srgb, var(--coastal-ink) 13.33%, transparent);padding:17px 0;font-size:13px!important;min-height:52px}.stc-contrast i{width:40px;height:24px;position:relative;background:var(--coastal-accent);border-radius:20px;flex:none}.stc-contrast i:before{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;background:var(--coastal-canvas);border-radius:50%;transition:transform .25s}.stc-contrast[aria-pressed=true] i{background:var(--coastal-ink)}.stc-contrast[aria-pressed=true] i:before{transform:translateX(16px)}
.stc-design-language{display:grid;grid-template-columns:1fr 1fr}.stc-type-specimen,.stc-ui-specimen{padding:60px 11%;min-height:650px}.stc-type-specimen{background:var(--coastal-ink);color:var(--coastal-canvas);position:relative;overflow:hidden}.stc-aa{font-family:var(--portfolio-serif);font-size:230px;line-height:1.3;letter-spacing:-.08em;display:block;color:var(--coastal-accent)}.stc-type-specimen h2{font-size:54px;margin:0 0 25px}.stc-type-specimen p,.stc-ui-specimen p{font-size:15px}.stc-ui-specimen{background:var(--coastal-wash);display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:space-between}.stc-large-mood{margin:38px 0 30px}.stc-large-mood svg{width:220px;height:220px;stroke:var(--coastal-ink);stroke-width:.7}.stc-palette-chips{display:flex;gap:10px;margin-bottom:35px}.stc-palette-chips i{width:62px;height:62px;border-radius:50%;background:var(--coastal-canvas);border:1px solid color-mix(in srgb, var(--coastal-ink) 13.33%, transparent)}.stc-palette-chips i:nth-child(2){background:var(--coastal-accent)}.stc-palette-chips i:nth-child(3){background:var(--coastal-ink)}
.stc-process{padding:100px 6% 65px}.stc-process-heading h2{margin-top:25px}.stc-research-nav{display:flex;border-top:1px solid color-mix(in srgb, var(--coastal-ink) 20%, transparent);border-bottom:1px solid color-mix(in srgb, var(--coastal-ink) 20%, transparent);margin-top:65px}.stc-research-nav button{display:flex;align-items:center;text-align:left;gap:20px;flex:1;min-height:105px;padding:22px 17px;border:0;border-bottom:2px solid transparent;background:transparent;font-size:18px}.stc-research-nav button>span{font-size:13px}.stc-research-nav button>i{margin-left:auto;font-style:normal}.stc-research-nav button[aria-selected=true]{background:color-mix(in srgb, var(--coastal-wash) 46.67%, transparent);border-bottom-color:var(--coastal-ink)}#stc-research-panel{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:45px 0 25px;min-height:285px}#stc-research-panel h3{font-size:38px;margin-top:20px;max-width:410px}#stc-research-panel p{color:var(--coastal-ink)}.stc-closing{padding:90px 8% 35px;background:var(--coastal-wash);text-align:center}.stc-closing h2{margin:28px 0;font-size:clamp(45px,5.7vw,88px)}.stc-closing>p{max-width:600px;margin:0 auto;color:var(--coastal-ink)}.stc-closing details{text-align:left;border-top:1px solid color-mix(in srgb, var(--coastal-ink) 20%, transparent);margin-top:65px}.stc-closing summary{display:flex;justify-content:space-between;align-items:center;font-size:14px;min-height:74px;cursor:pointer;list-style:none}.stc-closing summary::-webkit-details-marker{display:none}.stc-closing summary>span{font-size:23px}.stc-closing details p{font-size:14px;max-width:900px;margin:0 0 18px}.stc-closing details>div{padding-bottom:25px}
#project-view.case-elderly-care>.case-next{background:transparent;color:var(--coastal-ink);padding:65px 3%;border-top:0}#project-view.case-elderly-care>.case-next .case-kicker{color:var(--coastal-ink)}
@media(min-width:1600px){.stc-hero-stage{height:800px}.stc-device-front,.stc-device-back{width:345px}.stc-device-front{left:10%}.stc-device-back{left:42%}.stc-hero-statement h2{font-size:78px}.stc-human{min-height:770px}}
@media(max-width:1100px){.stc-hero-stage{height:660px}.stc-hero-statement{left:5%;width:37%;top:24%}.stc-hero-statement h2{font-size:48px}.stc-hero-devices{left:38%}.stc-device-front,.stc-device-back{width:275px}.stc-device-back{left:39%}.stc-phone-glass{min-height:640px}.stc-hero-heading p{font-size:21px}.stc-type-specimen,.stc-ui-specimen{padding:45px 9%;min-height:600px}.stc-research-nav button{font-size:15px;gap:12px}.stc-device-sticky{top:10px}.stc-story-step h3{font-size:39px}}
@media(max-width:849px){.stc-hero-heading{padding:38px 5% 35px}.stc-hero-heading h1{font-size:120px}.stc-hero-stage{height:850px}.stc-hero-statement{position:relative;top:auto;left:auto;padding:45px 7%;width:100%;text-align:center}.stc-hero-statement h2{font-size:46px;margin:18px 0 22px}.stc-hero-devices{inset:330px 0 0}.stc-device-front,.stc-device-back{width:285px;top:50%}.stc-device-front{left:calc(50% - 240px)}.stc-device-back{left:calc(50% + 8px)}.stc-hero-foot{display:none}.stc-intro{padding:65px 7%;display:block}.stc-intro h2{margin:25px 0}.stc-intro>p{max-width:600px}.stc-human{min-height:570px}.stc-human>div{padding:65px 6%;max-width:430px}.stc-human h2{font-size:57px}.stc-scroll-story{display:flex;flex-direction:column;gap:0}.stc-story-notes{display:none}.stc-device-sticky{position:relative;top:auto;width:100%;padding:40px 0 45px}.stc-experience{padding:60px 7% 0}.stc-experience-heading h2{font-size:43px}.stc-interactive-device{width:340px}.stc-design-language .stc-eyebrow{font-size:11px}.stc-type-specimen,.stc-ui-specimen{min-height:535px;padding:40px 10%}.stc-aa{font-size:160px}.stc-type-specimen h2{font-size:40px}.stc-large-mood svg{width:150px;height:150px}.stc-palette-chips i{width:44px;height:44px}.stc-process{padding:70px 7% 35px}.stc-research-nav{margin-top:40px}.stc-research-nav button{flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;font-size:14px;min-height:135px;position:relative}.stc-research-nav button i{position:absolute;right:12px;top:18px}#stc-research-panel{gap:6%;min-height:340px}#stc-research-panel h3{font-size:31px}.stc-closing{padding:65px 7% 25px}}
@media(max-width:550px){#project-view .stc-project-nav{padding:16px 2% 25px;font-size:12px;gap:12px}.stc-project-nav>span{display:none}.stc-hero-heading{display:block;padding:33px 6% 30px}.stc-hero-heading h1{font-size:112px;margin-bottom:25px}.stc-hero-heading>div{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:0}.stc-hero-heading p{font-size:17px}.stc-hero-heading>div>span{font-size:11px;max-width:115px;text-align:right;margin:0}.stc-hero-heading>.stc-eyebrow{font-size:11px}.stc-hero-stage{height:775px}.stc-hero-statement{padding:36px 6%}.stc-hero-statement>.stc-eyebrow{font-size:10px}.stc-hero-statement h2{font-size:39px;line-height:1.12;margin:18px 0 17px}.stc-hero-statement>a{font-size:12px}.stc-hero-devices{inset:270px 0 0}.stc-device-front,.stc-device-back{width:262px;top:52%}.stc-device-front{left:calc(50% - 196px);transform:translateY(calc(-45% + var(--stc-drift))) rotate(-8deg)}.stc-device-back{left:calc(50% - 20px);transform:translateY(calc(-55% - var(--stc-drift))) rotate(10deg)}.stc-hero-devices .stc-phone{padding:6px;border-radius:38px}.stc-hero-devices .stc-phone-glass{border-radius:32px;min-height:620px}.stc-hero-devices .stc-app-body{padding:8px 14px 12px}.stc-hero-devices .stc-greeting h3{font-size:24px}.stc-hero-devices .stc-reminder>strong{font-size:14px}.stc-hero-devices .stc-home-grid>div{font-size:10px;gap:7px;padding:8px}.stc-meta{padding:23px 6%;font-size:11px;gap:12px}.stc-meta>span:last-child{flex-basis:100%}.stc-intro{padding:55px 6%}.stc-intro>.stc-eyebrow{font-size:11px}.stc-intro h2{font-size:36px}.stc-intro>p{font-size:16px}.stc-human{min-height:680px;display:flex;flex-direction:column;background:var(--coastal-wash)}.stc-human>img{position:relative;width:100%;height:390px;object-fit:cover;object-position:67% center;order:2}.stc-human:after{display:none}.stc-human>div{padding:35px 7%;max-width:none;order:1}.stc-human .stc-eyebrow{font-size:11px}.stc-human h2{font-size:45px;margin:20px 0}.stc-human p{font-size:15px}.stc-experience{padding:52px 5% 0}.stc-experience-heading>.stc-eyebrow{font-size:11px}.stc-experience-heading h2{font-size:38px;max-width:290px}.stc-experience-heading p{font-size:15px}.stc-device-label{font-size:11px;max-width:310px}.stc-interactive-device{width:min(330px,100%)}.stc-interactive-device .stc-phone{border-radius:42px;padding:7px}.stc-interactive-device .stc-phone-glass{border-radius:34px}.stc-design-language{grid-template-columns:1fr}.stc-type-specimen,.stc-ui-specimen{min-height:475px;padding:38px 8%}.stc-aa{font-size:190px;line-height:1.2}.stc-type-specimen h2{font-size:42px;margin:5px 0 20px}.stc-ui-specimen{min-height:445px}.stc-large-mood{margin:30px 0 23px}.stc-large-mood svg{width:155px;height:155px}.stc-palette-chips{margin-bottom:25px}.stc-process-heading h2{font-size:38px}.stc-process-heading .stc-eyebrow{font-size:11px}.stc-research-nav{gap:0;margin-top:32px}.stc-research-nav button{font-size:12px;padding:18px 8px;gap:12px;min-height:135px}.stc-research-nav button>span{font-size:11px}.stc-research-nav button>i{right:8px;top:18px}#stc-research-panel{display:block;min-height:370px;padding-top:30px}#stc-research-panel>.stc-eyebrow{font-size:11px}#stc-research-panel h3{font-size:32px;margin:18px 0 22px}#stc-research-panel p{font-size:16px}.stc-closing h2{font-size:42px}.stc-closing>p{font-size:16px}.stc-closing>.stc-eyebrow{font-size:11px}.stc-closing summary{font-size:13px}.stc-closing details p{font-size:13px}#project-view.case-elderly-care>.case-next{padding:40px 4%}}
@media(prefers-reduced-motion:reduce){.stc-campaign *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.stc-story-step{opacity:1}.stc-device-front,.stc-device-back{--stc-drift:0px}}
/* Keep the interactive handset stable as content and reading size change. */
.stc-interactive-device .stc-phone-glass{height:680px;min-height:0}.stc-interactive-device .stc-status{flex:none}.stc-interactive-device #stc-live-screen{min-height:0}.stc-interactive-device .stc-app-body{min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--coastal-accent) transparent;overscroll-behavior:contain}.stc-interactive-device .stc-app-nav{flex:none}.stc-interactive-device .stc-greeting>span,.stc-interactive-device .stc-greeting p{font-size:14px}.stc-interactive-device .stc-health-row strong{font-size:14px}.stc-interactive-device .stc-health-row>div>span{font-size:12px}.stc-interactive-device .stc-app-brand{margin-bottom:16px}.stc-interactive-device .stc-day-strip{margin:14px 0}.stc-interactive-device .stc-routine-card{padding:15px}.stc-interactive-device .stc-routine-card>svg{margin-bottom:10px}.stc-interactive-device .stc-routine-card p{font-size:14px;margin-bottom:14px}.stc-interactive-device .stc-app-feedback{font-size:12px;min-height:0}.stc-interactive-device .stc-connect-card p{font-size:14px}.stc-interactive-device .stc-size-options button,.stc-interactive-device .stc-mood-options button{font-size:12px}.stc-interactive-device .stc-reading>span{font-size:10px}.stc-mobile-note{display:none}
@media(min-width:850px) and (max-height:850px){.stc-interactive-device{width:300px}.stc-interactive-device .stc-phone-glass{height:590px}.stc-device-sticky{top:4px;padding:12px 0}.stc-device-label{margin-bottom:10px}.stc-screen-tabs{margin-top:12px}}
@media(max-width:849px){.stc-mobile-note{display:block;font-size:14px!important;color:var(--coastal-ink);max-width:350px;text-align:center;margin-top:24px!important;min-height:92px}.stc-screen-tabs{order:-1;margin-top:0;margin-bottom:25px}.stc-device-label{order:-2}.stc-interactive-device .stc-phone-glass{height:680px}}
.stc-screen-tabs{margin:0 0 20px}.stc-interactive-device{scroll-margin-top:30px}
#project-view .stc-project-nav a{color:var(--coastal-ink)}
@media(max-width:550px){.stc-hero-stage{height:920px}.stc-hero-devices{inset:350px 0 0}.stc-hero-devices .stc-phone-glass{height:650px;min-height:0}.stc-hero-devices .stc-app-body{min-height:0;overflow:hidden}.stc-hero-devices .stc-status,.stc-hero-devices .stc-app-nav{flex:none}}

/* Fixed logical canvases keep every handset at the same natural screen ratio. */
.stc-campaign .stc-phone{padding:8px;border-radius:44px;background:linear-gradient(135deg,#c7d6dc 0%,#486571 12%,#152e3c 48%,#90a8b3 96%);box-shadow:0 30px 60px #0b26342b,inset 0 0 0 1px #ffffff80}
.stc-campaign .stc-phone .stc-phone-glass{height:auto;min-height:0;aspect-ratio:390/844;border:0;border-radius:35px;display:block;overflow:hidden}
.stc-phone-content{position:absolute;inset:0 auto auto 0;width:390px;height:844px;display:flex;flex-direction:column;transform:scale(var(--stc-canvas-scale,1));transform-origin:top left}
.stc-campaign .stc-status{height:54px;flex:none;padding:0 27px;font-size:13px}
.stc-campaign .stc-status i{width:112px;height:29px;top:12px}
.stc-campaign .stc-home-indicator{width:125px;height:5px;margin:9px auto;flex:none}
.stc-campaign .stc-phone .stc-app-body{padding:18px 25px 16px;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:none}
.stc-campaign .stc-app-body::-webkit-scrollbar{display:none}
.stc-campaign .stc-app-brand{font-size:29px;margin-bottom:27px;gap:9px}
.stc-campaign .stc-app-brand>svg{width:27px;height:27px}
.stc-campaign .stc-greeting>span{font-size:14px;margin-bottom:12px}
.stc-campaign .stc-greeting h3{font-size:32px;line-height:1.15;letter-spacing:-.045em}
.stc-campaign .stc-greeting p{font-size:15px;line-height:1.45;margin-top:13px}
.stc-campaign .stc-reminder{padding:21px;border-radius:23px;margin:26px 0}
.stc-campaign .stc-reminder>strong{font-size:21px;margin:12px 0 20px}
.stc-campaign .stc-reminder>span:last-child{font-size:15px}
.stc-campaign .stc-app-overline{font-size:12px;letter-spacing:.07em}
.stc-campaign .stc-app-heading{font-size:17px;margin:23px 0 15px}
.stc-campaign .stc-home-grid{gap:11px}
.stc-campaign .stc-home-grid>div{padding:13px 11px;min-height:78px;font-size:14px;gap:10px;border-radius:17px}
.stc-campaign .stc-home-grid svg{width:25px;height:25px}
.stc-campaign .stc-water-line{font-size:13px;margin-top:19px;gap:10px}
.stc-campaign .stc-app-nav{flex:none;padding:12px 18px 5px;font-size:12px;gap:14px}
.stc-campaign .stc-app-nav>span{gap:5px}
.stc-campaign .stc-app-nav>span>svg{width:25px;height:25px}
.stc-campaign .stc-health-card{padding:24px;border-radius:25px}
.stc-campaign .stc-health-card>strong{font-size:62px}
.stc-campaign .stc-health-card>span,.stc-campaign .stc-health-card>strong small{font-size:16px}
.stc-campaign .stc-health-card>small{font-size:12px}
.stc-campaign .stc-chart{height:95px;margin:22px 0}
.stc-campaign .stc-health-row{gap:14px;padding:23px 0}
.stc-campaign .stc-health-row strong{font-size:16px}
.stc-campaign .stc-health-row>div>span{font-size:13px;margin-top:7px}
.stc-campaign .stc-routine-card{padding:24px 21px;border-radius:25px}
.stc-campaign .stc-routine-card h4{font-size:23px;margin:15px 0}
.stc-campaign .stc-routine-card p,.stc-campaign .stc-connect-card p{font-size:16px}
.stc-campaign .stc-routine-card>button,.stc-campaign .stc-connect-card button:first-child{min-height:52px;font-size:16px;border-radius:15px}
.stc-campaign .stc-app-feedback,.stc-campaign .stc-app-fine{font-size:13px;line-height:1.5}
.stc-campaign .stc-day-strip{margin:22px 0}
.stc-campaign .stc-day-strip>span{font-size:13px;padding:9px 12px}
.stc-campaign .stc-day-strip b{font-size:16px}
.stc-campaign .stc-mood-options{gap:11px;margin:30px 0}
.stc-campaign .stc-mood-options button{font-size:15px;min-height:106px;border-radius:21px}
.stc-campaign .stc-mood-options svg{width:43px;height:43px}
.stc-campaign .stc-connect-card{padding:25px 22px;border-radius:25px}
.stc-campaign .stc-connect-card h4{font-size:36px}
.stc-campaign .stc-connect-card button:last-child{font-size:16px}
.stc-campaign .stc-reading{padding:27px 24px;border-radius:22px}
.stc-campaign .stc-reading>span{font-size:12px}
.stc-campaign .stc-size-options button{min-height:84px;font-size:14px}
.stc-campaign .stc-contrast{font-size:16px!important;min-height:64px}
.stc-campaign .stc-interactive-device{width:355px;max-width:100%}
.stc-campaign .stc-interactive-device #stc-live-screen{min-height:0;display:flex;flex:1;flex-direction:column}
.stc-campaign .stc-device-sticky{top:18px;padding:22px 0}
.stc-campaign .stc-device-label{max-width:355px}
.stc-campaign .stc-screen-tabs{margin:0 0 19px}
.stc-campaign .stc-screen-tabs button{font-size:14px}
.stc-campaign .stc-hero-stage{height:880px}
.stc-campaign .stc-hero-statement{left:5%;width:34%;top:29%}
.stc-campaign .stc-hero-statement h2{font-size:clamp(40px,4.2vw,65px)}
.stc-campaign .stc-hero-devices{inset:0 3% 0 43%;perspective:none}
.stc-campaign .stc-device-front,.stc-campaign .stc-device-back{width:clamp(265px,24vw,350px);top:50%}
.stc-campaign .stc-device-front{left:0;transform:translateY(calc(-47% + var(--stc-drift))) rotate(-5deg)}
.stc-campaign .stc-device-back{left:46%;transform:translateY(calc(-53% - var(--stc-drift))) rotate(6deg)}

/* An iPad layout designed for a wide screen, rather than a stretched mobile UI. */
.stc-tablet-section{padding:100px 5% 45px;background:var(--coastal-wash)}
.stc-tablet-heading{display:flex;justify-content:space-between;align-items:end;gap:65px;margin:0 2% 65px}
.stc-tablet-heading h2{margin-top:20px;font-size:clamp(43px,5.2vw,76px)}
.stc-tablet-heading>p{max-width:340px;color:var(--coastal-ink)}
.stc-tablet-stage{padding:20px 3% 45px}
.stc-tablet-device{position:relative;width:100%;max-width:1190px;margin:auto;padding:21px;border:2px solid #adbdc4;border-radius:46px;background:linear-gradient(150deg,#55717e,#152630 28%,#263f4a 90%,#a6bac3);box-shadow:0 40px 65px -24px #0a314654,inset 0 0 0 3px #172d36}
.stc-tablet-camera{position:absolute;width:7px;height:7px;border:2px solid #345365;background:#0d1f2c;border-radius:50%;left:50%;top:7px}
.stc-tablet-glass{width:100%;aspect-ratio:4/3;position:relative;overflow:hidden;border-radius:26px;background:var(--coastal-canvas);container-type:inline-size}
.stc-tablet-canvas{position:absolute;left:0;top:0;width:1024px;height:768px;transform:scale(var(--stc-canvas-scale,1));transform-origin:top left;display:flex;flex-direction:column;color:var(--coastal-ink);background:var(--coastal-canvas);font-family:inherit}
.stc-tablet-status{height:32px;display:flex;align-items:center;justify-content:space-between;padding:0 25px;font-size:12px;background:var(--coastal-wash);flex:none}
.stc-tablet-layout{display:grid;grid-template-columns:226px 1fr;flex:1;min-height:0}
.stc-tablet-sidebar{padding:38px 18px 28px;background:var(--coastal-wash);border-right:1px solid var(--coastal-accent);display:flex;flex-direction:column}
.stc-tablet-sidebar .stc-app-brand{font-size:39px;margin:0 0 44px 14px}
.stc-tablet-sidebar .stc-app-brand svg{width:31px;height:31px}
.stc-tablet-user{display:flex;align-items:center;gap:11px;margin:0 8px 37px}
.stc-tablet-user>span{width:39px;height:39px;border-radius:50%;background:var(--coastal-accent);display:grid;place-items:center;font-size:13px;flex:none}
.stc-tablet-user strong{font-size:15px;font-weight:500;display:block}.stc-tablet-user small{display:block;font-size:11px;margin-top:5px;color:var(--coastal-ink)}
.stc-tablet-nav{display:flex;flex-direction:column;gap:12px}.stc-tablet-nav button{display:flex;align-items:center;gap:14px;text-align:left;min-height:58px;border:0;background:transparent;border-radius:15px;padding:15px 18px;font-size:15px;color:var(--coastal-ink)}
.stc-tablet-nav button[aria-selected=true]{background:var(--coastal-ink);color:var(--coastal-canvas);box-shadow:0 6px 15px color-mix(in srgb, var(--coastal-ink) 9.02%, transparent)}
.stc-tablet-nav svg{width:22px;height:22px}.stc-tablet-rail-note{display:flex;gap:12px;align-items:center;font-family:var(--portfolio-serif);font-size:22px;line-height:1.15;margin:auto 11px 23px;color:var(--coastal-ink)}
.stc-tablet-main{padding:40px 35px;overflow:auto;scrollbar-width:thin;min-height:0}
.stc-tablet-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:34px}
.stc-tablet-page-heading>div>span{font-size:13px;color:var(--coastal-ink);display:block;margin-bottom:15px}
.stc-campaign .stc-tablet-page-heading h3{font-family:inherit;font-size:33px;letter-spacing:-.055em;font-weight:500;line-height:1.2}
.stc-tablet-page-heading p{font-size:15px;color:var(--coastal-ink);margin-top:10px}
.stc-tablet-sun{background:var(--coastal-canvas);border-radius:50%;width:65px;height:65px;display:grid;place-items:center;flex:none}.stc-tablet-sun svg{width:33px;height:33px;stroke-width:1.2}
.stc-tablet-date{text-align:center;font-family:var(--portfolio-serif);font-size:54px;line-height:1}.stc-tablet-date small{display:block;font-family:inherit;font-size:11px;letter-spacing:.06em;margin-top:8px}
.stc-tablet-overview{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.stc-tablet-routine{background:var(--coastal-ink);color:var(--coastal-canvas);border-radius:24px;padding:25px 24px;min-height:292px}
.stc-tablet-card-icon{width:42px;height:42px;border-radius:14px;background:#ffffff1f;display:grid;place-items:center;margin-bottom:22px}
.stc-tablet-routine .stc-app-overline{font-size:10px;color:var(--coastal-accent)}
.stc-tablet-routine h4{font-size:22px;letter-spacing:-.035em;font-weight:500;line-height:1.2;margin:13px 0 10px}
.stc-tablet-routine p{font-size:14px;color:var(--coastal-accent)}
.stc-tablet-routine>button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--coastal-canvas);color:var(--coastal-ink);border:0;min-height:49px;border-radius:13px;font-size:14px;margin-top:23px}
.stc-tablet-routine>button svg{width:20px;height:20px}
.stc-tablet-mood-card{border:1px solid var(--coastal-accent);border-radius:24px;padding:27px 23px;background:var(--coastal-wash)}
.stc-tablet-mood-card>.stc-app-overline{font-size:11px;letter-spacing:.07em}
.stc-tablet-moods{display:flex;gap:10px;margin:31px 0 20px}
.stc-tablet-moods button{background:var(--coastal-canvas);border:1px solid var(--coastal-accent);flex:1;border-radius:18px;min-height:108px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;font-size:13px}
.stc-tablet-moods svg{width:39px;height:39px;stroke:currentColor;stroke-width:1.5}
.stc-tablet-moods button[aria-pressed=true]{background:var(--coastal-ink);color:var(--coastal-canvas);border-color:var(--coastal-ink)}
.stc-campaign .stc-tablet-feedback{font-size:13px;color:var(--coastal-ink);line-height:1.5}
.stc-tablet-lower{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:23px}.stc-tablet-lower>div{display:flex;align-items:center;gap:15px;border:1px solid var(--coastal-accent);border-radius:19px;padding:22px 18px}.stc-tablet-lower strong{font-size:15px;font-weight:500;display:block}.stc-tablet-lower small{font-size:12px;display:block;color:var(--coastal-ink);margin-top:9px}
.stc-tablet-bottom-note{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--coastal-ink);margin-top:28px}.stc-tablet-bottom-note svg{width:18px;height:18px}
.stc-tablet-indicator{position:absolute;bottom:7px;left:50%;transform:translateX(-50%);background:var(--coastal-ink);border-radius:3px;width:190px;height:4px}
.stc-tablet-caption{display:flex;justify-content:space-between;gap:20px;font-size:13px;color:var(--coastal-ink);padding:0 5%}
.stc-tablet-routine-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:25px}.stc-tablet-routine-layout .stc-tablet-routine{min-height:360px;padding-top:30px}.stc-tablet-routine-layout .stc-tablet-card-icon{margin-bottom:36px}
.stc-tablet-schedule{padding:22px 3px}.stc-tablet-schedule>.stc-app-overline{margin-bottom:18px;font-size:11px}.stc-tablet-schedule>div{display:flex;align-items:start;gap:18px;padding:21px 0;border-bottom:1px solid var(--coastal-accent)}.stc-tablet-schedule>div>span{font-size:12px;margin-top:3px;color:var(--coastal-ink)}.stc-tablet-schedule h4{font-size:16px;font-weight:500;line-height:1.4}.stc-tablet-schedule p{font-size:13px;margin-top:8px;color:var(--coastal-ink)}
.stc-tablet-connect-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:23px}.stc-tablet-connect-layout .stc-tablet-mood-card{padding:30px 24px;min-height:375px}.stc-tablet-connect-layout .stc-tablet-moods{margin-top:50px}.stc-tablet-company{padding:25px 6px}.stc-tablet-company>.stc-app-overline{font-size:11px}.stc-tablet-company h4{font-family:var(--portfolio-serif);font-size:36px;font-weight:400;line-height:1.1;letter-spacing:-.04em;margin:25px 0}.stc-tablet-company p{font-size:14px;margin-bottom:24px}.stc-tablet-company button{border:0;border-radius:14px;background:var(--coastal-ink);color:var(--coastal-canvas);width:100%;padding:16px;display:flex;align-items:center;justify-content:space-between;font-size:15px}.stc-tablet-company small{font-size:11px;display:block;margin-top:18px;color:var(--coastal-ink)}

/* Show the process in the page itself, with an unmistakable selected state. */
.stc-campaign .stc-research-nav{gap:12px;border:0;margin:43px 0 0}
.stc-campaign .stc-research-nav button{min-height:76px;padding:20px 23px;border:1px solid var(--coastal-accent);border-radius:16px;font-size:16px;gap:16px;transition:background .25s,color .25s,box-shadow .25s}
.stc-campaign .stc-research-nav button[aria-selected=true]{background:var(--coastal-ink);color:var(--coastal-canvas);border-color:var(--coastal-ink);box-shadow:0 6px 15px color-mix(in srgb, var(--coastal-ink) 7.06%, transparent)}
.stc-campaign #stc-research-panel{grid-template-columns:.85fr 1.15fr;align-items:center;gap:6%;padding:42px 0 16px;min-height:460px}
.stc-campaign #stc-research-panel h3{font-size:40px;max-width:420px;margin:20px 0 24px}
.stc-campaign #stc-research-panel .stc-research-copy>p{font-size:16px;max-width:420px}
.stc-research-visual{background:var(--coastal-canvas);border-radius:22px;padding:30px;min-height:350px;border:1px solid color-mix(in srgb, var(--coastal-ink) 8.63%, transparent)}
.stc-diagram-tag{display:block;font-size:11px;letter-spacing:.1em;color:var(--coastal-ink);margin-bottom:28px}
.stc-persona-person{display:flex;align-items:center;gap:17px}.stc-persona-avatar{background:var(--coastal-accent);border:1px solid var(--coastal-accent);width:65px;height:65px;border-radius:50%;display:grid;place-items:center;font-family:var(--portfolio-serif);font-size:30px}
.stc-campaign .stc-research-visual h4{font-family:inherit;font-size:21px;letter-spacing:-.03em;font-weight:500}.stc-campaign #stc-research-panel .stc-persona-person p{font-size:13px;margin-top:8px}
.stc-persona-needs{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 30px}.stc-persona-needs span{background:var(--coastal-wash);border-radius:20px;padding:8px 12px;font-size:12px}
.stc-journey-line{display:flex;gap:20px;position:relative}.stc-journey-line:before{content:'';height:1px;background:var(--coastal-accent);left:12%;right:12%;position:absolute;top:22px}.stc-journey-line>div{flex:1;text-align:center;position:relative;display:flex;flex-direction:column;align-items:center;gap:13px;font-size:13px;line-height:1.4}.stc-journey-line svg{background:var(--coastal-wash);border:8px solid var(--coastal-wash);box-sizing:content-box;border-radius:50%;width:28px;height:28px}.stc-diagram-caption{font-size:12px;line-height:1.5;color:var(--coastal-ink);display:block;margin-top:30px}
.stc-group-row{display:flex;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--coastal-accent)}.stc-group-symbol{background:var(--coastal-wash);width:47px;height:47px;border-radius:15px;display:grid;place-items:center;flex:none}.stc-campaign .stc-group-row h4{font-size:18px}.stc-campaign #stc-research-panel .stc-group-row p{font-size:12px;line-height:1.5;margin-top:7px}.stc-group-diagram .stc-diagram-tag{margin-bottom:9px}
.stc-map-root{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--coastal-ink);color:var(--coastal-canvas);border-radius:17px;width:160px;margin:5px auto 33px;padding:15px;font-family:var(--portfolio-serif);font-size:30px;position:relative}.stc-map-root:after{content:'';height:33px;width:1px;position:absolute;top:100%;left:50%;background:var(--coastal-accent)}.stc-map-branches{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stc-map-branches>div{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:var(--coastal-wash);border:1px solid var(--coastal-accent);border-radius:16px;min-height:85px;font-size:12px;text-align:center}
@keyframes stc-diagram-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.stc-journey-line>div,.stc-group-row,.stc-map-branches>div{animation:stc-diagram-in .65s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--stc-order)*80ms)}
@media(min-width:850px) and (max-height:900px){.stc-campaign .stc-interactive-device{width:290px}.stc-campaign .stc-device-sticky{top:5px;padding:10px 0}.stc-campaign .stc-device-label{margin-bottom:10px}.stc-campaign .stc-screen-tabs{margin-bottom:12px}}
@media(max-width:1100px) and (min-width:850px){.stc-campaign .stc-hero-stage{height:760px}.stc-campaign .stc-hero-statement{width:32%;top:31%}.stc-campaign .stc-hero-statement h2{font-size:42px}.stc-campaign .stc-hero-devices{inset:0 3% 0 42%}.stc-campaign .stc-device-front,.stc-campaign .stc-device-back{width:270px}.stc-campaign .stc-device-back{left:43%}}
@media(max-width:849px){.stc-campaign .stc-hero-stage{height:940px}.stc-campaign .stc-hero-statement{position:relative;top:auto;left:auto;width:100%;padding:42px 6%;text-align:center}.stc-campaign .stc-hero-statement h2{font-size:46px;margin:20px 0 23px}.stc-campaign .stc-hero-devices{inset:335px 4% 30px}.stc-campaign .stc-device-front,.stc-campaign .stc-device-back{width:255px;top:50%}.stc-campaign .stc-device-front{left:calc(50% - 230px);transform:translateY(-47%) rotate(-5deg)}.stc-campaign .stc-device-back{left:calc(50% + 5px);transform:translateY(-53%) rotate(6deg)}.stc-campaign .stc-device-sticky{position:relative;top:auto;padding:36px 0}.stc-tablet-section{padding:65px 4% 35px}.stc-tablet-heading{gap:35px;margin-bottom:35px}.stc-tablet-heading>p{max-width:260px;font-size:15px}.stc-tablet-heading h2{font-size:45px}.stc-tablet-stage{padding:15px 0 40px}.stc-tablet-device{padding:14px;border-radius:32px}.stc-tablet-glass{border-radius:19px}.stc-tablet-camera{top:4px;width:6px;height:6px}.stc-campaign #stc-research-panel{grid-template-columns:1fr;gap:28px;min-height:0}.stc-campaign #stc-research-panel .stc-research-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.stc-research-copy>.stc-eyebrow{grid-column:1/-1}.stc-campaign #stc-research-panel h3{font-size:35px;grid-row:2/4;margin-bottom:0}.stc-campaign #stc-research-panel .stc-research-copy>p{margin-top:20px}.stc-research-copy .stc-source-link{justify-self:start}.stc-campaign .stc-research-nav button{flex-direction:row;min-height:82px;font-size:14px;padding:15px 17px;align-items:center}.stc-research-visual{min-height:355px}}
@media(max-width:550px){.stc-campaign .stc-hero-stage{height:865px}.stc-campaign .stc-hero-statement{padding:38px 5%}.stc-campaign .stc-hero-statement h2{font-size:38px}.stc-campaign .stc-hero-devices{inset:330px 0 20px}.stc-campaign .stc-device-front,.stc-campaign .stc-device-back{width:220px}.stc-campaign .stc-device-front{left:calc(50% - 163px)}.stc-campaign .stc-device-back{left:calc(50% - 28px)}.stc-campaign .stc-phone{padding:7px;border-radius:37px}.stc-campaign .stc-phone .stc-phone-glass{border-radius:30px}.stc-campaign .stc-hero-devices .stc-phone{border-radius:29px;padding:5px}.stc-campaign .stc-hero-devices .stc-phone-glass{border-radius:24px}.stc-campaign .stc-interactive-device{width:325px}.stc-tablet-heading{display:block;margin:0 2% 30px}.stc-tablet-heading h2{font-size:40px;margin-bottom:23px}.stc-tablet-heading>p{max-width:330px}.stc-tablet-stage{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:var(--coastal-accent) transparent;padding:10px 4px 35px;border-radius:20px}.stc-tablet-device{width:760px;max-width:none;margin:0;padding:16px;border-radius:33px}.stc-tablet-caption{padding:18px 2% 0;font-size:12px}.stc-tablet-caption span:last-child{font-size:0}.stc-tablet-caption span:last-child:after{content:'Swipe to explore the iPad';font-size:12px}.stc-campaign .stc-research-nav{gap:8px;flex-direction:column;margin-top:30px}.stc-campaign .stc-research-nav button{min-height:58px;padding:15px 20px;border-radius:13px;font-size:15px;gap:18px}.stc-campaign #stc-research-panel{padding:28px 0 12px}.stc-campaign #stc-research-panel .stc-research-copy{display:block}.stc-campaign #stc-research-panel h3{font-size:33px;margin:17px 0 20px}.stc-campaign #stc-research-panel .stc-research-copy>p{font-size:16px}.stc-research-visual{padding:23px 20px;min-height:0;border-radius:19px}.stc-campaign .stc-research-visual h4{font-size:19px}.stc-persona-person{gap:13px}.stc-persona-avatar{width:52px;height:52px;font-size:25px}.stc-diagram-tag{font-size:10px;line-height:1.5}.stc-persona-needs{margin:21px 0 26px}.stc-persona-needs span{font-size:11px}.stc-journey-line{gap:12px}.stc-journey-line>div{font-size:12px}.stc-group-row{gap:13px;padding:18px 0}.stc-map-branches{grid-template-columns:repeat(2,1fr)}.stc-map-branches>div{font-size:12px}.stc-campaign .stc-group-row h4{font-size:17px}}
@media(prefers-reduced-motion:reduce){.stc-campaign .stc-journey-line>div,.stc-campaign .stc-group-row,.stc-campaign .stc-map-branches>div{animation:none}.stc-campaign .stc-research-nav button{transition:none}}
/* Preserve legible action colours after confirmation. */
.stc-campaign .stc-routine-card>button,.stc-campaign .stc-connect-card button:first-child,.stc-campaign .stc-tablet-company button{color:var(--coastal-canvas);background:var(--coastal-ink)}
.stc-campaign .stc-tablet-routine>button{color:var(--coastal-ink);background:var(--coastal-canvas)}
.stc-campaign .stc-research-nav{scroll-margin-top:20px}


/* echo-campaign.css */
/* A film-led Echo Ride case study, scoped to this project. */
html:has(.case-ecoride:not([hidden])){background:var(--coastal-canvas);scrollbar-color:var(--coastal-accent) var(--coastal-canvas)}
body:has(.case-ecoride:not([hidden])){background:var(--coastal-canvas);color:var(--coastal-ink);--wine:var(--coastal-ink);--paper:var(--coastal-canvas);--muted:var(--coastal-ink);--project-accent:var(--coastal-ink);color-scheme:light}
body:has(.case-ecoride:not([hidden])) .site-header{color:var(--coastal-ink)}
#project-view.case-ecoride{--case-accent:var(--coastal-ink);background:var(--coastal-canvas);color:var(--coastal-ink)}
#project-view .ec-project-nav{display:flex;justify-content:space-between;align-items:center;padding:20px 1% 26px;gap:20px;font-size:14px;color:var(--coastal-ink)}
#project-view .ec-project-nav a{color:var(--coastal-ink)}
.echo-campaign{--ec-ink:var(--coastal-ink);--ec-sky:var(--coastal-accent);--ec-muted:var(--coastal-ink);--ec-paper:var(--coastal-canvas);--ec-line:color-mix(in srgb, var(--coastal-ink) 20%, transparent);color:var(--ec-ink);background:var(--ec-paper);overflow:clip;border-radius:0}
.echo-campaign h1,.echo-campaign h2,.echo-campaign h3{font-weight:400;letter-spacing:-.045em;line-height:1.06;margin:0;font-family:var(--portfolio-serif)}
.echo-campaign h1{font-family:inherit;letter-spacing:-.06em;line-height:.98}
.echo-campaign h1 em{font-family:var(--portfolio-serif);font-weight:400;letter-spacing:-.04em;color:var(--coastal-accent)}
.echo-campaign h2 em,.echo-campaign h3 em{font-style:italic}.echo-campaign p{font-size:17px;line-height:1.65;margin:0}.echo-campaign figure{margin:0;min-width:0}.echo-campaign button{cursor:pointer}.echo-campaign .ec-kicker{display:block;font-size:13px;line-height:1.5;letter-spacing:.08em;text-transform:uppercase}.echo-campaign .ec-fine{font-size:13px;line-height:1.65;color:var(--ec-muted)}
.ec-hero{position:relative;height:min(760px,76vw);min-height:500px;overflow:hidden;border-radius:28px;background:#163441;isolation:isolate}
.ec-hero video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.ec-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#061b2638,#061b2645 45%,#061b26bd)}
.ec-hero-copy{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:60px 5% 90px;color:var(--coastal-canvas);pointer-events:none}
.ec-hero-copy .ec-kicker{font-size:14px;margin-bottom:38px;color:var(--coastal-canvas)}.ec-hero-copy h1{font-size:clamp(66px,8.5vw,142px)}.ec-hero-copy>p{font-size:16px;margin-top:30px;color:var(--coastal-canvas)}.ec-discover{position:absolute;bottom:32px;left:38px;font-size:14px;color:var(--coastal-canvas);display:flex;align-items:center;gap:28px;min-height:44px}.ec-discover span{font-size:24px}.ec-hero-credit{position:absolute;bottom:43px;right:38px;font-size:12px;color:var(--coastal-canvas)}.ec-meta{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:27px 2%;font-size:13px;color:var(--ec-muted);border-bottom:1px solid var(--ec-line)}
.ec-intro{text-align:center;padding:110px 6% 72px}.ec-intro h2{font-size:clamp(48px,5.8vw,94px);margin:27px 0}.ec-intro>p{max-width:650px;margin:0 auto;color:var(--ec-muted);font-size:18px}
.ec-experience{padding:0 0 105px}.ec-scene-shell{position:relative;overflow:hidden;border-radius:28px;background:var(--coastal-wash)}.ec-scene{position:relative;min-height:650px}.ec-scene-image{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:right center}.ec-scene:after{position:absolute;inset:0;content:'';pointer-events:none;background:linear-gradient(90deg,var(--coastal-canvas) 0%,color-mix(in srgb, var(--coastal-canvas) 90.2%, transparent) 24%,color-mix(in srgb, var(--coastal-canvas) 50.2%, transparent) 45%,transparent 70%)}.ec-scene-copy{position:relative;z-index:1;padding:80px 5% 125px;width:51%;min-height:650px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.ec-scene-copy h3{font-size:clamp(42px,4.5vw,72px);margin:26px 0}.ec-scene-copy p{max-width:380px;color:var(--ec-muted);font-size:17px}.ec-text-link{background:transparent;border:0;border-bottom:1px solid currentColor;color:inherit;padding:13px 0;display:inline-flex;gap:25px;align-items:center;min-height:44px;font-size:14px;text-align:left;margin-top:20px}.ec-text-link>span{font-size:20px}.ec-chapter-tabs{position:absolute;z-index:2;bottom:25px;left:4%;right:4%;display:flex;gap:12px;justify-content:center;padding:8px;border:1px solid color-mix(in srgb, var(--coastal-canvas) 40%, transparent);border-radius:40px;background:color-mix(in srgb, var(--coastal-canvas) 90.98%, transparent)}.ec-chapter-tabs button{min-height:48px;border:0;background:none;color:var(--coastal-ink);border-radius:40px;padding:10px 25px;display:flex;align-items:center;gap:35px;flex:1;font-size:17px}.ec-chapter-tabs button>span:first-child{font-size:13px}.ec-chapter-tabs button>span:last-child{margin-left:auto}.ec-chapter-tabs button[aria-selected=true]{background:var(--coastal-ink);color:var(--coastal-canvas)}
.ec-interface{padding:80px 5% 75px;background:var(--coastal-wash);border-radius:28px}.ec-section-head{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:7%;margin-bottom:45px}.ec-section-head h2{font-size:clamp(44px,5vw,78px);margin-top:22px}.ec-section-head>p{max-width:390px;color:var(--ec-muted);padding-bottom:5px}.ec-display-tabs{display:flex;gap:12px;border-bottom:1px solid var(--ec-line);padding-bottom:15px;margin-bottom:38px;flex-wrap:wrap}.ec-display-tabs button{background:none;border:1px solid transparent;border-radius:25px;padding:12px 20px;min-height:46px;color:var(--ec-muted);font-size:15px}.ec-display-tabs button[aria-selected=true]{background:var(--coastal-ink);border-color:var(--coastal-ink);color:var(--coastal-canvas)}.ec-display-panel{display:grid;grid-template-columns:1.45fr 1fr;gap:6%;align-items:center;min-height:320px}.ec-art-button{display:block;width:100%;background:transparent;border:0;padding:0;cursor:zoom-in!important}.ec-art-button img{display:block;width:100%;height:auto;object-fit:contain;border-radius:12px}.ec-interface-note h3{font-size:clamp(32px,3.1vw,48px);margin:22px 0}.ec-interface-note p{color:var(--ec-muted);font-size:16px}.echo-campaign .ec-display-panel figcaption{font-size:13px;line-height:1.5;margin-top:18px;display:flex;justify-content:space-between;gap:18px;color:var(--ec-muted)}.ec-interface>.ec-fine{margin-top:32px;max-width:820px}
.ec-process{padding:110px 5% 65px}.ec-process-flow{display:flex;border-top:1px solid var(--ec-line);border-bottom:1px solid var(--ec-line);margin-top:50px}.ec-process-flow button{position:relative;text-align:left;flex:1;display:flex;align-items:center;gap:20px;min-height:115px;border:0;border-bottom:3px solid transparent;background:none;padding:24px 18px;color:var(--ec-muted)}.ec-process-flow button>span{font-size:14px}.ec-process-flow button strong{font-family:var(--portfolio-serif);font-size:40px;font-weight:400}.ec-process-flow button i{font-size:24px;font-style:normal;margin-left:auto}.ec-process-flow button[aria-pressed=true]{color:var(--coastal-ink);border-bottom-color:var(--coastal-ink);background:color-mix(in srgb, var(--coastal-wash) 47.84%, transparent)}.ec-research-detail{display:grid;grid-template-columns:1fr 1fr;gap:9%;min-height:285px;padding:45px 0 30px}.ec-research-detail h3{font-size:38px;margin-top:22px;max-width:400px}.ec-research-detail p{color:var(--ec-muted)}
.ec-closing{text-align:center;background:var(--coastal-ink);color:var(--coastal-canvas);padding:90px 8% 45px;border-radius:28px}.ec-closing h2{font-size:clamp(44px,5.1vw,80px);margin:27px 0}.ec-closing h2 em{color:var(--coastal-accent)}.ec-closing>p{max-width:700px;margin:0 auto;color:var(--coastal-wash)}.ec-credits{border-top:1px solid color-mix(in srgb, var(--coastal-canvas) 26.67%, transparent);text-align:left;margin-top:70px}.ec-credits summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:70px;font-size:14px;cursor:pointer}.ec-credits summary::-webkit-details-marker{display:none}.ec-credits summary span{font-size:24px}.ec-credits>div{max-width:900px;padding:6px 0 20px}.ec-credits p{font-size:14px;color:var(--coastal-wash);margin:0 0 18px}
#project-view.case-ecoride>.case-next{background:transparent;color:var(--coastal-ink);border-top:0;padding:65px 3%}#project-view.case-ecoride>.case-next .case-kicker{color:var(--coastal-ink)}
.echo-campaign :is(a,button,summary):focus-visible{outline:2px solid currentColor;outline-offset:5px}.echo-campaign [hidden]{display:none!important}
@media(min-width:1600px){.ec-hero{height:780px}.ec-scene,.ec-scene-copy{min-height:760px}}
@media(max-width:1000px){.ec-hero{height:640px;min-height:0}.ec-hero-copy h1{font-size:85px}.ec-hero-credit{display:none}.ec-scene,.ec-scene-copy{min-height:620px}.ec-scene-copy{width:58%;padding-top:55px}.ec-scene-copy h3{font-size:49px}.ec-scene-copy p{font-size:16px}.ec-scene:after{background:linear-gradient(90deg,var(--coastal-canvas) 0%,color-mix(in srgb, var(--coastal-canvas) 90.2%, transparent) 32%,color-mix(in srgb, var(--coastal-canvas) 33.33%, transparent) 62%,transparent)}.ec-section-head{gap:5%;grid-template-columns:1.2fr 1fr}.ec-display-panel{grid-template-columns:1.15fr 1fr;gap:5%}.ec-process-flow button{gap:12px;padding-left:10px;padding-right:10px}.ec-process-flow button strong{font-size:34px}.ec-intro{padding-top:80px}.ec-experience{padding-bottom:80px}}
@media(max-width:650px){#project-view .ec-project-nav{font-size:12px;padding:15px 3% 20px;gap:12px}#project-view .ec-project-nav>span{display:none}.ec-hero{height:660px;max-height:82svh;min-height:490px;border-radius:18px}.ec-hero video{object-position:53% center}.ec-hero-copy{padding:50px 6% 100px}.ec-hero-copy .ec-kicker{font-size:12px;margin-bottom:28px;max-width:210px}.ec-hero-copy h1{font-size:clamp(53px,14vw,85px);line-height:1.06}.ec-hero-copy>p{max-width:240px;font-size:15px;margin-top:25px}.ec-discover{left:24px;bottom:24px;font-size:13px;gap:20px}.ec-meta{padding:22px 3%;gap:10px 20px;font-size:12px}.ec-meta span:last-child{flex-basis:100%}.ec-intro{padding:62px 5% 40px}.ec-intro h2{font-size:42px;margin:22px 0}.ec-intro>p{font-size:16px}.ec-experience{padding-bottom:55px}.ec-scene-shell{border-radius:18px}.ec-scene{min-height:0;display:flex;flex-direction:column}.ec-scene:after{display:none}.ec-scene-image{position:static;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;object-position:center;order:2}.ec-scene-copy{width:100%;min-height:0;padding:33px 7% 25px;order:1;display:block;background:var(--coastal-canvas)}.ec-scene-copy h3{font-size:40px;margin:18px 0}.ec-scene-copy p{max-width:none;min-height:104px;font-size:16px}.ec-scene-copy .ec-text-link{margin-top:9px}.ec-chapter-tabs{position:static;margin:0;border:0;border-radius:0;gap:4px;padding:12px 9px;background:var(--coastal-canvas)}.ec-chapter-tabs button{gap:8px;padding:10px 13px;justify-content:center;font-size:14px;min-height:47px}.ec-chapter-tabs button>span:first-child{font-size:11px}.ec-chapter-tabs button>span:last-child{display:none}.ec-interface{padding:45px 6% 35px;border-radius:18px}.ec-section-head{display:block;margin-bottom:28px}.ec-section-head h2{font-size:42px;margin-top:18px}.ec-section-head>p{max-width:none;margin-top:23px;font-size:16px}.ec-display-tabs{gap:5px;margin-bottom:25px;padding-bottom:15px}.ec-display-tabs button{padding:10px 12px;font-size:13px;min-height:44px}.ec-display-panel{display:flex;flex-direction:column;gap:30px;align-items:stretch;min-height:0}.ec-display-panel figcaption{font-size:12px!important}.ec-interface-note h3{font-size:33px;margin:15px 0}.ec-interface-note p{min-height:78px}.ec-interface>.ec-fine{margin-top:25px}.ec-process{padding:60px 6% 40px}.ec-process-flow{margin-top:30px}.ec-process-flow button{padding:18px 8px;gap:5px;flex-direction:column;align-items:flex-start;min-height:110px}.ec-process-flow button strong{font-size:30px}.ec-process-flow button i{position:absolute;right:9px;top:16px;font-size:20px}.ec-research-detail{display:block;min-height:370px;padding:30px 0 10px}.ec-research-detail h3{font-size:34px;margin:15px 0 25px}.ec-research-detail p{font-size:16px}.ec-closing{border-radius:18px;padding:50px 7% 25px}.ec-closing h2{font-size:40px;margin:24px 0}.ec-closing>p{font-size:16px}.ec-credits{margin-top:40px}.ec-credits summary{font-size:13px;gap:12px}.ec-credits p{font-size:13px}#project-view.case-ecoride>.case-next{padding:40px 3%}}
@media(prefers-reduced-motion:reduce){.echo-campaign *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Keep the whole cycling sequence visible on a narrow phone screen. */
@media(max-width:650px){.ec-hero{height:auto;max-height:none;min-height:0;display:flex;flex-direction:column;background:var(--coastal-ink)}.ec-hero video{position:static;aspect-ratio:16/9;height:auto;width:100%;object-fit:contain}.ec-hero-shade{display:none}.ec-hero-copy{position:relative;inset:auto;padding:36px 6% 25px}.ec-hero-copy .ec-kicker{margin-bottom:22px}.ec-hero-copy h1{font-size:clamp(45px,12vw,68px)}.ec-hero-copy>p{margin-top:22px}.ec-discover{position:static;justify-content:center;padding:8px 18px 27px;margin:0;font-size:13px}}

body:has(.case-ecoride:not([hidden])) .reading-progress{background:var(--coastal-accent)}


/* landing-palette.css */
/* The approved Coastal palette for the landing and personal chapters. */
body.landing-coastal{--paper:#f5eedd;--wine:#16587b;--ink:#16587b;--muted:#376f8a;--line:#84b3ce;--accent:#84b3ce;--landing-card:#fdfbf7;--landing-emphasis:#e3eef1;background:#f5eedd;color:#16587b;color-scheme:light}
html:has(body.landing-coastal){background:#f5eedd;scrollbar-color:#84b3ce #f5eedd}
.landing-coastal ::selection{background:#16587b;color:#f5eedd}
.landing-coastal .skip:focus{background:#f5eedd;color:#16587b}
.landing-coastal .reading-progress{background:#84b3ce}
.landing-coastal .site-header{color:#16587b}
.landing-coastal .site-header nav{color:#376f8a}
.landing-coastal .site-header nav a:hover{color:#16587b}
/* Two folded forms create a compact personal symbol. */
.site-header .wordmark{display:flex;align-items:center;justify-content:flex-start;width:56px;min-height:56px;flex:none}
.site-header .wordmark>.personal-symbol{display:block;width:44px;height:44px;overflow:visible;transition:transform .35s ease}
.symbol-fold-first{animation:fold-arrive-first .8s cubic-bezier(.22,1,.36,1) both}
.symbol-fold-second{animation:fold-arrive-second .8s cubic-bezier(.22,1,.36,1) .08s both}
.site-header .wordmark:is(:hover,:focus-visible)>.personal-symbol{transform:translateY(-2px)}
@keyframes fold-arrive-first{from{opacity:0;transform:translate(-3px,-3px)}to{opacity:1;transform:translate(0,0)}}
@keyframes fold-arrive-second{from{opacity:0;transform:translate(3px,3px)}to{opacity:1;transform:translate(0,0)}}
@media(max-width:600px){.site-header .wordmark{width:48px;min-height:48px}.site-header .wordmark>.personal-symbol{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.personal-symbol,.personal-symbol path{animation:none!important;transform:none!important;transition:none!important}}

.landing-coastal .story-note{background:var(--landing-card);color:#16587b}
.landing-coastal .work-note{background:var(--landing-emphasis);color:#16587b}
.landing-coastal .story-note,.landing-coastal .work-note,.landing-coastal .hello-note{box-shadow:inset 0 0 0 1px #84b3ce22}
.landing-coastal .word-pattern{color:#84b3ce26}
.landing-coastal .story-note p,.landing-coastal .work-note-content p{color:#376f8a}
.landing-coastal .work-note .widget-label{color:#16587b}
.landing-coastal .hello-note{background:var(--landing-card);color:#16587b}
.landing-coastal .hello-arrow{background:#16587b;color:#f5eedd}
.landing-coastal .flower-panel{background:#f5eedd;color:#16587b}
.landing-coastal .flower-top .widget-label{color:#16587b}
.landing-coastal .portrait-space,.landing-coastal .portrait-media{background:#84b3ce;color:#f5eedd}
.landing-coastal .portrait-media:after{background:linear-gradient(180deg,#16587bcc 0%,#16587b00 25%,#16587b00 55%,#16587b 100%)}
.landing-coastal .portrait-top,.landing-coastal .portrait-caption{text-shadow:0 1px 12px #16587b}
.landing-coastal .portrait-caption>span{color:#f5eedd}
.landing-coastal .opening-foot,.landing-coastal .opening-foot button{color:#376f8a}
.landing-coastal #work.work-gallery-section,.landing-coastal .gallery-project{color:#16587b}
.landing-coastal .gallery-heading h2,.landing-coastal .gallery-caption strong{color:#16587b}
.landing-coastal .gallery-heading .small-label{color:#376f8a}
.landing-coastal .small-label:before,.landing-coastal .gallery-caption i{color:#84b3ce}
.landing-coastal .gallery-heading>p,.landing-coastal .gallery-motion,.landing-coastal .gallery-caption small,.landing-coastal .gallery-footer-copy,.landing-coastal .gallery-footer-copy small{color:#376f8a}
.landing-coastal .gallery-tabs button{border-color:#84b3ce;color:#16587b}
.landing-coastal .gallery-tabs button[aria-selected=true]{background:#16587b;border-color:#16587b;color:#f5eedd}
.landing-coastal .gallery-tabs button:hover{border-color:#16587b;color:#16587b}
.landing-coastal .gallery-tabs button[aria-selected=true]:hover{color:#f5eedd;background:#16587b}
.landing-coastal .gallery-art{background:#f5eedd}
.landing-coastal .gallery-art img{filter:none}
.landing-coastal .gallery-footer{border-color:#84b3ce66}
.landing-coastal .gallery-browse,.landing-coastal .gallery-arrows button{color:#16587b}
.landing-coastal .gallery-arrows button{border-color:#84b3ce}
.landing-coastal .gallery-arrows button:hover{background:#16587b;color:#f5eedd}
.landing-coastal #work.work-gallery-section :is(button,a,[tabindex]):focus-visible{outline-color:#16587b}

/* Personal chapters share the same quiet surfaces and blue emphasis. */
.landing-coastal .personal-page{--chapter-ink:#16587b;--chapter-wine:#16587b;--chapter-paper:#fdfbf7;--chapter-muted:#376f8a}
.landing-coastal .chapter-navigation{color:#376f8a;border-color:#84b3ce66}
.landing-coastal .chapter-navigation a:hover,.landing-coastal .chapter-navigation a[aria-current=page]{color:#16587b;border-bottom-color:#16587b}
.landing-coastal .personal-page .paper-card{background:#fdfbf7;color:#16587b}
.landing-coastal .personal-page .wine-card{background:#16587b;color:#f5eedd}
.landing-coastal .personal-page .beige-card{background:#e3eef1;color:#16587b}
.landing-coastal .personal-page :is(.serif-note,.capability-card.paper-card h2,.currently-section h2,.education-section>h2,.story-large,.story-chapter.paper-card h2,.story-questions em,.story-lenses>h2,.lenses-end em,.contact-current h2){color:#16587b}
.landing-coastal .personal-page :is(.page-hero .page-eyebrow,.intro-aside .page-eyebrow,.education-item>span,.education-detail,.story-hero figcaption,.chapter-art figcaption){color:#376f8a}
.landing-coastal .personal-page :is(.identity-line,.interest-list,.education-item,.story-questions){border-color:#84b3ce66}
.landing-coastal .personal-page .wine-card :is(.reading-copy,.page-eyebrow,.contact-detail h2){color:#f5eedd}
.landing-coastal .personal-page .contact-detail{border-color:#84b3ce66}
.landing-coastal .personal-page .contact-actions>a{border-color:#84b3ce;color:#16587b}
.landing-coastal .personal-page .contact-actions>a:hover{background:#16587b;color:#f5eedd}
.landing-coastal .lens-panels>a{background:#e3eef1;color:#16587b}
.landing-coastal .lens-panels>a:first-child{background:#16587b;color:#f5eedd}
.landing-coastal .lens-panels>a:last-child{background:#f5eedd}
.landing-coastal .lens-arrow{background:#fdfbf7;color:#16587b}
.landing-coastal.home-surface footer,.landing-coastal.home-surface footer span:nth-child(2){background:#f5eedd;color:#376f8a}
.landing-coastal :is(a,button,[tabindex]):focus-visible{outline-color:#16587b}
.landing-coastal .wine-card :is(a,button):focus-visible,.landing-coastal .lens-panels>a:first-child:focus-visible{outline-color:#84b3ce}

/* The leading zero stays fixed while the final digit moves in its own window. */
.work-number{display:inline-flex;align-items:flex-start;justify-content:center;height:1em;line-height:1;letter-spacing:0;padding-right:0;font-variant-numeric:tabular-nums}
.work-number-zero,.work-number-window{display:block;flex:0 0 .6em;width:.6em;height:1em;line-height:1}
.work-number-window{overflow:hidden;margin-left:-.035em}
.work-number-reel{display:block;animation:ways-of-seeing 3.8s cubic-bezier(.65,0,.35,1) infinite;animation-play-state:paused}
.work-number-reel>span{display:block;height:1em;line-height:1;text-align:center}
.work-number-reel>span:nth-child(3){transform:scale(.94);transform-origin:center .76em}
.work-note.number-running .work-number-reel{animation-play-state:running}
@keyframes ways-of-seeing{0%,3%{transform:translateY(0)}10%,12%{transform:translateY(-25%)}20%,88%{transform:translateY(-50%)}100%{transform:translateY(-75%)}}
.work-note .word-pattern{font-size:clamp(36px,4.2vw,72px);line-height:1.15;letter-spacing:-.04em;inset:-10px -24px;white-space:normal;overflow-wrap:normal}
.portrait-caption>h1{font:400 12px/1.5 'DM Sans',Arial,sans-serif;letter-spacing:0;color:inherit}
@media(max-width:760px){.work-note .word-pattern{font-size:40px;inset:-8px -16px}.portrait-caption>h1{font-size:13px}}
@media(prefers-reduced-motion:reduce){.work-number-reel{animation:none!important;transform:translateY(-50%)}}


/* coastal-site.css */
/* One shared palette for every project. Translucent rules and washes use these same three colors.
   Original photography, garment swatches, source artwork and device hardware retain their own colors. */
:root{
  --coastal-canvas:#f5eedd;
  --coastal-ink:#16587b;
  --coastal-accent:#84b3ce;
  --coastal-muted:var(--coastal-ink);
  --coastal-paper:var(--coastal-canvas);
  --coastal-wash:color-mix(in srgb,var(--coastal-accent) 16%,var(--coastal-canvas));
}
html,body{background:var(--coastal-canvas);color-scheme:light}
body.work-surface{--bg:var(--coastal-canvas);--ink:var(--coastal-ink);--muted:var(--coastal-muted);--accent:var(--coastal-ink);--line:color-mix(in srgb, var(--coastal-accent) 40%, transparent);color:var(--coastal-ink);background:var(--coastal-canvas)}
.work-surface footer{color:var(--coastal-muted);background:transparent}
.work-surface .site-header nav a{color:var(--coastal-ink)}
#project-view .project-nav,#category-view .category-breadcrumb{color:var(--coastal-muted)}
#project-view .project-nav a,#category-view .category-breadcrumb a{color:var(--coastal-ink)}
#project-view .project-nav a:hover{color:var(--coastal-muted)}
.case-next{color:var(--coastal-ink)}
.case-next .case-kicker{color:var(--coastal-muted)}
.project-motion-toggle{color:var(--coastal-muted);border-color:color-mix(in srgb, var(--coastal-accent) 40%, transparent)}
.story-progress{background:color-mix(in srgb, var(--coastal-canvas) 96.08%, transparent);color:var(--coastal-muted);border-color:color-mix(in srgb, var(--coastal-accent) 40%, transparent)}
.story-progress a>span:first-child{color:var(--coastal-muted)}
.story-progress a[aria-current=step],.story-progress a:hover{color:var(--coastal-ink);border-bottom-color:var(--coastal-ink)}
.surface-paper,.category-sheet{background:var(--coastal-paper)}
.surface-beige{background:var(--coastal-wash)}
.surface-wine,.surface-brown{--story-fg:var(--coastal-canvas);--story-secondary:var(--coastal-wash);--story-line:color-mix(in srgb, var(--coastal-accent) 40%, transparent);background:var(--coastal-ink);color:var(--story-fg)}
.story-opening-art{background:var(--coastal-paper);color:var(--coastal-ink)}
.story-opening-summary dt,.story-output small{color:var(--coastal-wash)}
.story-opening-summary dd{color:var(--coastal-canvas)}
.surface-wine .fx-visual{--fx-wine:var(--coastal-canvas);--fx-brown:var(--coastal-wash);--fx-beige:color-mix(in srgb, var(--coastal-accent) 40%, transparent)}
.surface-wine .ex-visual{--ex-wine:var(--coastal-canvas);--ex-brown:var(--coastal-wash);--ex-rule:color-mix(in srgb, var(--coastal-accent) 40%, transparent)}
.category-editorial-heading .case-kicker,.category-editorial-heading>p{color:var(--coastal-wash)}
.category-editorial-tabs a[aria-current=page]{color:var(--coastal-ink);border-bottom:1px solid currentColor}
.portfolio-entry:nth-child(3n){background:var(--coastal-canvas)}
.portfolio-entry:nth-child(3n+2){background:var(--coastal-wash)}
.bc-nav,.sc-nav,.bc-nav a,.sc-nav a{color:var(--coastal-ink)}
#project-view .story-section.surface-wine :is(.story-art,.mv-figure) figcaption,#project-view .story-section.surface-wine :is(.story-art,.mv-figure) figcaption span{color:var(--story-secondary)}
.story-opening-art .ex-visual{--ex-wine:var(--coastal-ink);--ex-brown:var(--coastal-ink);--ex-rule:color-mix(in srgb, var(--coastal-accent) 40%, transparent)}
.ih-number{color:var(--coastal-muted)}
.ih-interlude,.ih-practice{color:var(--coastal-canvas)}
.ih-practice-heading>p,.ih-practice li{color:var(--coastal-wash)}
.hive-campaign .hc-title .hc-eyebrow,.hc-scene-copy .hc-eyebrow{color:var(--coastal-wash)}
.hc-status,.hc-context-strip span,.hc-concept-note{color:var(--coastal-wash)}
.ih-runway-film video{background:var(--coastal-ink)}
#viewer{background:var(--coastal-paper);color:var(--coastal-ink)}
#viewer::backdrop{background:color-mix(in srgb, var(--coastal-ink) 87.06%, transparent)}
#viewer .viewer-header,#viewer .viewer-controls{background:var(--coastal-paper);color:var(--coastal-ink);border-color:color-mix(in srgb, var(--coastal-accent) 40%, transparent)}
#viewer .viewer-stage,#viewer img{background:transparent}
/* Keep the home link readable on every project, including keyboard focus. */
.site-header .wordmark{color:var(--coastal-ink)}
.work-surface :is(a,button,summary):focus-visible{outline-color:currentColor}
.surface-wine :is(a,button,summary):focus-visible,.surface-brown :is(a,button,summary):focus-visible{outline-color:var(--coastal-canvas)}


/* project-navigator.css */
/* A quiet collection index replaces the single next-project footer. */
.collection-navigator{color:var(--coastal-ink);margin:80px 0 30px;padding:52px 4.8% 16px;border-top:1px solid color-mix(in srgb, var(--coastal-accent) 50.2%, transparent)}
.collection-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:36px}
.collection-eyebrow,.collection-preview-label{display:block;font:400 11px/1.5 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--coastal-ink)}
.collection-heading h2{font:400 clamp(30px,3.4vw,52px)/1.08 var(--portfolio-serif);letter-spacing:-.025em;margin:14px 0 0;max-width:610px}
.collection-heading>p{font:400 12px/1.5 'DM Sans',sans-serif;white-space:nowrap;color:var(--coastal-ink);margin:0 0 4px}
.collection-layout{display:grid;grid-template-columns:1fr 1.08fr;gap:7%;align-items:start}
.collection-directory{padding-top:8px;min-width:0}
.collection-directory ol{list-style:none;margin:0;padding:0}
.collection-directory li{margin:0;padding:0;border-bottom:1px solid color-mix(in srgb, var(--coastal-accent) 40%, transparent)}
.collection-row{display:flex;gap:15px;align-items:center;min-height:72px;padding:13px 0;color:var(--coastal-ink);transition:padding .3s,color .3s}
.collection-row.is-current{color:var(--coastal-ink)}
.collection-index{flex:0 0 24px;font:400 11px/1 'DM Sans',sans-serif;font-variant-numeric:tabular-nums}
.collection-name{font:400 clamp(18px,1.7vw,25px)/1.2 var(--portfolio-serif);letter-spacing:-.01em}
.collection-row-end{margin-left:auto;display:flex;gap:15px;align-items:center;white-space:nowrap;font:400 10px/1.5 'DM Sans',sans-serif;letter-spacing:.03em}
.collection-row-end small{font:inherit}
.collection-row-end i{font:400 21px/1 'DM Sans',sans-serif;font-style:normal;transition:transform .3s}
.collection-row.is-previewed,.collection-row:hover{padding-left:10px}
.collection-row.is-previewed .collection-row-end i,.collection-row:hover .collection-row-end i{transform:translate(2px,-2px)}
.collection-row.is-current .collection-index{position:relative}
.collection-row.is-current .collection-index:before{content:'';position:absolute;width:4px;height:4px;border-radius:50%;background:currentColor;left:-11px;top:4px}
.collection-back{display:inline-flex;gap:20px;font:400 12px/1.5 'DM Sans',sans-serif;margin-top:29px;padding:4px 0;color:var(--coastal-ink)}
.collection-back:hover{color:var(--coastal-ink)}
.collection-preview{display:block;min-width:0;color:var(--coastal-ink)}
.collection-image{overflow:hidden;border-radius:12px;aspect-ratio:3/2;background:var(--coastal-wash)}
.collection-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.22,.61,.36,1)}
.collection-preview:hover .collection-image img{transform:scale(1.025)}
.collection-preview-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:19px}
.collection-preview-caption h3{font:400 clamp(23px,2.3vw,34px)/1.12 var(--portfolio-serif);letter-spacing:-.02em;margin:6px 0}
.collection-preview-caption p{font:400 12px/1.55 'DM Sans',sans-serif;color:var(--coastal-ink);margin:0}
.collection-open{display:flex;align-items:center;justify-content:center;flex:0 0 48px;height:48px;border:1px solid var(--coastal-accent);border-radius:50%;font:400 28px/1 'DM Sans',sans-serif;transition:color .3s,background .3s}
.collection-preview:hover .collection-open{background:var(--coastal-ink);color:var(--coastal-canvas)}
.collection-navigator a:focus-visible{outline:2px solid var(--coastal-ink);outline-offset:5px;border-radius:3px}
@media(max-width:760px){
 .collection-navigator{margin-top:48px;padding:34px 16px 8px}
 .collection-heading{display:block;margin-bottom:24px}
 .collection-heading h2{font-size:35px;max-width:330px;margin-top:10px}
 .collection-heading>p{margin:14px 0 0}
 .collection-layout{display:flex;flex-direction:column;gap:26px}
 .collection-preview{width:100%}
 .collection-directory{width:100%;padding-top:0}
 .collection-preview-caption h3{font-size:27px}
 .collection-row{min-height:65px;gap:10px}
 .collection-name{font-size:21px}
 .collection-row-end{gap:9px}
 .collection-back{margin-top:23px}
}
@media(prefers-reduced-motion:reduce){.collection-navigator *{transition:none!important}}


/* hwca-campaign.css */
/* HWCA: real people, a shared table, and a meeting that carries forward. */
.hwca-campaign{--hw-ink:var(--coastal-ink);--hw-copy:var(--coastal-ink);--hw-paper:var(--coastal-canvas);--hw-light:var(--coastal-wash);--hw-rule:color-mix(in srgb, var(--coastal-accent) 43.92%, transparent);color:var(--hw-ink);background:var(--hw-paper);isolation:isolate}
.hwca-campaign :is(h1,h2,h3){font-family:var(--portfolio-serif,'Cormorant Garamond',Georgia,serif);font-weight:400;letter-spacing:-.045em;line-height:1.04;color:inherit}
.hwca-campaign :is(p,li){font-size:clamp(16px,1.24vw,20px);line-height:1.65}
.hwca-campaign button{font:inherit}
.hwca-campaign :is(button,a,summary):focus-visible{outline:2px solid currentColor;outline-offset:6px}
.hw-kicker{display:block;font-size:14px;line-height:1.5;letter-spacing:.09em;text-transform:uppercase}
.hw-project-nav{font-size:14px!important;letter-spacing:0;border-bottom:0!important}
.hw-opening{padding:70px 6vw 58px;display:grid;grid-template-columns:1.65fr 1fr;gap:32px 6vw;align-items:end}
.hw-opening>.hw-kicker{grid-column:1/-1}
.hw-opening h1{font-size:clamp(64px,7.7vw,138px);max-width:1050px}
.hw-opening h1 em{font-weight:400}
.hw-opening-copy{padding-bottom:8px;max-width:420px}
.hw-opening-copy p{color:var(--hw-copy);margin-bottom:30px}
.hw-link{display:inline-flex;align-items:center;padding:10px 0;border-bottom:1px solid currentColor;font-size:16px;line-height:1.5;text-align:left}
.hw-zoom-runway{height:150svh;min-height:850px;position:relative}
.hw-zoom-sticky{position:sticky;top:0;height:100svh;min-height:570px;display:grid;align-items:center;overflow:clip}
.hw-zoom-image{position:relative;height:88%;width:100%;overflow:hidden;clip-path:inset(0 9% round 30px);will-change:clip-path}
.hw-zoom-image img{width:100%;height:100%;object-fit:cover;object-position:60% 48%;transform:scale(1.055);will-change:transform}
.hw-zoom-caption{position:absolute;inset:auto 0 0;padding:90px 6vw 35px;color:var(--hw-paper);background:linear-gradient(transparent,color-mix(in srgb, var(--coastal-ink) 85.1%, transparent));display:flex;align-items:end;justify-content:space-between;gap:28px}
.hw-zoom-caption strong{font-family:var(--portfolio-serif,'Cormorant Garamond',Georgia,serif);font-size:clamp(32px,3.8vw,65px);font-weight:400;line-height:1.05;max-width:750px}
.hw-zoom-caption span{font-size:14px;line-height:1.5;text-align:right}
#project-view .hw-zoom-caption,#project-view .hw-zoom-caption :is(strong,span){color:var(--coastal-canvas)}
.hw-context{padding:85px 6vw 90px;display:grid;grid-template-columns:1.35fr 1fr;gap:50px 8vw;border-bottom:1px solid var(--hw-rule)}
.hw-context h2{font-size:clamp(40px,4.6vw,76px)}
.hw-context-copy p{color:var(--hw-copy)}
.hw-context-copy p+p{margin-top:18px}
.hw-meta{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-top:20px}
.hw-meta>div{border-top:1px solid var(--hw-rule);padding-top:18px;font-size:16px;line-height:1.5}
.hw-meta span{display:block;font-size:14px;color:var(--hw-copy);margin-bottom:9px}
.hw-gallery{padding:100px 6vw 105px}
.hw-section-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:65px}
.hw-section-heading h2{font-size:clamp(44px,5.7vw,92px);margin-top:18px;max-width:800px}
.hw-section-heading>p{max-width:340px;color:var(--hw-copy)}
.hw-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:76px 5vw}
.hw-photo-scene{position:relative;width:100%;display:flex;align-items:center;justify-content:center;aspect-ratio:1.45;background:none;padding:0;isolation:isolate}
.hw-photo-scene:before{content:'';position:absolute;inset:23% 0;z-index:-1;background:var(--hw-ink)}
.hw-photo:nth-child(2) .hw-photo-scene:before,.hw-photo:nth-child(3) .hw-photo-scene:before{background:var(--coastal-accent)}
.hw-photo-window{display:block;width:69%;aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:0 20px 30px -25px color-mix(in srgb, var(--coastal-ink) 45.88%, transparent);transition:transform .65s cubic-bezier(.22,.61,.36,1);background:var(--hw-light)}
.hw-photo-window img{width:100%;height:100%;object-fit:cover;object-position:var(--photo-position,50% 50%);transition:transform .7s cubic-bezier(.22,.61,.36,1)}
.hw-photo:nth-child(2) .hw-photo-window img{transform:scale(1.055)}
.hw-photo-scene:hover .hw-photo-window img{transform:scale(1.04)}
.hw-photo:nth-child(2) .hw-photo-scene:hover .hw-photo-window img{transform:scale(1.085)}
.hw-photo figcaption{margin:30px 0 0 5%;padding-left:23px;border-left:2px solid var(--hw-ink)}
.hw-photo figcaption h3{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(21px,2vw,29px);font-weight:500;letter-spacing:-.02em;line-height:1.25}
.hw-photo figcaption p{color:var(--hw-copy);margin-top:10px;max-width:480px}
.hw-photo figcaption small{display:block;font-size:14px;margin-top:13px;color:var(--hw-copy)}
.hw-methods{padding:85px 6vw 80px;background:var(--hw-ink);color:var(--hw-paper)}
.hw-methods .hw-section-heading>p{color:var(--hw-light)}
.hw-methods .hw-section-heading{margin-bottom:48px}
.hw-method-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-bottom:1px solid color-mix(in srgb, var(--coastal-accent) 50.2%, transparent);margin:0}
.hw-method-tabs button{position:relative;padding:22px 15px 23px 0;text-align:left;border-bottom:3px solid transparent;opacity:.65;font-size:20px;line-height:1.4}
.hw-method-tabs button span{display:block;font-size:14px;letter-spacing:.04em;margin-bottom:9px}
.hw-method-tabs button[aria-selected=true]{border-color:var(--hw-paper);opacity:1}
.hw-method-tabs button:hover{opacity:1}
.hw-method-panel{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-top:42px;min-height:280px}
.hw-method-panel h3{font-size:clamp(36px,3.8vw,58px);margin-top:15px}
.hw-method-panel p{color:var(--hw-light)}
.hw-evidence-links{display:flex;flex-wrap:wrap;gap:8px 25px;margin-top:24px}
.hw-evidence-links .hw-link{font-size:14px;padding:6px 0}
.hw-change{padding:95px 6vw;background:var(--hw-light);display:grid;grid-template-columns:1fr 1fr;gap:50px 7vw;align-items:center}
.hw-change h2{font-size:clamp(45px,5.5vw,85px);margin:20px 0}
.hw-change p{max-width:550px;color:var(--hw-copy)}
.hw-change-diagram{padding:10px 0}
.hw-old-idea{color:var(--hw-copy);display:flex;justify-content:space-between;gap:25px;font-size:16px;padding:0 0 24px;border-bottom:1px solid var(--hw-rule)}
.hw-old-idea span:last-child{text-align:right}
.hw-arrival{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:25px;padding:25px 0 0}
.hw-arrival-number{font-size:clamp(75px,9vw,142px);font-weight:500;letter-spacing:-.08em;line-height:1}
.hw-arrival-number small{font-size:15px;letter-spacing:0;padding-left:10px}
.hw-arrival h3{font-size:clamp(29px,3vw,48px)}
.hw-arrival p{font-size:16px;margin-top:10px}
.hw-cycle{padding:95px 6vw}
.hw-cycle .hw-section-heading{margin-bottom:40px}
.hw-cycle-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;position:relative;margin:0 0 44px}
.hw-cycle-tabs:before{content:'';position:absolute;left:8%;right:8%;top:24px;height:1px;background:var(--hw-rule)}
.hw-cycle-tabs button{display:flex;position:relative;align-items:center;flex-direction:column;gap:15px;min-height:98px;padding:0;text-align:center;font-size:16px;background:none;color:var(--hw-copy)}
.hw-cycle-tabs button span{display:grid;place-items:center;width:50px;height:50px;border:1px solid var(--hw-rule);border-radius:50%;background:var(--hw-paper);font-size:16px;transition:background .3s,color .3s}
.hw-cycle-tabs button[aria-selected=true]{color:var(--hw-ink)}
.hw-cycle-tabs button[aria-selected=true] span{background:var(--hw-ink);color:var(--hw-paper);border-color:var(--hw-ink)}
.hw-cycle-panel{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center;background:var(--coastal-canvas);padding:40px}
.hw-cycle-panel h3{font-size:clamp(36px,4vw,60px);margin:18px 0}
.hw-cycle-panel p{color:var(--hw-copy)}
.hw-cycle-panel ul{padding-left:20px;margin:20px 0 24px}
.hw-cycle-panel li{font-size:16px;padding:3px 0}
.hw-cycle-art{width:100%;padding:0;background:none}
.hw-cycle-art img{width:100%;height:auto;max-height:450px;object-fit:contain;background:transparent}
.hw-cycle-art span{display:block;margin-top:15px;font-size:14px}
.hw-carry{padding-top:20px;border-top:1px solid var(--hw-rule);font-size:16px;line-height:1.6}
.hw-carry span{display:block;font-size:14px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px}
.hw-closing{padding:90px 6vw 75px;border-top:1px solid var(--hw-rule);display:grid;grid-template-columns:1.2fr 1fr;gap:35px 8vw}
.hw-closing h2{font-size:clamp(46px,5.6vw,88px);margin-top:18px}
.hw-closing>div:nth-child(2){padding-top:38px}
.hw-closing p{color:var(--hw-copy)}
.hw-closing p+p{margin-top:20px}
.hw-credits{grid-column:1/-1;border-top:1px solid var(--hw-rule);padding-top:24px;margin-top:25px;font-size:14px;line-height:1.6}
.hw-credits summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;padding:6px 0}
.hw-credits summary::-webkit-details-marker{display:none}
.hw-credits summary:after{content:'+';font-size:20px}
.hw-credits[open] summary:after{content:'−'}
.hw-credits p{max-width:850px;font-size:14px;margin-top:15px}
@media(min-width:1800px){.hw-opening,.hw-context,.hw-gallery,.hw-methods,.hw-change,.hw-cycle,.hw-closing{padding-left:max(6vw,calc((100% - 1580px)/2));padding-right:max(6vw,calc((100% - 1580px)/2))}}
@media(max-width:900px){.hw-opening{grid-template-columns:1fr;padding-top:45px}.hw-opening-copy{max-width:620px;display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end}.hw-opening-copy p{margin:0}.hw-context{gap:35px}.hw-section-heading{display:block}.hw-section-heading>p{margin-top:24px;max-width:580px}.hw-photo-grid{gap:50px 30px}.hw-photo figcaption{margin-left:0;padding-left:16px}.hw-method-tabs button{font-size:17px}.hw-method-panel{gap:35px;min-height:320px}.hw-cycle-panel{padding:28px;gap:28px}.hw-change{gap:35px}.hw-meta{gap:20px}}
@media(max-width:600px){.hw-project-nav{font-size:13px!important}.hw-project-nav>a:last-child{display:none}.hw-opening{padding:32px 6vw 32px;gap:22px}.hw-opening h1{font-size:clamp(48px,12.2vw,72px)}.hw-opening-copy{display:block}.hw-opening-copy p{font-size:16px}.hw-opening-copy .hw-link{margin-top:12px}.hw-kicker{font-size:12px}.hw-zoom-runway{height:115svh;min-height:690px}.hw-zoom-sticky{height:82svh;min-height:480px}.hw-zoom-image{height:90%;clip-path:inset(0 5% round 20px)}.hw-zoom-image img{object-position:72% 50%}.hw-zoom-caption{display:block;padding:75px 7vw 24px}.hw-zoom-caption strong{font-size:32px}.hw-zoom-caption span{display:block;font-size:12px;text-align:left;margin-top:16px}.hw-context,.hw-gallery,.hw-methods,.hw-change,.hw-cycle,.hw-closing{padding:58px 6vw}.hw-context,.hw-change,.hw-closing{grid-template-columns:1fr;gap:26px}.hw-context h2{font-size:40px}.hw-meta{grid-template-columns:1fr;gap:18px;padding-top:10px}.hw-meta>div{padding-top:12px}.hw-meta span{margin-bottom:4px}.hw-section-heading{margin-bottom:35px}.hw-section-heading h2{font-size:43px}.hw-photo-grid{grid-template-columns:1fr;gap:48px}.hw-photo-scene{aspect-ratio:1.32}.hw-photo-window{width:75%}.hw-photo figcaption{margin-top:20px}.hw-photo figcaption p{font-size:16px}.hw-method-tabs{grid-template-columns:1fr 1fr;gap:0 22px}.hw-method-tabs button{font-size:17px;padding-top:18px}.hw-method-panel{grid-template-columns:1fr;gap:24px;min-height:0}.hw-method-panel h3{font-size:37px}.hw-evidence-links{margin-top:18px}.hw-change h2{font-size:43px}.hw-arrival-number{font-size:104px}.hw-arrival h3{font-size:31px}.hw-cycle-tabs{gap:4px;margin-bottom:28px}.hw-cycle-tabs button{font-size:12px;gap:11px;min-height:83px}.hw-cycle-tabs button span{width:40px;height:40px;font-size:14px}.hw-cycle-tabs:before{top:20px}.hw-cycle-panel{grid-template-columns:1fr;padding:24px 20px;gap:30px}.hw-cycle-panel h3{font-size:37px}.hw-cycle-art img{max-height:300px}.hw-closing h2{font-size:46px}.hw-closing>div:nth-child(2){padding-top:0}.hw-credits{margin-top:10px}.hw-zoom-image,.hw-zoom-image img{will-change:auto}}
@media(prefers-reduced-motion:reduce){.hw-zoom-runway{height:auto;min-height:0}.hw-zoom-sticky{position:relative;height:75svh;min-height:400px}.hw-zoom-image{clip-path:none!important;will-change:auto}.hw-zoom-image img{transform:none!important;will-change:auto}.hwca-campaign *{animation:none!important;transition:none!important}}

/* The revised direction pairs edited client photography with a sculptural hand. */
.hw-studio{position:relative;display:grid;grid-template-columns:1.1fr 1fr;min-height:min(830px,90svh);padding:55px 6vw 65px;align-items:center;gap:3vw;overflow:clip}
.hw-studio-copy{position:relative;z-index:2}
.hw-studio-copy h1{font-size:clamp(82px,9.3vw,158px);line-height:.87;margin:35px 0;letter-spacing:-.055em}
.hw-studio-copy h1 em{display:block;font-weight:400}
.hw-studio-copy>p{max-width:450px;color:var(--hw-copy);font-size:clamp(17px,1.4vw,22px)}
.hw-studio-copy .hw-link{margin-top:27px}
.hw-hand-stage{position:relative;aspect-ratio:.92;display:flex;align-items:center;justify-content:center;perspective:1000px}
.hw-hand-object{width:105%;max-height:700px;object-fit:contain;transform-origin:50% 70%;animation:hw-hand-breathe 11s ease-in-out infinite;animation-play-state:paused}
.hw-hand-stage.is-visible .hw-hand-object{animation-play-state:running}
.hw-hand-label{position:absolute;right:0;bottom:0;text-align:right;font-size:14px;line-height:1.6;color:var(--hw-copy)}
.hw-studio-foot{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--hw-rule);padding-top:24px;margin-top:30px;font-size:14px;line-height:1.6}
.hw-studio-foot>span{max-width:540px}
.hw-studio-foot b{font-size:24px;font-weight:400;margin-right:8px}
.hw-editorial .hw-zoom-runway{height:135svh;min-height:780px}
.hw-editorial .hw-zoom-sticky{height:94svh;min-height:540px}
.hw-editorial .hw-zoom-image{height:90%}
.hw-editorial .hw-zoom-image img{object-position:50% 45%}
.hw-editorial .hw-context{padding-top:70px;padding-bottom:70px}
.hw-client-story{padding:90px 6vw 100px}
.hw-client-story .hw-section-heading h2{max-width:800px}
.hw-client-layout{display:grid;grid-template-columns:1.18fr .82fr;gap:6vw;align-items:start}
.hw-client-layout>.hw-client-portrait{grid-row:span 2}
.hw-client-layout>.hw-client-notes{padding-top:0}
.hw-client-layout>.hw-conversation-flow{margin-top:0}
.hw-client-layout-graphic{grid-template-columns:1fr 1fr;padding-top:30px;border-top:1px solid var(--hw-rule)}
.hw-client-portrait{position:relative;padding-top:42px}
.hw-client-portrait:before{content:'';width:68%;height:78%;background:var(--hw-light);position:absolute;left:-18px;top:0;z-index:-1}
.hw-client-image{display:block;position:relative;width:100%;padding:0;overflow:hidden;aspect-ratio:1.2;background:var(--hw-light)}
.hw-client-image img{width:100%;height:100%;object-fit:cover;object-position:var(--client-position,50% 50%);transition:transform 900ms cubic-bezier(.22,.61,.36,1)}
.hw-client-image:hover img{transform:scale(1.035)}
.hw-client-portrait figcaption{display:flex;justify-content:space-between;gap:20px;font-size:14px!important;line-height:1.5;padding-top:20px}
.hw-client-portrait figcaption span:last-child{text-align:right}
.hw-client-notes{padding-top:55px}
.hw-client-notes h3{font-size:clamp(36px,3.9vw,60px);margin-bottom:23px}
.hw-client-notes>p{color:var(--hw-copy);max-width:470px}
.hw-conversation-flow{margin-top:38px;display:grid;gap:0;position:relative}
.hw-conversation-flow:before{content:'';position:absolute;left:17px;top:20px;bottom:20px;width:1px;background:var(--hw-rule)}
.hw-conversation-flow>div{display:grid;grid-template-columns:36px 1fr;gap:20px;position:relative;padding:0 0 25px}
.hw-conversation-flow>div:last-child{padding-bottom:0}
.hw-conversation-flow span{display:grid;place-items:center;align-self:start;width:36px;height:36px;border-radius:50%;background:var(--hw-paper);border:1px solid var(--hw-rule);font-size:13px}
.hw-conversation-flow p{font-size:16px;line-height:1.55;max-width:440px;padding-top:4px}
.hw-conversation-flow strong{display:block;font-weight:500;margin-bottom:5px}
.hw-client-footnote{margin-top:22px;font-size:13px!important;color:var(--hw-copy)}
.hw-editorial .hw-methods{position:relative;overflow:clip}
.hw-methods .hw-kicker{color:inherit}
.hw-editorial .hw-methods .hw-section-heading h2{max-width:770px}
.hw-editorial .hw-change{background:var(--hw-paper);border-bottom:1px solid var(--hw-rule)}
.hw-editorial .hw-cycle{background:var(--hw-light)}
.hw-editorial .hw-cycle-tabs button span{background:var(--hw-light)}
.hw-editorial .hw-cycle-tabs button[aria-selected=true] span{background:var(--hw-ink)}
.hw-editorial .hw-cycle-panel{background:var(--hw-paper)}
@keyframes hw-hand-breathe{0%,100%{transform:translateY(9px) rotate(-5deg) rotateY(-7deg)}50%{transform:translateY(-10px) rotate(2deg) rotateY(5deg)}}
@media(max-width:900px){.hw-studio{padding-top:40px;gap:0;min-height:630px}.hw-studio-copy h1{font-size:11vw}.hw-hand-object{width:118%}.hw-studio-foot{margin-top:20px}.hw-client-layout{gap:35px}.hw-client-portrait{padding-top:25px}.hw-client-notes{padding-top:25px}.hw-client-notes h3{font-size:38px}}
@media(max-width:600px){.hw-studio{display:block;padding:32px 6vw 35px;min-height:0}.hw-studio-copy h1{font-size:clamp(76px,19vw,105px);margin:28px 0}.hw-studio-copy>p{font-size:17px;max-width:340px}.hw-studio-copy .hw-link{margin-top:18px}.hw-hand-stage{width:86%;margin:0 0 0 auto;aspect-ratio:1;max-height:370px}.hw-hand-object{width:110%;max-height:370px}.hw-hand-label{font-size:12px;right:0;bottom:5px}.hw-studio-foot{display:block;margin-top:25px;padding-top:18px}.hw-studio-foot>span{display:block}.hw-studio-foot>span+span{margin-top:12px}.hw-studio-foot b{font-size:21px}.hw-editorial .hw-zoom-runway{height:110svh;min-height:650px}.hw-editorial .hw-zoom-sticky{height:80svh;min-height:460px}.hw-editorial .hw-zoom-image img{object-position:var(--hero-mobile-position,50% 50%)}.hw-client-story{padding:60px 6vw}.hw-client-layout{grid-template-columns:1fr;gap:28px}.hw-client-portrait{padding-top:24px}.hw-client-portrait:before{left:-10px}.hw-client-image{aspect-ratio:1.05}.hw-client-notes{padding-top:0}.hw-client-notes h3{font-size:39px}.hw-client-portrait figcaption{font-size:12px!important}.hw-client-footnote{font-size:12px!important}.hw-conversation-flow{margin-top:28px}.hw-editorial .hw-context{padding-top:55px;padding-bottom:55px}}
@media(prefers-reduced-motion:reduce){.hw-hand-object{animation:none;transform:none}.hw-editorial .hw-zoom-runway{height:auto;min-height:0}.hw-editorial .hw-zoom-sticky{position:relative;height:75svh;min-height:420px}.hw-client-image img{transition:none}}
@media(max-width:600px){#project-view .hw-project-nav>a:last-child{display:none}.hw-client-layout-graphic{grid-template-columns:1fr}.hw-client-layout>.hw-client-portrait{grid-row:auto}}

/* Preserve the full workshop scenes, with the same quiet rhythm as the opening. */
.hw-editorial .hw-zoom-sticky{justify-items:center}
.hw-editorial .hw-zoom-image{width:min(100%,126svh);height:auto;aspect-ratio:3/2;margin:0}
.hw-editorial .hw-zoom-image img{display:block;object-position:center}
.hw-zoom-open{display:block;width:100%;height:100%;padding:0;background:none}
.hw-editorial .hw-zoom-caption{pointer-events:none}
.hw-editorial .hw-zoom-caption{margin:0;padding:90px 4vw 28px}
.hw-editorial .hw-zoom-caption strong{font-size:clamp(30px,3.5vw,60px)}
.hw-client-layout{column-gap:5vw;row-gap:30px;grid-template-columns:1.25fr .75fr}
.hw-client-portrait{padding-top:0}
.hw-client-portrait:before{display:none}
.hw-client-image{aspect-ratio:3/2}
.hw-client-image.hw-client-image-strip img{position:absolute;left:-318.6111%;top:-2.5%;width:420.5556%;height:105.8333%;max-width:none;object-fit:fill;transform:none}
.hw-client-image.hw-client-image-strip:hover img{transform:none}
.hw-client-portrait figcaption{font-size:13px!important;gap:12px}
.hw-client-notes h3{font-size:clamp(32px,3.1vw,49px)}
.hw-client-notes>p{font-size:17px}
.hw-conversation-flow>div{padding-bottom:19px;gap:14px}
.hw-conversation-flow p{font-size:15px}
.hw-workshop-closing{grid-column:1/-1;width:88%;margin:0 0 45px auto}
.hw-workshop-closing button{display:block;width:100%;padding:0;overflow:hidden;background:none}
.hw-workshop-closing img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform 900ms cubic-bezier(.22,.61,.36,1)}
.hw-workshop-closing button:hover img{transform:scale(1.02)}
.hw-workshop-closing figcaption{display:flex;justify-content:space-between;gap:20px;font-size:14px!important;padding-top:12px}
.hw-editorial .hw-closing>div{padding-top:0}
@media(max-width:900px){.hw-client-layout{grid-template-columns:1fr}.hw-client-layout>.hw-client-portrait{grid-row:auto}.hw-client-image{max-width:none}.hw-client-notes h3{font-size:42px}.hw-workshop-closing{width:100%}}
@media(max-width:600px){.hw-editorial .hw-zoom-runway{height:85svh;min-height:550px}.hw-editorial .hw-zoom-sticky{height:68svh;min-height:430px}.hw-editorial .hw-zoom-image{width:100%;aspect-ratio:auto}.hw-editorial .hw-zoom-image img{aspect-ratio:3/2;object-fit:cover;height:auto}.hw-editorial .hw-zoom-caption{position:relative;display:block;padding:22px 5vw;background:var(--hw-ink)}.hw-editorial .hw-zoom-caption strong{font-size:29px}.hw-editorial .hw-zoom-caption span{margin-top:13px}.hw-client-portrait figcaption{font-size:12px!important}.hw-client-notes h3{font-size:36px}.hw-workshop-closing{margin-bottom:15px}.hw-workshop-closing figcaption{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){.hw-editorial .hw-zoom-runway{height:auto;min-height:0}.hw-editorial .hw-zoom-sticky{height:auto;min-height:0;padding:20px 0}.hw-workshop-closing img{transition:none}}


/* hive-book.css */
/* Bumble: an open, publication-led story in the coastal palette. */
.hive-campaign.hive-editorial{border-radius:0;overflow:clip;--hb-tilt:-5deg;--hb-scale:.94;background:var(--coastal-canvas);color:var(--coastal-ink)}
.hb-opening{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:0 5%;padding:25px 4% 0;background:var(--coastal-canvas);color:var(--coastal-ink)}
.hb-masthead,.hb-colophon{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;font-size:13px;line-height:1.5}
.hb-masthead{padding-bottom:35px}.hb-masthead>span:first-child{font-size:17px}.hb-masthead-divider{padding:0 12px;color:var(--coastal-accent)}
.hb-masthead>span:last-child{align-self:center}
.hb-headline{align-self:center;padding:32px 0 65px}
.hb-edition{font-size:12px;line-height:1.5;letter-spacing:.09em;text-transform:uppercase}
.hive-editorial .hb-headline h1{font-size:clamp(75px,7.4vw,128px);line-height:.94;margin:24px 0 32px;letter-spacing:-.055em;white-space:normal}
.hb-headline h1 em{font-weight:400}.hb-deck{max-width:335px}
.hive-editorial .hb-deck>p{font:400 clamp(24px,2.3vw,34px)/1.16 var(--portfolio-serif);margin:0 0 22px}
.hb-summary{display:block;font-size:16px;line-height:1.65;max-width:300px}
.hb-deck nav{display:flex;gap:30px;margin-top:28px;font-size:14px}
.hb-deck a{padding:8px 0;border-bottom:1px solid var(--coastal-accent)}
.hb-reader{min-width:0;padding:25px 0 15px;align-self:center;scroll-margin-top:35px}
.hb-reader-heading{display:flex;justify-content:space-between;gap:22px;font-size:12px;line-height:1.6}
.hb-reader-heading>span:last-child{color:var(--coastal-ink)}
.hb-book-stage{position:relative;width:100%;padding:32px 0 36px;isolation:isolate;touch-action:pan-y;outline-offset:6px}
.hb-book-perspective{width:97%;margin:auto;transform:rotate(var(--hb-tilt)) scale(var(--hb-scale));transform-origin:50% 55%;will-change:transform}
.hb-book{position:relative;width:100%;aspect-ratio:150/100;transform-style:preserve-3d;transition:translate 1.1s cubic-bezier(.38,.05,.2,1);perspective:3600px}
.hb-book[data-position=cover]{translate:-25% 0}.hb-book[data-position=back]{translate:25% 0}
.hb-page,.hb-leaf{position:absolute;top:0;width:50%;height:100%}
.hb-page{background:var(--coastal-canvas);box-shadow:0 1px 0 var(--coastal-accent),0 3px 0 var(--coastal-canvas),0 4px 0 var(--coastal-accent),0 6px 0 var(--coastal-canvas);overflow:hidden}
.hb-page-left{left:0;border-radius:3px 0 0 3px}.hb-page-right{left:50%;border-radius:0 3px 3px 0}
.hb-page.is-empty{visibility:hidden;box-shadow:none}
.hive-editorial .hb-book img,.hive-editorial .hb-mobile-page img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;border-radius:0;transform:none;background:var(--coastal-canvas);filter:none;user-select:none}
.hb-page:after,.hb-leaf-face:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 80%,color-mix(in srgb,var(--coastal-ink) 15%,transparent))}
.hb-page-right:after{background:linear-gradient(90deg,color-mix(in srgb,var(--coastal-ink) 17%,transparent),transparent 9%)}
.hb-leaf{display:none;z-index:4;transform-style:preserve-3d;will-change:transform}
.hb-leaf.is-turning{display:block}.hb-leaf.turn-forward{left:50%;transform-origin:left center}.hb-leaf.turn-backward{left:0;transform-origin:right center}
.hb-leaf-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:var(--coastal-canvas);overflow:hidden;box-shadow:0 4px 7px color-mix(in srgb,var(--coastal-ink) 20%,transparent)}
.hb-leaf-back{transform:rotateY(180deg)}
.hb-mobile-page{display:none}

.hb-page{box-shadow:0 1px 0 var(--coastal-accent),0 3px 0 var(--coastal-canvas),0 4px 0 color-mix(in srgb,var(--coastal-accent) 60%,transparent),0 6px 0 var(--coastal-canvas),0 16px 25px -14px color-mix(in srgb,var(--coastal-ink) 30%,transparent)}
.hb-reader-controls{display:flex;justify-content:center;padding:8px 0 0}
.hb-explore{position:relative;width:100%;text-align:center}
.hb-reader-controls button{background:none;color:inherit;border:0;border-radius:0;font:inherit;font-size:14px;min-height:44px;padding:8px 0;cursor:pointer;text-underline-offset:5px}
.hb-reader-controls>div>button{border-bottom:1px solid var(--coastal-accent);padding-inline:3px}
.hb-reader-controls button:hover{text-decoration:underline}
.hb-reader-controls [data-book-explore]:hover{text-decoration:none;border-bottom-color:var(--coastal-ink)}
.hb-contents{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);z-index:8;display:grid;grid-template-columns:90px minmax(0,1fr);gap:22px;width:min(390px,100%);padding:22px;background:var(--coastal-canvas);border:1px solid var(--coastal-accent);box-shadow:0 12px 35px color-mix(in srgb,var(--coastal-ink) 12%,transparent);text-align:left;box-sizing:border-box}
.hb-contents[hidden]{display:none}
.hb-reader-controls .hb-contents-cover{align-self:start;padding:0;display:flex;flex-direction:column;gap:12px;text-align:left}
.hive-editorial .hb-contents-cover img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:850/1133;object-fit:contain;border-radius:0}
.hb-contents-topics{display:flex;flex-direction:column}
.hb-reader-controls .hb-contents-topics button{text-align:left;padding:10px 0;line-height:1.5}
.hb-contents button[aria-current=true]{text-decoration:underline;text-underline-offset:5px}
.hb-colophon{padding:25px 0;margin-top:22px;border-top:1px solid color-mix(in srgb,var(--coastal-accent) 50%,transparent);font-size:12px}
.hb-atmosphere{padding-top:35px;overflow:hidden}
.hive-editorial .hb-atmosphere img{display:block;width:100%;height:auto;aspect-ratio:1.95;object-fit:cover;object-position:center 48%;border-radius:0;max-height:850px}
#project-view .hb-atmosphere figcaption{display:flex;justify-content:space-between;gap:25px;font-size:12px;line-height:1.6;padding:20px 4%;color:var(--coastal-ink);background:transparent}
#project-view .hb-atmosphere figcaption span:first-child{font-family:var(--portfolio-serif);font-size:24px}
.hb-feeling-strip{padding:25px 0 30px;overflow:hidden;background:var(--coastal-canvas);color:var(--coastal-ink);border-bottom:1px solid color-mix(in srgb,var(--coastal-accent) 45%,transparent)}
.hb-feeling-strip>div{display:flex;align-items:baseline;gap:0;width:max-content;animation:hb-feelings 38s linear infinite}
.hb-feeling-strip span,.hb-feeling-strip em{font:400 clamp(40px,4vw,65px)/1 var(--portfolio-serif);letter-spacing:-.035em;white-space:nowrap;padding-right:75px}
.hb-feeling-strip em{font-style:italic}
@keyframes hb-feelings{to{transform:translateX(-50%)}}
/* One continuous canvas, with imagery and type carrying the section rhythm. */
.hive-editorial .hc-context-strip{background:transparent;color:var(--coastal-ink);padding:45px 5%;gap:40px}
.hive-editorial .hc-context-strip span{color:var(--coastal-ink);font-size:13px}.hive-editorial .hc-context-strip p{font-size:15px;line-height:1.75}
.hive-editorial .hc-intro{padding:75px 5% 105px;text-align:left;display:grid;grid-template-columns:1.45fr 1fr;gap:25px 8%;align-items:end}
.hive-editorial .hc-intro>.hc-eyebrow{grid-column:1/-1}
.hive-editorial .hc-intro h2{font-size:clamp(46px,5vw,76px);margin:0;line-height:1.05}
.hive-editorial .hc-intro>p{font-size:17px;margin:0;max-width:420px}
.hive-editorial .hc-section-heading{text-align:left}
.hive-editorial .hc-experience{padding:30px 5% 90px}
.hive-editorial .hc-section-heading h2{font-size:clamp(44px,4.8vw,72px);line-height:1.06;margin:20px 0 45px}
.hive-editorial .hc-scene-shell{background:transparent;color:var(--coastal-ink);border-radius:0;overflow:visible;display:flex;flex-direction:column}
.hive-editorial .hc-scene-nav{order:-1;justify-content:flex-start;gap:0;padding:0;border-bottom:1px solid color-mix(in srgb,var(--coastal-accent) 65%,transparent)}
.hive-editorial .hc-scene-nav button{flex:1;justify-content:flex-start;border:0;border-bottom:2px solid transparent;border-radius:0;padding:20px 14px 20px 0;color:var(--coastal-ink);background:none;font-size:15px;gap:15px}
.hive-editorial .hc-scene-nav button[aria-selected=true]{background:none;border-bottom-color:var(--coastal-ink);color:var(--coastal-ink)}
.hive-editorial .hc-scene{grid-template-columns:.6fr 1.4fr;gap:7%;padding:40px 0 0;min-height:440px}
.hive-editorial .hc-scene-copy .hc-eyebrow,.hive-editorial .hc-scene-copy>p,.hive-editorial .hc-concept-note,.hive-editorial .hc-scene-enlarge{color:var(--coastal-ink)}
.hive-editorial .hc-scene-copy h3{font-size:clamp(32px,3.5vw,52px);margin:22px 0}
.hive-editorial .hc-scene figure img{max-height:none;width:100%;aspect-ratio:1.83;object-fit:contain}
.hive-editorial .hc-concept-note{display:none}
.hive-editorial .hc-scene-enlarge{border-bottom:1px solid var(--coastal-accent);padding:10px 0;font-size:13px}
.hive-editorial .hc-scene-foot{text-align:left;margin-top:25px;font-size:12px}
.hive-editorial .hc-research{background:transparent;padding:85px 5% 100px;grid-template-columns:1.1fr .8fr .8fr;gap:5%;border-top:1px solid color-mix(in srgb,var(--coastal-accent) 50%,transparent);align-items:start}
.hive-editorial .hc-research-copy{padding-top:45px}.hive-editorial .hc-research-copy h2{font-size:clamp(42px,4vw,64px)}
.hive-editorial .hc-research figure:last-child{padding-top:90px}
.hive-editorial .hc-research img{aspect-ratio:3/4;object-fit:cover}
.hive-editorial .hc-research figcaption{border-top:1px solid color-mix(in srgb,var(--coastal-accent) 60%,transparent);margin-top:16px;padding-top:12px}
.hive-editorial .hc-framework{padding:75px 5% 85px;background:var(--coastal-wash)}
.hive-editorial .hc-phase-map{margin-top:55px}.hive-editorial .hc-phase-map button:before{box-shadow:0 0 0 7px var(--coastal-wash)}
.hive-editorial .hc-phase-map strong{font-size:clamp(34px,4.6vw,66px)}
.hive-editorial .hc-phase-detail{gap:10%;padding:25px 0;min-height:210px}
.hive-editorial .hc-outcomes{padding:105px 5% 45px}
.hive-editorial .hc-evidence{grid-template-columns:1fr 1fr;gap:65px 6%;padding-top:10px}
.hive-editorial .hc-evidence figure:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.15fr .85fr;gap:9%;align-items:center}
.hive-editorial .hc-evidence figure:first-child figcaption{max-width:290px}
.hive-editorial .hc-evidence img{aspect-ratio:auto;max-height:550px;object-fit:contain}
.hive-editorial .hc-evidence h3{font-size:clamp(32px,3vw,44px);margin-top:14px}
.hive-editorial .hc-credits{margin-top:70px}
.hb-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){
 .hb-opening{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:0 4%;padding-inline:3%}.hive-editorial .hb-headline h1{font-size:8vw}.hb-summary{font-size:15px}
 .hive-editorial .hc-research{grid-template-columns:1fr 1fr;gap:35px}.hive-editorial .hc-research-copy{grid-column:1/-1;max-width:650px;padding-top:0}.hive-editorial .hc-research figure:last-child{padding-top:50px}
 .hive-editorial .hc-scene{gap:5%;min-height:380px}.hive-editorial .hc-scene-nav button{font-size:14px;gap:10px}
}
@media(max-width:700px){
 #project-view.case-bumble>.project-nav>span{display:none}
 .hb-opening{display:block;padding:18px 5% 0}.hb-masthead{font-size:12px;padding-bottom:24px}.hb-masthead>span:first-child{font-size:16px}.hb-masthead-divider{padding:0 7px}
 .hb-headline{padding:25px 0 30px}.hb-edition{font-size:11px}.hive-editorial .hb-headline h1{font-size:clamp(76px,19vw,125px);line-height:.92;margin:20px 0 25px}.hb-deck{max-width:none}.hive-editorial .hb-deck>p{font-size:27px}.hb-summary{font-size:16px;max-width:330px}.hb-deck nav{margin-top:18px;font-size:14px}
 .hb-reader{padding:20px 0 15px}.hb-reader-heading{font-size:11px;gap:20px}.hb-reader-heading span:last-child{text-align:right}
 .hb-book-stage{padding:30px 0 35px}.hb-book-perspective{display:none}.hb-mobile-page{display:block;width:82%;max-width:355px;aspect-ratio:850/1133;margin:auto;box-shadow:2px 2px 0 var(--coastal-accent),4px 4px 0 var(--coastal-canvas),8px 15px 25px -10px color-mix(in srgb,var(--coastal-ink) 25%,transparent);transform-origin:left center}
 .hb-reader-controls{padding:8px 0}.hb-contents{grid-template-columns:70px minmax(0,1fr);gap:17px;padding:18px}.hb-reader-controls button{font-size:14px}
 .hb-colophon{font-size:11px;line-height:1.7;padding:20px 0;gap:20px;margin-top:10px}.hb-colophon span:last-child{text-align:right}
 .hb-atmosphere{padding-top:24px}.hive-editorial .hb-atmosphere img{aspect-ratio:1.2;object-position:center center}
 #project-view .hb-atmosphere figcaption{flex-wrap:wrap;font-size:11px;gap:4px 15px;padding:15px 5%}#project-view .hb-atmosphere figcaption span:first-child{width:100%;font-size:24px}#project-view .hb-atmosphere figcaption span:last-child{margin-left:auto}
 .hb-feeling-strip{padding:24px 0}.hb-feeling-strip span,.hb-feeling-strip em{font-size:42px;padding-right:45px}
 .hive-editorial .hc-context-strip{padding:30px 6%;gap:18px}.hive-editorial .hc-context-strip p{font-size:14px}
 .hive-editorial .hc-intro{display:block;padding:40px 6% 60px}.hive-editorial .hc-intro h2{font-size:43px;margin:20px 0}.hive-editorial .hc-intro>p{font-size:16px}
 .hive-editorial .hc-experience{padding:25px 6% 60px}.hive-editorial .hc-section-heading h2{font-size:41px;margin-bottom:30px}
 .hive-editorial .hc-scene-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.hive-editorial .hc-scene-nav button{padding:16px 0;gap:10px;font-size:14px;justify-content:flex-start}
 .hive-editorial .hc-scene{display:flex;flex-direction:column;padding:28px 0 0;gap:26px;min-height:0}.hive-editorial .hc-scene figure{order:-1}.hive-editorial .hc-scene-copy h3{font-size:35px;max-width:none;margin:15px 0}.hive-editorial .hc-scene-enlarge{padding-top:12px}.hive-editorial .hc-scene-foot{margin-top:20px}
 .hive-editorial .hc-research{padding:50px 6% 65px;gap:30px 18px}.hive-editorial .hc-research-copy h2{font-size:42px}.hive-editorial .hc-research figure:last-child{padding-top:45px}.hive-editorial .hc-research figcaption{font-size:11px}
 .hive-editorial .hc-framework{padding:55px 6%}.hive-editorial .hc-phase-map{margin-top:35px}.hive-editorial .hc-phase-map strong{font-size:38px}.hive-editorial .hc-phase-detail{padding:20px 0;min-height:0}
 .hive-editorial .hc-outcomes{padding:60px 6% 30px}.hive-editorial .hc-evidence{grid-template-columns:1fr;gap:40px}.hive-editorial .hc-evidence figure:first-child{display:block}.hive-editorial .hc-evidence h3{font-size:34px}.hive-editorial .hc-credits{margin-top:45px}
}
@media(prefers-reduced-motion:reduce){.hb-feeling-strip>div{animation:none}.hb-book-perspective{transform:none;will-change:auto}.hb-book{transition:none}.hb-leaf{will-change:auto}}

/* Keep every ritual visible in the new still-life illustration at all sizes. */
.hive-editorial .hb-ritual-illustration img{aspect-ratio:2/1;object-fit:contain;max-height:none}


/* loom-campaign.css */
/* LOOM / cinematic coastal technology study. */
#project-view.case-loom{--lc-cream:#f5eedd;--lc-blue:#16587b;--lc-light:#84b3ce;--lc-dark:#072b41;--lc-line:color-mix(in srgb,#16587b 24%,transparent)}
.loom-campaign{color:var(--lc-blue);background:var(--lc-cream);font-family:'DM Sans',Arial,sans-serif;overflow:clip}
.loom-campaign *{box-sizing:border-box}
.loom-campaign h1,.loom-campaign h2,.loom-campaign h3{font-family:'DM Sans',Arial,sans-serif;font-weight:400;letter-spacing:-.06em;margin:0;color:inherit}
.loom-campaign h2{font-size:clamp(45px,5.2vw,88px);line-height:1.04}
.loom-campaign h2 em{font:inherit;color:inherit;opacity:.62}
.loom-campaign p{font-size:17px;line-height:1.65;margin:0}
.loom-campaign a{color:inherit;text-decoration:none}
.loom-campaign a:focus-visible,.loom-campaign summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}
.lc-kicker{display:block;font-size:11px;line-height:1.5;letter-spacing:.09em;text-transform:uppercase}
#project-view .lc-project-nav{background:var(--lc-cream);color:var(--lc-blue);padding-block:18px}
#project-view .lc-project-nav a{color:var(--lc-blue)}
.lc-project-nav>span{font-size:12px}
.lc-film{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:var(--lc-dark)}
.lc-hero{height:calc(100svh - 105px);min-height:810px;max-height:1080px;position:relative;overflow:hidden;isolation:isolate;background:var(--lc-dark);color:var(--lc-cream)}
.lc-hero>.lc-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.lc-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#072b41c9 0%,#072b4166 23%,transparent 50%);z-index:-1;pointer-events:none}
.lc-hero-top{display:flex;align-items:center;justify-content:space-between;position:absolute;top:27px;left:4.5%;right:4.5%;padding:0 0 25px;border-bottom:1px solid #84b3ce4d;gap:30px}
.lc-wordmark{font-size:32px;display:inline-flex;align-items:center;letter-spacing:-.065em;font-weight:500;line-height:1}
.lc-wordmark>span{font:1.45em/.65 Arial,sans-serif;margin:0 .02em}
.lc-hero-top>span:nth-child(2){font-size:13px;margin-right:auto;margin-left:35px;color:var(--lc-light)}
.lc-hero-top>a{padding:12px 18px;border:1px solid #84b3ce88;font-size:12px;display:flex;gap:30px}
.lc-hero-copy{position:absolute;left:4.5%;top:18.5%;width:44%;max-width:700px}
.lc-hero-copy .lc-kicker{display:flex;align-items:center;gap:10px;color:var(--lc-light)}
.lc-kicker i{width:5px;height:5px;background:var(--lc-light);display:inline-block;box-shadow:0 0 12px var(--lc-light)}
.lc-hero h1{font-size:clamp(68px,6.05vw,108px);line-height:.99;letter-spacing:-.062em;margin:27px 0}
.lc-hero h1 em{font:inherit;color:var(--lc-light)}
.lc-hero-copy>p{font-size:15px;line-height:1.6;max-width:330px}
.lc-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:55px;min-height:44px;padding:12px 0;border-bottom:1px solid currentColor;font-size:14px;margin-top:28px}
.lc-text-link>span{font-size:24px;line-height:1;transition:transform .3s}
.lc-text-link:hover>span{transform:translate(3px,-3px)}
.lc-hero-foot{position:absolute;bottom:27px;left:4.5%;right:4.5%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.07em;color:var(--lc-light)}
.lc-meta{display:flex;justify-content:space-between;gap:20px;padding:25px 4.5%;border-bottom:1px solid var(--lc-line);font-size:12px}
.lc-section-heading{display:flex;justify-content:space-between;gap:10%;align-items:end;padding:0 4.5%;margin-bottom:55px}
.lc-section-heading h2{margin-top:28px}
.lc-section-heading>p,.lc-heading-aside{max-width:370px;width:34%;flex-shrink:0}
.lc-heading-aside>.lc-text-link{margin-top:23px}
.lc-story{padding:130px 0 115px}
.lc-cinema{position:relative;margin:0 4.5%;--lc-expansion:1;transform:scale(calc(.93 + var(--lc-expansion)*.07));transform-origin:center center;will-change:transform}
.lc-cinema video{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;max-height:none;display:block}
.lc-cinema figcaption{display:flex;justify-content:space-between;gap:20px;padding-top:18px;font-size:12px;line-height:1.5}
.lc-cinema figcaption>span:last-child{font-size:11px;opacity:.75}
.lc-story-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6%;padding:65px 4.5% 0}
.lc-story-steps>div{border-top:1px solid var(--lc-line);padding-top:18px;display:flex;gap:25px;align-items:baseline}
.lc-story-steps span{font-size:11px}.lc-story-steps h3{font-size:clamp(18px,1.85vw,30px);letter-spacing:-.03em;line-height:1.2}
.lc-experience{background:var(--lc-dark);color:var(--lc-cream);padding:110px 0 60px}
.lc-experience .lc-kicker,.lc-experience h2 em{color:var(--lc-light);opacity:1}
.lc-experience .lc-heading-aside{color:var(--lc-light)}
.lc-experience .lc-text-link{color:var(--lc-cream)}
.lc-feature-line{margin:55px 4.5% 0;padding-top:26px;border-top:1px solid #84b3ce55;display:flex;justify-content:space-between;gap:25px;font-size:14px;color:var(--lc-light)}
.lc-preserve{padding:130px 0 110px}
.lc-possibility{padding:100px 0;background:color-mix(in srgb,var(--lc-light) 20%,var(--lc-cream))}
.lc-research{display:grid;grid-template-columns:1.2fr 1fr;gap:60px 10%;padding:120px 4.5% 75px}
.lc-research h2{font-size:clamp(40px,4.25vw,70px);margin-top:28px}.lc-research p{max-width:550px;margin-top:25px;font-size:16px}
.lc-evidence{display:flex;align-items:center;justify-content:space-between;gap:25px}
.lc-evidence>div{display:grid;gap:10px;border-top:1px solid var(--lc-line);padding-top:22px;flex:1}
.lc-evidence strong{font-size:clamp(65px,7.7vw,120px);letter-spacing:-.075em;font-weight:400;line-height:1}
.lc-evidence span{font-size:12px}
.lc-details{grid-column:1/-1;border-top:1px solid var(--lc-line);padding-top:24px}
.lc-details summary{display:flex;justify-content:space-between;list-style:none;cursor:pointer;font-size:13px}.lc-details summary::-webkit-details-marker{display:none}
.lc-details>div{display:grid;grid-template-columns:1fr 1fr;gap:0 9%}.lc-details p{font-size:14px;max-width:none}.lc-details p:last-child{grid-column:1/-1;max-width:950px}
.lc-closing{position:relative;overflow:hidden;background:var(--lc-blue);color:var(--lc-cream);padding:75px 4.5% 65px}
.lc-closing h2{font-size:clamp(30px,4.5vw,75px);margin-top:20px}.lc-closing-logo{display:flex;align-items:center;justify-content:center;font-size:clamp(130px,27vw,460px);line-height:.95;letter-spacing:-.10em;font-weight:400;padding:60px 0 45px;color:var(--lc-light)}
.lc-closing-logo>span{font:1.36em/.65 Arial,sans-serif;letter-spacing:-.10em;margin:0 .07em 0 .01em;transform:translateY(-.015em)}
.lc-closing>p{font-size:15px;line-height:1.5}.lc-closing>.lc-text-link{position:absolute;right:4.5%;bottom:65px}
@media(min-width:1800px){.lc-hero-copy{top:20%}.lc-hero h1{font-size:108px}.lc-hero-copy>p{font-size:17px;max-width:400px}.lc-text-link{font-size:16px}}
@media(max-width:1100px){.lc-hero{min-height:770px}.lc-hero-copy{width:48%;top:20%}.lc-hero h1{font-size:clamp(61px,6.6vw,80px)}.lc-hero-copy>p{max-width:280px}.lc-section-heading{gap:6%}.lc-section-heading>p,.lc-heading-aside{width:36%;max-width:330px}.lc-section-heading p{font-size:15px}.lc-section-heading h2{font-size:clamp(43px,5.5vw,70px)}.lc-story-steps>div{gap:15px}.lc-research{gap:45px 6%}}
@media(max-width:700px){
 #project-view .lc-project-nav{padding-block:16px}.lc-project-nav>span{display:none}
 .lc-hero{height:940px;min-height:0;max-height:none}.lc-hero-top{top:23px;left:6%;right:6%;padding-bottom:20px}.lc-wordmark{font-size:27px}.lc-hero-top>span:nth-child(2){display:none}.lc-hero-top>a{font-size:10px;padding:9px 11px;gap:18px}
 .lc-hero-copy{left:6%;top:120px;width:88%;max-width:none}.lc-hero-copy .lc-kicker{font-size:10px}.lc-hero h1{font-size:clamp(51px,12vw,76px);margin:22px 0;line-height:1}.lc-hero h1 em{display:block}.lc-hero-copy>p{max-width:320px;font-size:14px;line-height:1.55}.lc-hero .lc-text-link{font-size:13px;margin-top:20px}
 .lc-hero>.lc-film{top:auto;bottom:35px;left:-70%;width:174%;height:450px;object-fit:contain;mask-image:linear-gradient(transparent 0%,#000 25%)}.lc-hero::after{background:linear-gradient(180deg,#072b41 0%,#072b41 45%,transparent 69%)}
 .lc-hero-foot{left:6%;right:6%;bottom:23px;font-size:8px;gap:20px}.lc-hero-foot>span:first-child{max-width:155px;line-height:1.5}.lc-hero-foot>span:last-child{align-self:end}
 .lc-meta{padding:20px 6%;gap:12px;font-size:10px;flex-wrap:wrap}.lc-meta>span:nth-child(2){order:2;width:100%}
 .lc-story{padding:80px 0 75px}.lc-section-heading{display:block;padding:0 6%;margin-bottom:35px}.lc-section-heading h2{font-size:clamp(38px,9.5vw,64px);margin-top:22px}.lc-section-heading>p,.lc-heading-aside{width:100%;max-width:450px;margin-top:28px}.lc-section-heading p{font-size:15px;line-height:1.6}.lc-section-heading>p br+br{display:none}.lc-section-heading>p br{display:none}.lc-kicker{font-size:10px}
 .lc-cinema{margin:0;transform:none!important}.lc-cinema figcaption{padding:15px 6% 0;font-size:10px;gap:16px}.lc-cinema figcaption>span:last-child{font-size:9px;text-align:right;max-width:110px}
 .lc-story-steps{display:block;padding:38px 6% 0}.lc-story-steps>div{margin-bottom:22px;padding-top:15px;gap:24px}.lc-story-steps h3{font-size:21px}
 .lc-experience{padding:75px 0 42px}.lc-feature-line{margin:32px 6% 0;padding-top:20px;font-size:12px;display:grid;gap:10px}.lc-preserve{padding:80px 0}.lc-possibility{padding:75px 0}
 .lc-research{display:block;padding:80px 6% 50px}.lc-research h2{font-size:40px}.lc-research p{font-size:15px}.lc-evidence{margin:40px 0;gap:32px}.lc-evidence strong{font-size:78px}.lc-evidence span{font-size:11px}.lc-details>div{display:block}.lc-details p{font-size:13px}
 .lc-closing{padding:60px 6% 45px}.lc-closing h2{font-size:34px}.lc-closing-logo{font-size:28vw;padding:45px 0 40px}.lc-closing>p{font-size:14px}.lc-closing>.lc-text-link{position:static;margin-top:30px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){.loom-campaign *,.loom-campaign *::before,.loom-campaign *::after{animation:none!important;transition:none!important}.lc-cinema{transform:none!important}}


/* starbucks-campaign.css */
/* Coffee, light, and frosted glass. Scoped to the Starbucks study. */
#project-view.case-starbucks{--sb-cream:#f5eedd;--sb-blue:#16587b;--sb-light:#84b3ce;--sb-rule:color-mix(in srgb,#16587b 24%,transparent)}
.starbucks-campaign{background:var(--sb-cream);color:var(--sb-blue);font-family:'DM Sans',Arial,sans-serif;overflow:clip}
.starbucks-campaign *{box-sizing:border-box}
.starbucks-campaign h1,.starbucks-campaign h2,.starbucks-campaign h3{font-family:'DM Sans',Arial,sans-serif;font-weight:400;letter-spacing:-.055em;margin:0;color:inherit}
.starbucks-campaign h2{font-size:clamp(48px,6.1vw,104px);line-height:1.05}
.starbucks-campaign h3{font-size:clamp(30px,3.2vw,54px);line-height:1.15}
.starbucks-campaign :is(h1,h2,h3) em{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;letter-spacing:-.04em}
.starbucks-campaign p{font-size:17px;line-height:1.65;margin:0}
.starbucks-campaign figure{margin:0}
.starbucks-campaign a{color:inherit;text-decoration:none}
.starbucks-campaign :is(a,button,summary):focus-visible{outline:2px solid currentColor;outline-offset:6px}
.sb-kicker{display:block;font-size:13px;line-height:1.5;letter-spacing:.06em;text-transform:uppercase}
#project-view .sb-project-nav{background:var(--sb-cream);color:var(--sb-blue);padding-block:19px}
.sb-project-nav>span{font-size:13px}
.sb-film{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:var(--sb-blue)}
.sb-link{font-size:14px;display:inline-block;padding:14px 0 10px;border-bottom:1px solid currentColor;line-height:1.4;transition:opacity .3s}.sb-link:hover{opacity:.7}
.sb-hero{position:relative;isolation:isolate;height:calc(100svh - 155px);min-height:780px;max-height:1100px;padding:3.4%;color:var(--sb-cream);background:var(--sb-blue);overflow:hidden}
.sb-hero-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.sb-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#16587b80,transparent 78%);z-index:-1;pointer-events:none}
.sb-glass{height:100%;position:relative;isolation:isolate;overflow:hidden;border:1px solid #f5eedd6b;border-radius:28px;background:linear-gradient(115deg,#84b3ce26,#f5eedd08 70%);box-shadow:inset 1px 1px 0 #f5eedd26;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.sb-glass::before{content:'';position:absolute;inset:0 39% 0 0;background:linear-gradient(90deg,#16587b61,#16587b14);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);mask-image:linear-gradient(90deg,#000 70%,transparent);z-index:-1}
.sb-glass-top{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:24px 3.5%;border-bottom:1px solid #f5eedd3d}
.sb-brand{font-size:22px;letter-spacing:.03em;font-weight:500;line-height:1.15;display:block}.sb-brand>span{display:block;font-size:12px;font-weight:400;letter-spacing:0;margin-top:6px}
.sb-glass-nav{display:flex;gap:30px;border:1px solid #f5eedd44;background:#f5eedd0a;border-radius:40px;padding:4px 23px;font-size:14px;align-items:center}.sb-glass-nav>a{padding:10px 0}.sb-glass-nav>a:hover{opacity:.7}
.sb-glass-edition{font-size:12px;line-height:1.5;text-align:right}
.sb-hero-copy{margin:5.2% 0 0 4.5%;width:55%;max-width:770px}.sb-hero-copy>.sb-kicker{font-size:12px}
.sb-hero h1{font-size:clamp(70px,7.5vw,130px);line-height:.99;letter-spacing:-.067em;margin:26px 0 24px}.sb-hero h1 em{font-size:1.14em;line-height:.9;display:inline-block;padding-bottom:.06em}
.sb-hero-copy p{font-size:16px;line-height:1.6}.sb-hero-copy .sb-link{margin-top:15px}
.sb-glass-bottom{position:absolute;bottom:23px;left:3.5%;right:3.5%;display:flex;justify-content:space-between;gap:25px;border-top:1px solid #f5eedd3d;padding-top:19px;font-size:12px}
.sb-pause{font:inherit;color:inherit;padding:0 5px;min-height:24px;text-decoration:underline;text-underline-offset:4px}.sb-pause:hover{opacity:.7}
#project-view.case-starbucks .starbucks-campaign figcaption,#project-view.case-starbucks .starbucks-campaign figcaption span{color:inherit;font-size:12px;letter-spacing:0;text-transform:none}
#project-view.case-starbucks .sb-stage figcaption{color:var(--sb-cream)}
#project-view.case-starbucks .sb-stage figcaption>span:last-child{font-size:20px}
.sb-intro{padding:0 5% 130px}.sb-meta{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid var(--sb-rule);padding:28px 0;font-size:12px}
.sb-intro-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:26px 10%;align-items:end;padding:115px 0 70px}.sb-intro-heading>.sb-kicker{grid-column:1/-1}.sb-intro-heading h2{font-size:clamp(60px,8vw,135px)}.sb-intro-heading p{max-width:420px;padding-bottom:7px}
.sb-intro-spread{display:grid;grid-template-columns:1.6fr 1fr;gap:9%;align-items:center}.sb-cafe-window{min-width:0}.sb-cafe-window video{aspect-ratio:5/4;border-radius:160px 160px 16px 16px;object-position:50% 50%;transform:scale(calc(.97 + var(--sb-expansion,1)*.03));transform-origin:center bottom}
.starbucks-campaign figcaption{font-size:12px;line-height:1.5;display:flex;justify-content:space-between;gap:18px;margin-top:18px}.sb-margin-note>.sb-kicker{margin-bottom:25px}.sb-margin-note p{margin-top:25px;max-width:340px}.sb-rule-note{border-top:1px solid var(--sb-rule);padding-top:20px;margin-top:40px;font-size:14px;line-height:1.6}
.sb-journey{padding:95px 5% 100px;background:color-mix(in srgb,var(--sb-light) 17%,var(--sb-cream))}.sb-journey-heading{text-align:center;margin-bottom:80px}.sb-journey-heading h2{margin-top:25px}
.sb-journey-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:start}.sb-visual-sticky{position:sticky;top:12svh;padding-block:6vh}.sb-stage-stack{height:66svh;min-height:440px;max-height:770px;position:relative;border-radius:20px;overflow:hidden;background:var(--sb-blue);isolation:isolate}.sb-stage{position:absolute;inset:0;opacity:0;transition:opacity .8s ease;pointer-events:none;z-index:0}.sb-stage.is-active{opacity:1;z-index:1}.sb-stage>.sb-film{width:100%;height:100%;object-fit:cover;transition:transform 1.1s ease;transform:scale(1.035)}.sb-stage.is-active>.sb-film{transform:scale(1)}.sb-stage:first-child>.sb-film{object-position:76% 50%}.sb-stage:nth-child(3)>.sb-film{object-position:42% 50%}
.starbucks-campaign .sb-stage figcaption{position:absolute;bottom:35px;left:30px;right:30px;display:flex;justify-content:start;align-items:center;margin:0;padding:17px 21px;border-radius:14px;border:1px solid #f5eedd88;background:#16587b59;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:var(--sb-cream);font-size:20px;gap:25px}.sb-stage figcaption>span:first-child{font-size:13px;opacity:.85}
.sb-stage-progress{position:absolute;left:30px;bottom:17px;display:flex;gap:8px;z-index:3}.sb-stage-progress>span{width:26px;height:2px;background:#f5eedd55;transition:width .7s,background .7s}.sb-stage-progress>span.is-active{width:60px;background:var(--sb-cream)}
.sb-chapter{min-height:78svh;display:flex;align-items:center;padding:60px 0}.sb-chapter-copy{border-left:1px solid var(--sb-rule);padding-left:40px;transition:opacity .6s,transform .6s;opacity:.48;transform:translateY(10px)}.sb-chapter.is-active .sb-chapter-copy{opacity:1;transform:none}.sb-chapter .sb-kicker{display:flex;gap:25px;margin-bottom:30px}.sb-chapter h3{font-size:clamp(32px,3.1vw,51px)}.sb-chapter p{margin:25px 0;max-width:405px}.sb-chapter-note{display:block;font-size:12px;line-height:1.6;max-width:300px}.sb-mobile-film{display:none}
.sb-communication{padding:105px 5% 85px;background:var(--sb-blue);color:var(--sb-cream)}.sb-communication-heading{display:grid;grid-template-columns:1.1fr 1fr;gap:22px 14%;align-items:end;margin-bottom:65px}.sb-communication-heading>.sb-kicker{grid-column:1/-1;color:var(--sb-light)}.sb-communication-heading p{max-width:390px}.sb-communication-heading h2 em{color:var(--sb-light)}
.sb-motion-window{transform:scale(calc(.94 + var(--sb-expansion,1)*.06));transform-origin:center center}.sb-motion-window video{border-radius:16px;aspect-ratio:16/9;object-fit:contain}.sb-motion-window figcaption>span:last-child{color:var(--sb-light)}
.sb-method-line{display:grid;grid-template-columns:repeat(3,1fr);gap:6%;margin-top:80px;border-top:1px solid #84b3ce66;padding-top:30px}.sb-method-line>div>span{font-size:13px;color:var(--sb-light)}.sb-method-line h3{font-size:26px;letter-spacing:-.03em;margin:18px 0 12px}.sb-method-line p{font-size:16px;max-width:290px;color:var(--sb-light)}
.sb-artifacts{padding:115px 5% 65px}.sb-artifacts-heading{display:flex;justify-content:space-between;align-items:end;gap:10%;margin-bottom:75px}.sb-artifacts-heading h2{margin-top:25px}.sb-artifacts-heading>p{max-width:350px;font-size:16px;line-height:1.7}.sb-artifact-spread{display:grid;grid-template-columns:.72fr 1.3fr;gap:8%;align-items:start;padding:45px 4% 0;background:color-mix(in srgb,var(--sb-light) 15%,var(--sb-cream));border-radius:18px}.sb-print button{width:100%;padding:0;display:block;transition:transform .5s;box-shadow:0 18px 50px #16587b1c}.sb-print button:hover{transform:translateY(-6px)}.sb-print-tall{padding-bottom:40px}.sb-artifact-right{padding-top:70px}.sb-artifact-note{padding:60px 0 50px}.sb-artifact-note h3{font-size:clamp(29px,3.1vw,52px)}.sb-artifact-note p{margin-top:22px;max-width:450px;font-size:16px}.sb-artifact-note>span{display:block;font-size:12px;margin-top:26px}
.sb-project-details{border-top:1px solid var(--sb-rule);padding-top:25px;margin-top:60px}.sb-project-details summary{font-size:14px;display:flex;justify-content:space-between;list-style:none;cursor:pointer;padding-bottom:10px;min-height:44px}.sb-project-details summary::-webkit-details-marker{display:none}.sb-project-details>div{display:grid;grid-template-columns:1fr 1fr;gap:28px 9%;padding-top:20px}.sb-project-details p{font-size:14px;line-height:1.7}.sb-project-details strong{font-weight:500;display:inline-block;margin-bottom:7px}
.sb-closing{padding:55px 5% 65px;background:var(--sb-blue);color:var(--sb-cream)}.sb-closing-type{font:italic 400 clamp(65px,12vw,210px)/1.1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.055em;padding:35px 0 55px;white-space:nowrap}.sb-closing-row{display:flex;justify-content:space-between;align-items:end;border-top:1px solid #84b3ce66;padding-top:25px}.sb-closing-row p{font-size:16px}.sb-closing-row .sb-link{margin:0}
@media(min-width:1800px){.sb-hero-copy{margin-top:6%}.sb-hero-copy p{font-size:18px}}
@media(max-width:1100px){.sb-hero{min-height:770px}.sb-glass-top{padding-block:24px}.sb-glass-nav{gap:20px;padding-inline:18px}.sb-glass-edition{display:none}.sb-hero-copy{margin-top:9%;width:65%}.sb-hero h1{font-size:clamp(70px,8.6vw,98px)}.sb-intro-spread{gap:6%;grid-template-columns:1.2fr 1fr}.sb-margin-note h3{font-size:36px}.sb-cafe-window video{border-radius:100px 100px 16px 16px}.sb-journey-layout{gap:6%}.sb-chapter-copy{padding-left:24px}.sb-chapter h3{font-size:34px}.sb-chapter p{font-size:16px}.sb-artifacts-heading{gap:6%}.sb-artifact-note{padding:40px 0}.sb-artifact-right{padding-top:40px}}
@media(max-width:760px){
 .sb-project-nav>span{display:none}#project-view .sb-project-nav{padding-block:16px}
 .sb-hero{height:auto;min-height:820px;max-height:none;padding:16px}.sb-hero-film{object-position:70% 50%}.sb-hero::after{background:linear-gradient(180deg,#16587bb8,transparent 75%)}.sb-glass{height:788px;border-radius:22px;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px)}.sb-glass::before{inset:0;background:linear-gradient(180deg,#16587b70,transparent 80%);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);mask-image:linear-gradient(#000,transparent 85%)}.sb-glass-top{padding:24px 22px;align-items:start}.sb-brand{font-size:22px}.sb-brand>span{font-size:12px}.sb-glass-nav{display:none}.sb-hero-copy{margin:42px 22px 0;width:calc(100% - 44px)}.sb-hero h1{font-size:clamp(48px,11.7vw,80px);line-height:1.03;letter-spacing:-.065em;margin:25px 0}.sb-hero-copy p{font-size:16px;line-height:1.5;max-width:260px}.sb-hero-copy .sb-link{margin-top:14px}.sb-glass-bottom{left:22px;right:22px;bottom:23px;display:block;font-size:12px;line-height:1.5;padding-top:16px}.sb-glass-bottom>span{display:block}.sb-glass-bottom>span+span{margin-top:7px}
 .sb-pause{position:absolute;right:0;bottom:0;min-height:44px;font-size:14px}.sb-glass-bottom>span{padding-right:45px}
 .sb-intro{padding:0 6% 75px}.sb-meta{flex-wrap:wrap;gap:12px 20px;padding:24px 0;font-size:12px}.sb-meta>span:last-child{flex-basis:100%}.sb-intro-heading{display:block;padding:70px 0 40px}.sb-intro-heading h2{font-size:clamp(56px,13vw,92px);margin:25px 0}.sb-intro-heading p{font-size:16px}.sb-intro-spread{display:block}.sb-cafe-window video{aspect-ratio:4/3;border-radius:80px 80px 12px 12px;transform:none}.sb-cafe-window figcaption{font-size:12px;gap:15px}.sb-cafe-window figcaption>span:last-child{max-width:135px;text-align:right}.sb-margin-note{margin-top:50px}.sb-margin-note h3{font-size:42px}.sb-margin-note p{font-size:16px;max-width:none}.sb-rule-note{margin-top:28px}
 .sb-journey{padding:70px 0 55px}.sb-journey-heading{padding:0 6%;margin-bottom:45px;text-align:left}.sb-journey-heading h2{font-size:clamp(39px,9.3vw,66px);line-height:1.08}.sb-journey-layout{display:block}.sb-visual-sticky{display:none}.sb-chapter{display:block;min-height:0;padding:0;margin:0 0 55px}.sb-chapter:last-child{margin-bottom:0}.sb-mobile-film{display:block}.sb-mobile-film video{aspect-ratio:4/3;object-fit:cover}.sb-chapter:first-child .sb-mobile-film video{object-position:75% 50%}.sb-chapter-copy{opacity:1;transform:none;border:0;padding:30px 6% 0}.sb-chapter .sb-kicker{margin-bottom:22px;gap:22px}.sb-chapter h3{font-size:36px;max-width:550px}.sb-chapter p{margin:22px 0;font-size:16px;max-width:none}.sb-chapter-note{max-width:none}
 .sb-communication{padding:75px 0 55px}.sb-communication-heading{display:block;padding:0 6%;margin-bottom:40px}.sb-communication-heading h2{font-size:58px;margin:23px 0}.sb-communication-heading p{font-size:16px;max-width:none}.sb-motion-window{transform:none}.sb-motion-window video{border-radius:0}.sb-motion-window figcaption{padding:0 6%;font-size:12px}.sb-motion-window figcaption>span:last-child{max-width:140px;text-align:right}.sb-method-line{display:block;padding:0 6%;margin-top:45px;border:0}.sb-method-line>div{border-top:1px solid #84b3ce66;padding-top:24px;margin-top:30px}.sb-method-line h3{font-size:27px;margin:14px 0 10px}.sb-method-line p{max-width:none}
 .sb-artifacts{padding:75px 6% 50px}.sb-artifacts-heading{display:block;margin-bottom:40px}.sb-artifacts-heading h2{font-size:clamp(40px,10.5vw,68px);line-height:1.08}.sb-artifacts-heading>p{margin-top:25px;max-width:none}.sb-artifact-spread{display:block;padding:28px 7%;border-radius:14px}.sb-print-tall{width:70%;margin-inline:auto!important;padding-bottom:30px}.sb-artifact-right{padding-top:15px}.sb-artifact-note{padding:35px 0 5px}.sb-artifact-note h3{font-size:32px}.sb-artifact-note p{font-size:16px}.sb-project-details{margin-top:40px}.sb-project-details>div{display:block}.sb-project-details p{margin-bottom:25px}
 .sb-closing{padding:45px 6%}.sb-closing-type{font-size:12.4vw;padding:20px 0 40px}.sb-closing-row{display:block}.sb-closing-row p{font-size:16px}.sb-closing-row .sb-link{margin-top:23px}
}
@media(prefers-reduced-motion:reduce){.starbucks-campaign *,.starbucks-campaign *::before,.starbucks-campaign *::after{transition:none!important;animation:none!important}.sb-visual-sticky{display:none}.sb-journey-layout{display:block}.sb-chapters{display:grid;gap:60px}.sb-chapter{min-height:0;display:grid;grid-template-columns:1.2fr 1fr;gap:7%;padding:0}.sb-mobile-film{display:block}.sb-chapter-copy{opacity:1;transform:none;padding:0;border:0}.sb-cafe-window video,.sb-motion-window{transform:none!important}}
@media(prefers-reduced-motion:reduce) and (max-width:760px){.sb-chapter{display:block}.sb-chapter-copy{padding:30px 6% 0}}


/* personal-editorial.css */
/* About and My Story only. The approved landing and project pages are untouched. */
:is(#about,#story).personal-editorial{--pe-blue:#16587b;--pe-cream:#f5eedd;--pe-sky:#84b3ce;--pe-muted:#376f8a;--pe-paper:#fdfbf7;color:var(--pe-blue);margin-bottom:70px}
:is(#about,#story).personal-editorial *{box-sizing:border-box}
:is(#about,#story).personal-editorial figure{margin:0}
:is(#about,#story).personal-editorial img{display:block;max-width:100%}
:is(#about,#story).personal-editorial .pe-kicker{display:block;font:400 .875rem/1.5 'DM Sans',sans-serif;letter-spacing:.09em;text-transform:uppercase;color:inherit}
:is(#about,#story).personal-editorial .pe-title{font:400 clamp(3.6rem,6.5vw,7.4rem)/1.02 'Cormorant Garamond',Georgia,serif;letter-spacing:-.045em;max-width:none;color:inherit;margin:24px 0 30px;overflow-wrap:normal}
:is(#about,#story).personal-editorial h2{font:400 clamp(2.7rem,4.2vw,4.7rem)/1.06 'Cormorant Garamond',Georgia,serif;letter-spacing:-.035em;color:inherit;overflow-wrap:normal;margin:20px 0 26px}
:is(#about,#story).personal-editorial p{font:400 1rem/1.7 'DM Sans',Arial,sans-serif;margin:0}
:is(#about,#story).personal-editorial em{font-weight:400}
:is(#about,#story).personal-editorial figcaption{font:400 .8125rem/1.5 'DM Sans',sans-serif;color:var(--pe-muted);margin-top:12px}
:is(#about,#story).personal-editorial .pe-text-link,:is(#about,#story).personal-editorial .pe-actions a{display:inline-block;font:400 .9375rem/1.5 'DM Sans',sans-serif;border-bottom:1px solid currentColor;padding:9px 0;color:inherit;text-decoration:none;transition:opacity .25s}
:is(#about,#story).personal-editorial a:hover{opacity:.78}
:is(#about,#story).personal-editorial a:focus-visible,:is(#about,#story).personal-editorial button:focus-visible{outline:2px solid currentColor;outline-offset:6px}
#about.personal-editorial .pe-about-hero{display:grid;grid-template-columns:1.1fr .9fr;background:var(--pe-paper);border-radius:28px;overflow:hidden;min-height:610px}
#about.personal-editorial .pe-about-intro{padding:clamp(32px,4.5vw,80px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
#about.personal-editorial .pe-introduction{max-width:390px;font-size:1.125rem;line-height:1.65}
#about.personal-editorial .pe-actions{display:flex;flex-wrap:wrap;gap:32px;margin-top:30px}
#about.personal-editorial .pe-location{font:.8125rem/1.5 'DM Sans',sans-serif;color:var(--pe-muted);margin-top:50px}
#about.personal-editorial .pe-portrait{position:relative;min-width:0;background:var(--pe-blue);overflow:hidden}
#about.personal-editorial .pe-portrait img{width:100%;height:100%;max-height:800px;min-height:610px;object-fit:cover;object-position:50% 35%}
#about.personal-editorial .pe-portrait figcaption{position:absolute;bottom:0;left:0;right:0;margin:0;padding:70px 28px 24px;background:linear-gradient(transparent,#16587bbf);color:var(--pe-cream);font-size:.875rem}
#about.personal-editorial .pe-collaboration{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(30px,6vw,110px);align-items:center;margin:clamp(60px,8vw,120px) 2.4%}
#about.personal-editorial .pe-workshop img{width:100%;aspect-ratio:1.38;object-fit:cover;object-position:61% center;border-radius:22px}
#about.personal-editorial .pe-collaboration-copy p{max-width:390px;color:var(--pe-muted)}
#about.personal-editorial .pe-collaboration-copy .pe-text-link{margin-top:22px}
#about.personal-editorial .pe-current{display:grid;grid-template-columns:1fr 1fr;background:var(--pe-blue);color:var(--pe-cream);border-radius:26px;overflow:hidden}
#about.personal-editorial .pe-current-copy{padding:clamp(30px,4.2vw,72px)}
#about.personal-editorial .pe-current-copy>p{max-width:430px}
#about.personal-editorial .pe-education{margin:30px 0 20px}
#about.personal-editorial .pe-education>div{display:grid;grid-template-columns:120px 1fr;gap:18px;padding:17px 0;border-top:1px solid #84b3ce66}
#about.personal-editorial .pe-education dt{font:.875rem/1.6 'DM Sans',sans-serif}
#about.personal-editorial .pe-education dd{margin:0;font:.9375rem/1.55 'DM Sans',sans-serif}
#about.personal-editorial .pe-education dd span{font-size:.8125rem;color:var(--pe-cream)}
#about.personal-editorial .pe-studio{position:relative;overflow:hidden;min-height:520px}
#about.personal-editorial .pe-studio img{width:100%;height:100%;object-fit:cover;object-position:42% center}
#about.personal-editorial .pe-studio figcaption{position:absolute;bottom:24px;left:24px;margin:0;background:var(--pe-cream);color:var(--pe-blue);padding:10px 14px;border-radius:3px}
:is(#about,#story).personal-editorial .pe-closing{display:flex;gap:24px;align-items:center;justify-content:space-between;margin:60px 2.4% 0;border-top:1px solid #84b3ce80;padding-top:28px}
:is(#about,#story).personal-editorial .pe-closing p{font:400 clamp(1.8rem,3vw,3rem)/1.2 'Cormorant Garamond',Georgia,serif;letter-spacing:-.02em}
:is(#about,#story).personal-editorial .pe-closing a{flex-shrink:0;font:.9375rem/1.5 'DM Sans',sans-serif;border-bottom:1px solid currentColor;padding:10px 0}
:is(#about,#story).personal-editorial .pe-reveal.is-ready{opacity:0;transform:translateY(28px);transition:opacity .85s ease,transform 1s cubic-bezier(.2,.65,.3,1)}
:is(#about,#story).personal-editorial .pe-reveal.is-seen{opacity:1;transform:none}
@media(min-width:1800px){#about.personal-editorial .pe-about-hero{min-height:720px}}
@media(max-width:900px){#about.personal-editorial .pe-about-hero{grid-template-columns:1.05fr .95fr;min-height:520px}#about.personal-editorial .pe-about-intro{padding:32px}#about.personal-editorial .pe-portrait img{min-height:520px}#about.personal-editorial .pe-collaboration{gap:30px;margin-left:0;margin-right:0}#about.personal-editorial .pe-current-copy{padding:30px}#about.personal-editorial .pe-education>div{grid-template-columns:1fr;gap:5px}#about.personal-editorial .pe-studio{min-height:560px}}
@media(max-width:640px){:is(#about,#story).personal-editorial{width:calc(100% - 28px)}:is(#about,#story).personal-editorial .pe-title{font-size:clamp(3.4rem,12vw,4.8rem)}#about.personal-editorial .pe-about-hero{grid-template-columns:1fr;border-radius:22px}#about.personal-editorial .pe-about-intro{padding:34px 25px 30px}#about.personal-editorial .pe-location{margin-top:28px}#about.personal-editorial .pe-portrait img{height:470px;min-height:0;object-position:50% 30%}#about.personal-editorial .pe-collaboration{grid-template-columns:1fr;margin:58px 8px;gap:28px}#about.personal-editorial .pe-workshop img{aspect-ratio:1.15;object-position:100% center}#about.personal-editorial .pe-current{grid-template-columns:1fr}#about.personal-editorial .pe-current-copy{padding:32px 25px}#about.personal-editorial .pe-studio{min-height:0;height:300px}#about.personal-editorial .pe-studio img{object-position:center}#about.personal-editorial .pe-education>div{grid-template-columns:108px 1fr;gap:12px}:is(#about,#story).personal-editorial .pe-closing{margin-top:38px;align-items:flex-start;flex-direction:column;gap:13px}}
#story.personal-editorial .pe-story-intro{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:50px;padding:38px 3.5% 42px}
#story.personal-editorial .pe-story-intro .pe-title{margin-bottom:0}
#story.personal-editorial .pe-story-intro>p{max-width:390px;font-size:1.125rem;line-height:1.7;margin-bottom:10px;color:var(--pe-muted)}
#story.personal-editorial .pe-memory-media{position:relative;aspect-ratio:1.95;background:var(--pe-paper);border-radius:26px;overflow:hidden}
#story.personal-editorial .pe-memory-media>img,#story.personal-editorial .pe-memory-media>video{width:100%;height:100%;object-fit:cover;display:block}
#story.personal-editorial .pe-memory-media>video{position:absolute;inset:0}
#story.personal-editorial .pe-memory-media>[hidden]{display:none}

#story.personal-editorial .pe-memory>figcaption{display:flex;justify-content:space-between;gap:18px;margin:13px 1% 0}
#story.personal-editorial .pe-memory>figcaption>span{font-size:.75rem}
#story.personal-editorial .pe-journey{margin:clamp(65px,8vw,120px) 2.4%}
#story.personal-editorial .pe-section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:36px}
#story.personal-editorial .pe-section-heading h2{margin:0}
#story.personal-editorial .pe-section-heading>.pe-kicker{font-size:.8125rem;max-width:230px;line-height:1.8;letter-spacing:.035em;text-align:right}
#story.personal-editorial .pe-milestones{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
#story.personal-editorial .pe-milestone>a{display:block;overflow:hidden;border-radius:17px;margin-bottom:24px}
#story.personal-editorial .pe-milestone>a img{width:100%;aspect-ratio:1.45;object-fit:cover;transition:transform .9s cubic-bezier(.2,.65,.3,1)}
#story.personal-editorial .pe-milestone:first-child>a img{object-position:center 45%}
#story.personal-editorial .pe-milestone:last-child>a img{object-position:48% center}
#story.personal-editorial .pe-milestone>a:hover{opacity:1}
#story.personal-editorial .pe-milestone>a:hover img{transform:scale(1.04)}
#story.personal-editorial .pe-milestone>.pe-kicker{font-size:.8125rem;letter-spacing:.015em}
#story.personal-editorial .pe-milestone h3{font:400 clamp(1.8rem,2.5vw,2.8rem)/1.12 'Cormorant Garamond',Georgia,serif;letter-spacing:-.025em;margin:15px 0 14px;overflow-wrap:normal;color:var(--pe-blue)}
#story.personal-editorial .pe-milestone p{font-size:.9375rem;color:var(--pe-muted);max-width:430px}








@media(max-width:900px){#story.personal-editorial .pe-story-intro{gap:30px}#story.personal-editorial .pe-milestones{gap:20px}#story.personal-editorial .pe-milestone h3{font-size:2rem}#story.personal-editorial .pe-milestone>.pe-kicker{font-size:.75rem}}
@media(max-width:640px){#story.personal-editorial .pe-story-intro{grid-template-columns:1fr;gap:22px;padding:25px 12px 30px}#story.personal-editorial .pe-story-intro>p{font-size:1rem;margin:0}#story.personal-editorial .pe-memory-media{aspect-ratio:1.1;border-radius:19px}#story.personal-editorial .pe-memory-media>img,#story.personal-editorial .pe-memory-media>video{object-position:53% center}#story.personal-editorial .pe-memory>figcaption{display:block;font-size:.8125rem;margin:12px 8px 0}#story.personal-editorial .pe-memory>figcaption>span{display:block;margin-top:3px}#story.personal-editorial .pe-journey{margin:60px 8px}#story.personal-editorial .pe-section-heading{display:block;margin-bottom:28px}#story.personal-editorial .pe-section-heading>.pe-kicker{display:none}#story.personal-editorial .pe-milestones{grid-template-columns:1fr;gap:38px}#story.personal-editorial .pe-milestone>a{margin-bottom:20px}#story.personal-editorial .pe-milestone>a img{aspect-ratio:1.3}#story.personal-editorial .pe-milestone:first-child>a img{object-position:center 50%}#story.personal-editorial .pe-milestone>.pe-kicker{font-size:.8125rem}#story.personal-editorial .pe-milestone h3{font-size:2.3rem;margin-top:12px}#story.personal-editorial .pe-milestone p{font-size:1rem;max-width:none}}
@media(prefers-reduced-motion:reduce){:is(#about,#story).personal-editorial .pe-reveal.is-ready{opacity:1;transform:none;transition:none}:is(#about,#story).personal-editorial *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Personal fashion chapter: the complete collection photograph, without cropping. */
#story.personal-editorial .pe-fashion-story{display:grid;grid-template-columns:1fr .9fr;gap:clamp(32px,7vw,110px);align-items:center;margin:0 0 clamp(60px,8vw,115px)}
#story.personal-editorial .pe-collection-photo{display:block;border-radius:18px;overflow:hidden}
#story.personal-editorial .pe-collection-photo img{width:100%;height:auto;object-fit:contain}
#story.personal-editorial .pe-fashion-note h3{font:400 clamp(2.8rem,4.3vw,5rem)/1.06 'Cormorant Garamond',Georgia,serif;letter-spacing:-.035em;color:var(--pe-blue);margin:22px 0 28px}
#story.personal-editorial .pe-fashion-note p{max-width:340px;color:var(--pe-muted)}
#story.personal-editorial .pe-photo-note{display:block;margin-top:30px;font:.8125rem/1.7 'DM Sans',sans-serif;color:var(--pe-muted)}
#story.personal-editorial .pe-fashion-note .pe-text-link{margin-top:12px}
@media(max-width:640px){#story.personal-editorial .pe-fashion-story{grid-template-columns:1fr;gap:26px;margin-bottom:55px}#story.personal-editorial .pe-fashion-note h3{font-size:2.8rem;margin:16px 0 20px}#story.personal-editorial .pe-photo-note{margin-top:20px}#story.personal-editorial .pe-milestones{grid-template-columns:1fr;gap:38px}}


/* bank-campaign.css */
/* Scoped presentation; the original banking artwork retains its own colour. */
#project-view.case-bank-of-baroda .bank-campaign{--bn-ink:#16587b;--bn-paper:#f5eedd;--bn-sky:#84b3ce;background:var(--bn-paper);color:var(--bn-ink);overflow:clip;border-radius:0}
.bank-campaign *{box-sizing:border-box}
.bank-campaign figure{margin:0}
#project-view .bank-campaign h1,#project-view .bank-campaign h2,#project-view .bank-campaign h3{font-family:var(--portfolio-serif);font-weight:400;letter-spacing:-.035em;line-height:1.04;color:inherit;overflow-wrap:normal}
.bank-campaign em{font-weight:400}
.bank-campaign p{font:400 16px/1.7 'DM Sans',sans-serif}
.bank-campaign .bn-kicker{display:block;font:400 12px/1.7 'DM Sans',sans-serif;letter-spacing:.09em;text-transform:uppercase}
.bank-campaign .bn-text-link{display:inline-flex;align-items:center;gap:25px;color:inherit;border:0;border-bottom:1px solid currentColor;padding:12px 0;font:400 15px/1.5 'DM Sans',sans-serif;background:none;cursor:pointer;text-decoration:none}
.bank-campaign .bn-text-link>span{font-size:22px}
.bn-opening{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:60px;padding:55px 5% 65px}
#project-view .bn-opening h1{font-size:clamp(64px,7.5vw,126px);margin:26px 0 0}
.bn-opening-note{padding-bottom:4px}.bn-opening-note p{font-size:20px;line-height:1.55;margin:0 0 22px}
.bn-showreel{position:relative;padding:5.5% 6% 24px;background:linear-gradient(145deg,#16587b,#84b3ce);border-radius:26px;perspective:1800px}
.bn-browser{transform-origin:50% 100%;border:1px solid #f5eedd70;border-radius:14px;overflow:hidden;box-shadow:0 25px 65px #0b324b3d;background:#fff;will-change:transform}
.bn-browser-bar{height:40px;display:flex;justify-content:space-between;align-items:center;padding:0 18px;background:#f5eedd;font:400 11px/1.4 'DM Sans',sans-serif;color:#16587b}.bn-browser-dots{letter-spacing:3px;opacity:.55;font-size:9px}
.bn-film-window{aspect-ratio:1.6;overflow:hidden;background:#f5eedd}
#project-view .bn-film-window video{width:100%;height:100%;display:block;object-fit:cover;border:0;border-radius:0;max-height:none}
.bn-reel-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#f5eedd;font-size:12px;margin-top:20px}
.bn-reel-caption button{font:inherit;color:inherit;background:none;border:0;border-bottom:1px solid #f5eedd80;padding:9px 0;min-height:38px;cursor:pointer}
.bn-meta{display:flex;justify-content:space-between;gap:20px;padding:24px 2%;border-bottom:1px solid #84b3ce66;font-size:12px;line-height:1.6}
.bn-intro{text-align:center;padding:100px 5% 60px}
#project-view .bn-intro h2{font-size:clamp(48px,5.7vw,86px);margin:20px 0 26px}
.bn-intro p{margin:0;color:#376f8a}
.bn-stage{position:relative;min-height:690px;border-radius:27px;overflow:hidden;background:#ebe5d5;isolation:isolate;color:#16587b;transition:background-color .5s,color .5s}
.bn-scene{position:relative;min-height:690px}
.bn-scene-copy{position:relative;z-index:1;width:47%;padding:68px 0 140px 5.4%}
#project-view .bn-scene h3{font-size:clamp(40px,4.1vw,65px);margin:24px 0 28px}
.bn-scene-copy p{max-width:370px;margin:0 0 22px}
#project-view .bn-life-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:67% center;border-radius:0;max-height:none}
.bn-stage[data-scene=people] .bn-scene:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#f5eeddfa,#f5eeddcc 30%,#f5eedd00 62%)}
.bn-stage[data-scene=choices]{background:#16587b;color:#f5eedd}
.bn-stage[data-scene=everyday]{background:#f8f8f8}
.bn-card-scene{position:absolute;inset:0 0 90px 46%;perspective:1200px;display:flex;align-items:center;justify-content:center;isolation:isolate;background:radial-gradient(ellipse at 50% 60%,#84b3ce55,transparent 70%)}
#project-view .bn-payment-card{position:absolute;width:60%;max-width:310px;height:auto;max-height:none;object-fit:contain;border-radius:0;filter:drop-shadow(0 24px 18px #082e4466);transition:transform 1s cubic-bezier(.22,.61,.36,1)}
#project-view .bn-card-back{transform:translate(-30%,-5%) rotate(-18deg);z-index:1}
#project-view .bn-card-front{transform:translate(24%,13%) rotate(12deg);z-index:2}
@media(hover:hover){.bn-card-scene:hover .bn-card-back{transform:translate(-38%,-9%) rotate(-22deg)}.bn-card-scene:hover .bn-card-front{transform:translate(28%,16%) rotate(16deg)}}
.bn-phone-scene{position:absolute;inset:0 0 90px 48%;display:flex;align-items:center;justify-content:center}
#project-view .bn-phone-scene img{width:100%;height:100%;object-fit:contain;max-height:none;border-radius:0;mix-blend-mode:multiply}
.bn-scene-tabs{position:absolute;left:3%;right:3%;bottom:25px;display:flex;gap:8px;z-index:2;background:#f5eeddc9;border:1px solid #f5eedd80;padding:9px;border-radius:100px;backdrop-filter:blur(20px);box-shadow:0 8px 30px #16587b10}
.bn-scene-tabs button{display:flex;align-items:center;gap:20px;flex:1;min-width:0;min-height:64px;padding:12px 26px;border-radius:100px;border:0;background:transparent;color:#16587b;font:400 20px/1.3 'DM Sans',sans-serif;cursor:pointer;transition:background .3s,color .3s}
.bn-scene-tabs button>span:first-child{font-size:13px}.bn-scene-tabs button>span:last-child{margin-left:auto;font-size:24px}.bn-scene-tabs button[aria-selected=true]{background:#16587b;color:#f5eedd}
.bn-stage[data-scene=choices] .bn-scene-tabs{background:#84b3ce40;border-color:#84b3ce66}.bn-stage[data-scene=choices] .bn-scene-tabs button{color:#f5eedd}.bn-stage[data-scene=choices] .bn-scene-tabs button[aria-selected=true]{background:#f5eedd;color:#16587b}
.bn-original{padding:100px 3% 70px}.bn-original-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:40px}
#project-view .bn-original-heading h2{font-size:clamp(42px,4.7vw,70px);margin:20px 0 0}.bn-original-heading p{max-width:290px;margin:0;color:#376f8a}
.bn-original-nav{display:flex;align-items:center;gap:26px;border-bottom:1px solid #84b3ce80;padding-bottom:15px;margin-bottom:18px}
.bn-original-nav button{font:400 14px/1.5 'DM Sans',sans-serif;color:#16587b;background:none;border:0;border-bottom:1px solid transparent;padding:10px 0;cursor:pointer}.bn-original-nav button[aria-pressed=true]{border-bottom-color:currentColor}.bn-original-nav .bn-expand{margin-left:auto}
.bn-original-window{height:620px;overflow:auto;border:1px solid #84b3ce70;border-radius:12px;background:#fff;scrollbar-width:thin;scrollbar-color:#84b3ce #f5eedd;overscroll-behavior:contain}
#project-view .bn-original-window img{display:block;width:100%;height:auto;max-height:none;border-radius:0;object-fit:contain}
.bn-art-note{font-size:12px!important;color:#376f8a;margin:16px 0 0}
.bn-closing{text-align:center;padding:65px 6% 90px;background:#16587b;color:#f5eedd;border-radius:24px}
#project-view .bn-closing h2{font-size:clamp(48px,5.7vw,86px);margin:22px 0 24px}.bn-closing>p{max-width:450px;margin:0 auto 30px}
.bn-closing details{max-width:620px;margin:35px auto 0;text-align:left;border-top:1px solid #84b3ce66}.bn-closing summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;font-size:14px;padding:20px 0}.bn-closing summary::-webkit-details-marker{display:none}.bn-closing details p{font-size:14px;line-height:1.8}
.bank-campaign :is(a,button,summary,[tabindex="0"]):focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(max-width:1000px){.bn-opening{gap:30px}.bn-opening-note p{font-size:17px}.bn-scene-copy{width:51%;padding-top:55px}.bn-stage,.bn-scene{min-height:660px}.bn-scene-copy p{font-size:15px}.bn-scene-tabs button{min-height:56px;font-size:18px;padding:10px 20px;gap:13px}#project-view .bn-scene h3{font-size:43px}.bn-phone-scene{left:51%}.bn-original-window{height:530px}}
@media(max-width:650px){.bn-opening{grid-template-columns:1fr;gap:24px;padding:32px 4% 40px}#project-view .bn-opening h1{font-size:60px;margin-top:18px}.bn-opening-note p{font-size:17px;line-height:1.6;margin-bottom:10px}.bn-opening-note p br{display:none}.bank-campaign .bn-kicker{font-size:11px;letter-spacing:.065em}.bn-showreel{padding:25px 12px 13px;border-radius:17px}.bn-browser{border-radius:7px}.bn-browser-bar{height:29px;padding:0 10px;font-size:8px}.bn-browser-dots{font-size:6px;letter-spacing:1px}.bn-film-window{aspect-ratio:1.25}.bn-film-window video{object-position:50% 0!important}.bn-reel-caption{font-size:10px;gap:10px;margin-top:10px}.bn-meta{flex-wrap:wrap;gap:7px 20px;padding:18px 3%;font-size:10px}.bn-meta span:last-child{width:100%}.bn-intro{padding:60px 5% 38px}#project-view .bn-intro h2{font-size:45px}.bn-intro p{font-size:14px}.bn-intro p br{display:none}.bn-stage{border-radius:20px;min-height:850px}.bn-scene{min-height:850px}.bn-scene-copy{width:100%;padding:31px 25px 0}.bn-scene-copy p{font-size:14px;line-height:1.7;max-width:350px}.bn-scene-copy .bn-text-link{font-size:13px;gap:18px;padding:8px 0}#project-view .bn-scene h3{font-size:40px;margin:19px 0 20px}#project-view .bn-life-image{top:auto;bottom:65px;height:440px;object-position:81% center}.bn-stage[data-scene=people] .bn-scene:after{background:linear-gradient(#f5eedd 0%,#f5eedd 45%,#f5eedd00 62%)}.bn-scene-tabs{left:13px;right:13px;bottom:15px;padding:6px;gap:3px}.bn-scene-tabs button{padding:11px 7px;min-height:48px;justify-content:center;font-size:13px;gap:6px}.bn-scene-tabs button>span:first-child{font-size:10px}.bn-scene-tabs button>span:last-child{display:none}.bn-card-scene{inset:360px 10% 85px}.bn-phone-scene{inset:370px 6% 75px}#project-view .bn-payment-card{width:55%;max-width:245px}.bn-original{padding:60px 2% 45px}.bn-original-heading{display:block;margin-bottom:24px}#project-view .bn-original-heading h2{font-size:43px}.bn-original-heading p{font-size:14px;margin-top:22px}.bn-original-nav{gap:20px;margin-bottom:14px}.bn-original-nav button{font-size:12px}.bn-original-window{height:440px}#project-view .bn-original-window img{width:680px;max-width:none}.bn-art-note{font-size:11px!important}.bn-closing{padding:45px 7% 48px;border-radius:20px}#project-view .bn-closing h2{font-size:46px}.bn-closing>p{font-size:14px}.bn-closing details p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.bank-campaign *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.bn-browser{transform:none!important}.bn-payment-card{will-change:auto}}


/* performance.css */
/* Compositing stays local to moving elements that are on screen. */
.hb-feeling-strip>div{animation-play-state:paused}
.lc-cinema{will-change:auto}
.lc-cinema.is-expanding{will-change:transform}
/* Preserve the glass tint without two large, overlapping live blur passes. */
.sb-glass,.sb-glass::before{backdrop-filter:none;-webkit-backdrop-filter:none}
.sb-glass::before{background:linear-gradient(90deg,#16587b91,#16587b45 65%,transparent)}
.route-loading{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:200;background:#f5eedd;color:#16587b;border:1px solid #84b3ce;border-radius:30px;padding:12px 24px;font-size:14px;box-shadow:0 4px 20px #16587b15;max-width:calc(100vw - 32px);text-align:center}
.route-loading button{text-decoration:underline;padding:0;font:inherit}
@media(max-width:760px){.sb-glass::before{background:linear-gradient(180deg,#16587b80,transparent 85%)}}
