/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/34758301.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("/fonts/119f07c5.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("/fonts/f721e0bf.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("/fonts/47ee460c.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("/fonts/77708a96.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: 300;
  font-display: swap;
  src: url("/fonts/f438117e.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: 300;
  font-display: swap;
  src: url("/fonts/8587fbc0.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: 300;
  font-display: swap;
  src: url("/fonts/5fa8a343.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: 300;
  font-display: swap;
  src: url("/fonts/92d088b0.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: 300;
  font-display: swap;
  src: url("/fonts/2b6f2865.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("/fonts/f438117e.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("/fonts/8587fbc0.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("/fonts/5fa8a343.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("/fonts/92d088b0.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("/fonts/2b6f2865.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("/fonts/f438117e.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("/fonts/8587fbc0.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("/fonts/5fa8a343.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("/fonts/92d088b0.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("/fonts/2b6f2865.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: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/fonts/24c5177c.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: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/fonts/0cf52dd7.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/fonts/ec7010df.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/fonts/dd96c9dc.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: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/fonts/b426819f.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: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/fonts/869d5b44.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: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("/fonts/799513ae.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: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/24c5177c.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: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/0cf52dd7.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/ec7010df.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/dd96c9dc.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: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/b426819f.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: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/869d5b44.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: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/799513ae.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: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/24c5177c.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: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/0cf52dd7.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/ec7010df.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/dd96c9dc.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: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/b426819f.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: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/869d5b44.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: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/799513ae.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: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/24c5177c.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: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/0cf52dd7.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/ec7010df.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/dd96c9dc.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: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/b426819f.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: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/869d5b44.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: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/fonts/799513ae.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: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/24c5177c.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: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/0cf52dd7.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/ec7010df.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/dd96c9dc.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: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/b426819f.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: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/869d5b44.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: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/fonts/799513ae.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/257e8b96.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/2de7d21e.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/cdefef33.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/d6ae4ce4.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/cc3ba3f6.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/21332ea6.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/257e8b96.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/2de7d21e.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/cdefef33.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/d6ae4ce4.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/cc3ba3f6.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: 'JetBrains Mono';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/fonts/21332ea6.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;
}


  :root{
    /* Boston Green Metallic inspired palette */
    --green-950: #0a1410;
    --green-900: #0e1d17;
    --green-850: #122620;
    --green-800: #16312a;
    --green-700: #1c4036;
    --green-600: #245146;
    --green-500: #2d6757;
    --ink:       #07100c;
    --ink-2:     #0b1612;
    --bone:      #ece6d6;
    --bone-2:    #d8d2c0;
    --bone-mute: rgba(236,230,214,0.62);
    --bone-faint:rgba(236,230,214,0.28);
    --hair:      rgba(236,230,214,0.10);
    --gold:      #c7a558;
    --gold-2:    #d9bd7a;
    --gold-faint:rgba(199,165,88,0.18);

    --serif: "Cormorant Garamond", "Times New Roman", serif;
    --sans:  "Inter", "Helvetica Neue", Arial, sans-serif;
    --mono:  "JetBrains Mono", ui-monospace, Menlo, monospace;
  }
  *,*::before,*::after{box-sizing:border-box}
  html,body{margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    background:var(--ink);
    color:var(--bone);
    font-family:var(--sans);
    font-weight:300;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
    overflow-x:hidden;
  }
  a{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
  ::selection{background:var(--gold);color:var(--ink)}

  /* ─── grain / vignette ─────────────────────────────── */
  body::before{
    content:"";
    position:fixed;inset:0;
    pointer-events:none;
    background:
      radial-gradient(120% 80% at 50% 0%, rgba(45,103,87,0.18), transparent 60%),
      radial-gradient(80% 60% at 100% 100%, rgba(199,165,88,0.06), transparent 60%);
    z-index:1;
  }
  body::after{
    content:"";
    position:fixed;inset:0;
    pointer-events:none;
    opacity:.06;
    mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.9 0 0 0 0 0.85 0 0 0 0 0.7 0 0 0 1 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
    z-index:2;
  }

  /* ─── layout ──────────────────────────────────────── */
  .wrap{max-width:1440px;margin:0 auto;padding:0 24px;position:relative;z-index:3}
  @media(min-width:768px){.wrap{padding:0 56px}}
  @media(min-width:1200px){.wrap{padding:0 80px}}

  /* ─── nav ─────────────────────────────────────────── */
  .nav{
    position:fixed;top:0;left:0;right:0;z-index:50;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    background:rgba(7,16,12,0.55);
    border-bottom:1px solid var(--hair);
    transition:background .3s;
  }
  .nav-inner{
    display:flex;align-items:center;justify-content:space-between;
    height:64px;
    max-width:1440px;margin:0 auto;
    padding:0 24px;
  }
  @media(min-width:768px){.nav-inner{padding:0 56px;height:76px}}
  @media(min-width:1200px){.nav-inner{padding:0 80px}}

  .brand{
    display:flex;align-items:center;gap:10px;
    font-family:var(--mono);
    font-size:11px;
    letter-spacing:.22em;
    text-transform:uppercase;
    color:var(--bone);
  }
  .brand .dot{
    width:8px;height:8px;border-radius:50%;
    background:var(--gold);
    box-shadow:0 0 12px var(--gold-faint), 0 0 0 3px rgba(199,165,88,0.08);
  }
  .brand b{font-weight:600;letter-spacing:.22em}
  .brand span{color:var(--bone-mute)}

  .nav-links{display:none;gap:34px;align-items:center}
  @media(min-width:900px){.nav-links{display:flex}}
  .nav-links a{
    font-family:var(--mono);
    font-size:11px;
    letter-spacing:.22em;
    text-transform:uppercase;
    color:var(--bone-mute);
    transition:color .25s;
    position:relative;
  }
  .nav-links a:hover{color:var(--bone)}
  .nav-links a.disabled{
    color:var(--bone-faint);
    pointer-events:none;
    cursor:not-allowed;
  }
  .nav-links a.disabled::after{
    content:"Soon";
    position:absolute;
    top:-10px;right:-30px;
    font-size:8px;letter-spacing:.18em;
    color:var(--gold);
    border:1px solid var(--gold-faint);
    padding:2px 5px;
    border-radius:2px;
  }
  .nav-cta{
    display:none;
    font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--ink);background:var(--gold);
    padding:10px 18px;border-radius:1px;
    transition:transform .25s, background .25s;
  }
  @media(min-width:900px){.nav-cta{display:inline-block}}
  .nav-cta:hover{background:var(--gold-2);transform:translateY(-1px)}

  .burger{
    display:flex;flex-direction:column;gap:5px;
    width:28px;height:28px;justify-content:center;align-items:flex-end;
  }
  @media(min-width:900px){.burger{display:none}}
  .burger span{display:block;width:22px;height:1px;background:var(--bone)}
  .burger span:last-child{width:14px}

  /* mobile menu */
  .mobile-menu{
    position:fixed;inset:0;z-index:49;
    background:var(--ink);
    transform:translateY(-100%);
    transition:transform .5s cubic-bezier(.7,0,.2,1);
    display:flex;flex-direction:column;justify-content:center;align-items:center;
    gap:32px;
  }
  .mobile-menu.open{transform:translateY(0)}
  .mobile-menu a{
    font-family:var(--serif);
    font-size:42px;font-weight:300;letter-spacing:.01em;
  }
  .mobile-menu a.disabled{color:var(--bone-faint);position:relative}
  .mobile-menu a.disabled::after{
    content:"Coming soon";
    display:block;
    font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--gold);
    margin-top:4px;text-align:center;
  }

  /* ─── HERO ────────────────────────────────────────── */
  .hero{
    position:relative;
    min-height:100vh;
    min-height:100svh;
    padding-top:120px;padding-bottom:80px;
    display:flex;flex-direction:column;justify-content:space-between;
    overflow:hidden;
  }
  .hero-bg{position:absolute;inset:-6% 0 0;z-index:0;overflow:hidden}
  .hero-bg img{
    position:absolute;inset:0;width:100%;height:112%;
    object-fit:cover;object-position:32% 72%;
    filter:saturate(.9) contrast(1.05) brightness(.74);
    will-change:transform;
  }
  .hero-bg::after{
    content:"";position:absolute;inset:0;
    background:
      linear-gradient(180deg, rgba(7,16,12,.80) 0%, rgba(7,16,12,.30) 32%, rgba(10,20,16,.62) 68%, var(--ink) 100%),
      radial-gradient(70% 60% at 20% 55%, rgba(28,64,54,.35), transparent 70%),
      repeating-linear-gradient(90deg, rgba(236,230,214,0.012) 0, rgba(236,230,214,0.012) 1px, transparent 1px, transparent 60px);
  }
  @media(max-width:767px){.hero-bg img{object-position:44% 78%}}
  .hero-meta-top{
    position:relative;z-index:2;
    display:flex;justify-content:space-between;align-items:flex-start;
    font-family:var(--mono);
    font-size:10px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--bone-mute);
  }
  .hero-meta-top .col{display:flex;flex-direction:column;gap:6px}
  .hero-meta-top .label{color:var(--bone-faint);font-size:9px}
  .hero-meta-top .right{text-align:right}

  .hero-main{
    position:relative;z-index:2;
    margin:auto 0;
    padding:60px 0 40px;
  }
  .hero-eyebrow{
    display:inline-flex;align-items:center;gap:10px;
    font-family:var(--mono);
    font-size:10px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--gold);
    margin-bottom:24px;
  }
  .hero-eyebrow .bar{width:32px;height:1px;background:var(--gold)}

  .hero-title{
    font-family:var(--serif);
    font-weight:300;
    font-size:clamp(54px, 13vw, 220px);
    line-height:.88;
    letter-spacing:-.02em;
    margin:0;
    color:var(--bone);
  }
  .hero-title em{
    font-style:italic;
    font-weight:300;
    color:var(--gold);
  }
  .hero-title .stack{display:block}
  .hero-title .row{display:flex;align-items:baseline;gap:.18em;flex-wrap:wrap}
  .hero-title .num{
    font-family:var(--serif);
    font-style:italic;
    color:var(--gold);
  }

  .hero-sub{
    display:flex;flex-wrap:wrap;gap:20px 40px;align-items:baseline;
    margin-top:36px;
    padding-top:28px;
    border-top:1px solid var(--hair);
  }
  .hero-sub p{
    margin:0;
    font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--bone-mute);
  }
  .hero-sub p strong{color:var(--bone);font-weight:500}
  .hero-sub p span.gold{color:var(--gold)}

  .hero-bottom{
    position:relative;z-index:2;
    display:flex;justify-content:space-between;align-items:flex-end;
    gap:24px;flex-wrap:wrap;
  }
  .hero-tag{
    max-width:340px;
    font-family:var(--serif);
    font-size:18px;
    line-height:1.4;
    color:var(--bone-2);
    font-style:italic;
    font-weight:300;
  }
  @media(min-width:768px){.hero-tag{font-size:21px}}
  .hero-tag::before{content:"„";color:var(--gold);font-size:1.3em;line-height:0}
  .hero-tag::after{content:"“";color:var(--gold);font-size:1.3em;line-height:0}

  .scroll-cue{
    display:flex;align-items:center;gap:14px;
    font-family:var(--mono);
    font-size:10px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--bone-mute);
  }
  .scroll-cue .line{
    width:48px;height:1px;background:var(--bone-faint);
    position:relative;overflow:hidden;
  }
  .scroll-cue .line::after{
    content:"";position:absolute;top:0;left:0;width:50%;height:100%;
    background:var(--gold);
    animation:scrollLine 2.6s ease-in-out infinite;
  }
  @keyframes scrollLine{
    0%{transform:translateX(-100%)}
    50%{transform:translateX(100%)}
    100%{transform:translateX(200%)}
  }

  /* ─── section base ───────────────────────────────── */
  .section{
    position:relative;
    padding:120px 0;
    border-top:1px solid var(--hair);
  }
  @media(min-width:768px){.section{padding:160px 0}}

  .section-head{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    margin-bottom:60px;
  }
  @media(min-width:768px){
    .section-head{grid-template-columns:140px 1fr;gap:40px;margin-bottom:80px}
  }
  .section-num{
    font-family:var(--mono);
    font-size:10px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--gold);
  }
  .section-title{
    font-family:var(--serif);
    font-weight:300;
    font-size:clamp(36px, 6vw, 72px);
    line-height:1;
    letter-spacing:-.015em;
    margin:0;
    color:var(--bone);
  }
  .section-title em{font-style:italic;color:var(--gold);font-weight:300}

  /* ─── ABOUT ──────────────────────────────────────── */
  .about{
    background:linear-gradient(180deg, var(--ink) 0%, var(--green-950) 100%);
  }
  .about-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:60px;
  }
  @media(min-width:900px){
    .about-grid{grid-template-columns:140px 1fr 1fr;gap:40px 60px}
  }
  .about-lead{
    font-family:var(--serif);
    font-size:clamp(24px,3vw,32px);
    line-height:1.3;
    font-weight:300;
    color:var(--bone);
    margin:0;
    text-wrap:pretty;
  }
  .about-lead em{font-style:italic;color:var(--gold)}
  .about-body{
    font-size:15px;
    line-height:1.75;
    color:var(--bone-mute);
    margin:0;
    text-wrap:pretty;
  }
  .about-body + .about-body{margin-top:16px}

  /* ─── SPEC STRIP ─────────────────────────────────── */
  .spec-strip{
    margin-top:80px;
    border-top:1px solid var(--hair);
    border-bottom:1px solid var(--hair);
    padding:32px 0;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:32px 24px;
  }
  @media(min-width:768px){.spec-strip{grid-template-columns:repeat(4,1fr)}}
  .spec{
    display:flex;flex-direction:column;gap:8px;
  }
  .spec-label{
    font-family:var(--mono);
    font-size:9px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--bone-faint);
  }
  .spec-value{
    font-family:var(--serif);
    font-size:clamp(26px,3.4vw,38px);
    font-weight:300;
    line-height:1;
    color:var(--bone);
  }
  .spec-value em{color:var(--gold);font-style:italic}
  .spec-unit{font-family:var(--mono);font-size:10px;letter-spacing:.22em;color:var(--bone-mute);text-transform:uppercase}

  /* ─── GALLERY ────────────────────────────────────── */
  .gallery{background:linear-gradient(180deg, var(--green-950) 0%, var(--ink) 100%)}
  .gal-grid{display:grid;grid-template-columns:1fr;gap:20px}
  @media(min-width:900px){.gal-grid{grid-template-columns:repeat(12,1fr);gap:24px}}
  .frame{
    position:relative;overflow:hidden;
    border:1px solid var(--hair);
    background:var(--green-950);
    cursor:zoom-in;
    display:block;
  }
  .frame img{
    width:100%;height:100%;object-fit:cover;
    filter:saturate(.9) contrast(1.04);
    transition:transform 1.1s cubic-bezier(.2,.8,.2,1), filter .6s;
    will-change:transform;
  }
  .frame:hover img{transform:scale(1.045);filter:saturate(1.02) contrast(1.06)}
  .frame::after{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(180deg, rgba(7,16,12,.15) 0%, transparent 35%, rgba(7,16,12,.65) 100%);
  }
  .frame .cap{
    position:absolute;z-index:2;left:18px;right:18px;bottom:16px;
    display:flex;justify-content:space-between;align-items:flex-end;gap:12px;
    font-family:var(--mono);font-size:9px;letter-spacing:.26em;text-transform:uppercase;
    color:var(--bone-mute);
  }
  .frame .cap b{display:block;color:var(--bone);font-weight:500;font-size:10px;margin-top:3px}
  .frame .cap .idx{color:var(--gold)}
  .frame .corner{
    position:absolute;z-index:2;top:14px;left:14px;width:14px;height:14px;
    border-left:1px solid var(--gold);border-top:1px solid var(--gold);opacity:.7;
  }
  .f-wide{aspect-ratio:16/9}
  .f-tall{aspect-ratio:3/4}
  .f-xtall{aspect-ratio:9/16}
  .g-a img{object-position:50% 72%}
  .g-d img{object-position:50% 50%}
  @media(min-width:900px){
    .gal-grid{align-items:start}
    .g-a{grid-column:span 12;aspect-ratio:21/9}
    .g-b{grid-column:span 6;aspect-ratio:4/3}
    .g-c{grid-column:span 6;aspect-ratio:4/3}
    .g-d{grid-column:4 / span 6;aspect-ratio:3/4}
  }

  /* lightbox */
  .lightbox{
    position:fixed;inset:0;z-index:100;
    background:rgba(4,10,8,.94);
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    display:flex;align-items:center;justify-content:center;
    padding:40px 20px;
    opacity:0;pointer-events:none;transition:opacity .4s;
    cursor:zoom-out;
  }
  .lightbox.open{opacity:1;pointer-events:auto}
  .lightbox img{max-width:min(1100px,92vw);max-height:86vh;object-fit:contain;border:1px solid var(--hair)}
  .lightbox .lb-close{
    position:absolute;top:24px;right:24px;
    font-family:var(--mono);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--bone-mute);
  }
  .lightbox .lb-cap{
    position:absolute;bottom:24px;left:0;right:0;text-align:center;
    font-family:var(--mono);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);
  }

  /* ─── MARQUEE ────────────────────────────────────── */
  .marquee{
    border-top:1px solid var(--hair);
    border-bottom:1px solid var(--hair);
    padding:28px 0;
    overflow:hidden;
    background:var(--green-950);
    position:relative;
  }
  .marquee-track{
    display:flex;gap:60px;
    width:max-content;
    animation:marquee 40s linear infinite;
    font-family:var(--serif);
    font-size:clamp(28px,4vw,44px);
    font-weight:300;
    color:var(--bone-2);
    align-items:center;
    white-space:nowrap;
  }
  .marquee-track em{font-style:italic;color:var(--gold)}
  .marquee-track .sep{
    width:8px;height:8px;border-radius:50%;
    background:var(--gold);
    display:inline-block;flex-shrink:0;
  }
  @keyframes marquee{
    from{transform:translateX(0)}
    to{transform:translateX(-50%)}
  }

  /* ─── SOCIAL ─────────────────────────────────────── */
  .social{
    background:var(--ink);
  }
  .social-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:24px;
  }
  @media(min-width:768px){.social-grid{grid-template-columns:1fr 1fr;gap:32px}}

  .social-card{
    position:relative;
    border:1px solid var(--hair);
    padding:36px 28px 28px;
    display:flex;flex-direction:column;
    gap:28px;
    min-height:300px;
    isolation:isolate;
    overflow:hidden;
    background:linear-gradient(150deg, var(--green-900) 0%, var(--ink) 62%);
    transition:border-color .5s, transform .5s cubic-bezier(.2,.8,.2,1);
  }
  @media(min-width:768px){.social-card{padding:44px 40px 36px;min-height:380px}}
  /* ghost wordmark */
  .social-card .ghost{
    position:absolute;z-index:0;right:-4%;bottom:-10%;
    font-family:var(--serif);font-style:italic;font-weight:300;
    font-size:clamp(120px,17vw,200px);line-height:.8;
    -webkit-text-stroke:1px rgba(236,230,214,0.07);
    color:transparent;
    pointer-events:none;
    transition:transform .8s cubic-bezier(.2,.8,.2,1), -webkit-text-stroke-color .5s;
  }
  .social-card:hover .ghost{transform:translate(-8px,-8px);-webkit-text-stroke-color:rgba(199,165,88,0.16)}
  /* sheen sweep */
  .social-card .sheen{
    position:absolute;z-index:1;inset:-40% -10%;
    background:linear-gradient(105deg, transparent 38%, rgba(236,230,214,.07) 48%, rgba(199,165,88,.12) 52%, transparent 62%);
    transform:translateX(-120%);
    transition:transform 1.1s cubic-bezier(.2,.8,.2,1);
    pointer-events:none;
  }
  .social-card:hover .sheen{transform:translateX(120%)}
  .social-card::before{
    content:"";position:absolute;z-index:0;inset:0;
    background:radial-gradient(90% 70% at 100% 0%, rgba(199,165,88,.16), transparent 62%);
    opacity:0;transition:opacity .55s;
  }
  .social-card:hover{border-color:rgba(199,165,88,.45);transform:translateY(-6px)}
  .social-card:hover::before{opacity:1}
  .social-card > *:not(.sheen):not(.ghost){position:relative;z-index:2}

  .social-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
  .social-icon{
    position:relative;
    width:56px;height:56px;flex-shrink:0;
    border-radius:50%;
    display:grid;place-items:center;
    color:var(--bone);
    background:rgba(236,230,214,.04);
    transition:color .4s, background .4s;
  }
  .social-icon svg.glyph{width:22px;height:22px;position:relative;z-index:2}
  .social-icon .ring{display:none}
  .social-card:hover .social-icon{color:var(--gold);background:rgba(199,165,88,.08)}

  .social-platform{
    font-family:var(--mono);
    font-size:9px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--bone-faint);
    text-align:right;line-height:1.9;
  }
  .social-platform b{display:block;color:var(--gold);font-weight:500;margin-top:2px;font-size:10px}
  .social-stat{
    display:block;margin-top:10px;
    font-family:var(--serif);font-style:italic;font-size:15px;letter-spacing:0;text-transform:none;
    color:var(--bone-mute);
  }

  .social-handle{
    font-family:var(--serif);
    font-size:clamp(26px,3.6vw,42px);
    line-height:1;
    font-weight:300;
    color:var(--bone);
    margin:auto 0 0;
    letter-spacing:-.01em;
  }
  .social-handle em{font-style:italic;color:var(--gold);font-weight:300}

  .social-action{
    display:flex;justify-content:space-between;align-items:center;gap:16px;
    padding-top:22px;
    border-top:1px solid var(--hair);
    font-family:var(--mono);font-size:10px;letter-spacing:.26em;text-transform:uppercase;
    color:var(--bone-mute);
    transition:color .35s, border-color .35s;
  }
  .social-card:hover .social-action{color:var(--bone);border-color:rgba(199,165,88,.28)}
  .social-action .go{
    display:inline-flex;align-items:center;justify-content:center;
    width:40px;height:40px;flex-shrink:0;
    border:1px solid var(--bone-faint);border-radius:50%;
    overflow:hidden;position:relative;
    transition:border-color .35s, background .35s, color .35s;
  }
  .social-action .go svg{width:16px;height:11px;transition:transform .45s cubic-bezier(.5,0,.2,1)}
  .social-card:hover .social-action .go{background:var(--gold);border-color:var(--gold);color:var(--ink)}
  .social-card:hover .social-action .go svg{transform:translateX(3px)}

  /* ─── SHOP COMING SOON ───────────────────────────── */
  .shop{
    background:
      linear-gradient(180deg, var(--ink) 0%, var(--green-950) 50%, var(--ink) 100%);
    position:relative;
    overflow:hidden;
  }
  .shop-inner{
    position:relative;z-index:2;
    text-align:center;
    padding:40px 0 20px;
  }
  .shop-eyebrow{
    display:inline-flex;align-items:center;gap:14px;
    font-family:var(--mono);
    font-size:10px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--gold);
    margin-bottom:28px;
  }
  .shop-eyebrow .bar{width:24px;height:1px;background:var(--gold)}
  .shop-title{
    font-family:var(--serif);
    font-size:clamp(56px,11vw,160px);
    line-height:.9;
    font-weight:300;
    margin:0;
    letter-spacing:-.02em;
  }
  .shop-title em{font-style:italic;color:var(--gold)}
  .shop-title .stroked{
    -webkit-text-stroke:1px var(--bone);
    color:transparent;
  }
  .shop-sub{
    max-width:540px;margin:32px auto 0;
    font-family:var(--serif);font-style:italic;
    font-size:clamp(17px,1.8vw,21px);
    line-height:1.5;
    color:var(--bone-mute);
    text-wrap:pretty;
  }
  .shop-notify{
    margin-top:48px;
    display:flex;flex-direction:column;
    max-width:480px;margin-left:auto;margin-right:auto;
    gap:8px;
  }
  .shop-notify form{
    display:flex;
    border:1px solid var(--bone-faint);
    transition:border-color .3s;
  }
  .shop-notify form:focus-within{border-color:var(--gold)}
  .shop-notify input{
    flex:1;background:transparent;border:0;outline:none;
    color:var(--bone);
    font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;
    padding:16px 18px;
  }
  .shop-notify input::placeholder{color:var(--bone-faint)}
  .shop-notify button{
    padding:16px 22px;
    font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;
    background:var(--gold);color:var(--ink);
    transition:background .25s;
  }
  .shop-notify button:hover{background:var(--gold-2)}
  .shop-notify .hint{
    font-family:var(--mono);font-size:9px;letter-spacing:.24em;text-transform:uppercase;
    color:var(--bone-faint);margin-top:6px;
  }

  /* ─── CONTACT ────────────────────────────────────── */
  .contact{
    background:var(--ink-2);
  }
  .contact-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:48px;
  }
  @media(min-width:1000px){
    .contact-grid{grid-template-columns:1fr 1.2fr;gap:80px}
  }
  .contact-intro h3{
    font-family:var(--serif);
    font-size:clamp(28px,3.6vw,42px);
    font-weight:300;line-height:1.1;
    margin:0 0 24px;
    color:var(--bone);
    text-wrap:balance;
  }
  .contact-intro h3 em{font-style:italic;color:var(--gold)}
  .contact-intro p{
    font-size:15px;line-height:1.75;color:var(--bone-mute);
    margin:0 0 32px;text-wrap:pretty;
  }
  .contact-detail{
    display:flex;flex-direction:column;gap:24px;
    border-top:1px solid var(--hair);padding-top:32px;
  }
  .contact-detail .row{display:flex;flex-direction:column;gap:6px}
  .contact-detail .label{
    font-family:var(--mono);font-size:9px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--bone-faint);
  }
  .contact-detail .val{
    font-family:var(--serif);font-size:20px;color:var(--bone);
  }
  .contact-detail .val em{font-style:italic;color:var(--gold)}

  /* form */
  form.collab{display:flex;flex-direction:column;gap:24px}
  .field{display:flex;flex-direction:column;gap:8px;position:relative}
  .field-row{display:grid;grid-template-columns:1fr;gap:24px}
  @media(min-width:600px){.field-row{grid-template-columns:1fr 1fr}}
  .field label{
    font-family:var(--mono);font-size:10px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--bone-faint);
  }
  .field input, .field textarea, .field select{
    background:transparent;
    border:0;border-bottom:1px solid var(--bone-faint);
    color:var(--bone);
    font-family:var(--sans);font-weight:300;font-size:16px;
    padding:12px 0;
    outline:none;
    transition:border-color .3s;
    border-radius:0;
    -webkit-appearance:none;appearance:none;
  }
  .field select{
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='none' stroke='%23c7a558' stroke-width='1.2' d='M1 1l5 5 5-5'/></svg>");
    background-repeat:no-repeat;
    background-position:right 0 center;
    padding-right:24px;
  }
  .field select option{background:var(--green-950);color:var(--bone)}
  .field textarea{resize:vertical;min-height:120px;font-family:var(--sans)}
  .field input:focus, .field textarea:focus, .field select:focus{border-color:var(--gold)}
  .field input::placeholder, .field textarea::placeholder{color:var(--bone-faint)}

  .submit-row{
    display:flex;justify-content:space-between;align-items:center;
    margin-top:16px;
    flex-wrap:wrap;gap:16px;
  }
  .privacy{
    font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
    color:var(--bone-faint);
    max-width:300px;line-height:1.6;
  }
  button.send{
    display:inline-flex;align-items:center;gap:14px;
    background:var(--gold);color:var(--ink);
    padding:18px 28px;
    font-family:var(--mono);font-size:11px;letter-spacing:.32em;text-transform:uppercase;font-weight:500;
    transition:background .25s,transform .25s;
  }
  button.send:hover{background:var(--gold-2);transform:translateX(4px)}
  button.send svg{width:14px;height:14px}

  .form-success{
    display:none;
    border:1px solid var(--gold);
    padding:32px;
    background:rgba(199,165,88,0.04);
  }
  .form-success.show{display:block}
  .form-success h4{
    font-family:var(--serif);font-style:italic;font-size:28px;font-weight:300;
    margin:0 0 8px;color:var(--gold);
  }
  .form-success p{font-size:14px;color:var(--bone-mute);margin:0;line-height:1.6}

  /* ─── FOOTER ─────────────────────────────────────── */
  footer{
    background:var(--ink);
    border-top:1px solid var(--hair);
    padding:80px 0 40px;
  }
  .foot-top{
    display:grid;
    grid-template-columns:1fr;
    gap:40px;
    padding-bottom:60px;
    border-bottom:1px solid var(--hair);
  }
  @media(min-width:900px){.foot-top{grid-template-columns:2fr 1fr 1fr 1fr}}
  .foot-brand-line{
    font-family:var(--serif);
    font-size:clamp(36px,5vw,64px);
    line-height:1;font-weight:300;
    margin:0;color:var(--bone);
    letter-spacing:-.01em;
  }
  .foot-brand-line em{font-style:italic;color:var(--gold)}
  .foot-brand-line .stroked{
    -webkit-text-stroke:1px var(--bone-faint);
    color:transparent;
    display:block;
  }
  .foot-col h5{
    font-family:var(--mono);font-size:10px;letter-spacing:.32em;text-transform:uppercase;
    color:var(--bone-faint);
    margin:0 0 16px;font-weight:500;
  }
  .foot-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
  .foot-col a{
    font-size:14px;color:var(--bone-mute);transition:color .25s;
  }
  .foot-col a:hover{color:var(--gold)}
  .foot-col .muted{color:var(--bone-faint);font-size:14px}

  .foot-bot{
    display:flex;justify-content:space-between;align-items:center;
    padding-top:32px;
    flex-wrap:wrap;gap:16px;
    font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;
    color:var(--bone-faint);
  }
  .foot-bot a:hover{color:var(--bone)}
  .foot-bot .dotline{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
  .foot-bot .dot{width:4px;height:4px;background:var(--gold);border-radius:50%;display:inline-block}

  /* ─── reveal on scroll ───────────────────────────── */
  [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity 1s cubic-bezier(.2,.8,.2,1), transform 1s cubic-bezier(.2,.8,.2,1)}
  [data-reveal].in{opacity:1;transform:none}
  [data-reveal][data-d="1"]{transition-delay:.09s}
  [data-reveal][data-d="2"]{transition-delay:.18s}
  [data-reveal][data-d="3"]{transition-delay:.27s}
  [data-reveal][data-d="4"]{transition-delay:.36s}

  /* hero title mask-in */
  .line-mask{display:block;overflow:hidden}
  .line-mask > span{display:block;transform:translateY(105%);animation:riseIn 1.15s cubic-bezier(.16,1,.3,1) forwards}
  .line-mask:nth-of-type(2) > span{animation-delay:.1s}
  .line-mask:nth-of-type(3) > span{animation-delay:.2s}
  @keyframes riseIn{to{transform:translateY(0)}}
  .fade-up{opacity:0;animation:fadeUp 1.1s cubic-bezier(.16,1,.3,1) .55s forwards}
  @keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

  /* utility */
  @media (prefers-reduced-motion: reduce){
    *{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important}
    html{scroll-behavior:auto}
  }
