/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/59ba17ee-edd1-4e7a-8293-4d79e8fd7f4c.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/f56cf8be-5e83-4574-8228-6e6d39c4b69a.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/ee4eda23-6ebe-4e30-8cfb-65f430045997.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/76fb6fbe-daca-43f3-8dbd-28595e2ca410.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/30bbf946-6e78-433b-a579-112659b3a547.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/59ba17ee-edd1-4e7a-8293-4d79e8fd7f4c.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/f56cf8be-5e83-4574-8228-6e6d39c4b69a.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/ee4eda23-6ebe-4e30-8cfb-65f430045997.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/76fb6fbe-daca-43f3-8dbd-28595e2ca410.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/30bbf946-6e78-433b-a579-112659b3a547.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/0a8be7eb-7987-4030-96bc-4de1f0569e8f.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/504fc6d7-8b4b-4c54-85af-52bc76f88902.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/c3e56dc6-e105-412b-aae7-4372590c026f.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/3a59f537-19f5-4bec-9967-f88a30b15d5a.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/1eeb3928-1c07-438c-9d72-3694ca533886.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/0a8be7eb-7987-4030-96bc-4de1f0569e8f.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/504fc6d7-8b4b-4c54-85af-52bc76f88902.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/c3e56dc6-e105-412b-aae7-4372590c026f.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/3a59f537-19f5-4bec-9967-f88a30b15d5a.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/1eeb3928-1c07-438c-9d72-3694ca533886.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/0a8be7eb-7987-4030-96bc-4de1f0569e8f.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/504fc6d7-8b4b-4c54-85af-52bc76f88902.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/c3e56dc6-e105-412b-aae7-4372590c026f.woff2') format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/3a59f537-19f5-4bec-9967-f88a30b15d5a.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/1eeb3928-1c07-438c-9d72-3694ca533886.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/4aef950e-d857-430b-ba23-932ace8c326c.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* vietnamese */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/72fecc8f-2f5f-4eb3-9437-c38b9f51e298.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/bb1eb7a5-650c-4646-b84d-b0921cfe7548.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/465ae20a-9f00-4517-bf8a-8141cf3fb06c.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/4aef950e-d857-430b-ba23-932ace8c326c.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* vietnamese */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/72fecc8f-2f5f-4eb3-9437-c38b9f51e298.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/bb1eb7a5-650c-4646-b84d-b0921cfe7548.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/465ae20a-9f00-4517-bf8a-8141cf3fb06c.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/4aef950e-d857-430b-ba23-932ace8c326c.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* vietnamese */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/72fecc8f-2f5f-4eb3-9437-c38b9f51e298.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/bb1eb7a5-650c-4646-b84d-b0921cfe7548.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/465ae20a-9f00-4517-bf8a-8141cf3fb06c.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/4aef950e-d857-430b-ba23-932ace8c326c.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* vietnamese */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/72fecc8f-2f5f-4eb3-9437-c38b9f51e298.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/bb1eb7a5-650c-4646-b84d-b0921cfe7548.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/465ae20a-9f00-4517-bf8a-8141cf3fb06c.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/4aef950e-d857-430b-ba23-932ace8c326c.woff2') format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* vietnamese */
@font-face {
  font-family: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/72fecc8f-2f5f-4eb3-9437-c38b9f51e298.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/bb1eb7a5-650c-4646-b84d-b0921cfe7548.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: 'Hanken Grotesk';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/465ae20a-9f00-4517-bf8a-8141cf3fb06c.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 */
@font-face {
  font-family: 'Italiana';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/26a34d34-3ec8-47e9-8496-af691fb7d4fc.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;
}
/* arabic */
@font-face {
  font-family: 'Tajawal';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/27fce155-a3c1-4f88-a311-797ca3110ef9.woff2') format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* latin */
@font-face {
  font-family: 'Tajawal';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('../fonts/02a5f01c-8a30-45d4-8318-b3634ee454b5.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;
}
/* arabic */
@font-face {
  font-family: 'Tajawal';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/e1988d69-7a4d-4a86-a1ad-9f8bc7e83aa8.woff2') format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* latin */
@font-face {
  font-family: 'Tajawal';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('../fonts/4deabed5-8419-43ed-ba13-13467149d2bf.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;
}
/* arabic */
@font-face {
  font-family: 'Tajawal';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/6fd5b57f-28a1-4325-a2f6-06cfc7cdd881.woff2') format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* latin */
@font-face {
  font-family: 'Tajawal';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('../fonts/dabffc49-2df1-483a-9fdc-a8ff16932268.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;
}
/* arabic */
@font-face {
  font-family: 'Tajawal';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/45cc7724-133e-4330-b521-2a4cfcd56a05.woff2') format('woff2');
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* latin */
@font-face {
  font-family: 'Tajawal';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/28d4a618-5c40-4d41-8a5f-fb0c9116de3a.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: 'Nicolas Cochin';
  src: url('../fonts/fcf484e6-89de-423a-a41a-2377aaba4ce0.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
:root {
  /* Atelier base palette */
  --bg: #FFFFFF;
  --paper: #F7F7F5;
  --bg-2: #EDEBE6;
  --ink: #0A0A0A;
  --ink-soft: #2A2A2A;
  --mute: #6F6F6B;
  --mute-2: #9B9994;
  --line: #E2E0DA;
  --accent: #6F6F6B;
  --accent-deep: #2A2A2A;
  --gold: #0A0A0A;
  --gold-deep: #0A0A0A;
  /* Type — unified to the logo typeface (Nicolas Cochin) across the whole site.
     Arabic resolves to a single face (Tajawal) so both languages stay consistent. */
  --logo: 'Nicolas Cochin', 'Cochin', 'Italiana', 'Tajawal', serif;
  --sans: var(--logo);
  --ar: 'Tajawal', sans-serif;
  --serif: 'Playfair Display', var(--logo);
  --ar-serif: 'Amiri', 'Tajawal', serif;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { background: var(--bg); color: var(--ink); font-family: var(--sans); font-size: 13px; line-height: 1.5; -webkit-font-smoothing: antialiased; }
body[dir="rtl"] { font-family: var(--ar); }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: none; background: none; color: inherit; padding: 0; }
img { display: block; max-width: 100%; }

.app { min-height: 100vh; }
.container { max-width: 1640px; margin: 0 auto; padding: 0 40px; }
.container-narrow { max-width: 880px; margin: 0 auto; padding: 0 40px; }

/* ===== HEADER (Atelier) — but logo is Ivory serif ===== */
.header { background: var(--bg); position: sticky; top: 0; z-index: 50; border-bottom: 1px solid var(--line); }
.header-inner { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 20px 40px; gap: 24px; }
.nav-left, .nav-right { display: flex; align-items: center; gap: 26px; }
.nav-right { justify-content: flex-end; }
.nav-link { font-size: 11.5px; letter-spacing: 0.01em; color: var(--ink); transition: opacity .2s; font-weight: 400; text-transform: lowercase; }
.nav-link:hover { opacity: 0.5; }

/* Logo — Nicolas Cochin (Italiana as web fallback for the same Roman silhouette) */
.brand {
  font-family: 'Nicolas Cochin', 'Cochin', 'Italiana', 'Noto Serif Arabic', serif;
  font-size: 34px;
  letter-spacing: 0.22em;
  font-weight: 400;
  cursor: pointer;
  padding-left: 0.22em;
  color: var(--ink);
  line-height: 1;
}
body[dir="rtl"] .brand { font-family: var(--ar-serif); letter-spacing: 0.04em; padding-left: 0; padding-right: 0; font-weight: 400; }

.cart-btn { font-size: 11.5px; }
.menu-icon { display: none; }
.icon-btn { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; color: var(--ink); position: relative; transition: opacity .2s; cursor: pointer; }
.icon-btn:hover { opacity: 0.5; }
.icon-btn svg { width: 18px; height: 18px; stroke: currentColor; fill: none; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.icon-btn .like-count { position: absolute; top: -6px; right: -8px; background: var(--ink); color: var(--bg); font-size: 9px; font-weight: 500; min-width: 14px; height: 14px; border-radius: 999px; display: grid; place-items: center; padding: 0 3px; line-height: 1; letter-spacing: 0; }
.icon-btn.liked svg { fill: var(--ink); }
.lang-toggle { display: inline-flex; gap: 14px; font-size: 11px; }
.lang-toggle button { color: var(--mute); }
.lang-toggle button.on { color: var(--ink); font-weight: 500; }

/* ===== HERO 1 — Ivory SPLIT layout with Atelier background ===== */
.hero1 { display: block; background: var(--bg); border-bottom: 1px solid var(--line); padding: 22px; }
.hero1 .hero-media { position: relative; height: calc(100svh - 180px); width: calc((100svh - 180px) * 16 / 9); min-height: 380px; max-width: 100%; margin-left: auto; margin-right: auto; border-radius: 20px; overflow: hidden; background: var(--bg-2); box-shadow: 0 30px 60px -28px rgba(0,0,0,0.28); }
.hero1 .hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
.hero1 .hero-scrim { position: absolute; inset: 0; pointer-events: none; background: linear-gradient(90deg, rgba(250,249,245,0.82) 0%, rgba(250,249,245,0.55) 26%, rgba(250,249,245,0.12) 50%, rgba(250,249,245,0) 68%); }
body[dir="rtl"] .hero1 .hero-scrim { background: linear-gradient(270deg, rgba(250,249,245,0.82) 0%, rgba(250,249,245,0.55) 26%, rgba(250,249,245,0.12) 50%, rgba(250,249,245,0) 68%); }
.hero1 .hero-content { position: absolute; top: 0; bottom: 0; left: 0; z-index: 2; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 24px; padding: 0 clamp(32px, 4vw, 64px); width: min(880px, 94%); }
body[dir="rtl"] .hero1 .hero-content { left: auto; right: 0; align-items: flex-end; text-align: right; }

.eyebrow { font-size: 10.5px; letter-spacing: 0.32em; text-transform: uppercase; color: var(--gold-deep); font-weight: 500; }
/* Arabic: drop letter-spacing so cursive letters stay joined + a touch larger */
body[dir="rtl"] .hero1 .eyebrow { letter-spacing: normal; font-size: 14px; font-weight: 500; align-self: flex-start; }
.hero1 .hero-title {
  font-family: var(--serif);
  font-size: 94px;
  line-height: 1.0;
  letter-spacing: -0.01em;
  font-weight: 300;
  color: var(--ink);
  width: 100%;
  overflow-wrap: break-word;
}
body[dir="rtl"] .hero1 .hero-title { font-family: var(--ar-serif); font-size: 100px; line-height: 1.18; letter-spacing: normal; }
.hero1 .hero-title em { font-style: italic; color: var(--gold-deep); font-weight: 400; }
.hero1 .hero-sub {
  font-family: var(--serif);
  font-size: 20px;
  font-style: italic;
  color: var(--ink-soft);
  max-width: 440px;
  line-height: 1.55;
  font-weight: 400;
}
body[dir="rtl"] .hero1 .hero-sub { font-family: var(--ar-serif); font-style: normal; font-size: 18px; }
.hero1 .hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 16px 30px;
  background: var(--ink);
  color: var(--bg);
  font-size: 11.5px;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  transition: all .2s;
  align-self: flex-start;
}
.hero1 .hero-cta:hover { background: var(--accent-deep); }
body[dir="rtl"] .hero1 .hero-cta { align-self: flex-start; letter-spacing: normal; font-size: 13px; }
.hero1 .hero-cta-m { display: none; }  /* the below-image CTA is phones-only; hidden on desktop */

/* ===== BANNER SLIDER — centered rounded card ===== */
.banner-showcase { padding: 76px 0; background: var(--bg); }
.banner-showcase .carousel { width: min(1280px, 92vw); margin: 0 auto; height: auto; aspect-ratio: 5 / 2; max-height: 78vh; border-radius: 24px; border: 1px solid var(--line); box-shadow: 0 30px 70px -40px rgba(0,0,0,0.35); }
@media (max-width: 900px) { .banner-showcase { padding: 46px 0; } .banner-showcase .carousel { width: 92vw; border-radius: 18px; } }
/* Phones: panoramic 5:2 is too thin on a portrait screen, so show a taller 3:2 crop (content is centered — nothing important is lost) and tighten the vertical padding. */
@media (max-width: 640px) { .banner-showcase { padding: 30px 0; } .banner-showcase .carousel { aspect-ratio: 3 / 2; max-height: none; } }
.carousel { position: relative; overflow: hidden; background: var(--bg-2); }
.carousel-track { display: flex; width: 100%; height: 100%; transition: transform 0.9s cubic-bezier(0.65, 0, 0.2, 1); will-change: transform; }
.carousel-slide { flex: 0 0 100%; width: 100%; height: 100%; }
.carousel-slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
.carousel-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; border-radius: 50%; border: none; background: rgba(255,255,255,0.82); color: #1a1a1a; font-size: 22px; line-height: 1; cursor: pointer; display: grid; place-items: center; opacity: 0; transition: opacity .3s, background .2s; z-index: 3; }
.carousel:hover .carousel-arrow { opacity: 1; }
.carousel-arrow:hover { background: #fff; }
.carousel-arrow.prev { left: 18px; }
.carousel-arrow.next { right: 18px; }
.carousel-dots { position: absolute; bottom: 18px; left: 0; right: 0; display: flex; justify-content: center; gap: 8px; z-index: 3; }
.carousel-dots button { width: 8px; height: 8px; padding: 0; border: none; border-radius: 999px; background: rgba(255,255,255,0.55); cursor: pointer; transition: all .35s cubic-bezier(0.65,0,0.2,1); box-shadow: 0 1px 3px rgba(0,0,0,0.25); }
.carousel-dots button.on { background: #fff; width: 24px; }

/* ===== SECTIONS (Atelier) ===== */
.section { padding: 120px 0; border-top: 1px solid var(--line); }
.section-head { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; margin-bottom: 56px; padding-bottom: 24px; border-bottom: 1px solid var(--line); }
.section-head h2 { font-size: 52px; font-weight: 300; line-height: 0.95; letter-spacing: -0.02em; }
body[dir="rtl"] .section-head h2 { font-size: 42px; line-height: 1.1; }
.section-head .head-right { font-size: 11.5px; text-align: center; color: var(--mute); margin-top: 6px; }
body[dir="rtl"] .section-head .head-right { text-align: center; }
.section-num { font-size: 11px; letter-spacing: 0.02em; color: var(--mute); margin-bottom: 12px; display: block; }

/* ===== PRODUCT GRID (Atelier) — all card backgrounds = bg-2 ===== */
.product-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 80px 32px; }
.product-card { cursor: pointer; }
.product-card .card-img { aspect-ratio: 3/4; background: var(--bg-2); position: relative; overflow: hidden; transition: opacity .3s; }
.product-card:hover .card-img { opacity: 0.85; }
.product-card .card-img .bottle-frame { width: 100%; height: 100%; display: grid; place-items: center; }
.product-card .card-img .bottle-frame svg { width: 50%; height: 72%; transition: transform .5s; }
.product-card:hover .card-img .bottle-frame svg { transform: scale(1.04); }
.product-card .index { position: absolute; top: 16px; left: 16px; font-size: 10.5px; color: var(--ink); }
.product-card .badge { position: absolute; top: 16px; right: 16px; font-size: 10.5px; }
.product-card .card-meta { display: flex; flex-direction: column; align-items: center; padding: 22px 4px 0; gap: 8px; text-align: center; }
.product-card .meta-left { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.product-card .meta-left .p-name { font-size: 15px; font-weight: 500; letter-spacing: -0.005em; }
.product-card .meta-left .p-type { font-size: 11.5px; color: var(--mute); }
.product-card .p-price { font-size: 13px; font-weight: 500; font-variant-numeric: tabular-nums; }

/* ===== EDITORIAL BANNER 2 — Atelier layout, IVORY serif headings ===== */
.editorial2 { padding: 140px 0; border-top: 1px solid var(--line); background: var(--bg); }
.editorial2-inner { display: grid; grid-template-columns: 1.1fr 1fr; gap: 120px; align-items: center; }
.editorial2 .panel { aspect-ratio: 4/5; background: var(--bg-2); }
.editorial2 .panel .bottle-frame { width: 100%; height: 100%; display: grid; place-items: center; }
.editorial2 .panel .bottle-frame svg { width: 50%; height: 75%; }

.editorial2 h2 {
  font-family: var(--serif);
  font-size: 68px;
  font-weight: 300;
  line-height: 1.08;
  letter-spacing: -0.005em;
  color: var(--ink);
}
body[dir="rtl"] .editorial2 h2 { font-family: var(--ar-serif); font-size: 50px; line-height: 1.2; }
.editorial2 h2 em { font-style: italic; color: var(--gold-deep); font-weight: 400; }
.editorial2 p {
  font-family: var(--serif);
  font-size: 19px;
  line-height: 1.55;
  margin-top: 40px;
  max-width: 460px;
  color: var(--ink-soft);
  font-style: italic;
}
body[dir="rtl"] .editorial2 p { font-family: var(--ar-serif); font-style: normal; font-size: 17px; }

.link-arrow { display: inline-flex; align-items: center; gap: 10px; font-size: 11.5px; padding-bottom: 4px; border-bottom: 1px solid var(--ink); transition: gap .25s; align-self: flex-start; }
.link-arrow:hover { gap: 16px; }
body[dir="rtl"] .link-arrow { align-self: flex-end; }
.italic { font-family: var(--serif); font-style: italic; font-weight: 400; letter-spacing: -0.005em; }
body[dir="rtl"] .italic { font-family: var(--ar-serif); font-style: normal; }

/* ===== MANIFESTO (Atelier — last section) ===== */
.manifesto { padding: 140px 40px; text-align: center; border-top: 1px solid var(--line); }
.manifesto h2 { font-size: 84px; font-weight: 300; line-height: 1; letter-spacing: -0.03em; max-width: 1100px; margin: 0 auto; }
body[dir="rtl"] .manifesto h2 { font-size: 56px; line-height: 1.2; }
.manifesto .attrib { font-size: 11.5px; margin-top: 32px; letter-spacing: 0.04em; color: var(--mute); }

/* ===== FOOTER (Atelier) ===== */
.footer { background: var(--ink); color: var(--bg); padding: 100px 0 32px; }

/* Footer head — centred brand + tagline + newsletter */
.footer-head { display: flex; flex-direction: column; align-items: center; text-align: center; padding-bottom: 54px; }
.footer .footer-head .brand { font-family: 'Nicolas Cochin', 'Cochin', 'Italiana', serif; font-size: 34px; letter-spacing: 0.22em; margin-bottom: 16px; display: block; color: var(--bg); padding-left: 0.22em; font-weight: 400; }
body[dir="rtl"] .footer .footer-head .brand { font-family: var(--ar-serif); letter-spacing: 0.04em; padding-left: 0; font-weight: 400; }
.footer .footer-head p { font-size: 13px; color: rgba(255,255,255,0.6); max-width: 460px; line-height: 1.7; }
.newsletter { margin-top: 26px; display: flex; flex-direction: column; align-items: center; width: 100%; }
.newsletter label { font-size: 10.5px; color: rgba(255,255,255,0.5); display: block; margin-bottom: 8px; }
.newsletter-form { display: flex; border-bottom: 1px solid rgba(255,255,255,0.3); width: min(300px, 100%); }
.newsletter-form input { flex: 1; background: transparent; border: none; outline: none; color: var(--bg); font-family: inherit; padding: 8px 0; font-size: 13px; text-align: center; }
.newsletter-form input::placeholder { color: rgba(255,255,255,0.4); }
.newsletter-form button { font-size: 13px; color: var(--bg); padding: 8px 4px; }

/* Footer link columns */
.footer-cols { display: grid; grid-template-columns: 1fr 1.05fr; gap: 40px 56px; max-width: 760px; margin: 0 auto; border-top: 1px solid rgba(255,255,255,0.10); padding: 48px 0 54px; }
.footer-col { min-width: 0; }
.footer h4 { font-size: 11px; margin-bottom: 18px; font-weight: 500; letter-spacing: 0.08em; }
body[dir="rtl"] .footer h4 { font-size: 12.5px; letter-spacing: 0; }
.footer ul { list-style: none; display: flex; flex-direction: column; gap: 11px; }
.footer li { font-size: 12.5px; color: rgba(255,255,255,0.6); cursor: pointer; transition: color .2s; }
.footer li:hover { color: var(--bg); }
.footer-contact li a { display: inline-flex; align-items: center; gap: 10px; color: inherit; text-decoration: none; overflow-wrap: anywhere; }
.footer-contact .c-ico { width: 30px; height: 30px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.18); display: grid; place-items: center; flex: none; transition: all .25s ease; }
.footer-contact .c-ico svg { width: 14px; height: 14px; fill: currentColor; display: block; }
.footer-contact li:hover .c-ico { background: var(--bg); color: var(--ink); border-color: var(--bg); }

/* single child, centred so the floating WhatsApp button never sits on top of it */
.footer-bottom { border-top: 1px solid rgba(255,255,255,0.12); padding-top: 24px; display: flex; justify-content: center; text-align: center; font-size: 11px; color: rgba(255,255,255,0.5); }

/* Footer social icons — borderless glyphs */
.footer-social-block { display: flex; flex-direction: column; align-items: center; gap: 18px; padding: 4px 0 34px; }
.footer-social-title { font-size: 10px; letter-spacing: 0.28em; text-transform: uppercase; color: rgba(255,255,255,0.4); }
body[dir="rtl"] .footer-social-title { font-size: 12.5px; letter-spacing: 0.06em; text-transform: none; }
.footer-social { display: flex; align-items: center; justify-content: center; gap: 26px; }
.footer-social .social-icon { display: grid; place-items: center; color: rgba(255,255,255,0.62); transition: color .25s ease, transform .25s ease; }
.footer-social .social-icon svg { width: 20px; height: 20px; fill: currentColor; display: block; }
.footer-social .social-icon.wide svg { width: auto; height: 17px; }
.footer-social .social-icon:hover { color: #fff; transform: translateY(-2px); }

/* Floating WhatsApp button — inline-START so it sits RIGHT in Arabic (rtl) and LEFT in English (ltr) */
.float-wa { position: fixed; bottom: 20px; inset-inline-start: 20px; width: 54px; height: 54px; border-radius: 50%; background: #25D366; color: #fff; display: grid; place-items: center; box-shadow: 0 10px 28px -6px rgba(37,211,102,0.55), 0 3px 10px rgba(0,0,0,0.18); z-index: 900; transition: transform .25s ease; }
.float-wa svg { width: 27px; height: 27px; fill: currentColor; }
.float-wa:hover { transform: scale(1.08); }
@media (max-width: 640px) { .float-wa { width: 50px; height: 50px; bottom: 16px; inset-inline-start: 16px; } }

/* Footer language switcher */
.footer-lang-row { display: flex; flex-direction: column; align-items: center; gap: 14px; padding: 8px 0 44px; }
.footer-lang-label { font-size: 10px; letter-spacing: 0.28em; text-transform: uppercase; color: rgba(255,255,255,0.4); }
body[dir="rtl"] .footer-lang-label { letter-spacing: 0.1em; }
.footer-lang { display: inline-flex; align-items: center; gap: 4px; padding: 5px; border: 1px solid rgba(255,255,255,0.16); border-radius: 999px; background: rgba(255,255,255,0.04); }
.footer-lang button { appearance: none; border: none; background: transparent; color: rgba(255,255,255,0.55); font-family: var(--sans); font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; padding: 9px 24px; border-radius: 999px; cursor: pointer; transition: color .35s ease, background .35s ease; line-height: 1; }
.footer-lang button.on { background: var(--bg); color: var(--ink); font-weight: 500; }
.footer-lang button:not(.on):hover { color: #fff; }
.footer-lang button.ar { letter-spacing: 0; text-transform: none; font-size: 14px; }

/* ===== CART DRAWER (Atelier) ===== */
.drawer-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,0.35); backdrop-filter: blur(2px); z-index: 100; opacity: 0; pointer-events: none; transition: opacity .35s; }
.drawer-backdrop.open { opacity: 1; pointer-events: auto; }
.cart-drawer { position: fixed; top: 0; right: 0; bottom: 0; width: 460px; max-width: 100vw; background: var(--bg); z-index: 101; transform: translateX(100%); transition: transform .42s cubic-bezier(.6,.2,.2,1); display: flex; flex-direction: column; }
body[dir="rtl"] .cart-drawer { right: auto; left: 0; transform: translateX(-100%); }
.cart-drawer.open { transform: translateX(0); }
.cart-head { padding: 28px; display: flex; justify-content: space-between; align-items: baseline; border-bottom: 1px solid var(--line); }
.cart-head h3 { font-size: 14px; font-weight: 500; letter-spacing: 0.02em; }
.cart-head .close { font-size: 12px; }
.cart-body { flex: 1; overflow-y: auto; padding: 8px 28px; }
.cart-item { display: grid; grid-template-columns: 90px 1fr auto; gap: 18px; padding: 24px 0; border-bottom: 1px solid var(--line); }
.cart-item .ci-img { aspect-ratio: 3/4; background: var(--bg-2); }
.cart-item .ci-img .bottle-frame { width: 100%; height: 100%; display: grid; place-items: center; }
.cart-item .ci-img .bottle-frame svg { width: 60%; height: 75%; }
.cart-item .ci-name { font-size: 14px; font-weight: 500; }
.cart-item .ci-meta { font-size: 11px; color: var(--mute); margin-top: 4px; line-height: 1.5; }
.cart-item .ci-qty { display: inline-flex; gap: 12px; margin-top: 14px; font-size: 12px; }
.cart-item .ci-qty button { color: var(--mute); }
.cart-item .ci-qty button:hover { color: var(--ink); }
.cart-item .ci-qty span { min-width: 16px; text-align: center; }
.cart-item .ci-price { font-size: 13px; font-weight: 500; }
.cart-item .ci-remove { font-size: 10.5px; color: var(--mute); margin-top: 10px; text-align: right; cursor: pointer; }
.cart-item .ci-remove:hover { color: var(--ink); }
.cart-foot { padding: 28px; border-top: 1px solid var(--line); }
.cart-summary { display: flex; justify-content: space-between; font-size: 14px; font-weight: 500; margin-bottom: 8px; }
.cart-foot small { display: block; font-size: 11px; color: var(--mute); margin-bottom: 20px; }
.cart-foot .btn-primary { width: 100%; background: var(--ink); color: var(--bg); padding: 18px; font-size: 11.5px; transition: background .2s; }
.cart-foot .btn-primary:hover { background: var(--accent-deep); }
.cart-foot .secondary { display: block; width: 100%; text-align: center; margin-top: 14px; font-size: 11.5px; color: var(--mute); }
.cart-empty { text-align: center; padding: 80px 32px; }
.cart-empty .mark { font-family: var(--serif); font-style: italic; font-size: 48px; color: var(--accent-deep); }

/* ===== PDP (Atelier — all images bg-2) ===== */
.pdp { padding: 32px 0 0; }
.pdp-grid { display: grid; grid-template-columns: minmax(300px, 420px) 1fr; gap: 60px; align-items: start; }
.pdp .pdp-image { aspect-ratio: 3/4; background: var(--bg-2); position: sticky; top: 100px; border-radius: 16px; overflow: hidden; }
.pdp .pdp-image .bottle-frame { width: 100%; height: 100%; display: grid; place-items: center; }
.pdp .pdp-image .bottle-frame svg { width: 55%; height: 75%; }
.pdp-info { padding: 80px 40px 80px 0; max-width: 560px; }
body[dir="rtl"] .pdp-info { padding: 80px 0 80px 40px; }
.pdp-info .crumb { font-size: 11px; color: var(--mute); margin-bottom: 48px; letter-spacing: 0.02em; }
.pdp-info h1 { font-size: 64px; font-weight: 300; line-height: 0.95; letter-spacing: -0.02em; }
body[dir="rtl"] .pdp-info h1 { font-size: 50px; line-height: 1.1; }
.pdp-info .subtitle { font-size: 14px; color: var(--mute); margin-top: 12px; }
.pdp-info .description { font-size: 16px; line-height: 1.6; margin-top: 40px; max-width: 460px; color: var(--ink-soft); }
.pdp-info .pdp-divider { height: 1px; background: var(--line); margin: 56px 0 32px; }
.pdp-info .price-row { display: flex; justify-content: space-between; align-items: baseline; }
.pdp-info .price-row .price { font-size: 24px; font-weight: 500; }
.pdp-info .label-row { font-size: 11px; color: var(--mute); margin-bottom: 12px; letter-spacing: 0.02em; }
.size-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin-top: 16px; }
.size-row button { padding: 14px 16px; border: 1px solid var(--line); font-size: 12px; transition: all .2s; }
.size-row button.active { background: var(--ink); color: var(--bg); border-color: var(--ink); }
.qty-row { display: flex; gap: 0; margin-top: 16px; border: 1px solid var(--line); width: fit-content; }
.qty-row button { padding: 12px 16px; }
.qty-row span { padding: 12px 12px; min-width: 30px; text-align: center; font-variant-numeric: tabular-nums; }
.pdp-add { width: 100%; padding: 18px; background: var(--ink); color: var(--bg); font-size: 11.5px; margin-top: 28px; transition: background .2s; }
.pdp-add:hover { background: var(--accent-deep); }
.pdp-add:disabled { opacity: 0.6; cursor: default; }
.notes-grid { margin-top: 36px; display: grid; gap: 8px; }
.note-row { display: grid; grid-template-columns: 100px 1fr; padding: 18px 0; border-bottom: 1px solid var(--line); font-size: 13px; }
.note-row:last-child { border-bottom: none; }
.note-row .note-lbl { font-size: 11px; color: var(--mute); }
.note-row .note-val { font-weight: 500; }

/* ===== PDP redesign (Maison-Crivelli-style, ARIUS identity) ===== */
.pdp .pdp-image .pdp-tint { position: absolute; inset: 0; background: radial-gradient(58% 52% at 50% 40%, var(--phue, #b8b2a6), transparent 68%); opacity: 0.18; pointer-events: none; z-index: 0; }
.pdp .pdp-image .bottle-frame { position: relative; z-index: 1; }
.pdp-badge { position: absolute; top: 18px; inset-inline-end: 18px; z-index: 2; border: 1px solid var(--ink); color: var(--ink); font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase; padding: 6px 14px; border-radius: 2px; background: rgba(255,255,255,0.55); }
body[dir="rtl"] .pdp-badge { letter-spacing: normal; font-size: 12px; }

.pdp-info .pdp-fam { font-size: 13px; color: var(--mute); letter-spacing: 0.02em; margin-bottom: 8px; }
.pdp-info .pdp-conc { font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--accent-deep); margin-top: 14px; }
body[dir="rtl"] .pdp-info .pdp-conc { letter-spacing: 0.06em; }

.pdp-sizes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 30px; }
.pdp-size { border: 1px solid var(--line); border-radius: 5px; padding: 14px 8px; text-align: center; background: var(--bg); transition: all .2s; }
.pdp-size .v { display: block; font-size: 13.5px; font-weight: 600; letter-spacing: 0.02em; }
.pdp-size .p { display: block; font-size: 13px; color: var(--mute); margin-top: 4px; }
.pdp-size.on { background: var(--ink); border-color: var(--ink); color: var(--bg); }
.pdp-size.on .p { color: rgba(255,255,255,0.72); }

.pdp-qtyrow { display: flex; align-items: center; gap: 18px; margin-top: 24px; }
.pdp-qtyrow .pdp-qtylbl { font-size: 11px; color: var(--mute); letter-spacing: 0.02em; text-transform: uppercase; }
body[dir="rtl"] .pdp-qtyrow .pdp-qtylbl { text-transform: none; font-size: 13px; }

.pdp-info .description { margin-top: 30px; }

.pdp-accordion { margin-top: 34px; border-top: 1px solid var(--line); }
.pdp-accordion .acc-row { display: flex; justify-content: space-between; align-items: center; padding: 18px 2px; border-bottom: 1px solid var(--line); cursor: pointer; }
.pdp-accordion .acc-row .t { font-size: 13.5px; font-weight: 500; letter-spacing: 0.02em; }
.pdp-accordion .acc-row .c { font-size: 20px; color: var(--mute); font-weight: 300; line-height: 1; }
.pdp-accordion .acc-body { padding: 4px 2px 20px; border-bottom: 1px solid var(--line); }
.pdp-notes { display: flex; flex-wrap: wrap; gap: 8px; }
.pdp-note { border: 1px solid var(--line); border-radius: 20px; padding: 7px 15px; font-size: 13px; color: var(--ink-soft); }
.pdp-spec { display: flex; justify-content: space-between; padding: 8px 0; font-size: 14px; }
.pdp-spec .k { color: var(--mute); }
.pdp-spec .v { color: var(--ink); }
.pdp-accordion .acc-text { font-size: 14px; line-height: 1.7; color: var(--mute); }

/* Sticky buy bar — desktop: sticks to viewport bottom inside the info column */
.pdp-dock { position: sticky; bottom: 20px; background: var(--bg); margin-top: 32px; padding-top: 14px; }
.pdp-sizes-dock { display: none; }  /* desktop: sizes live up-top; the dock holds only the buy bar */
.pdp-buybar { display: flex; align-items: center; gap: 12px; }
.pdp-buybar-info { display: flex; flex-direction: column; line-height: 1.2; }
.pdp-buybar-size { font-size: 11px; color: var(--mute); letter-spacing: 0.02em; }
.pdp-buybar-price { font-size: 22px; font-weight: 500; }
.pdp-buybar .pdp-add { flex: 1; width: auto; margin-top: 0; }

/* Prominent price + ARIUS guarantee + installments (client request) */
.pdp-info .pdp-price { font-size: 30px; font-weight: 500; letter-spacing: -0.01em; margin-top: 20px; }
.pdp-guarantee { display: flex; align-items: flex-start; gap: 10px; margin-top: 14px; padding: 12px 14px; background: var(--paper); border: 1px solid var(--line); border-radius: 10px; }
.pdp-guar-check { flex-shrink: 0; width: 20px; height: 20px; border-radius: 50%; background: var(--ink); color: var(--bg); display: grid; place-items: center; font-size: 11px; margin-top: 1px; }
.pdp-guar-text strong { display: block; font-size: 13px; font-weight: 600; margin-bottom: 3px; }
.pdp-guar-text span { font-size: 12.5px; color: var(--mute); line-height: 1.5; }
.pdp-installments { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: 22px; padding: 13px 16px; border: 1px solid var(--line); border-radius: 10px; }
.pdp-inst-q { font-size: 12.5px; color: var(--mute); }
.pdp-inst-badges { display: flex; gap: 8px; }
.pay-badge { font-size: 12.5px; font-weight: 800; padding: 7px 15px; border-radius: 8px; letter-spacing: 0.01em; line-height: 1; }
.pay-tabby { background: #2ad3ac; color: #003d31; }
.pay-tamara { background: linear-gradient(115deg, #6a34f0, #a047df); color: #fff; }
/* buy-bar quantity stepper (replaces the price next to ADD) */
.pdp-qty-mini { display: flex; align-items: center; border: 1px solid var(--line); border-radius: 4px; flex-shrink: 0; background: var(--bg); }
.pdp-qty-mini button { padding: 13px; font-size: 15px; line-height: 1; }
.pdp-qty-mini span { min-width: 26px; text-align: center; font-variant-numeric: tabular-nums; font-size: 14px; }

/* ===== SHOP (Atelier) ===== */
.shop-head { padding: 100px 40px 64px; border-bottom: 1px solid var(--line); text-align: center; }
.shop-head h1 { font-size: 88px; font-weight: 300; line-height: 0.9; letter-spacing: -0.03em; }
body[dir="rtl"] .shop-head h1 { font-size: 64px; line-height: 1.1; }
.shop-head .head-meta { font-size: 12.5px; margin-top: 24px; color: var(--mute); }
.shop-head .head-meta strong { display: block; font-size: 14px; font-weight: 500; color: var(--ink); margin-bottom: 4px; }
.shop-filters { display: flex; gap: 28px; padding: 24px 40px; border-bottom: 1px solid var(--line); justify-content: center; }
.shop-filter { font-size: 12px; color: var(--mute); padding: 6px 0; transition: color .2s; }
.shop-filter.active { color: var(--ink); border-bottom: 1px solid var(--ink); }
.shop-content { padding: 64px 40px 120px; }

/* ===== ABOUT (Atelier) ===== */
.about-hero { padding: 160px 0 80px; }
.about-hero h1 { font-size: 120px; font-weight: 300; line-height: 0.88; letter-spacing: -0.035em; }
body[dir="rtl"] .about-hero h1 { font-size: 80px; line-height: 1.1; }
.about-hero .meta { font-size: 12px; margin-top: 40px; display: grid; grid-template-columns: repeat(3, auto); gap: 64px; max-width: 600px; }
.about-hero .meta strong { display: block; font-weight: 500; }
.about-prose { padding: 80px 0 120px; border-top: 1px solid var(--line); }
.about-prose-grid { display: grid; grid-template-columns: 1fr 1.4fr; gap: 80px; align-items: start; }
.about-prose-grid h3 { font-size: 12px; font-weight: 500; }
.about-prose-grid .body { font-size: 18px; line-height: 1.6; color: var(--ink-soft); }
.about-prose-grid .body p { margin-bottom: 24px; }
.about-prose-grid .body .pull { font-size: 32px; line-height: 1.25; font-weight: 300; letter-spacing: -0.015em; color: var(--ink); margin: 48px 0; }
body[dir="rtl"] .about-prose-grid .body .pull { font-size: 26px; }
.values-strip { padding: 100px 0; border-top: 1px solid var(--line); }
.values-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 48px; }
.value-item .num { font-size: 11px; color: var(--mute); margin-bottom: 16px; display: block; }
.value-item h4 { font-size: 22px; font-weight: 300; line-height: 1.1; letter-spacing: -0.01em; margin-bottom: 12px; }
.value-item p { font-size: 13px; color: var(--ink-soft); line-height: 1.6; }
.about-image-block { aspect-ratio: 16/8; background: var(--bg-2); margin-top: 120px; position: relative; }
.about-image-block .bottle-frame { width: 100%; height: 100%; display: grid; place-items: center; }
.about-image-block .bottle-frame svg { width: 20%; height: 85%; }

/* ===== POLICY / legal sections (on the About page) ===== */
.policy { padding: 60px 0; border-top: 1px solid var(--line); scroll-margin-top: 92px; }
.policy .policy-title { font-size: 34px; font-weight: 300; letter-spacing: -0.01em; margin-bottom: 26px; font-family: var(--serif); }
body[dir="rtl"] .policy .policy-title { font-family: var(--ar-serif); font-size: 32px; }
.policy .policy-h { font-size: 16px; font-weight: 600; letter-spacing: 0.01em; margin: 30px 0 10px; }
.policy .policy-p { font-size: 15px; line-height: 1.85; color: var(--ink-soft); margin: 0 0 12px; max-width: 860px; }
.policy .policy-ul { margin: 6px 0 14px; padding-inline-start: 20px; max-width: 860px; }
.policy .policy-ul li { font-size: 15px; line-height: 1.8; color: var(--ink-soft); margin-bottom: 8px; list-style: disc; }
.policy .contact-link { color: var(--gold-deep); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; transition: opacity .2s; unicode-bidi: isolate; }
.policy .contact-link:hover { opacity: 0.7; }
.footer ul li { cursor: pointer; }

/* ===== JOURNAL (Atelier — bg-2 thumbnails) ===== */
.journal-head { padding: 120px 40px 40px; }
.journal-head h1 { font-size: 100px; font-weight: 300; line-height: 0.9; letter-spacing: -0.03em; }
body[dir="rtl"] .journal-head h1 { font-size: 72px; line-height: 1.1; }
.journal-head .meta { font-size: 12.5px; margin-top: 28px; color: var(--mute); }
.journal-grid { padding: 56px 40px 120px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 80px 48px; }
.journal-card { cursor: pointer; }
.journal-card .jc-img { aspect-ratio: 4/3; background: var(--bg-2); position: relative; overflow: hidden; }
.journal-card .jc-img .bottle-frame { width: 100%; height: 100%; display: grid; place-items: center; }
.journal-card .jc-img .bottle-frame svg { width: 30%; height: 70%; opacity: 0.85; }
.journal-card .jc-meta { padding-top: 24px; display: grid; grid-template-columns: auto 1fr; gap: 16px 32px; }
.journal-card .jc-num { font-size: 11px; color: var(--mute); }
.journal-card .jc-cat { font-size: 11px; color: var(--mute); }
.journal-card .jc-title { font-size: 28px; font-weight: 300; line-height: 1.1; letter-spacing: -0.015em; grid-column: 1 / -1; margin-top: 8px; }
body[dir="rtl"] .journal-card .jc-title { font-size: 22px; line-height: 1.35; }
.journal-card .jc-excerpt { font-size: 14px; color: var(--ink-soft); line-height: 1.55; grid-column: 1 / -1; margin-top: 8px; max-width: 480px; }

/* ===== CHECKOUT (Atelier) ===== */
.checkout { padding: 80px 0 120px; }
.checkout h1 { font-size: 60px; font-weight: 300; line-height: 0.95; letter-spacing: -0.02em; margin-bottom: 48px; }
body[dir="rtl"] .checkout h1 { font-size: 46px; }
.checkout-grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: 80px; align-items: start; }
.checkout-section { margin-bottom: 48px; }
.checkout-section h3 { font-size: 11px; margin-bottom: 18px; font-weight: 500; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.field { margin-bottom: 14px; }
.field label { font-size: 10.5px; color: var(--mute); display: block; margin-bottom: 6px; }
.field input, .field select { width: 100%; padding: 12px 14px; border: 1px solid var(--line); background: var(--bg); font-family: inherit; font-size: 13px; outline: none; transition: border-color .2s; }
.field input:focus, .field select:focus { border-color: var(--ink); }
.field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.order-box { background: var(--paper); padding: 32px; position: sticky; top: 100px; }
.order-box h3 { font-size: 11px; font-weight: 500; margin-bottom: 24px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.order-line { display: flex; justify-content: space-between; padding: 8px 0; font-size: 13px; color: var(--ink-soft); }
.order-line.total { margin-top: 12px; padding-top: 16px; border-top: 1px solid var(--line); font-size: 16px; font-weight: 500; color: var(--ink); }

@media (max-width: 1024px) {
  .hero1, .editorial2-inner, .pdp-grid, .checkout-grid, .about-prose-grid, .values-grid { grid-template-columns: 1fr 1fr !important; }
  .product-grid, .journal-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .pdp .pdp-image { position: static; }
  .nav-left { display: flex; }
  .nav-left .nav-link { display: none; }
  .nav-left .menu-icon { display: inline-flex; }
  .hero1 .hero-title { font-size: 82px !important; }
  .hero1 .text-side { padding: 64px 40px; }
}

@media (max-width: 640px) {
  /* containers */
  .container { padding: 0 18px; }
  .container-narrow { padding: 0 18px; }

  /* header */
  .header-inner { padding: 14px 16px; gap: 10px; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); }
  .brand { font-size: 22px; letter-spacing: 0.12em; padding-left: 0.12em; white-space: nowrap; }
  body[dir="rtl"] .brand { padding-left: 0; padding-right: 0.12em; }
  .nav-left { gap: 0; }
  .nav-right { gap: 13px; }
  .lang-toggle { gap: 7px; font-size: 10px; }
  /* trim the cluster so the centred logo never collides on small screens */
  .icon-btn[aria-label="Wishlist"] { display: none; }
  .icon-btn { width: 22px; height: 22px; }
  .icon-btn svg { width: 18px; height: 18px; }

  /* hero — video card (fills the screen below header, no scroll) */
  .hero1 { padding: 14px; min-height: 0; }
  .hero1 .hero-media { height: calc(100svh - 210px); min-height: 320px; aspect-ratio: auto; width: 100%; max-width: none; margin: 0; border-radius: 16px; }
  .hero1 .hero-content { gap: 16px; padding: 0 18px; width: 100%; }
  /* Phones: hide the overlay CTA (it covered the moving bag) and show a centred CTA below the image instead. */
  .hero1 .hero-content .hero-cta { display: none; }
  .hero1 .hero-cta-m { display: flex; width: fit-content; align-self: center; margin: 18px auto 4px; }
  .hero1 .hero-sub { align-self: stretch; max-width: none; }
  .hero1 .hero-title { align-self: stretch; max-width: none; }
  .hero1 .hero-scrim { background: linear-gradient(180deg, rgba(250,249,245,0.7) 0%, rgba(250,249,245,0.35) 38%, rgba(250,249,245,0.55) 100%); }
  body[dir="rtl"] .hero1 .hero-scrim { background: linear-gradient(180deg, rgba(250,249,245,0.7) 0%, rgba(250,249,245,0.35) 38%, rgba(250,249,245,0.55) 100%); }
  .hero1 .hero-title { font-size: clamp(40px, 12.5vw, 60px) !important; }
  body[dir="rtl"] .hero1 .hero-title { font-size: clamp(40px, 12vw, 58px) !important; }
  .hero1 .hero-sub { font-size: 17px; }

  /* sections */
  .section { padding: 64px 0; }
  .section-head { margin-bottom: 36px; padding-bottom: 18px; }
  .section-head h2 { font-size: 34px; }
  body[dir="rtl"] .section-head h2 { font-size: 30px; }

  /* product grid — 2 up */
  .product-grid { grid-template-columns: 1fr 1fr !important; gap: 40px 14px; }
  .product-card .meta-left .p-name { font-size: 14px; }

  /* editorial */
  .editorial2 { padding: 64px 0; }
  .editorial2-inner { grid-template-columns: 1fr !important; gap: 36px; }
  .editorial2 h2 { font-size: 38px; }
  body[dir="rtl"] .editorial2 h2 { font-size: 32px; }
  .editorial2 p { font-size: 17px; margin-top: 24px; }

  /* manifesto */
  .manifesto { padding: 72px 18px; }
  .manifesto h2 { font-size: 38px; }
  body[dir="rtl"] .manifesto h2 { font-size: 32px; }

  /* footer */
  .footer { padding: 64px 0 28px; }
  .footer-head { padding-bottom: 40px; }
  .footer .footer-head .brand { font-size: 26px; }
  .footer-cols { gap: 30px 18px; padding: 36px 0 40px; }
  .footer li { font-size: 12px; }
  .footer-contact li a { gap: 8px; font-size: 11.5px; }
  .footer-contact .c-ico { width: 26px; height: 26px; }
  .footer-contact .c-ico svg { width: 12px; height: 12px; }
  .footer-social { gap: 20px; }
  .footer-social .social-icon svg { width: 19px; height: 19px; }
  .footer-social .social-icon.wide svg { height: 15px; }
  .footer-bottom { flex-direction: column; gap: 8px; align-items: center; }

  /* cart drawer */
  .cart-head { padding: 22px 18px; }
  .cart-body { padding: 8px 18px; }
  .cart-foot { padding: 22px 18px; }
  .cart-item { grid-template-columns: 72px 1fr auto; gap: 14px; }

  /* PDP */
  .pdp { padding: 18px 0 0; }
  .pdp-grid { grid-template-columns: 1fr !important; gap: 32px; }
  .pdp .pdp-image { position: relative !important; top: auto !important; width: 70%; margin-inline: auto; }
  .pdp-info { padding: 8px 0 64px; }
  body[dir="rtl"] .pdp-info { padding: 8px 0 64px; }
  .pdp-info .crumb { margin-bottom: 28px; }
  .pdp-info h1 { font-size: 40px; }
  body[dir="rtl"] .pdp-info h1 { font-size: 34px; }
  .pdp-info .description { font-size: 15px; margin-top: 28px; }
  /* mobile: buy bar fixed to the bottom of the screen, always visible on scroll */
  /* mobile: sizes get DOCKED with the buy bar, both fixed to the screen bottom, always visible */
  .pdp-sizes-flow { display: none; }
  .pdp-dock { position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; margin-top: 0; padding: 10px 14px calc(10px + env(safe-area-inset-bottom)); background: var(--bg); border-top: 1px solid var(--line); box-shadow: 0 -8px 26px -14px rgba(0,0,0,0.22); }
  .pdp-sizes-dock { display: grid; margin: 0 0 10px; }
  .pdp-dock .pdp-size { padding: 8px 4px; border-radius: 5px; }
  .pdp-dock .pdp-size .v { font-size: 12.5px; }
  .pdp-dock .pdp-size .p { font-size: 12px; margin-top: 2px; }
  .pdp-dock .pdp-add { padding: 15px; }
  .pdp-buybar { gap: 12px; }
  body.pdp-open { padding-bottom: 170px; }

  /* shop */
  .shop-head { padding: 56px 18px 36px; }
  .shop-head h1 { font-size: 48px; }
  body[dir="rtl"] .shop-head h1 { font-size: 40px; }
  .shop-filters { gap: 18px; padding: 16px 18px; overflow-x: auto; justify-content: flex-start; -webkit-overflow-scrolling: touch; }
  .shop-filter { white-space: nowrap; flex-shrink: 0; }
  .shop-content { padding: 40px 18px 80px; }

  /* about */
  .about-hero { padding: 88px 0 48px; }
  .about-hero h1 { font-size: 52px; }
  body[dir="rtl"] .about-hero h1 { font-size: 42px; }
  .about-hero .meta { grid-template-columns: 1fr 1fr; gap: 24px 32px; margin-top: 28px; }
  .about-prose { padding: 56px 0 72px; }
  .about-prose-grid { grid-template-columns: 1fr !important; gap: 28px; }
  .about-prose-grid .body { font-size: 16px; }
  .about-prose-grid .body .pull { font-size: 24px; margin: 32px 0; }
  .values-strip { padding: 64px 0; }
  .values-grid { grid-template-columns: 1fr 1fr !important; gap: 32px 24px; }
  .about-image-block { margin-top: 64px; aspect-ratio: 4/3; }
  .policy { padding: 40px 0; }
  .policy .policy-title { font-size: 26px; }
  body[dir="rtl"] .policy .policy-title { font-size: 24px; }
  .policy .policy-p, .policy .policy-ul li { font-size: 14.5px; }

  /* journal */
  .journal-head { padding: 80px 18px 28px; }
  .journal-head h1 { font-size: 52px; }
  body[dir="rtl"] .journal-head h1 { font-size: 42px; }
  .journal-grid { grid-template-columns: 1fr !important; padding: 40px 18px 80px; gap: 56px; }
  .journal-card .jc-title { font-size: 26px; }

  /* checkout */
  .checkout { padding: 56px 0 80px; }
  .checkout h1 { font-size: 40px; margin-bottom: 32px; }
  body[dir="rtl"] .checkout h1 { font-size: 34px; }
  .checkout-grid { grid-template-columns: 1fr !important; gap: 40px; }
  .order-box { position: static !important; }
}
