/* self-hosted fonts (Heebo, Cormorant Garamond, Great Vibes, Bodoni Moda; SIL OFL) */
@font-face{font-family: 'Bodoni Moda'; font-style: normal; font-weight: 600 800; font-display: swap; src: url(fonts/bodoni-moda-math.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-209F, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;}
@font-face{font-family: 'Bodoni Moda'; font-style: normal; font-weight: 600 800; font-display: swap; src: url(fonts/bodoni-moda-symbols.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AE, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F8D0-1F8D8, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FAC6, U+1FAC8, U+1FACC-1FADD, U+1FADF-1FAEB, U+1FAEF-1FAFA, U+1FB00-1FBFF;}
@font-face{font-family: 'Bodoni Moda'; font-style: normal; font-weight: 600 800; font-display: swap; src: url(fonts/bodoni-moda-latin-ext.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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family: 'Bodoni Moda'; font-style: normal; font-weight: 600 800; font-display: swap; src: url(fonts/bodoni-moda-latin.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;}
@font-face{font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-italic-cyrillic-ext.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;}
@font-face{font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-italic-cyrillic.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}
@font-face{font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-italic-vietnamese.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;}
@font-face{font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-italic-latin-ext.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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family: 'Cormorant Garamond'; font-style: italic; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-italic-latin.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;}
@font-face{font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-cyrillic-ext.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;}
@font-face{font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-cyrillic.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}
@font-face{font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-vietnamese.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;}
@font-face{font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-latin-ext.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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family: 'Cormorant Garamond'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/cormorant-garamond-latin.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;}
@font-face{font-family: 'Great Vibes'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/great-vibes-cyrillic-ext.woff2) format('woff2'); unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;}
@font-face{font-family: 'Great Vibes'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/great-vibes-cyrillic.woff2) format('woff2'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;}
@font-face{font-family: 'Great Vibes'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/great-vibes-greek-ext.woff2) format('woff2'); unicode-range: U+1F00-1FFF;}
@font-face{font-family: 'Great Vibes'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/great-vibes-vietnamese.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;}
@font-face{font-family: 'Great Vibes'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/great-vibes-latin-ext.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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family: 'Great Vibes'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/great-vibes-latin.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;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 300; font-display: swap; src: url(fonts/heebo-hebrew.woff2) format('woff2'); unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 300; font-display: swap; src: url(fonts/heebo-math.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-209F, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 300; font-display: swap; src: url(fonts/heebo-symbols.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AE, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F8D0-1F8D8, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FAC6, U+1FAC8, U+1FACC-1FADD, U+1FADF-1FAEB, U+1FAEF-1FAFA, U+1FB00-1FBFF;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 300; font-display: swap; src: url(fonts/heebo-latin-ext.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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 300; font-display: swap; src: url(fonts/heebo-latin.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;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/heebo-hebrew.woff2) format('woff2'); unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/heebo-math.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-209F, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/heebo-symbols.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AE, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F8D0-1F8D8, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FAC6, U+1FAC8, U+1FACC-1FADD, U+1FADF-1FAEB, U+1FAEF-1FAFA, U+1FB00-1FBFF;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/heebo-latin-ext.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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/heebo-latin.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;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/heebo-hebrew.woff2) format('woff2'); unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/heebo-math.woff2) format('woff2'); unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-209F, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/heebo-symbols.woff2) format('woff2'); unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AE, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F8D0-1F8D8, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FAC6, U+1FAC8, U+1FACC-1FADD, U+1FADF-1FAEB, U+1FAEF-1FAFA, U+1FB00-1FBFF;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/heebo-latin-ext.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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family: 'Heebo'; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/heebo-latin.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{--bg:#FBF7F5;--blush:#F6E7E4;--rose:#EBCFCA;--copper:#A26A5C;--ink:#1E1618;--soft:#6E5E60;--line:#ECDDD9;--he:"Heebo",system-ui,sans-serif;--en:"Cormorant Garamond",Georgia,serif;--sc:"Great Vibes",cursive;--ls:"Bodoni Moda",Didot,"Bodoni 72",Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.65 var(--he);overflow-x:clip}
img{display:block;max-width:100%;height:auto}
h1,h2,h3{font-weight:300;letter-spacing:-.015em;margin:0}
p{margin:0}
a{color:inherit}
button,input{font:inherit;color:inherit}
.wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.en{font-family:var(--en);font-weight:500;letter-spacing:.01em}
.h-sec{font:300 clamp(34px,3.8vw,54px)/1.1 var(--he)}
.lead{font-size:19px;color:var(--soft);max-width:36ch}
.note{font-size:14px;color:var(--soft)}

/* top bar + object index */
.bar{position:sticky;top:0;z-index:30;background:rgba(251,247,245,.9);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.bar-in{display:flex;align-items:center;gap:18px;height:64px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.logo b{font:700 30px/1 var(--ls);letter-spacing:.01em}
.logo span{font:500 12px/1.1 var(--en);letter-spacing:.28em;text-transform:uppercase;color:var(--soft)}
.idx{display:flex;gap:2px;margin-inline-start:auto;overflow-x:auto;scrollbar-width:none}
.idx::-webkit-scrollbar{display:none}
.idx a{padding:8px 14px;border-radius:999px;font-size:15px;text-decoration:none;color:var(--soft);white-space:nowrap;transition:background-color .2s,color .2s}
.idx a:hover,.idx a[aria-current]{background:var(--blush);color:var(--ink)}

/* buttons, chips, fields */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 26px;border-radius:999px;border:1px solid var(--ink);background:var(--ink);color:#fff;font:500 16px/1 var(--he);text-decoration:none;cursor:pointer;transition:transform .2s ease,background-color .2s ease,color .2s ease}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:scale(.98)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{background:var(--blush)}
.btn[aria-disabled=true]{opacity:.45}
.bar .btn{min-height:40px;padding:0 18px;font-size:15px}
.cta{display:flex;flex-wrap:wrap;gap:12px}
.link{font-size:15px;font-weight:500;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:1px;cursor:pointer;background:none;border-top:0;border-inline:0}
.opt{border:0;padding:0;margin:0 0 22px;min-width:0}
.opt legend{font-size:15px;color:var(--soft);margin-bottom:10px;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;display:inline-flex}
.chip input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.chip span{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:15px;transition:background-color .2s,border-color .2s,color .2s}
.chip span small{font-size:13px;opacity:.7}
.chip input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.chip input:focus-visible+span{outline:2px solid var(--copper);outline-offset:2px}
.fld{display:grid;gap:6px;margin-bottom:16px}
.fld span{font-size:15px;color:var(--soft)}
.fld input{min-height:48px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:0 14px;font-size:16px;width:100%}
.fld input:focus{outline:2px solid var(--copper);outline-offset:1px}

/* the label schema: every object on both pages */
.lab-en{font:italic 500 19px/1.25 var(--en);color:var(--copper)}
.lab h2,.lab h3{font:400 25px/1.25 var(--he);margin:2px 0 6px}
.lab-f{color:var(--soft);font-size:15px;line-height:1.55}
.lab-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
.price{font:300 24px/1 var(--he);white-space:nowrap}

/* shared shapes */
.arch{position:relative;overflow:hidden;border-radius:999px 999px 22px 22px;background:var(--blush)}
.arch img{width:100%;height:100%;object-fit:cover}
.streaks{position:absolute;inset:-20%;background:repeating-linear-gradient(118deg,rgba(255,255,255,0) 0 80px,rgba(255,255,255,.75) 80px 130px,rgba(255,255,255,0) 130px 230px);filter:blur(24px);pointer-events:none}
.big-ls{position:absolute;top:-4%;left:50%;transform:translateX(-50%);font:700 clamp(230px,30vw,450px)/1 var(--ls);letter-spacing:-.02em;color:rgba(162,106,92,.17);white-space:nowrap;pointer-events:none;user-select:none}

/* hero (object one already in view) */
.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--blush),var(--bg) 94%)}
.hero-bg{position:absolute;inset:0;pointer-events:none}
.hero-in{position:relative;display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:center;min-height:calc(100svh - 64px);padding:40px 0 64px}
.plaque h1{font:300 clamp(38px,4.4vw,62px)/1.12 var(--he);letter-spacing:-.02em;margin:10px 0 18px}
.plaque .lead{margin-bottom:30px}
.obj1{position:relative;margin:0;display:grid;justify-items:center}
.obj1>.arch:not(.mini){width:min(420px,100%);aspect-ratio:4/5;box-shadow:0 40px 70px -40px rgba(120,60,55,.45)}
.arch-eye{display:grid;place-items:center;background:linear-gradient(180deg,#FFFAF8,#F0D9D4);border:1px solid #fff}
.arch-eye svg{position:relative;width:90%}
.mini{position:absolute;width:27%;aspect-ratio:4/5;left:2%;bottom:24%;border:6px solid var(--bg);box-shadow:0 24px 40px -20px rgba(120,60,55,.5)}
.obj1 .lab{width:min(420px,100%);margin-top:20px;position:relative}

/* pan rail */
.pan{position:relative}
.pan-stage{position:sticky;top:var(--top,64px);height:calc(100vh - var(--top,64px));overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:30px}
.pan-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap}
.pan-track{display:flex;gap:3vw;width:max-content;padding-inline:max(20px,calc((100vw - 1180px)/2));will-change:transform}
.obj{flex:none;width:min(34vw,500px);margin:0}
.obj .ph{aspect-ratio:17/10;border-radius:22px;overflow:hidden;background:var(--blush)}
.obj .ph img{width:100%;height:100%;object-fit:cover}
.obj .lab{padding-top:18px}

/* the fitting (peak) */
.fit{padding:110px 0}
.fit-in{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.fit-stage{position:sticky;top:96px}
.arch-fit{aspect-ratio:1/1;border-radius:999px 999px 28px 28px;display:grid;place-items:center;background:linear-gradient(180deg,#F9ECE9,#EED5D0)}
.arch-fit svg{position:relative;width:94%}
.fit-lab{margin-top:18px}
.fit-panel .h-sec{margin-bottom:14px}
.fit-panel .lead{margin-bottom:34px}
.fx-note{font-size:14px;color:var(--soft);margin-top:8px;min-height:1.6em}
.chk{display:flex;gap:10px;align-items:center;margin:0 0 24px;font-size:15px;cursor:pointer}
.chk input{width:20px;height:20px;accent-color:var(--ink)}
.msg{background:#fff;border:1px solid var(--line);border-radius:18px;padding:14px 16px;margin:6px 0 18px}
.msg pre{margin:6px 0 0;white-space:pre-wrap;font:400 15px/1.6 var(--he)}
.wa{width:100%}

/* course */
.course{padding:110px 0;background:linear-gradient(180deg,var(--bg),var(--blush))}
.course-in{display:grid;grid-template-columns:1.05fr 1fr;grid-template-areas:"lab ph";gap:28px 64px;align-items:start}
.course-lab{grid-area:lab}
.course-lab h2{font:300 clamp(30px,3.2vw,44px)/1.15 var(--he);margin:4px 0 10px}
.course-ph{grid-area:ph;margin:0}
.course-ph img,.grad img{border-radius:22px}
.course-ph figcaption,.grad figcaption{font-size:14px;color:var(--soft);margin-top:8px}
.grad{grid-area:grad;width:58%;justify-self:end;margin:-90px 0 0;position:relative;border:8px solid var(--bg);border-radius:28px;background:var(--bg)}
.rv{clip-path:inset(0 0 100% 0);transition:clip-path 1.2s cubic-bezier(.2,.7,.1,1)}
.rv.in{clip-path:inset(0 0 0 0)}
.day{list-style:none;margin:26px 0 22px;padding:0;display:grid;gap:4px;counter-reset:d}
.day li{position:relative;padding:10px 34px 10px 0;color:var(--soft);transition:color .5s}
.day li::before{content:"";position:absolute;right:6px;top:19px;width:10px;height:10px;border-radius:50%;border:1px solid var(--copper);transition:background-color .5s}
.day li::after{content:"";position:absolute;right:10.5px;top:31px;bottom:-11px;width:1px;background:var(--line)}
.day li:last-child::after{display:none}
.day li.on{color:var(--ink)}
.day li.on::before{background:var(--copper)}
.incl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;font-size:15px;color:var(--soft)}
.incl li::before{content:"✦ ";color:var(--copper)}

/* products teaser */
.shop{padding:110px 0}
.shop-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:34px}
.shop-row{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:34px}
.card{text-decoration:none;display:block;transform-style:preserve-3d;transition:transform .3s ease}
.card .arch{aspect-ratio:4/5}
.card .lab{padding-top:14px}

/* close plate */
.close{padding:110px 0 140px;background:var(--blush)}
.plate{max-width:640px;margin:auto;background:#fff;border:1px solid var(--line);border-radius:28px;padding:48px 40px;text-align:center;box-shadow:0 30px 60px -40px rgba(120,60,55,.35)}
.sig{font:400 54px/1.1 var(--sc)}
.plate h2{font:300 32px/1.2 var(--he);margin:14px 0 8px}
.phone{display:block;font:300 44px/1.2 var(--he);text-decoration:none;margin:16px 0 24px}
.plate .cta{justify-content:center}
.foot{text-align:center;font-size:13px;color:var(--soft);margin-top:28px}

/* mobile bars, toast */
.mbar{display:none}
.toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 18px;border-radius:999px;font-size:15px;opacity:0;transition:opacity .3s;pointer-events:none;z-index:60}
.toast.on{opacity:1}

/* products page */
.strip{position:sticky;top:64px;z-index:29;background:rgba(251,247,245,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.strip-in{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:8px 0}
.strip-in::-webkit-scrollbar{display:none}
.strip a{display:inline-flex;align-items:center;gap:8px;flex:none;padding:4px 12px 4px 4px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px;text-decoration:none;white-space:nowrap}
.strip a i{width:30px;height:30px;border-radius:50%;background:var(--blush) center/cover;flex:none}
.prods .hero-in{min-height:calc(100svh - var(--top,64px))}
.prod .ph{aspect-ratio:4/5;border-radius:999px 999px 22px 22px}
.prods .obj{width:min(23vw,330px)}
.prod .ph.icon{display:grid;place-items:center;background:linear-gradient(180deg,#F9ECE9,#EED5D0);position:relative}
.prod .ph.icon svg{position:relative;width:46%;fill:none;stroke:var(--copper);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;background:#fff}
.qty button{width:40px;height:40px;border:0;background:none;font-size:20px;line-height:1;cursor:pointer;border-radius:50%}
.qty button:hover{background:var(--blush)}
.qty output{min-width:22px;text-align:center;font-size:16px}
.var{margin:14px 0 0}
.lash-opts{margin-top:16px}
.lash-opts .opt{margin:0 0 14px}
.lash-opts .opt legend{font-size:14px;margin-bottom:8px}
.chip.th span{padding-inline-start:5px}
.chip.th i{flex:none;width:34px;height:34px;border-radius:50%;background-size:260%;background-position:50% 47%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.chips.len{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.chips.len .chip span{width:100%;justify-content:center;padding:0;font-variant-numeric:tabular-nums}
.sel{font-size:14px;color:var(--soft);margin:2px 0 0}
.pl{padding:120px 0;background:linear-gradient(180deg,var(--bg),var(--blush))}
.pl-in{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.pl-stage{perspective:1200px}
.box{aspect-ratio:3/2;border-radius:20px;padding:16px;background:linear-gradient(135deg,#E3B9AC,#F7E4DD 42%,#D7A595 70%,#F2D6CC);box-shadow:0 50px 80px -40px rgba(120,60,55,.55);transform:rotateX(var(--rx,0deg)) rotateZ(var(--rz,0deg));transition:transform .1s linear}
.box-in{height:100%;border-radius:12px;background:radial-gradient(120% 90% at 20% 10%,#FFF8F5,#F8E6E0 60%,#F2D9D1);display:grid;grid-template-rows:auto auto 1fr;justify-items:center;padding:16px 18px 10px;overflow:hidden}
.box-name{font:400 clamp(30px,3.4vw,46px)/1.15 var(--sc);color:var(--ink);text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.box-name.he{font:300 clamp(24px,2.6vw,34px)/1.3 var(--he);letter-spacing:.08em}
.box-sub{font:500 11px/1 var(--en);letter-spacing:.4em;color:var(--copper);margin-top:4px}
.box-in svg{width:100%;align-self:end}
.pl-lab h2{font:300 clamp(30px,3.2vw,44px)/1.15 var(--he);margin:4px 0 10px}
.pl-lab .lab-f{margin-bottom:16px}
.pl-lab p.say{margin-bottom:22px}
.stepper{display:flex;align-items:center;gap:12px}
.plp{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.plr{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}
.plr-c{display:flex;align-items:center;gap:12px;flex:1;min-height:44px;cursor:pointer}
.plr-c input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--ink)}
.plr-c i{flex:none;width:42px;height:42px;border-radius:50%;background-size:cover;background-position:50% 48%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.plr.off .plr-c i{opacity:.45}
.plr .nm{display:grid;font-size:16px;line-height:1.3}
.plr .nm small{font-size:13px;color:var(--soft)}
.plr .qty output{min-width:40px}
.plr.off .nm{color:var(--soft)}
.plr.off .qty{opacity:.4}
.pl-pack{margin:12px 0 0;font-size:14px;color:var(--copper)}
.pl-pack::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--copper);margin-inline-end:8px;vertical-align:middle}
.pl-all{margin-top:12px;font-family:inherit;color:var(--ink)}
.pl-sum{font-size:15px;color:var(--soft)}
.pl-note{margin-top:10px}
.kit{margin:0 0 22px;padding:22px 22px 20px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 60px -44px rgba(120,60,55,.45)}
.kit[hidden],#own[hidden]{display:none}
.kit-en{font:italic 500 17px/1.2 var(--en);color:var(--copper)}
.kit-h{font:400 22px/1.3 var(--he);margin:2px 0 4px}
.kit-sub{font-size:14px;color:var(--soft);margin-bottom:12px}
.kit-l{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.kit-l li{display:grid;grid-template-columns:44px 1fr auto auto;gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}
.kit-l i{width:44px;height:44px;border-radius:50%;background-size:cover;background-position:50% 48%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.kit-l .nm{display:grid;font-size:15px;line-height:1.3}
.kit-l .nm small{font-size:12.5px;color:var(--soft)}
.kit-l .kq{font-size:14px;color:var(--copper);font-variant-numeric:tabular-nums}
.kit-l .kp{font-size:14px;color:var(--soft);min-width:66px;text-align:left}
.kit-gift{font-size:14px;color:var(--copper);margin:12px 0 0}
.kit-p{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 14px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.kit-was{font-size:14px;color:var(--soft)}
.kit-p b{font:400 32px/1 var(--he);color:var(--ink)}
.kit-off{font-size:13px;background:var(--blush);color:var(--copper);padding:4px 10px;border-radius:999px}
.pl-real{margin:34px auto 0;width:min(330px,72%);display:grid;gap:14px}
.pl-real img{width:100%;aspect-ratio:720/957;object-fit:cover;border-radius:22px;border:6px solid #fff;box-shadow:0 40px 70px -40px rgba(120,60,55,.55);transform:rotate(-2deg)}
.pl-real figcaption{font-size:14px;line-height:1.5;color:var(--soft);text-align:center}
.pl-real figcaption b{display:block;font-weight:500;font-size:16px;color:var(--ink);margin-bottom:2px}
.order{padding:110px 0 150px;background:var(--blush)}
.order .plate{text-align:start;max-width:680px}
.lines{list-style:none;margin:18px 0 22px;padding:0;display:grid;gap:8px}
.lines li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:16px}
.lines li.empty{color:var(--soft);font-size:15px;border:0}
.lines bdi{white-space:nowrap}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cartbar{position:fixed;bottom:16px;left:50%;transform:translate(-50%,140%);z-index:50;display:flex;align-items:center;gap:16px;padding:8px 8px 8px 8px;padding-inline-start:20px;background:var(--ink);color:#fff;border-radius:999px;box-shadow:0 20px 40px -16px rgba(0,0,0,.4);transition:transform .35s cubic-bezier(.2,.7,.1,1);white-space:nowrap}
.cartbar.on{transform:translate(-50%,0)}
.cartbar .btn{background:#fff;color:var(--ink);border-color:#fff;min-height:42px;padding:0 18px}

main{overflow-x:clip}
.ls{font-family:var(--ls);font-weight:700;font-style:normal;letter-spacing:.01em}
h1 .ls,h2 .ls{font-size:1.04em}
.facts b.ls{font:700 30px/1.1 var(--ls)}
.ls-sign{margin:0 0 14px}
.ls-sign b{display:block;font:700 clamp(64px,7vw,92px)/1 var(--ls);color:var(--ink)}
.ls-sign span{display:block;font:500 12px/1 var(--en);letter-spacing:.42em;text-transform:uppercase;color:var(--soft);margin-top:12px}
.about{padding:120px 0 60px}
.about-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);grid-template-areas:"txt ph" "more ph";gap:0 88px;align-items:start}
.about-txt{grid-area:txt}
.about-h{font:300 clamp(40px,4.6vw,66px)/1.08 var(--he);letter-spacing:-.025em}
.ul{position:relative;display:inline-block}
.ul svg{position:absolute;left:-4%;bottom:-.12em;width:108%;height:.32em;overflow:visible}
.ul path{fill:none;stroke:var(--copper);stroke-width:3;stroke-linecap:round;stroke-dasharray:220;stroke-dashoffset:220;transition:stroke-dashoffset 1.4s cubic-bezier(.65,0,.15,1) .3s}
.about.in .ul path{stroke-dashoffset:0}
.about-lead{font:300 clamp(22px,2vw,28px)/1.5 var(--he);margin:26px 0 0;max-width:24ch;color:var(--ink)}
.about-ph{grid-area:ph;margin:0;position:sticky;top:calc(var(--top,64px) + 32px);isolation:isolate}
.about-ph img{width:100%;aspect-ratio:2/3;object-fit:cover;object-position:50% 0;border-radius:999px 999px 28px 28px;box-shadow:0 40px 70px -40px rgba(120,60,55,.45)}
.about-ph::before{content:"";position:absolute;inset:7% -6% -5% 8%;background:var(--blush);border-radius:999px 999px 28px 28px;z-index:-1}
.about-ph figcaption{font:italic 500 17px/1.3 var(--en);color:var(--copper);margin-top:14px;text-align:center}
.about-more{grid-area:more;margin-top:48px}
.beats{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.beats li{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}
.beat-en{font:italic 500 19px/1.4 var(--en);color:var(--copper)}
.beats p{color:var(--soft);max-width:44ch}
.rv-up{opacity:0;transform:translateY(16px);transition:opacity .8s ease,transform .9s cubic-bezier(.2,.7,.1,1)}
.rv-up.in{opacity:1;transform:none}
.beats li:nth-child(2){transition-delay:.08s}.beats li:nth-child(3){transition-delay:.16s}.beats li:nth-child(4){transition-delay:.24s}
.signoff{display:flex;align-items:baseline;gap:16px;margin:30px 0 0;color:var(--soft)}
.signoff .sig{color:var(--copper);font-size:clamp(46px,4.4vw,62px);line-height:1}
.facts{list-style:none;padding:0;margin:34px 0 0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.facts li{padding:20px 10px;text-align:center}
.facts li+li{border-inline-start:1px solid var(--line)}
.facts b{display:block;font:500 34px/1.1 var(--en);color:var(--ink)}
.facts span{font-size:14px;color:var(--soft)}
.method{padding:30px 0 90px}
.method-card{border:1px solid var(--line);border-radius:32px;padding:54px 48px 50px;background:linear-gradient(135deg,#fff,var(--blush))}
.method-head{text-align:center;margin-bottom:40px}
.method-head .lab-en{margin-bottom:8px}
.m3{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr)}
.m3 li{padding:6px 28px;text-align:center}
.m3 li+li{border-inline-start:1px solid var(--line)}
.m3 li:nth-child(2){transition-delay:.1s}.m3 li:nth-child(3){transition-delay:.2s}
.m3 .ic{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 18px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px var(--line),0 14px 30px -18px rgba(120,60,55,.4)}
.m3 svg{width:36px;fill:none;stroke:var(--copper);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.m3 h3{font:400 clamp(22px,2vw,27px)/1.25 var(--he);margin:0 0 6px}
.m3 p{color:var(--soft);font-size:16px}
/* entrance: nothing pops in; the hero arrives in order */
.js .hero .ent,.js .hero .ent-fade{opacity:0}
.js.go .hero .ent{animation:entUp 1s cubic-bezier(.2,.7,.1,1) var(--dl,0s) both}
.js.go .hero .ent-fade{animation:entFade 2.2s ease .2s both}
.js .arch-liel{clip-path:inset(100% 0 0 0)}
.js.go .arch-liel{animation:archIn 1.5s cubic-bezier(.65,0,.15,1) .2s both}
.js.go .arch-liel img{animation:imgSettle 2.2s cubic-bezier(.2,.7,.1,1) .2s both}
.ent-words .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.08em;margin-bottom:-.08em}
.ent-words .w>span{display:inline-block}
.js .ent-words .w>span{transform:translateY(110%)}
.js.go .ent-words .w>span{animation:wordUp .95s cubic-bezier(.2,.7,.1,1) calc(.3s + var(--i) * 70ms) both}
@keyframes entUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes entFade{from{opacity:0}to{opacity:1}}
@keyframes archIn{from{clip-path:inset(100% 0 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes imgSettle{from{transform:scale(1.1)}to{transform:none}}
@keyframes wordUp{from{transform:translateY(110%)}to{transform:none}}
@keyframes mbarIn{from{transform:translateY(110%)}to{transform:none}}
.pl-ban{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:24px;padding:16px 24px 16px 16px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(90deg,#fff,var(--blush));text-decoration:none;margin-bottom:34px}
.pl-ban img{width:100%;aspect-ratio:394/276;object-fit:cover;border-radius:14px}
.pl-ban h3{font-size:22px;margin:2px 0 4px}
.shop-cta{text-align:center}
.pan-note{font-size:15px;color:var(--soft)}
.pan-note .link{margin-inline-start:10px;white-space:nowrap}
.works{padding:40px 0 110px}
.works-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:34px}
.works-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:start}
.wk{margin:0;border-radius:22px;overflow:hidden;background:var(--blush)}
.wk:nth-child(even){margin-top:56px}
.wk img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.1,1)}
@media (hover:hover){.wk:hover img{transform:scale(1.04)}}
.works-ig{display:inline-block;margin-top:30px}
.grads-wrap{margin-top:80px}
.grads-h{font:300 clamp(24px,2.4vw,32px)/1.2 var(--he);margin-bottom:22px}
.grads{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gr{margin:0;border-radius:999px 999px 22px 22px;overflow:hidden;background:var(--rose)}
.gr img{width:100%;aspect-ratio:3/4;object-fit:cover}
@media (max-width:860px){
  .pl-lab .lab-row{flex-direction:column;align-items:stretch;gap:12px}
  .pl-lab .lab-row .btn{justify-content:center;text-align:center}
  .method{padding:10px 0 60px}
  .method-card{padding:34px 20px 22px;border-radius:26px}
  .method-head{margin-bottom:18px}
  .m3{grid-template-columns:1fr}
  .m3 li{display:grid;grid-template-columns:60px 1fr;gap:16px;align-items:center;text-align:start;padding:16px 0}
  .m3 li+li{border-inline-start:0;border-top:1px solid var(--line)}
  .m3 .ic{width:60px;height:60px;margin:0}
  .m3 svg{width:30px}
  .m3 h3{font-size:21px;margin-bottom:2px}
  .m3 p{font-size:15px}
  body{font-size:16px}
  .bar .btn,.logo span{display:none}
  .idx a{padding:8px 10px;font-size:14px}
  .hero-in{grid-template-columns:1fr;gap:34px;min-height:0;padding:34px 0 56px}
  .obj1>.arch:not(.mini){width:min(300px,78%)}
  .mini{width:24%;left:4%;bottom:30%}
  .big-ls{top:-2%}
  .pan{height:auto!important}
  .pan-stage{position:static;height:auto;overflow:visible;padding:64px 0}
  .pan-track{flex-direction:column;width:auto;transform:none!important;gap:40px}
  .obj{width:100%}
  .dr{opacity:0;transform:translateX(-40px);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.7,.1,1)}
  .dr:nth-child(even){transform:translateX(40px)}
  .dr.in{opacity:1;transform:none}
  .fit{padding:64px 0}
  .fit-in{grid-template-columns:1fr;gap:20px}
  .fit-stage{order:-1;top:var(--top,56px);z-index:5;background:var(--bg);padding:8px 0 10px;margin-inline:-20px;padding-inline:20px;border-bottom:1px solid var(--line)}
  .arch-fit{aspect-ratio:auto;height:168px;border-radius:24px}
  .arch-fit svg{width:auto;height:100%}
  .fit-lab{margin-top:8px}
  .fit-lab .lab-en{font-size:16px}
  .fit-lab h3{font-size:18px;margin:0}
  .fit-lab .lab-row{margin-top:6px;padding-top:6px}
  .fit-lab .price{font-size:20px}
  .course,.shop,.close{padding:72px 0}
  .course-in{grid-template-columns:1fr;grid-template-areas:"lab" "ph";gap:36px}
  .about{padding:72px 0 24px}
  .about-in{grid-template-columns:1fr;grid-template-areas:"txt" "ph" "more";gap:30px}
  .about-ph{position:relative;top:auto;width:82%;justify-self:center}
  .about-more{margin-top:8px}
  .beats li{grid-template-columns:1fr;gap:4px;padding:18px 0}
  .facts li{padding:16px 6px}
  .facts b{font-size:26px}
  .js .mbar{transform:translateY(110%)}
  .js.go .mbar{animation:mbarIn .7s cubic-bezier(.2,.7,.1,1) 1.6s both}
  .shop-row{grid-template-columns:1fr 1fr;gap:22px 14px}
  .shop-row .lab-en{font-size:15px}
  .shop-row h3{font-size:17px}
  .shop-row .price{font-size:19px}
  .shop-row .lab-row .link{display:none}
  .pl-ban{grid-template-columns:96px 1fr;padding:12px;gap:14px}
  .pl-ban>.link{grid-column:2;justify-self:start}
  .pan-note{margin-top:8px}
  .works{padding:8px 0 72px}
  .works-grid{grid-template-columns:1fr 1fr;gap:12px}
  .wk:nth-child(even){margin-top:36px}
  .grads-wrap{margin-top:56px}
  .grads{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-20px;padding:0 20px 8px;scrollbar-width:none}
  .grads::-webkit-scrollbar{display:none}
  .gr{flex:none;width:62%;scroll-snap-align:center}
  .incl{grid-template-columns:1fr}
  .shop-row{grid-template-columns:1fr 1fr;gap:14px}
  .card .lab h3{font-size:18px}
  .card .lab-en{font-size:16px}
  .plate{padding:36px 22px}
  .sig{font-size:44px}
  .phone{font-size:36px}
  .close{padding-bottom:130px}
  .mbar{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;inset:auto 0 0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(251,247,245,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:40}
  .mbar a{min-height:48px}
  .strip{top:56px}
  .prods .bar-in,.bar-in{height:56px}
  .prods .obj{width:100%}
  .prods .pan-track{display:grid;grid-template-columns:1fr 1fr;gap:26px 14px}
  .prod .lab h3{font-size:18px}
  .prod .lab-en{font-size:15px}
  .prod .lab-row{flex-direction:column;align-items:stretch;gap:10px}
  .prod .qty{justify-content:space-between}
  .pl{padding:72px 0}
  .pl-in{grid-template-columns:1fr;gap:34px}
  .order{padding:72px 0 140px}
  .two{grid-template-columns:1fr}
  .cartbar{width:calc(100% - 24px);justify-content:space-between;bottom:12px}
}
@media (prefers-reduced-motion:reduce){
  .js .hero .ent,.js .hero .ent-fade,.js .arch-liel,.js .arch-liel img,.js .ent-words .w>span,.js .mbar,.rv-up{opacity:1!important;clip-path:none!important;transform:none!important;animation:none!important;transition:none!important}
  .ul path{stroke-dashoffset:0!important;transition:none!important}
  html{scroll-behavior:auto}
  .rv{clip-path:none;transition:none}
  .dr{opacity:1!important;transform:none!important}
  *{transition-duration:.01ms!important}
}

bdi{white-space:nowrap}
.plaque h1{text-wrap:balance}
.arch-liel{border:1px solid #fff}
.arch-liel img{object-position:30% 0}

/* private label: its own total + full-width send, and its own bar while the section is on screen */
.pl-total{margin:18px 0 0;font-size:18px;font-weight:600;color:var(--ink)}
.pl-send{display:flex;width:100%;justify-content:center;margin-top:12px;min-height:56px;font-size:17px}
.plbar{background:#5b2a3a}
body.in-pl #cb{transform:translate(-50%,140%)}
body.in-pl .plbar.ready{transform:translate(-50%,0)}

/* course article (Liel's own text, 2026-10-26) */
.ca{padding:110px 0 90px}
.ca-head{text-align:center;max-width:760px;margin:0 auto}
.ca-head .lab-en{margin-bottom:8px}
.ca-sub{margin-top:10px;font-size:20px;color:var(--copper);font-weight:500}
.ca-intro{max-width:760px;margin:28px auto 0;text-align:center;font-size:18px;line-height:1.75;color:var(--ink)}
.ca-intro p+p{margin-top:12px}
.ca-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:56px}
.ca-q{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px 28px}
.ca-q h3{font:500 22px/1.3 var(--he);margin:0 0 10px;color:var(--ink)}
.ca-q p{color:var(--soft);line-height:1.75;margin:0}
.ca-q p+p{margin-top:10px}
.ca-learn{margin-top:20px;background:var(--blush);border-radius:22px;padding:30px 28px}
.ca-learn h3{font:500 24px/1.3 var(--he);margin:0 0 14px}
.ca-learn ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px}
.ca-learn li{position:relative;padding-inline-start:30px;line-height:1.6}
.ca-learn li::before{content:"";position:absolute;inset-inline-start:0;top:4px;width:20px;height:20px;border-radius:50%;background:var(--copper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12l4 4 8-8' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat}
.ca-end{margin-top:48px;text-align:center;font:300 clamp(24px,2.6vw,34px)/1.3 var(--he)}
.ca-cta{margin-top:20px;display:flex;justify-content:center}
@media (max-width:760px){.ca{padding:72px 0 56px}.ca-grid,.ca-learn ul{grid-template-columns:1fr}.ca-q,.ca-learn{padding:22px 20px}.ca-intro{font-size:17px;text-align:start}}

.credit{margin-top:10px;text-align:center;font-size:13px;color:var(--soft);padding-bottom:84px}.credit a{color:inherit;text-underline-offset:3px}
@media (min-width:761px){.credit{padding-bottom:24px}}

.credit a{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;font-size:14.5px;box-shadow:0 10px 24px -16px rgba(0,0,0,.35);transition:transform .2s}.credit a:hover{transform:translateY(-2px)}.credit svg{width:22px;height:22px;flex:none}.credit b{font-weight:700}
/* 2026-10-28 accessibility + phone fixes */
:root{--copper:#8F5D51} /* a touch darker so small copper text passes contrast (4.5:1+) */
.cartbar{visibility:hidden} /* hidden bars must not take keyboard focus */
.cartbar.on:not(.plbar),body.in-pl .plbar.ready{visibility:visible}
body.in-pl .cartbar.on:not(.plbar){visibility:hidden}
.link{position:relative}
.link::before{content:"";position:absolute;inset:-9px -4px} /* bigger tap area, same look */
@media (max-width:820px){
  .logo,.strip a,.chk,.phone{min-height:44px}
  .idx a{display:inline-flex;align-items:center;min-height:44px}
  .qty button{width:44px;height:44px}
  .cartbar .btn{min-height:44px}
}
@media (max-width:420px){.chips.len{grid-template-columns:repeat(4,1fr)}}

/* skip link, legal pages, footer links (2026-10-28) */
.skip{position:fixed;inset-inline-start:12px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 16px;border-radius:999px;text-decoration:none}
.skip:focus{top:12px}
.legal-page{padding:clamp(40px,8vh,80px) 0}
.legal{max-width:72ch}.legal h1{font:300 clamp(34px,5vw,52px)/1.15 var(--he);margin:0 0 12px}.legal .lead{font-size:18px;color:var(--soft);margin:0 0 28px}
.legal h2{font:500 clamp(21px,2.4vw,26px)/1.3 var(--he);margin:32px 0 10px}.legal p,.legal li{font-size:17px;line-height:1.75}.legal ul{padding-inline-start:22px}.legal li{margin:6px 0}
.legal a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.legal mark{background:#FFF1C2;color:var(--ink);padding:0 4px;border-radius:4px}.legal .upd{margin-top:28px;color:var(--soft);font-size:15px}.legal .btns{display:flex;flex-wrap:wrap;gap:10px}.legal .btns a{text-decoration:none}
.foot a{color:inherit;text-decoration:underline;text-underline-offset:3px}
@media (max-width:820px){.foot a{display:inline-flex;align-items:center;min-height:44px}}
