/* ===========================================================
   AISY — themeable design system
   Default theme = LUX GLASS (frosted glass, rose-gold, pastel)
   .theme-cyan   = original cyan + yellow neumorphic look
   =========================================================== */

/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/ba49d8f5-d677-4b07-8fe4-05eeaa179280.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/aae69aa1-e519-4f9f-b777-a439734f8cdc.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/450b93a9-b4a5-4a1f-861f-9b1cfefae04d.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/33e818ed-9b4c-47fa-92f4-d759422bb01e.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/dc045578-b805-4ffb-8719-e363ce111bb3.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/ba49d8f5-d677-4b07-8fe4-05eeaa179280.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/aae69aa1-e519-4f9f-b777-a439734f8cdc.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/450b93a9-b4a5-4a1f-861f-9b1cfefae04d.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/33e818ed-9b4c-47fa-92f4-d759422bb01e.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/dc045578-b805-4ffb-8719-e363ce111bb3.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: 700;
  font-display: swap;
  src: url("assets/ba49d8f5-d677-4b07-8fe4-05eeaa179280.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: 700;
  font-display: swap;
  src: url("assets/aae69aa1-e519-4f9f-b777-a439734f8cdc.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: 700;
  font-display: swap;
  src: url("assets/450b93a9-b4a5-4a1f-861f-9b1cfefae04d.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: 700;
  font-display: swap;
  src: url("assets/33e818ed-9b4c-47fa-92f4-d759422bb01e.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: 700;
  font-display: swap;
  src: url("assets/dc045578-b805-4ffb-8719-e363ce111bb3.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("assets/78717a8b-72b2-4a3f-b004-67b9f8868f65.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("assets/7fcd4c3f-3246-44da-9f8e-c1df7fb697f8.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("assets/3aef97c9-d27d-4ad5-a723-83f80c071e7d.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("assets/4cd0a5ff-4c1e-4de9-a061-e242ddf9ea17.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("assets/63c60197-478f-4260-9b8b-672edc1486db.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("assets/0281b828-2915-479a-8dad-bac47a01fe4b.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("assets/8a406cd1-5f77-43e9-a1c2-30ff35bf2c4a.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("assets/78717a8b-72b2-4a3f-b004-67b9f8868f65.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("assets/7fcd4c3f-3246-44da-9f8e-c1df7fb697f8.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("assets/3aef97c9-d27d-4ad5-a723-83f80c071e7d.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("assets/4cd0a5ff-4c1e-4de9-a061-e242ddf9ea17.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("assets/63c60197-478f-4260-9b8b-672edc1486db.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("assets/0281b828-2915-479a-8dad-bac47a01fe4b.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("assets/8a406cd1-5f77-43e9-a1c2-30ff35bf2c4a.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("assets/78717a8b-72b2-4a3f-b004-67b9f8868f65.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("assets/7fcd4c3f-3246-44da-9f8e-c1df7fb697f8.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("assets/3aef97c9-d27d-4ad5-a723-83f80c071e7d.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("assets/4cd0a5ff-4c1e-4de9-a061-e242ddf9ea17.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("assets/63c60197-478f-4260-9b8b-672edc1486db.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("assets/0281b828-2915-479a-8dad-bac47a01fe4b.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("assets/8a406cd1-5f77-43e9-a1c2-30ff35bf2c4a.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("assets/78717a8b-72b2-4a3f-b004-67b9f8868f65.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("assets/7fcd4c3f-3246-44da-9f8e-c1df7fb697f8.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("assets/3aef97c9-d27d-4ad5-a723-83f80c071e7d.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("assets/4cd0a5ff-4c1e-4de9-a061-e242ddf9ea17.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("assets/63c60197-478f-4260-9b8b-672edc1486db.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("assets/0281b828-2915-479a-8dad-bac47a01fe4b.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("assets/8a406cd1-5f77-43e9-a1c2-30ff35bf2c4a.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Marcellus';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/1e605b72-a535-4bc1-b609-98dac595b82c.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: 'Marcellus';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/56f4c1f2-5dcd-4c05-abe5-8637cf054d39.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: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/d2b6d06e-8a29-4e48-8d0d-0317995f142c.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: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/4140e761-c9d5-4308-be35-484191e47fa6.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/598088b2-5624-4166-b74a-88b1bae34d52.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: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/d1fbb25f-dfc8-46a5-8f43-4cd899cc8272.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: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/692ac11e-acb5-4333-aa7c-b93645418200.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: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/d2b6d06e-8a29-4e48-8d0d-0317995f142c.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: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/4140e761-c9d5-4308-be35-484191e47fa6.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/598088b2-5624-4166-b74a-88b1bae34d52.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: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/d1fbb25f-dfc8-46a5-8f43-4cd899cc8272.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: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/692ac11e-acb5-4333-aa7c-b93645418200.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: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/d2b6d06e-8a29-4e48-8d0d-0317995f142c.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: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/4140e761-c9d5-4308-be35-484191e47fa6.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/598088b2-5624-4166-b74a-88b1bae34d52.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: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/d1fbb25f-dfc8-46a5-8f43-4cd899cc8272.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: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/692ac11e-acb5-4333-aa7c-b93645418200.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: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/d2b6d06e-8a29-4e48-8d0d-0317995f142c.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: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/4140e761-c9d5-4308-be35-484191e47fa6.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/598088b2-5624-4166-b74a-88b1bae34d52.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: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/d1fbb25f-dfc8-46a5-8f43-4cd899cc8272.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: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/692ac11e-acb5-4333-aa7c-b93645418200.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: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/d2b6d06e-8a29-4e48-8d0d-0317995f142c.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: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/4140e761-c9d5-4308-be35-484191e47fa6.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/598088b2-5624-4166-b74a-88b1bae34d52.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: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/d1fbb25f-dfc8-46a5-8f43-4cd899cc8272.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: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/692ac11e-acb5-4333-aa7c-b93645418200.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: 'Onest';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/99c174e3-734a-4de0-b149-c892e48ad446.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: 'Onest';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/8cb70402-92f4-45f8-b35e-b6352f3041d0.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/2cd4adcf-0ade-42e3-979c-c0ac91667769.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: 'Onest';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("assets/5fe372fa-e9d3-4d12-8e95-77f8f80a81d7.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: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/99c174e3-734a-4de0-b149-c892e48ad446.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: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/8cb70402-92f4-45f8-b35e-b6352f3041d0.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/2cd4adcf-0ade-42e3-979c-c0ac91667769.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: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/5fe372fa-e9d3-4d12-8e95-77f8f80a81d7.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: 'Onest';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/99c174e3-734a-4de0-b149-c892e48ad446.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: 'Onest';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/8cb70402-92f4-45f8-b35e-b6352f3041d0.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/2cd4adcf-0ade-42e3-979c-c0ac91667769.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: 'Onest';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/5fe372fa-e9d3-4d12-8e95-77f8f80a81d7.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: 'Onest';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/99c174e3-734a-4de0-b149-c892e48ad446.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: 'Onest';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/8cb70402-92f4-45f8-b35e-b6352f3041d0.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/2cd4adcf-0ade-42e3-979c-c0ac91667769.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: 'Onest';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/5fe372fa-e9d3-4d12-8e95-77f8f80a81d7.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: 'Onest';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/99c174e3-734a-4de0-b149-c892e48ad446.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: 'Onest';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/8cb70402-92f4-45f8-b35e-b6352f3041d0.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* latin-ext */
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/2cd4adcf-0ade-42e3-979c-c0ac91667769.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: 'Onest';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/5fe372fa-e9d3-4d12-8e95-77f8f80a81d7.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: 'Unbounded';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/1abdc008-2bdd-46f5-896a-b6164dee5a39.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: 'Unbounded';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/db2641a4-4078-461c-a47d-f69e400bf80c.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/4de2f22d-d593-4842-a480-73c63c761bba.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: 'Unbounded';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/ad66f1d9-6c10-4a47-81ea-9f141b817bb4.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: 'Unbounded';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("assets/672814df-65b5-41af-894e-e5be72c9d796.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: 'Unbounded';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/1abdc008-2bdd-46f5-896a-b6164dee5a39.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: 'Unbounded';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/db2641a4-4078-461c-a47d-f69e400bf80c.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/4de2f22d-d593-4842-a480-73c63c761bba.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: 'Unbounded';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/ad66f1d9-6c10-4a47-81ea-9f141b817bb4.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: 'Unbounded';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("assets/672814df-65b5-41af-894e-e5be72c9d796.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: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/1abdc008-2bdd-46f5-896a-b6164dee5a39.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: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/db2641a4-4078-461c-a47d-f69e400bf80c.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/4de2f22d-d593-4842-a480-73c63c761bba.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: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/ad66f1d9-6c10-4a47-81ea-9f141b817bb4.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: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("assets/672814df-65b5-41af-894e-e5be72c9d796.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: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/1abdc008-2bdd-46f5-896a-b6164dee5a39.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: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/db2641a4-4078-461c-a47d-f69e400bf80c.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/4de2f22d-d593-4842-a480-73c63c761bba.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: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/ad66f1d9-6c10-4a47-81ea-9f141b817bb4.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: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("assets/672814df-65b5-41af-894e-e5be72c9d796.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 {
  /* ---- LUX GLASS tokens (default) ---- */
  --brand:        #C49A6C;   /* rose-gold */
  --brand-deep:   #A87D52;
  --brand-soft:   #EBD9C6;
  --accent:       #9DBBD8;   /* dusty blue */
  --accent-deep:  #6E92B5;
  --green:        #9C8478;   /* warm mauve (eyebrows / point Б) */
  --green-deep:   #7E665B;
  --danger:       #D98A93;
  --danger-soft:  #F4DBDE;

  --ic:        var(--brand);
  --ic-accent: var(--accent);

  /* neutrals — warm */
  --bg:         #E8D5CE;
  --bg-2:       #EAD8D2;
  --ink:        #5C4A43;
  --ink-soft:   #8B7770;
  --ink-faint:  #B2A099;
  --line:       rgba(168,125,82,.18);

  /* glass surfaces */
  --surface:        rgba(255,255,255,.52);
  --surface-strong: rgba(255,255,255,.70);
  --surface-2:      rgba(255,255,255,.34);
  --glass-border:   rgba(255,255,255,.65);
  --glass-blur:     18px;

  /* metallics */
  --gold-grad:  linear-gradient(135deg,#F0D9BE 0%,#D7AE82 40%,#B98A5E 75%,#A87D52 100%);
  --blue-grad:  linear-gradient(135deg,#CFE0F0,#9DBBD8 70%,#7E9FC0);

  --font-display: 'Marcellus', serif;
  --font-body:    'Onest', system-ui, sans-serif;
  --fs-base: 16px;

  --r-sm: 16px;
  --r-md: 24px;
  --r-lg: 30px;
  --r-xl: 36px;

  /* glass shadows: soft warm ambient + crisp inner light */
  --sh-card:  0 1px 0 rgba(255,255,255,.6) inset, 0 18px 40px -22px rgba(120,82,60,.6);
  --sh-soft:  0 1px 0 rgba(255,255,255,.55) inset, 0 14px 30px -20px rgba(120,82,60,.5);
  --sh-inset: inset 2px 2px 6px rgba(120,82,60,.18), inset -2px -2px 6px rgba(255,255,255,.55);
  --sh-pop:   0 12px 26px -8px rgba(168,125,82,.55);
  --sh-clay:  6px 6px 16px rgba(150,110,90,.30), -6px -6px 14px rgba(255,255,255,.85);
}

/* =================== CYAN THEME OVERRIDES =================== */
.theme-cyan {
  --brand:#00AEEF; --brand-deep:#0B8FC9; --brand-soft:#E4F6FE;
  --accent:#FFC400; --accent-deep:#EBA600; --green:#22C08A; --green-deep:#149C6E;
  --danger:#FF5B6B; --danger-soft:#FFE6E8;
  --bg:#EAEEF3; --bg-2:#EEF2F6; --ink:#2A323D; --ink-soft:#6A7480; --ink-faint:#9CA6B2;
  --line:#E4E9F0;
  --surface:#FFFFFF; --surface-strong:#FFFFFF; --surface-2:#F6F8FB; --glass-border:rgba(255,255,255,.6);
  --glass-blur:0px;
  --gold-grad: linear-gradient(135deg,#3FC9F5,#00AEEF 70%,#0B8FC9);
  --font-display:'Unbounded', sans-serif;
  --r-sm:14px; --r-md:20px; --r-lg:28px; --r-xl:34px;
  --sh-card: 0 1px 2px rgba(31,52,77,.04), 0 10px 24px -12px rgba(31,52,77,.18);
  --sh-soft: 6px 6px 16px rgba(180,194,210,.55), -6px -6px 16px rgba(255,255,255,.9);
  --sh-inset: inset 3px 3px 7px rgba(180,194,210,.5), inset -3px -3px 7px rgba(255,255,255,.95);
  --sh-pop: 0 12px 30px -8px rgba(0,140,200,.35);
  --sh-clay: 6px 6px 16px rgba(180,194,210,.55), -6px -6px 16px rgba(255,255,255,.9);
}

* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }

body {
  margin: 0;
  font-family: var(--font-body);
  background:
    radial-gradient(900px 600px at 12% -6%, #F6E8DF 0%, transparent 55%),
    radial-gradient(900px 700px at 110% 6%, #E7D6E0 0%, transparent 52%),
    var(--bg);
  color: var(--ink);
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

/* ---------- the phone screen surface ---------- */
.screen {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  font-size: var(--fs-base);
  background:
    linear-gradient(165deg, #F5E7DE 0%, #EBD7D0 42%, #E6D4DC 78%, #DFE2EC 100%);
  isolation: isolate;
}
/* ambient colour blooms behind the frosted glass */
.screen::before, .screen::after {
  content: ''; position: absolute; border-radius: 50%; filter: blur(38px);
  z-index: 0; pointer-events: none; opacity: .8;
}
.screen::before { width: 280px; height: 280px; top: -40px; right: -60px;
  background: radial-gradient(circle at 35% 35%, #F4C9A6, #E0A98233 70%); }
.screen::after { width: 320px; height: 320px; bottom: 4%; left: -90px;
  background: radial-gradient(circle at 50% 50%, #AEC6E0, #C9D6E833 70%); }
.theme-cyan .screen {
  background: linear-gradient(180deg,#FFFFFF 0%, #EEF2F6 30%, #EEF2F6 100%);
}
.theme-cyan .screen::before, .theme-cyan .screen::after { display: none; }

/* keep real content above the blooms */
.scroll, .topbar, .tabbar, .screen > * { position: relative; z-index: 1; }

/* scroll body */
.scroll {
  flex: 1; overflow-y: auto; overflow-x: hidden;
  -webkit-overflow-scrolling: touch; scrollbar-width: none;
}
.scroll::-webkit-scrollbar { display: none; }

/* Slim, theme-tinted scrollbars on horizontal ribbons (filters, chips,
   suggestions) and sheets so they stay draggable but match dark / atmosphere. */
.device-inner *::-webkit-scrollbar { height: 6px; width: 6px; }
.device-inner *::-webkit-scrollbar-track { background: transparent; }
.device-inner *::-webkit-scrollbar-thumb { background: rgba(13,27,36,.18); border-radius: 999px; }
.device-inner * { scrollbar-width: thin; scrollbar-color: rgba(13,27,36,.18) transparent; }
.theme-dark .device-inner *::-webkit-scrollbar-thumb,
.theme-atmo .device-inner *::-webkit-scrollbar-thumb { background: rgba(255,255,255,.30); }
.theme-dark .device-inner *, .theme-atmo .device-inner * { scrollbar-color: rgba(255,255,255,.30) transparent; }
/* main vertical scroll body stays clean / hidden (mobile-style) */
.device-inner .scroll::-webkit-scrollbar { display: none; width: 0; height: 0; }
.device-inner .scroll { scrollbar-width: none; }

/* themeable range slider (energy question etc.) — default browser slider
   "fell out" of the dark / atmosphere themes, so style it on brand everywhere. */
.device-inner input[type="range"] {
  -webkit-appearance: none; appearance: none;
  height: 6px; border-radius: 999px; outline: none; cursor: pointer;
  background: var(--surface-2);
  box-shadow: var(--sh-inset);
}
.theme-dark .device-inner input[type="range"],
.theme-atmo .device-inner input[type="range"] {
  background: rgba(255,255,255,.16); box-shadow: none;
}
.device-inner input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none; appearance: none;
  width: 22px; height: 22px; border-radius: 50%;
  background: var(--brand); border: 2px solid #fff;
  box-shadow: var(--sh-pop); cursor: pointer; margin-top: 0;
}
.device-inner input[type="range"]::-moz-range-thumb {
  width: 20px; height: 20px; border-radius: 50%;
  background: var(--brand); border: 2px solid #fff; box-shadow: var(--sh-pop); cursor: pointer;
}

/* glass mixin helpers */
.glass {
  background: var(--surface);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(135%);
  backdrop-filter: blur(var(--glass-blur)) saturate(135%);
  border: 1px solid var(--glass-border);
}

/* ---------- top app bar ---------- */
.topbar {
  flex: none;
  margin: 10px 14px 4px;
  padding: 13px 18px;
  background: var(--surface);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(140%);
  backdrop-filter: blur(var(--glass-blur)) saturate(140%);
  border: 1px solid var(--glass-border);
  border-radius: var(--r-xl);
  box-shadow: var(--sh-card);
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; z-index: 5;
}
.topbar h1 {
  margin: 0;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 1.5rem;
  letter-spacing: 2px;
  color: var(--brand-deep);
  text-transform: uppercase;
  line-height: 1;
}
.theme-cyan .topbar h1 { letter-spacing: .5px; color: var(--brand); }
.topbar .lead { display: flex; align-items: center; gap: 10px; }
.topbar .back {
  width: 38px; height: 38px; border: none; cursor: pointer;
  border-radius: 50%; background: var(--surface-strong);
  display: grid; place-items: center; color: var(--brand-deep);
  box-shadow: var(--sh-soft); border: 1px solid var(--glass-border);
}

/* ---------- section label ---------- */
.eyebrow {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 1.3rem;
  letter-spacing: .5px;
  color: var(--green-deep);
  margin: 20px 22px 12px;
}
.theme-cyan .eyebrow { font-size: 1.18rem; color: var(--green); letter-spacing: .2px; }

.divider { height: 1px; background: var(--line); margin: 16px 22px; border: none; }

/* ---------- glass card ---------- */
.card {
  background: var(--surface);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(135%);
  backdrop-filter: blur(var(--glass-blur)) saturate(135%);
  border: 1px solid var(--glass-border);
  border-radius: var(--r-md);
  box-shadow: var(--sh-soft);
}

/* ---------- tiles ---------- */
.tile {
  position: relative;
  min-width: 0;
  background: var(--surface);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(135%);
  backdrop-filter: blur(var(--glass-blur)) saturate(135%);
  border: 1px solid var(--glass-border);
  border-radius: var(--r-md);
  box-shadow: var(--sh-soft);
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 10px; padding: 16px 10px; cursor: pointer; text-align: center;
  transition: transform .16s ease, box-shadow .16s ease, background .2s ease;
}
.tile:active { transform: scale(.96); box-shadow: var(--sh-inset); }
.tile .lbl { font-weight: 600; font-size: .8rem; color: var(--ink); line-height: 1.18;
  overflow-wrap: normal; word-break: keep-all; }
.tile svg { display: block; }

/* pill button */
.pill {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--font-body); font-weight: 700; font-size: .82rem;
  letter-spacing: 1px; text-transform: uppercase;
  color: var(--brand-deep);
  background: var(--surface-strong);
  -webkit-backdrop-filter: blur(var(--glass-blur));
  backdrop-filter: blur(var(--glass-blur));
  border: 1.5px solid var(--brand); border-radius: 999px;
  padding: 11px 20px; cursor: pointer; box-shadow: var(--sh-soft);
}
.pill.solid { background-image: var(--gold-grad); color: #fff; border-color: transparent;
  box-shadow: var(--sh-pop); text-shadow: 0 1px 2px rgba(120,82,50,.4); }
.pill:active { transform: scale(.97); }

/* input field */
.field {
  display: flex; align-items: center; gap: 12px;
  background: var(--surface-2); border-radius: 999px;
  border: 1px solid var(--glass-border);
  -webkit-backdrop-filter: blur(var(--glass-blur));
  backdrop-filter: blur(var(--glass-blur));
  padding: 14px 18px; box-shadow: var(--sh-inset);
  color: var(--ink-faint); font-size: .98rem;
}
.theme-cyan .field { background: var(--surface-2); border-color: transparent; }
.field input { flex: 1; border: none; background: none; outline: none; font: inherit; color: var(--ink); }
.field input::placeholder { color: var(--ink-faint); }
.field .ic-btn { display: grid; place-items: center; cursor: pointer; color: var(--ink-soft); }

/* ---------- bottom nav: floating frosted pill ---------- */
.tabbar {
  flex: none;
  margin: 0 18px 12px;
  margin-bottom: calc(12px + var(--safe-bottom, 0px));
  background: var(--surface-strong);
  -webkit-backdrop-filter: blur(22px) saturate(150%);
  backdrop-filter: blur(22px) saturate(150%);
  border: 1px solid var(--glass-border);
  border-radius: 999px;
  box-shadow: 0 14px 34px -14px rgba(120,82,60,.5);
  display: grid; grid-template-columns: repeat(5, 1fr);
  padding: 10px 10px; z-index: 6;
}
.theme-cyan .tabbar {
  margin: 0; border-radius: var(--r-xl) var(--r-xl) 0 0; border: none;
  box-shadow: 0 -8px 30px -14px rgba(31,52,77,.25); padding: 12px 14px;
}
.tabbar button {
  border: none; background: none; cursor: pointer;
  display: grid; place-items: center; padding: 8px 0;
  position: relative; color: var(--ink-faint);
  transition: color .15s ease, transform .15s ease;
}
.tabbar button.active { color: var(--brand-deep); }
.tabbar button.active::after {
  content: ''; position: absolute; bottom: 0; width: 5px; height: 5px;
  border-radius: 50%; background: var(--brand);
}
.tabbar button:active { transform: translateY(1px); }

/* raised gold mic FAB in the center of the tab bar */
.tab-mic { border: none; background: none; cursor: pointer; display: grid; place-items: center;
  position: relative; padding: 0; }
.tab-mic-fab { width: 54px; height: 54px; border-radius: 50%; display: grid; place-items: center;
  margin-top: -22px; background: var(--gold-grad); box-shadow: var(--sh-pop), 0 8px 20px -6px rgba(0,140,200,.5);
  border: 3px solid var(--surface); position: relative; transition: transform .15s ease; }
.tab-mic-fab::after { content: ''; position: absolute; inset: -3px; border-radius: 50%;
  box-shadow: 0 0 0 0 var(--brand-soft); animation: micHalo 2.6s ease-out infinite; }
.tab-mic:active .tab-mic-fab { transform: scale(.93); }
@keyframes micHalo {
  0%   { box-shadow: 0 0 0 0 rgba(23,176,240,.45); }
  70%  { box-shadow: 0 0 0 12px rgba(23,176,240,0); }
  100% { box-shadow: 0 0 0 0 rgba(23,176,240,0); }
}
@keyframes recDot { 0%,100% { opacity: 1; } 50% { opacity: .25; } }
.rec-dot { animation: recDot 1.1s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) { .tab-mic-fab::after, .rec-dot { animation: none; } }

/* gold ring badge (used for avatars/list bullets in lux style) */
.gold-ring {
  display: grid; place-items: center; border-radius: 50%;
  background: var(--gold-grad);
  box-shadow: var(--sh-pop), inset 0 1px 2px rgba(255,255,255,.6);
}

/* utility */
.row { display: flex; align-items: center; }
.col { display: flex; flex-direction: column; }
.muted { color: var(--ink-soft); }
.faint { color: var(--ink-faint); }
.grow { flex: 1; }
.center { text-align: center; }

/* two-tone icons */
.ic { stroke: var(--ic); }
.ic .acc { stroke: var(--ic-accent); }
.ic circle, .ic ellipse, .ic path { vector-effect: non-scaling-stroke; }

/* logo theming (legacy classes — new mark uses fixed brand colours) */

/* =================== BRAND THEME (official AISY) =================== */
.theme-brand {
  --brand:#17B0F0; --brand-deep:#0E8AC9; --brand-soft:#D6EEFB;
  --accent:#FFC700; --accent-deep:#E6B400; --green:#0E8AC9; --green-deep:#0B6FA3;
  --danger:#F0566B; --danger-soft:#FCE0E4;
  --bg:#E5EBF1; --bg-2:#F2F4F7; --ink:#0D1B24; --ink-soft:#5A6B78; --ink-faint:#9AA8B2;
  --line:#E3E9EF;
  --surface:#FFFFFF; --surface-strong:#FFFFFF; --surface-2:#F2F4F7; --glass-border:#EAEFF4;
  --glass-blur:0px;
  --gold-grad: linear-gradient(160deg,#42C2F8 0%,#17B0F0 55%,#0E8AC9 100%);
  --font-display:'Montserrat', sans-serif;
  --font-body:'Inter', system-ui, sans-serif;
  --r-sm:16px; --r-md:22px; --r-lg:28px; --r-xl:30px;
  /* volumetric (soft 3D) shadows */
  --sh-card:  0 1px 0 rgba(255,255,255,.9) inset, 0 14px 30px -14px rgba(13,27,36,.22), 0 2px 5px rgba(13,27,36,.06);
  --sh-soft:  0 1px 0 rgba(255,255,255,.95) inset, 0 10px 22px -12px rgba(13,27,36,.20), 0 1px 3px rgba(13,27,36,.07);
  --sh-inset: inset 2px 2px 6px rgba(13,27,36,.10), inset -2px -2px 6px rgba(255,255,255,.9);
  --sh-pop:   0 12px 22px -7px rgba(23,176,240,.55), inset 0 1px 0 rgba(255,255,255,.45);
  --sh-clay:  7px 7px 18px rgba(13,27,36,.14), -6px -6px 14px rgba(255,255,255,.9);
}
.theme-brand .topbar h1 { color: var(--ink); letter-spacing: 1px; font-weight: 700; }
.theme-brand .eyebrow { color: var(--brand-deep); font-weight: 700; letter-spacing: .3px; }
.theme-brand .screen { background: linear-gradient(180deg,#FFFFFF 0%, #EDF1F6 38%, #E7EDF3 100%); }
.theme-brand .screen::before { width: 260px; height: 260px; top: -40px; right: -50px;
  background: radial-gradient(circle at 40% 40%, rgba(23,176,240,.20), transparent 70%); opacity: .8; }
.theme-brand .screen::after { width: 300px; height: 300px; bottom: 6%; left: -80px;
  background: radial-gradient(circle at 50% 50%, rgba(255,199,0,.15), transparent 70%); opacity: .8; }

/* --- volume on surfaces --- */
.theme-brand .card, .theme-brand .tile {
  background: linear-gradient(180deg, #FFFFFF 0%, #F4F8FC 100%);
  border: 1px solid #EEF3F8;
}
.theme-brand .tile { transition: transform .18s cubic-bezier(.2,.7,.3,1.4), box-shadow .18s ease; }
.theme-brand .tile:hover { transform: translateY(-3px); box-shadow: var(--sh-card); }
.theme-brand .tile:active { transform: translateY(1px) scale(.97); box-shadow: var(--sh-inset); }

/* --- volumetric icons --- */
.theme-brand .ic { filter: drop-shadow(0 2px 2.5px rgba(13,27,36,.16)); }
.theme-brand .tabbar .ic { filter: none; }

/* --- raised buttons & badges --- */
.theme-brand .pill.solid { background-image: var(--gold-grad); color: #fff; border: none;
  box-shadow: var(--sh-pop); text-shadow: 0 1px 2px rgba(8,90,130,.4); }
.theme-brand .pill.solid:active { box-shadow: var(--sh-inset); transform: translateY(1px) scale(.99); }
.theme-brand .gold-ring { background: var(--gold-grad);
  box-shadow: 0 8px 16px -6px rgba(23,176,240,.6), inset 0 2px 3px rgba(255,255,255,.55), inset 0 -3px 5px rgba(11,111,163,.35); }
.theme-brand .back { box-shadow: var(--sh-soft); border: 1px solid #EEF3F8; }

/* accent (yellow) chip helper */
.theme-brand .chip-accent { background: linear-gradient(160deg,#FFD83A,#FFC700); color:#5a4500;
  box-shadow: 0 8px 16px -7px rgba(255,199,0,.7), inset 0 1px 2px rgba(255,255,255,.6); }

/* ============ soft (neumorphic) section buttons: icon + label under ============ */
.soft-tile { background: none; border: none; cursor: pointer; display: flex; flex-direction: column;
  align-items: center; gap: 9px; padding: 4px 2px; min-width: 0; }
.soft-ico { width: 62px; height: 62px; border-radius: 20px; display: grid; place-items: center; flex: none;
  background: linear-gradient(145deg, #FFFFFF, #E4EBF1);
  box-shadow: 6px 6px 13px rgba(13,27,36,.16), -5px -5px 11px rgba(255,255,255,.95),
              inset 0 1px 1px rgba(255,255,255,.7);
  transition: transform .16s cubic-bezier(.2,.7,.3,1.4), box-shadow .16s ease; }
.soft-tile:hover .soft-ico { transform: translateY(-3px); }
.soft-tile:active .soft-ico { transform: scale(.95);
  box-shadow: inset 4px 4px 9px rgba(13,27,36,.16), inset -4px -4px 9px rgba(255,255,255,.92); }
.soft-ico .ic { filter: drop-shadow(0 1.5px 1.5px rgba(13,27,36,.18)); }
.soft-lbl { font-size: .76rem; font-weight: 600; color: var(--ink-soft); line-height: 1.18; text-align: center;
  overflow-wrap: normal; word-break: keep-all; }
.soft-tile.sm .soft-ico { width: 54px; height: 54px; border-radius: 17px; }
.soft-tile.sm .soft-lbl { font-size: .68rem; }
/* glass/cyan themes: soften the embossing to match flatter surfaces */
.theme-glass .soft-ico, .theme-cyan .soft-ico { background: var(--surface); border: 1px solid var(--glass-border);
  box-shadow: var(--sh-soft); }

/* =================== 3D micro-animations =================== */
.aisy3d { animation: floaty 5s ease-in-out infinite; transform-style: preserve-3d; }
@media (prefers-reduced-motion: no-preference) {
  .aisy3d { animation: float3d 6s ease-in-out infinite; }
}
@keyframes float3d {
  0%,100% { transform: perspective(420px) translateY(0) rotateX(0deg) rotateY(0deg); }
  25%     { transform: perspective(420px) translateY(-5px) rotateX(9deg) rotateY(-12deg); }
  50%     { transform: perspective(420px) translateY(-7px) rotateX(0deg) rotateY(0deg); }
  75%     { transform: perspective(420px) translateY(-5px) rotateX(-9deg) rotateY(12deg); }
}
@keyframes rise3d { from { opacity:0; transform: perspective(700px) rotateX(12deg) translateY(16px); }
                    to { opacity:1; transform: perspective(700px) rotateX(0) translateY(0); } }
.rise3d { animation: rise3d .5s cubic-bezier(.2,.7,.3,1) both; }

/* entrances */
@keyframes scrFade { from { transform: translateY(10px); } to { transform: none; } }
.screen { opacity: 1; }
.screen.enter { animation: scrFade .3s ease both; }
@keyframes pop { from { transform: scale(.92); } to { transform: none; } }
@keyframes floaty { 0%,100%{ transform: translateY(0);} 50%{ transform: translateY(-7px);} }
@keyframes sheetUp { from { transform: translateY(100%); } to { transform: translateY(0); } }
@keyframes aisyIdle { 0%,100%{ transform: scale(1);} 50%{ transform: scale(1.04);} }
@keyframes thinkDot { 0%,100%{ transform: translateY(0); opacity:.4;} 50%{ transform: translateY(-7px); opacity:1;} }
@keyframes cardIn { from { opacity:0; transform: translateY(14px) scale(.98); } to { opacity:1; transform: none; } }

/* ===================== AISY animated brand mark ===================== */
.aisy-mark { -webkit-user-select: none; user-select: none; }
.aisy-bob   { transform-origin: 50% 100%; }
.aisy-body  { transform-origin: 50% 100%; }
.aisy-head  { transform-origin: 50% 50%; }
.aisy-talk .aisy-bob, .aisy-think .aisy-bob, .aisy-idle .aisy-bob { transform-box: fill-box; }

/* idle — the whole mark gives a soft, lively bounce (head + body stay locked) */
.aisy-idle .aisy-bob  { animation: aisyBounce 2.6s ease-in-out infinite; }
@keyframes aisyBounce {
  0%, 100% { transform: translateY(0) scaleY(1); }
  28%      { transform: translateY(-7%) scaleY(1.03); }
  55%      { transform: translateY(0) scaleY(.97); }
  70%      { transform: translateY(-2%) scaleY(1.01); }
}
@keyframes aisyHeadFloat {
  0%, 100% { transform: translateY(0); }
  28%      { transform: translateY(-12%); }
  55%      { transform: translateY(2%); }
}

/* talk — the whole mark squashes gently like it's speaking */
.aisy-talk .aisy-bob { animation: aisyTalkSquash .42s ease-in-out infinite; }
@keyframes aisyNod {
  0%, 100% { transform: translateY(0) rotate(0deg); }
  50%      { transform: translateY(-14%) rotate(-3deg); }
}
@keyframes aisyTalkSquash {
  0%, 100% { transform: scaleY(1) scaleX(1); }
  50%      { transform: scaleY(.9) scaleX(1.04); }
}

/* think — the whole mark pulses while sonar waves radiate outward */
.aisy-think .aisy-bob { animation: aisyHeadPulse 1.5s ease-in-out infinite; }
@keyframes aisyHeadPulse {
  0%, 100% { transform: scale(1) translateY(0); }
  50%      { transform: scale(1.06) translateY(-3%); }
}
.aisy-waves { position: absolute; left: 50%; top: 58%; width: 100%; height: 100%;
  transform: translate(-50%, -50%); pointer-events: none; z-index: 0; }
.aisy-waves i { position: absolute; left: 50%; top: 50%; width: 72%; height: 72%; margin: -36% 0 0 -36%;
  border-radius: 50%; border: 2px solid var(--brand, #17B0F0); opacity: 0;
  animation: aisySonar 1.8s ease-out infinite; }
.aisy-waves i:nth-child(2) { animation-delay: .6s; }
.aisy-waves i:nth-child(3) { animation-delay: 1.2s; }
@keyframes aisySonar {
  0%   { transform: scale(.5); opacity: .55; }
  100% { transform: scale(1.35); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .aisy-bob, .aisy-head, .aisy-body, .aisy-waves i { animation: none !important; }
}

/* =================== DARK THEME =================== */
.theme-dark {
  --brand:#29B6F0; --brand-deep:#5CC8F5; --brand-soft:rgba(41,182,240,.18);
  --accent:#FFCE33; --accent-deep:#FFD86B; --green:#34D29A; --green-deep:#5BDDB0;
  --danger:#FF6B7E; --danger-soft:rgba(255,107,126,.16);
  --bg:#0B131C; --bg-2:#0E1825; --ink:#EAF2F8; --ink-soft:#9DB1C0;
  --ink-faint:#647686; --line:rgba(255,255,255,.09);
  --surface:#162232; --surface-strong:#19273A; --surface-2:#101C29;
  --glass-border:rgba(255,255,255,.10); --glass-blur:0px;
  --gold-grad:linear-gradient(160deg,#3FC2F8,#29B6F0 55%,#1C93CC);
  --font-display:'Montserrat', sans-serif; --font-body:'Inter', system-ui, sans-serif;
  --r-sm:16px; --r-md:22px; --r-lg:28px; --r-xl:30px;
  --sh-card:  0 1px 0 rgba(255,255,255,.05) inset, 0 16px 32px -16px rgba(0,0,0,.7);
  --sh-soft:  0 1px 0 rgba(255,255,255,.05) inset, 0 12px 24px -14px rgba(0,0,0,.6);
  --sh-inset: inset 2px 2px 6px rgba(0,0,0,.45), inset -2px -2px 6px rgba(255,255,255,.04);
  --sh-pop:   0 12px 24px -8px rgba(41,182,240,.5), inset 0 1px 0 rgba(255,255,255,.25);
  --sh-clay:  6px 6px 16px rgba(0,0,0,.5), -5px -5px 12px rgba(255,255,255,.04);
}
.theme-dark .topbar h1, .theme-atmo .topbar h1 { color: var(--ink); }
.theme-dark .eyebrow, .theme-atmo .eyebrow { color: var(--brand); }
.theme-dark .device-inner, .theme-atmo .device-inner { background: var(--bg); }
.theme-dark .screen {
  background: linear-gradient(180deg, #13202E 0%, #0D1825 45%, #0A131D 100%);
}
.theme-dark .screen::before { background: radial-gradient(circle at 35% 35%, rgba(41,182,240,.28), transparent 70%); opacity:.6; }
.theme-dark .screen::after  { background: radial-gradient(circle at 50% 50%, rgba(120,90,200,.22), transparent 70%); opacity:.6; }
.theme-dark .card, .theme-dark .tile { background: linear-gradient(180deg,#1A2738,#141F2D); border:1px solid rgba(255,255,255,.06); }
.theme-dark .soft-ico, .theme-atmo .soft-ico { background: linear-gradient(150deg,#223349,#15202E);
  box-shadow: 5px 5px 12px rgba(0,0,0,.5), -4px -4px 10px rgba(255,255,255,.04), inset 0 1px 1px rgba(255,255,255,.06); }
.theme-dark .field, .theme-atmo .field { background: rgba(255,255,255,.06); color: var(--ink-soft); box-shadow: var(--sh-inset); }
.theme-dark .field input, .theme-atmo .field input { color: var(--ink); }
.theme-dark .pill, .theme-atmo .pill { background: rgba(255,255,255,.06); }
.theme-dark .back, .theme-atmo .back { background: rgba(255,255,255,.07); }

/* =================== ATMOSPHERE (dark + image bg + frosted glass) =================== */
.theme-atmo {
  --brand:#48C7F7; --brand-deep:#7AD7FA; --brand-soft:rgba(72,199,247,.20);
  --accent:#FFCB57; --accent-deep:#FFD877; --green:#46D8A6; --green-deep:#6FE3BC;
  --danger:#FF7488; --danger-soft:rgba(255,116,136,.18);
  --bg:#0A1018; --bg-2:#0C1018; --ink:#F2F7FB; --ink-soft:#C2D2DE; --ink-faint:#8A9DAC;
  --line:rgba(255,255,255,.12);
  --surface:rgba(255,255,255,.21); --surface-strong:rgba(20,30,44,.74); --surface-2:rgba(255,255,255,.17);
  --glass-border:rgba(255,255,255,.20); --glass-blur:18px;
  --gold-grad:linear-gradient(160deg,#5FD0F9,#48C7F7 55%,#2BA6DE);
  --font-display:'Montserrat', sans-serif; --font-body:'Inter', system-ui, sans-serif;
  --r-sm:16px; --r-md:22px; --r-lg:28px; --r-xl:30px;
  --sh-card:  0 1px 0 rgba(255,255,255,.10) inset, 0 18px 40px -18px rgba(0,0,0,.65);
  --sh-soft:  0 1px 0 rgba(255,255,255,.10) inset, 0 14px 30px -18px rgba(0,0,0,.55);
  --sh-inset: inset 2px 2px 6px rgba(0,0,0,.4), inset -2px -2px 6px rgba(255,255,255,.06);
  --sh-pop:   0 12px 26px -8px rgba(72,199,247,.5), inset 0 1px 0 rgba(255,255,255,.35);
  --sh-clay:  6px 6px 18px rgba(0,0,0,.45), -5px -5px 12px rgba(255,255,255,.05);
  /* atmospheric backdrop — misty teal/indigo nebula (stand-in for a real photo) */
  --atmo-bg:
    radial-gradient(120% 70% at 50% -5%, rgba(58,120,150,.55), transparent 55%),
    radial-gradient(90% 60% at 82% 22%, rgba(108,86,168,.5), transparent 58%),
    radial-gradient(110% 70% at 8% 95%, rgba(24,96,108,.55), transparent 60%),
    radial-gradient(80% 50% at 50% 108%, rgba(150,110,70,.35), transparent 60%),
    linear-gradient(180deg,#101F2C 0%,#0C1622 52%,#0A1018 100%);
}
.theme-atmo .device-inner { background: #0A1018; }
.theme-atmo .screen { background: linear-gradient(180deg, rgba(10,16,24,.40) 0%, rgba(10,16,24,.58) 55%, rgba(10,16,24,.74) 100%); }
.theme-atmo .screen::before { display:none; }
.theme-atmo .screen::after { display:none; }
/* full-bleed photo backdrop behind the screen (atmosphere mode) */
.atmo-photo { position:absolute; inset:0; z-index:0; background-size:cover; background-position:center;
  pointer-events:none; transition: background-image .45s ease; }
.atmo-photo::after { content:''; position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(8,14,22,.5) 0%, transparent 14%, transparent 84%, rgba(8,14,22,.55) 100%); }
/* female atmosphere uses light/cream photos — warm amber veil so white text + glass stay legible while keeping the cosy tone of the photos */
body.atmo-female .atmo-photo::after {
  background: linear-gradient(180deg, rgba(74,52,34,.52) 0%, rgba(96,68,44,.26) 38%, rgba(78,54,36,.36) 70%, rgba(54,36,24,.62) 100%); }
body.atmo-female .theme-atmo.screen, body.atmo-female .theme-atmo .screen {
  background: linear-gradient(180deg, rgba(70,48,30,.24) 0%, rgba(66,46,30,.24) 55%, rgba(50,34,22,.40) 100%); }
/* warm-tinted frosted glass for the female atmosphere — more opaque for readability */
body.atmo-female .theme-atmo .card, body.atmo-female .theme-atmo .tile,
body.atmo-female .theme-atmo .topbar, body.atmo-female .theme-atmo .tabbar {
  background: linear-gradient(160deg, rgba(255,238,216,.44), rgba(252,226,198,.36));
  border: 1px solid rgba(255,240,220,.34); }
body.atmo-female .theme-atmo .soft-ico { background: rgba(255,238,216,.40); border: 1px solid rgba(255,240,220,.36); }
body.atmo-female .theme-atmo .field { background: rgba(255,238,216,.32); }
/* female atmosphere — warm amber / sand palette (overrides cool cyan accents) */
body.atmo-female.theme-atmo {
  --brand:#E0A85C; --brand-deep:#F2C988; --brand-soft:rgba(224,168,92,.22);
  --accent:#F2C879; --accent-deep:#FFDB95; --green:#C9A86A; --green-deep:#E0C189;
  --ink:#FBF3E8; --ink-soft:#E4D3BE; --ink-faint:#B9A488;
  --line:rgba(255,236,210,.16);
  --gold-grad:linear-gradient(160deg,#F2C988,#E0A85C 55%,#C78A3C);
  --sh-pop:0 12px 26px -8px rgba(224,168,92,.55), inset 0 1px 0 rgba(255,245,228,.4);
}
/* frosted glass surfaces */
.theme-atmo .card, .theme-atmo .tile, .theme-atmo .topbar, .theme-atmo .tabbar {
  background: rgba(255,255,255,.21);
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 0 10px 34px -14px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.14);
}
.theme-atmo .soft-ico { background: rgba(255,255,255,.22);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
  border:1px solid rgba(255,255,255,.20);
  box-shadow: 0 8px 20px -10px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.22); }
.theme-atmo .field { background: rgba(255,255,255,.14) !important; }
.theme-atmo .statusbar, .theme-dark .statusbar { color: var(--ink); }
.theme-atmo .home-indicator { background: rgba(255,255,255,.4); }
.theme-dark .home-indicator { background: rgba(255,255,255,.28); }
/* keep content above star layer */
.screen > * { position: relative; z-index: 1; }
@keyframes pulse { 0%,100%{ box-shadow: 0 0 0 7px rgba(196,154,108,.22), var(--sh-pop);} 50%{ box-shadow: 0 0 0 13px rgba(196,154,108,.05), var(--sh-pop);} }

/* round mic button in input fields (voice input) */
.mic-btn { flex: none; width: 40px; height: 40px; border-radius: 50%; border: none; cursor: pointer;
  background: var(--gold-grad); box-shadow: var(--sh-pop); display: grid; place-items: center; }
.mic-btn:active { transform: scale(.94); }

/* live recording waveform */
.wave { display: flex; align-items: center; justify-content: center; gap: 3px; height: 46px; }
.wave span { width: 3px; height: 30%; border-radius: 999px; background: var(--brand);
  animation: waveBar 1s ease-in-out infinite; }
@keyframes waveBar { 0%,100%{ height: 16%; opacity:.5; } 50%{ height: 95%; opacity:1; } }
@media (prefers-reduced-motion: reduce){ .wave span { animation: none; height: 50%; } }

/* pulsing ring on the active record button */
.mic-pulse { position: absolute; inset: -6px; border-radius: 50%; border: 2px solid var(--brand);
  animation: micPulse 1.6s ease-out infinite; pointer-events: none; }
@keyframes micPulse { 0%{ transform: scale(.85); opacity:.7; } 100%{ transform: scale(1.45); opacity:0; } }
