/********* Compiled CSS - Do not edit *********/ :root{--button_padding:11px 23px;}.has-awb-color-1-color{color:#ffffff;}.has-awb-color-1-background-color{background-color:#ffffff;}.has-awb-color-2-color{color:#f9f9fb;}.has-awb-color-2-background-color{background-color:#f9f9fb;}.has-awb-color-3-color{color:#f2f3f5;}.has-awb-color-3-background-color{background-color:#f2f3f5;}.has-awb-color-4-color{color:#f4ee9c;}.has-awb-color-4-background-color{background-color:#f4ee9c;}.has-awb-color-5-color{color:#f6d800;}.has-awb-color-5-background-color{background-color:#f6d800;}.has-awb-color-6-color{color:#434549;}.has-awb-color-6-background-color{background-color:#434549;}.has-awb-color-7-color{color:#212326;}.has-awb-color-7-background-color{background-color:#212326;}.has-awb-color-8-color{color:#141617;}.has-awb-color-8-background-color{background-color:#141617;}html body :where([style*="--awb-"][style*="border-color"]){border-style:initial;}/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L0UUMJng.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: italic;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L9UUMJng.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: italic;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L1UUMJng.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L6UUMJng.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: italic;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L2UUMJng.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: italic;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L3UUMJng.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: italic;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L5UUM.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: italic;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L0UUMJng.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: italic;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L9UUMJng.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: italic;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L1UUMJng.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L6UUMJng.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: italic;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L2UUMJng.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: italic;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L3UUMJng.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: italic;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L5UUM.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: italic;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L0UUMJng.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: italic;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L9UUMJng.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: italic;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L1UUMJng.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L6UUMJng.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: italic;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L2UUMJng.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: italic;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L3UUMJng.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: italic;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L5UUM.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: italic;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L0UUMJng.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: italic;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L9UUMJng.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: italic;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L1UUMJng.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: italic;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L6UUMJng.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: italic;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L2UUMJng.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: italic;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L3UUMJng.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: italic;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC53FwrK3iLTcvneQg7Ca725JhhKnNqk6L5UUM.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.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;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.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;
}
#comment-input:after{content:"";display:table;clear:both}#comment-input input{float:left;margin-right:1%;padding-left:15px;padding-right:15px;width:32.666666%;min-width:28%;font-size:13px;color:#747474;border:1px solid #d2d2d2}#comment-input input:last-child{margin-right:0}#comment-textarea{margin-bottom:10px}#comment-textarea.fusion-contact-comment-below{margin-top:10px;margin-bottom:0}#comment-textarea textarea{padding:12px 15px;width:100%;height:150px;font-size:13px;color:#747474;border:1px solid #d2d2d2}.fusion-contact-form{line-height:normal}.fusion-contact-form #comment-submit-container{margin-top:20px;margin-bottom:0}.fusion-contact-form .grecaptcha-badge{z-index:100000}.fusion-contact-form .fusion-hide-recaptcha-badge{display:none}.fusion-contact-form .fusion-comment-privacy-checkbox-wrapper{display:flex;align-items:baseline;margin:20px 0;font-size:13px}.fusion-contact-form .fusion-comment-privacy-checkbox{margin:0 10px 0 0}.fusion-contact-form #comment-recaptcha{margin-top:13px}[class*=" awb-icon-"],[class^=awb-icon-]{font-family:awb-icons!important;speak:never;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.awb-icon-share:before{content:"\e90f"}.awb-icon-twitter:before{content:"\e90b"}.awb-icon-question-circle:before{content:"\e908"}.awb-icon-buy-now-cart:before{content:"\e907"}.awb-icon-avada-logo:before{content:"\e971"}.awb-icon-wechat:before{content:"\e905"}.awb-icon-weixin:before{content:"\e905"}.awb-icon-phone:before{content:"\e942"}.awb-icon-user2:before{content:"\e61b"}.awb-icon-check:before{content:"\f00c"}.awb-icon-tiktok:before{content:"\e906"}.awb-icon-discord:before{content:"\e903"}.awb-icon-FB_logo_black-solid-1:before{content:"\e902"}.awb-icon-map-marker-alt:before{content:"\e901"}.awb-icon-pen:before{content:"\e600"}.awb-icon-yahoo:before{content:"\e601"}.awb-icon-pinterest:before{content:"\e602"}.awb-icon-myspace:before{content:"\e603"}.awb-icon-facebook:before{content:"\e604"}.awb-icon-feed:before{content:"\e606"}.awb-icon-rss:before{content:"\e606"}.awb-icon-vimeo:before{content:"\e607"}.awb-icon-flickr:before{content:"\e608"}.awb-icon-dribbble:before{content:"\e609"}.awb-icon-blogger:before{content:"\e60b"}.awb-icon-soundcloud:before{content:"\e60c"}.awb-icon-reddit:before{content:"\e60d"}.awb-icon-paypal:before{content:"\e60e"}.awb-icon-linkedin:before{content:"\e60f"}.awb-icon-digg:before{content:"\e610"}.awb-icon-dropbox:before{content:"\e611"}.awb-icon-tumblr:before{content:"\e613"}.awb-icon-grid:before{content:"\e614"}.awb-icon-mail:before{content:"\e616"}.awb-icon-forrst:before{content:"\e617"}.awb-icon-skype:before{content:"\e618"}.awb-icon-link:before{content:"\e619"}.awb-icon-user:before{content:"\e61a"}.awb-icon-minus:before{content:"\e61c"}.awb-icon-plus:before{content:"\e61d"}.awb-icon-arrow-left:before{content:"\e61e"}.awb-icon-arrow-down:before{content:"\e61f"}.awb-icon-uniE620:before{content:"\e620"}.awb-icon-arrow-down2:before{content:"\e621"}.awb-icon-youtube:before{content:"\e622"}.awb-icon-list:before{content:"\e623"}.awb-icon-image:before{content:"\e624"}.awb-icon-images:before{content:"\e625"}.awb-icon-quotes-left:before{content:"\e627"}.awb-icon-film:before{content:"\e628"}.awb-icon-headphones:before{content:"\e629"}.awb-icon-bubbles:before{content:"\e62a"}.awb-icon-search:before{content:"\f002"}.awb-icon-star:before{content:"\f005"}.awb-icon-star-o:before{content:"\f006"}.awb-icon-gear:before{content:"\f013"}.awb-icon-check-square-o:before{content:"\f046"}.awb-icon-check-circle-o:before{content:"\f05d"}.awb-icon-shopping-cart:before{content:"\f07a"}.awb-icon-bars:before{content:"\f0c9"}.awb-icon-caret-left:before{content:"\f0d9"}.awb-icon-caret-right:before{content:"\f0da"}.awb-icon-angle-left:before{content:"\f104"}.awb-icon-angle-right:before{content:"\f105"}.awb-icon-angle-up:before{content:"\f106"}.awb-icon-angle-down:before{content:"\f107"}.awb-icon-spinner:before{content:"\f110"}.awb-icon-vk:before{content:"\f189"}.awb-icon-instagram:before{content:"\ea92"}.awb-icon-deviantart:before{content:"\eaaa"}.awb-icon-yelp:before{content:"\ead7"}.awb-icon-xing:before{content:"\e4d8"}.awb-icon-spotify:before{content:"\ea94"}.awb-icon-whatsapp:before{content:"\f232"}.awb-icon-eye:before{content:"\f06e"}.awb-icon-twitch:before{content:"\ea9f"}.awb-icon-telegram:before{content:"\f1d8"}.awb-icon-teams:before{content:"\e900"}.awb-icon-close:before{content:"\e904"}.awb-icon-exclamation-triangle:before{content:"\f071"}.awb-icon-cog:before{content:"\f014"}.awb-icon-check-circle:before{content:"\f058"}.awb-icon-info-circle:before{content:"\f05a"}.awb-icon-video:before{content:"\e90a"}.awb-icon-carousel:before{content:"\e909"}.awb-icon-eye-slash:before{content:"\f070"}.awb-icon-snapchat:before{content:"\f2ac"}.awb-icon-mastodon:before{content:"\e90c"}.awb-icon-threads:before{content:"\e90d"}.awb-icon-bluesky:before{content:"\e90e"}.awb-icon-github:before{content:"\eab0"}.awb-icon-file:before{content:"\e633"}.awb-icon-grid-2x2:before{content:"\e910"}.awb-icon-grid-3x3:before{content:"\e911"}.awb-icon-grid-4x4:before{content:"\e912"}.awb-icon-grid-list:before{content:"\e913"}*{box-sizing:border-box}.fusionicon-arrow-down2{display:table-cell;vertical-align:middle}.icomoon-up:before{display:inline-block;transform:rotate(180deg)}input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=submit],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],textarea{-webkit-appearance:none;-webkit-border-radius:0}input[type=search]::-webkit-search-decoration{-webkit-appearance:none}input[type=image]{padding:0;border:none}body{margin:0;min-width:320px;-webkit-text-size-adjust:100%;overflow-x:hidden;overflow-y:scroll;color:var(--body_typography-color);font-size:var(--body_typography-font-size, 16px);font-family:var(--body_typography-font-family, inherit)}body.fusion-blank-page.admin-bar{top:32px;height:calc(100vh - 32px)}body #wrapper .gomapMarker{color:#333}#boxed-wrapper{overflow-x:hidden;overflow-x:clip}#wrapper{overflow:visible}#wrapper .tp-bullets{transform:translateZ(0)}#wrapper .strip-html .fusion-dropcap{top:0;float:none;margin:0;padding:0;background-color:inherit!important;box-shadow:none;line-height:inherit;text-shadow:none;color:inherit!important;font-size:inherit}#wrapper .strip-html .fusion-highlight{background-color:inherit!important;color:inherit!important}#wrapper .strip-html .fusion-tooltip{color:inherit;border-bottom:1px dotted}.fusion-blank-page{display:table;height:100%;width:100%;position:absolute;margin:0;left:0;right:0;top:0;overflow-x:hidden}.wrapper_blank{float:none;vertical-align:middle;width:100%}.wrapper_blank #main{background:0 0;padding:0}.fusion-body #wrapper.wrapper_blank{display:table-cell;margin:0;max-width:none}.error404 .search-page-search-form{margin-bottom:0;padding-bottom:0;border:none}.fusion-404-checklist .fusion-custom-menu-item{display:none}img{border-style:none;vertical-align:top;max-width:100%;height:auto}object{max-width:100%}a{text-decoration:none}input,select,textarea{font-family:var(--body_typography-font-family, inherit);vertical-align:middle;color:var(--body_typography-color)}select{border-style:solid}fieldset,form{margin:0;padding:0;border-style:none}.wp-caption{max-width:100%}.search-table{display:table;width:100%}#fallback-slide{display:none}#fallback-slide img{width:100%}.gallery-box{background:#3d3c3c;padding:0 10px}.gallery-box img{width:100%}#wrapper .product-category a h2.woocommerce-loop-category__title,.fusion-main-menu>ul>li>a .fusion-menu-description,a,a:after,a:before{transition-property:color,background-color,border-color;transition-duration:.2s;transition-timing-function:linear}.fusion-accordian .panel-title a .fa-fusion-box,.woocommerce .social-share li .fontawesome-icon{transition-property:color,background-color,border-color;transition-duration:.2s;transition-timing-function:linear}.gallery{margin:0 auto;max-width:1400px}#main{padding:55px 10px 45px;clear:both}#main .sidebar.fusion-sticky-sidebar{padding:0}.col .heading{overflow:hidden;margin:0 0 15px}.col .heading img{float:left;margin:0 10px 0 0}.col p{margin:0 0 23px}.avada-myaccount-data h2{margin-top:0}.content-boxes .more{margin-top:18px}.content-boxes .heading .fontawesome-icon{float:left}.content-boxes .heading-and-icon h2{padding-left:45px}.content-boxes-icon-boxed.columns-5 .col{width:12.8%}.content-boxes-icon-boxed.columns-4 .col{width:18%}.content-boxes-icon-boxed.columns-3 .col{width:26.65%}.content-boxes-icon-boxed.columns-2 .col{width:44%}.content-boxes-icon-boxed.columns-1 .col{width:96%}.container{overflow:hidden}.container .columns .col{width:31.42857%;padding:0 2.85714% 0 0}.container .columns .col.last{margin-right:0}.container .col img{width:100%}.container .holder{overflow:hidden}.container h3 a.active{text-decoration:none;color:#65bc7b}.slider{overflow:hidden}.review{width:100%}.meta{list-style:none;margin:0 0 13px;padding:0;overflow:hidden;font-size:12px;line-height:14px;color:#333}.meta li{float:left;padding:0 8px 0 9px;border-left:1px solid #333}.meta li:first-child{padding-left:0;border-left:0}#content{width:71.1702128%;float:left;min-height:1px}#content.full-width{width:100%}#posts-container{position:relative}.single .comments-container{margin-top:55px;clear:both}.post{margin-bottom:65px}.single-post .post{margin-bottom:0}.post .image{margin-bottom:40px}.avada_faq .meta-info,.single .post .meta-info{margin-bottom:55px}.search input{border:1px solid #e7e6e6;padding:8px 15px;font-size:13px;color:#333;display:block}.bbp-pagination .bbp-pagination-links,.fusion-pagination,.page-links,.pagination,.woocommerce-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;margin-top:40px;font-size:9px;line-height:normal}.page-links{margin-bottom:40px;margin-top:30px}#bbpress-forums .bbp-pagination .bbp-pagination-links .current,#bbpress-forums .bbp-pagination .bbp-pagination-links .pagination-next,#bbpress-forums .bbp-pagination .bbp-pagination-links .pagination-prev,#bbpress-forums .bbp-pagination .bbp-pagination-links a.inactive,#bbpress-forums .bbp-pagination-links span.dots,#bbpress-forums .bbp-topic-pagination .page-numbers,.fusion-pagination .current,.fusion-pagination .next,.fusion-pagination .page-numbers,.fusion-pagination .prev,.page-links a,.page-links>.page-number,.pagination .current,.pagination .pagination-next,.pagination .pagination-prev,.pagination a.inactive,.woocommerce-pagination .current,.woocommerce-pagination .next,.woocommerce-pagination .page-numbers,.woocommerce-pagination .prev{display:inline-flex;position:relative;float:none;margin:0 4px;padding:0;border:1px solid;align-items:center;justify-content:center}.fusion-pagination-circle #bbpress-forums .bbp-pagination .bbp-pagination-links .current,.fusion-pagination-circle #bbpress-forums .bbp-pagination .bbp-pagination-links .pagination-next,.fusion-pagination-circle #bbpress-forums .bbp-pagination .bbp-pagination-links .pagination-prev,.fusion-pagination-circle #bbpress-forums .bbp-pagination .bbp-pagination-links a.inactive,.fusion-pagination-circle #bbpress-forums .bbp-pagination-links span.dots,.fusion-pagination-circle #bbpress-forums .bbp-topic-pagination .page-numbers,.fusion-pagination-circle .fusion-pagination .current,.fusion-pagination-circle .fusion-pagination .next,.fusion-pagination-circle .fusion-pagination .page-numbers,.fusion-pagination-circle .fusion-pagination .prev,.fusion-pagination-circle .page-links a,.fusion-pagination-circle .page-links>.page-number,.fusion-pagination-circle .pagination .current,.fusion-pagination-circle .pagination .pagination-next,.fusion-pagination-circle .pagination .pagination-prev,.fusion-pagination-circle .pagination a.inactive,.fusion-pagination-circle .woocommerce-pagination .current,.fusion-pagination-circle .woocommerce-pagination .next,.fusion-pagination-circle .woocommerce-pagination .page-numbers,.fusion-pagination-circle .woocommerce-pagination .prev{border-radius:50%}#bbpress-forums .bbp-pagination .bbp-pagination-links .current,.fusion-pagination .current,.page-links>.page-number,.pagination .current,.woocommerce-pagination .current{color:#fff}.pagination.page-links a:hover{border-color:inherit}.pagination .pagination-dots{display:inline-block;text-align:center}.fusion-pagination .next,.fusion-pagination .pagination-next,.fusion-pagination .pagination-prev,.fusion-pagination .prev,.woocommerce-pagination .next,.woocommerce-pagination .pagination-next,.woocommerce-pagination .pagination-prev,.woocommerce-pagination .prev{padding-left:0;padding-right:0}.fusion-pagination .next,.fusion-pagination .next:hover,.fusion-pagination .prev,.fusion-pagination .prev:hover,.woocommerce-pagination .next,.woocommerce-pagination .next:hover,.woocommerce-pagination .prev,.woocommerce-pagination .prev:hover{border:0}.fusion-show-pagination-text #bbpress-forums .bbp-pagination .bbp-pagination-links .pagination-next,.fusion-show-pagination-text #bbpress-forums .bbp-pagination .bbp-pagination-links .pagination-prev,.fusion-show-pagination-text .fusion-pagination .next,.fusion-show-pagination-text .fusion-pagination .prev,.fusion-show-pagination-text .pagination .pagination-next,.fusion-show-pagination-text .pagination .pagination-prev,.fusion-show-pagination-text .woocommerce-pagination .next,.fusion-show-pagination-text .woocommerce-pagination .prev{border:none}.fusion-show-pagination-text #bbpress-forums .bbp-pagination-links,.fusion-show-pagination-text .pagination{margin-left:1em;margin-right:1em}.fusion-show-pagination-text .fusion-pagination .next,.fusion-show-pagination-text .fusion-pagination .pagination-next,.fusion-show-pagination-text .fusion-pagination .pagination-prev,.fusion-show-pagination-text .fusion-pagination .prev,.fusion-show-pagination-text .woocommerce-pagination .next,.fusion-show-pagination-text .woocommerce-pagination .pagination-next,.fusion-show-pagination-text .woocommerce-pagination .pagination-prev,.fusion-show-pagination-text .woocommerce-pagination .prev{padding:0}body.fusion-hide-pagination-text .page-text{display:none}body.fusion-hide-pagination-text .pagination-next,body.fusion-hide-pagination-text .pagination-prev{border-style:solid}body.fusion-hide-pagination-text .pagination-next:after{right:auto}body.fusion-hide-pagination-text.ltr .fusion-blog-pagination .pagination-prev,body.fusion-hide-pagination-text.ltr .pagination-prev{margin-left:0}body.fusion-hide-pagination-text.ltr .fusion-blog-pagination .pagination-next,body.fusion-hide-pagination-text.ltr .pagination-next{margin-right:0}body.fusion-hide-pagination-text.ltr .fusion-pagination .prev,body.fusion-hide-pagination-text.ltr .woocommerce-pagination .prev{margin-left:0}body.fusion-hide-pagination-text.ltr .fusion-pagination .next,body.fusion-hide-pagination-text.ltr .woocommerce-pagination .next{margin-right:0}body.fusion-hide-pagination-text .pagination-next:after,body.fusion-hide-pagination-text .pagination-prev:before{position:static;transform:none}body.fusion-hide-pagination-text .fusion-pagination .next,body.fusion-hide-pagination-text .fusion-pagination .prev,body.fusion-hide-pagination-text .woocommerce-pagination .next,body.fusion-hide-pagination-text .woocommerce-pagination .prev{border-style:solid}body.fusion-hide-pagination-text .fusion-pagination .next:after,body.fusion-hide-pagination-text .fusion-pagination .prev:before,body.fusion-hide-pagination-text .woocommerce-pagination .next:after,body.fusion-hide-pagination-text .woocommerce-pagination .prev:before{position:static;transform:none}.img-list{overflow:hidden}.img-list li{padding:5px;background:0 0;float:left}.img-list a{background:0 0;height:auto;width:auto;text-indent:0;border:0}.about-author{margin-top:55px;overflow:hidden;clear:both}.about-author .title a{color:#65bc7b}.about-author div.avatar{float:left;margin-right:20px;margin-bottom:5px}.related-posts{margin-top:55px}.related-posts .image{width:180px;height:138px;margin-bottom:0}.single-related-posts{clear:both}.commentlist{list-style:none;margin:0;padding:0;margin-bottom:65px}.commentlist .children{list-style:none outside none}.commentlist li{margin:0;padding:0}.commentlist .the-comment{border-bottom:1px solid #e7e6e6;padding-bottom:25px;margin-bottom:25px}.commentlist .the-comment .comment-text{margin-left:69px}.commentlist .the-comment .comment-text :last-child{margin-bottom:0}.commentlist div.avatar{float:left;margin-right:15px}.commentlist .comment-author strong{padding-right:5px}#respond{margin-top:40px}#respond #cancel-comment-reply-link{margin-inline-start:10px}.comments-container #respond{margin-bottom:40px}#s:not(.fusion-form-input),.comment-form input{border:1px solid #d2d2d2;min-width:28%;font-size:13px;color:#747474;padding-left:15px;padding-right:15px;float:left}.comment-form #comment-submit{margin:0;min-width:auto}.comment-form input,.s{float:none}.comment-form-comment textarea{border:1px solid #d2d2d2;width:100%;height:150px;font-size:13px;color:#747474;padding:12px 15px}.comment-form .comment-form-cookies-consent{margin-top:20px}.comment-form .comment-form-cookies-consent input{min-width:auto}.comment-form .form-submit{margin-top:20px;margin-bottom:0}#ui-datepicker-div,.ui-datepicker-div,.ui-datepicker-inline{border-color:#e9eaee}.ui-datepicker-header select,table.ui-datepicker td a{background-color:#e9eaee}.ui-datepicker-header select{border:1px solid #d2d2d2}#tribe-bar-form input[type=text],.input-text,.tribe-bar-disabled #tribe-bar-form .tribe-bar-filters input[type=text],input[type=date],input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=time]{border:1px solid #d2d2d2;font-size:13px;color:#747474;padding:8px 15px;width:100%;box-sizing:border-box}.select2-container .select2-choice,.select2-results .select2-result-label{padding-left:15px;padding-right:15px}#tribe-bar-form input[type=text]::-webkit-input-placeholder{font-style:normal}#tribe-bar-form input[type=text]:-moz-placeholder{font-style:normal}#tribe-bar-form input[type=text]::-moz-placeholder{font-style:normal}#shipping_method input[type=radio],.input-radio{background:0 0;appearance:checkbox}.single-navigation{min-height:34px;line-height:34px;border-top:1px solid #e7e6e6;border-bottom:1px solid #e7e6e6;margin-bottom:60px;text-align:right}.single-navigation a{display:inline-block;position:relative}.single-navigation a[rel=next]{margin-left:15px;margin-right:1em}.fusion-pagination .prev:before,.pagination-prev:before,.single-navigation a[rel=prev]:before,.woocommerce-pagination .prev:before{position:absolute;top:50%;transform:translateY(-51%);left:-1em;font-family:awb-icons;content:"\f104"}.fusion-pagination .next:after,.pagination-next:after,.single-navigation a[rel=next]:after,.woocommerce-pagination .next:after{position:absolute;top:50%;transform:translateY(-51%);right:-1em;font-family:awb-icons;content:"\f105"}.side-nav{list-style:none;margin:0;padding:0;border-top:1px solid #ededed;margin-bottom:20px}.side-nav ul{list-style:none;margin:0;padding:0}.side-nav li{margin:0;padding:0}.side-nav li a{border-bottom:1px solid #ededed;display:block;height:auto;font-weight:400;font-size:14px;color:#333;line-height:1.69em;padding:8px 0}.side-nav li a:hover{background:0 0}.side-nav li.current_page_item>a{background:0 0;color:#65bc7b}.side-nav li.current_page_item li a{color:#333;border-bottom:1px solid #ededed}.side-nav .children{display:none;margin-left:15px}.side-nav .arrow{display:inline;margin-left:0}.side-nav .arrow:after{position:absolute;font-size:14px;font-family:awb-icons}.side-nav-left .side-nav{border-right:1px solid #ededed}.side-nav-left .side-nav li.current_page_item>a{border-right:3px solid #65bc7b}.side-nav-left .side-nav .arrow{margin-left:10px}.side-nav-left .side-nav .arrow:after{content:"\f105"}.side-nav-right .side-nav{border-left:1px solid #ededed}.side-nav-right .side-nav li.current_page_item>a{padding-left:23px;border-left:3px solid #65bc7b}.side-nav-right .side-nav li a{padding-left:25px}.side-nav-right .side-nav .arrow{margin-right:10px}.side-nav-right .side-nav .arrow:after{content:"\f104"}.side-nav-right .side-nav .children{margin-left:40px}.side-nav-right .side-nav .children a{padding-left:0}.woocommerce-tabs .tabs a:hover .arrow,.woocommerce-tabs .tabs li.active a .arrow{display:inline-block;margin-left:10px;padding-right:0}.woocommerce-tabs .panel .panel{margin-left:auto;padding:0}.toggle-content{padding-top:10px;padding-bottom:15px;position:relative}h5.toggle.active+.toggle-content{border-bottom:1px solid #e8e6e6}.clearboth{clear:both;display:block;font-size:0;height:0;line-height:0;width:100%;overflow:hidden}.shortcode-tabs{margin-bottom:50px}.shortcode-tabs .tab-hold .tabs li{border-right:0;box-sizing:border-box}.shortcode-tabs .tab-hold .tabs li a{display:block;width:100%;padding:0;text-indent:15px}.shortcode-tabs .tab-hold .tabs li.active a{background:0 0}.shortcode-tabs .tab_content{padding:15px;overflow:hidden}.shortcode-tabs .tab_content :last-child{margin-bottom:0}.fusion-post-content p,.post-content p{margin:0 0 20px}.fusion-post-content ul.arrow,.post-content ul.arrow{list-style:none;margin:0;padding:0}.fusion-post-content ul.arrow li,.post-content ul.arrow li{line-height:18px;margin:0;padding:0;margin-bottom:15px;padding-left:25px}.fusion-post-content ul.arrow li:before,.post-content ul.arrow li:before{display:inline-block;background-repeat:no-repeat;background-position:center center;background-color:#65bc7b;height:18px;border-radius:75px;width:18px;position:absolute;font-size:14px;content:"\f105";float:left;margin-right:0;margin-left:-25px;font-family:awb-icons;text-align:center;font-weight:400;-webkit-font-smoothing:antialiased;color:#fff;line-height:17px;text-indent:1px}.fusion-body blockquote{background:#f5f5f5;font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight);letter-spacing:var(--body_typography-letter-spacing);font-size:var(--body_typography-font-size);line-height:var(--body_typography-line-height);color:var(--body_typography-color);border-left:4px solid #65bc7b;padding:15px;margin-top:2em;margin-bottom:2em;font-style:italic}.fusion-body blockquote q{font-style:inherit}.fusion-body blockquote :last-child{margin-bottom:0}.comment-text .fusion-body blockquote p:first-child{margin-top:0}.reading-box-container{margin:0 0 84px}.reading-box{padding:28px 28px 27px 31px;border-left:3px solid #65bc7b;background:#f2efef}.continue{float:right}.avada-google-map{height:416px;margin-bottom:50px;overflow:hidden}#gmap img,.shortcode-map img{max-width:none}.flickr_badge_image img,.pyre_tabs img,.recent-works-items img{transition:all .2s}.flickr_badge_image img:hover,.pyre_tabs img:hover,.recent-works-items img:hover{opacity:.5}.error-page .useful-links{width:30.66%;padding-left:5%}.error-page .oops{font-size:117px;margin:0 0 20px;line-height:117px;font-weight:bolder;color:#f0f0f0;font-family:"PT Sans",Arial,Helvetica,sans-serif}.has-sidebar .error-page .oops{font-size:90px;line-height:90px}.error_page .oops h1{font-family:"PT Sans",Arial,Helvetica,sans-serif}.fontawesome-icon{display:inline-block;float:left}.aligncenter .fontawesome-icon,.fusion-alignleft .fontawesome-icon,.fusion-alignright .fontawesome-icon{float:none}.fontawesome-icon{margin-right:10px}.fontawesome-icon.circle-yes{border-radius:75px;border-width:1px;border-style:solid;background-color:#333;color:#fff;text-align:center;margin-top:2px}.fontawesome-icon.large{font-size:40px}.fontawesome-icon.large.circle-yes{width:70px;height:70px;line-height:70px}.fontawesome-icon.medium{font-size:18px}.fontawesome-icon.medium.circle-yes{width:35px;height:35px;line-height:35px}.fontawesome-icon.small{font-size:10px}.fontawesome-icon.small.circle-yes{width:18px;height:18px;line-height:19px}.fontawesome-icon.circle-no.large{margin-top:2px}.fontawesome-icon.circle-no.medium{margin-top:3px}.fontawesome-icon.circle-no.small{margin-top:5px}.icon-heading .fontawesome-icon{margin-top:-6px}.main-flex{overflow:hidden;width:100%;margin-left:auto;margin-right:auto}.chat-icon{display:inline-block;width:26px;height:19px;margin-top:9px}.blog-shortcode h3.timeline-title{color:#747474;font-size:13px}.reading-box-container{position:relative;z-index:1}.reading-box{position:relative}.tagline-shadow:after,.tagline-shadow:before{bottom:15px;left:10px;width:50%;height:20%;max-width:300px;max-height:100px;position:absolute;content:"";z-index:-1;box-shadow:0 15px 10px rgba(0,0,0,.7);transform:rotate(-3deg)}.tagline-shadow:after{right:10px;left:auto;transform:rotate(3deg)}.tooltip-shortcode{position:relative;display:inline;cursor:pointer;color:#747474}ul.list-icon{list-style:none;margin:0;padding:0;margin-top:10px}ul.list-icon li:before{display:inline-block;height:18px;width:18px;content:" ";float:left;margin-right:0;margin-left:-25px;font-family:awb-icons;font-style:normal;font-weight:400;text-decoration:inherit}ul.list-icon-arrow li:before{content:"\f105"}ul.circle-yes li:before{border-radius:75px;text-align:center;font-size:9px}ul.list-icon-color-light li:before{color:#fff}ul.list-icon li{line-height:18px;margin:0;padding:0;margin-bottom:15px;padding-left:25px}.fusion-post-content .wooslider .overlay-natural.layout-text-bottom .slide-excerpt{bottom:15%}.fusion-post-content .wooslider .overlay-natural.layout-text-top .slide-excerpt{top:15%}.fusion-post-content .wooslider .slide-excerpt .slide-title,.fusion-post-content .wooslider .slide-excerpt .slide-title a{color:#fff}.fusion-post-content .wooslider .overlay-full .slide-excerpt{padding:50px;opacity:.7}.fusion-post-content .wooslider .wooslider-control-thumbs{position:relative;width:auto;margin:33px auto 0;text-align:center}.fusion-post-content .wooslider .wooslider-control-thumbs li{float:none;width:56px}.fusion-post-content .wooslider .wooslider-next,.fusion-post-content .wooslider .wooslider-prev{top:50%;margin-top:-29px}.fusion-post-content .wooslider-type-attachments .wooslider-next,.fusion-post-content .wooslider-type-attachments .wooslider-prev{top:50%;margin-top:-59px}.fusion-post-content .wooslider .overlay-none .slide-excerpt{margin-top:10px}.fusion-post-content .wooslider .overlay-none .slide-excerpt .slide-title,.fusion-post-content .wooslider .overlay-none .slide-excerpt .slide-title a{color:#333}.tabs-vertical{border:0}.tabs-vertical .tabset{border-left:1px solid #d3d3d3;border-top:1px solid #d3d3d3;border-bottom:1px solid #d3d3d3;width:15.74468085%;float:left;height:auto;position:relative;left:1px;z-index:10}.tabs-vertical .tab-hold .tabset li{float:none;width:auto;height:auto;border:0;background:0 0}.tabs-vertical .tab-hold .tabset li a{width:auto;text-indent:0;border-bottom:1px solid #d3d3d3;height:auto;line-height:normal;padding:10px}.tabs-vertical .tab-hold .tabset li:last-child a{border-bottom:0}.tabs-vertical .tab-hold .tabset li.active a{background:#fff;border-width:0;border-style:solid;border-left-width:3px;height:auto;line-height:normal}.tabs-vertical .tabs-container{width:83.93617021%;float:left}.tabs-vertical .tabs-container .tab_content{border:1px solid #d3d3d3;padding:30px}.error-message{color:#f0f0f0;font-size:170px;line-height:1;font-weight:700}.mejs-container.mejs-video{max-width:100%;width:100%;height:auto}.mejs-overlay,.mejs-poster{width:100%;height:100%}.mejs-mediaelement video{position:absolute;top:0;left:0;right:0;bottom:0;width:100%;height:100%}.mejs-container,.mejs-embed,.mejs-embed body{background:0 0}.fullwidthbanner-container{overflow:visible}.tp-simpleresponsive .slotholder,.tp-simpleresponsive .slotholder img{-webkit-backface-visibility:visible;-webkit-transform:none}#learndash_lessons .learndash_topic_dots{float:none}.video-background{position:relative;overflow:hidden}.video-bg{position:relative;padding-bottom:56.25%;height:0;overflow:hidden}.video-bg embed,.video-bg iframe,.video-bg object{position:absolute;top:0;left:0;width:100%;height:100%}.video-content{position:absolute;top:0;padding:15px;width:100%}.bbp-arrow{margin-top:-1px}.fusion-animated{position:relative;z-index:2000}.fusion-social-links-footer .fusion-social-networks.boxed-icons a.fusion-social-network-icon.awb-custom-image{padding:0;background-color:transparent;border:none;border-radius:0;box-shadow:none}.fusion-social-links-footer .fusion-social-networks.boxed-icons a.fusion-social-network-icon.awb-custom-image img{position:relative}.avada-container h3,.comment-form input[type=submit],.fusion-body .fusion-load-more-button,.project-content .project-info h4,.ticket-selector-submit-btn[type=submit]{font-weight:700}#wrapper .fusion-events-shortcode .fusion-events-meta h4,.fusion-carousel-meta,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-product-buttons a,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories a,.fusion-image-wrapper .fusion-rollover .fusion-rollover-gallery:before,.fusion-image-wrapper .fusion-rollover .fusion-rollover-link:before,.fusion-recent-posts .columns .column .meta,.fusion-rollover-linebreak,.fusion-single-line-meta,.product-buttons a{line-height:1.5}.ua-mobile .avada-not-responsive #wrapper{width:100%!important;overflow:hidden!important}.layout-wide-mode #wrapper{width:100%;max-width:none}#sliders-container{position:relative}.layout-boxed-mode #sliders-container .main-flex[data-parallax="1"]{position:fixed}.avada-video-embed{position:relative}.avada-video-embed .fluid-width-video-wrapper{padding-top:55%}.avada-video-embed .fluid-width-video-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%}.fusion-privacy-placeholder{padding:30px;background:rgba(0,0,0,.1);color:rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;max-width:100%}.fusion-privacy-placeholder .fusion-privacy-placeholder-content{text-align:center}.fusion-privacy-placeholder .fusion-privacy-consent.fusion-button{--awb-margin-top:15px;--awb-margin-right:0px;--awb-margin-bottom:0px;--awb-margin-left:0px;margin-left:var(--awb-margin-left)}.fluid-width-video-wrapper .fusion-privacy-placeholder{position:absolute;top:0;left:0;width:100%!important;height:100%!important}.fusion-privacy-bar.awb-desc-collapsed .awb-cookie-description{display:none}.fusion-privacy-bar{padding-top:var(--privacy_bar_padding-top,15px);padding-right:var(--privacy_bar_padding-right,30px);padding-bottom:var(--privacy_bar_padding-bottom,15px);padding-left:var(--privacy_bar_padding-left,30px);position:fixed;width:100%;z-index:99999;display:none;max-height:100vh;overflow:auto;scrollbar-width:none}.fusion-privacy-bar::-webkit-scrollbar{display:none}.fusion-privacy-bar .fusion-privacy-bar-acceptance{width:auto}.fusion-privacy-bar-bottom{bottom:0}.fusion-privacy-bar .fusion-privacy-bar-main{display:flex;align-items:center;justify-content:center}.fusion-privacy-bar .fusion-privacy-bar-main>span{margin-inline-end:15px}.fusion-privacy-bar .fusion-privacy-bar-main .fusion-privacy-bar-accept-all,.fusion-privacy-bar .fusion-privacy-bar-main .fusion-privacy-bar-acceptance,.fusion-privacy-bar .fusion-privacy-bar-main .fusion-privacy-bar-learn-more,.fusion-privacy-bar .fusion-privacy-bar-main .fusion-privacy-bar-reject{margin-inline-start:15px}.fusion-privacy-bar .fusion-privacy-bar-main .fusion-privacy-bar-learn-more i{display:inline-block;transition:transform .2s ease}.fusion-privacy-bar .fusion-privacy-bar-main .fusion-privacy-bar-learn-more.awb-rotate i{transform:rotate(-180deg) translateY(-.125em)}.fusion-privacy-bar.fusion-privacy-form--toggle input[type=checkbox]{appearance:none;-webkit-appearance:none;position:relative;display:inline-block;width:2.2em;height:1.2em;min-width:2.2em;border-radius:1em;background-color:var(--privacy_bar_toggle_off_color,var(--awb-color6));transition:background-color .2s ease;cursor:pointer;vertical-align:middle;margin:0;flex-shrink:0}.fusion-privacy-bar.fusion-privacy-form--toggle input[type=checkbox]::after{content:'';position:absolute;top:.1em;left:.1em;width:1em;height:1em;border-radius:50%;background-color:var(--privacy_bar_toggle_thumb_color,var(--awb-color3));transition:left .2s ease}.fusion-privacy-bar.fusion-privacy-form--toggle input[type=checkbox]:checked{background-color:var(--privacy_bar_toggle_on_color,var(--awb-color5))}.fusion-privacy-bar.fusion-privacy-form--toggle input[type=checkbox]:checked::after{left:1.1em}.fusion-privacy-bar.fusion-privacy-form--toggle input[type=checkbox]:indeterminate::after{left:.6em}.fusion-privacy-bar.fusion-privacy-form--toggle input[type=checkbox]:focus-visible{outline:2px solid var(--privacy_bar_toggle_on_color,var(--awb-color5));outline-offset:2px}.fusion-privacy-bar.fusion-privacy-form--toggle input[type=checkbox]:disabled{cursor:not-allowed}.fusion-privacy-bar.fusion-privacy-form--toggle .fusion-privacy-group-heading .awb-privacy-group-master-input[type=checkbox],.fusion-privacy-bar.fusion-privacy-form--toggle .nav-tabs>li>.awb-privacy-group-master-input[type=checkbox]{font-size:var(--privacy_bar_headings_font_size)}.fusion-privacy-bar .fusion-privacy-bar-full{text-align:center;display:none;line-height:1.5;padding-top:calc(var(--privacy_bar_padding-top) * 2)}.fusion-privacy-bar .fusion-privacy-bar-full .awb-layout-columns{max-width:var(--privacy_bar_content_max_width,50%)}.fusion-privacy-bar .fusion-privacy-bar-full .awb-layout-tabs{display:flex;margin:0;text-align:start;justify-content:center}.fusion-privacy-bar .fusion-privacy-bar-full .awb-layout-tabs .fusion-tabs .nav-tabs{display:block!important}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs{display:flex;text-align:start;margin:0;width:100%;max-width:var(--privacy_bar_content_max_width,50%)}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs{flex-shrink:0;background-color:transparent;--awb-border-color:var(--privacy_bar_tabs_border_color);border:var(--privacy_bar_tabs_border_size) solid var(--privacy_bar_tabs_border_color)}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs>li{font-size:var(--privacy_bar_headings_font_size);color:var(--privacy_bar_headings_color);text-align:start;border-bottom:var(--privacy_bar_tabs_border_size) solid var(--privacy_bar_tabs_border_color);color:var(--privacy_bar_link_color);transition:background-color .2s ease;display:flex;align-items:center}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs>li>a{padding:.5em .75em!important;border:none;background:0 0;transition:color .2s ease;color:inherit;flex:1 1 auto}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs>li>a:focus{background:0 0;color:inherit}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs>li>.awb-privacy-group-master-input{flex:0 0 auto;margin:0 .75em 0 .5em;cursor:pointer}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs>li.active,.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs>li:hover{background:var(--privacy_bar_tabs_active_bg_color,inherit);color:var(--privacy_bar_link_hover_color)}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs>li.active>a,.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs>li:hover>a{background:0 0}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .nav-tabs>li:last-child{border-bottom:none}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .tab-content{flex-grow:1;border:var(--privacy_bar_tabs_border_size) solid var(--privacy_bar_tabs_border_color)!important;border-inline-start:none!important;min-height:var(--privacy_bar_tabs_content_height);max-height:var(--privacy_bar_tabs_content_height);overflow-y:auto}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-tabs .tab-content .tab-pane{border:none;padding-top:var(--privacy_bar_tabs_padding-top,20px);padding-bottom:var(--privacy_bar_tabs_padding-bottom,20px);padding-left:var(--privacy_bar_tabs_padding-left,20px);padding-right:var(--privacy_bar_tabs_padding-right,20px);box-sizing:content-box}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices{list-style:none;margin:.7em 0 0;padding:0}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices>li{display:grid;grid-template-columns:auto 1fr;column-gap:.5em;margin-bottom:.4em}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices>li:has(.awb-privacy-desc-toggle){grid-template-columns:auto 1fr auto}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices>li.is-necessary{opacity:var(--privacy_necessary_opacity, .7)}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices label{display:contents}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices input{grid-column:1;align-self:center}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices .label-text{grid-column:2}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices .awb-privacy-desc-toggle{grid-column:3;grid-row:1;align-self:center;justify-self:end;background:0 0;border:none;padding:0;cursor:pointer;color:inherit;font-size:.85em;line-height:1;transition:transform .2s ease}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices .awb-privacy-desc-toggle i{display:block;transition:transform .2s ease}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-privacy-choices .awb-privacy-desc-toggle.awb-rotate i{transform:rotate(-180deg) translateY(-.125em)}.fusion-privacy-bar .fusion-privacy-bar-full .awb-cookie-lifespan{display:inline-block;font-size:.85em;color:var(--privacy_bar_lifespan_color,inherit);margin-inline-start:.3em}.fusion-privacy-bar .fusion-privacy-bar-full .awb-cookie-lifespan::before{content:'('}.fusion-privacy-bar .fusion-privacy-bar-full .awb-cookie-lifespan::after{content:')'}.fusion-privacy-bar .fusion-privacy-bar-full .awb-cookie-description{grid-column:2;margin:.2em 0;font-size:var(--privacy_bar_desc_font_size, .85em);color:var(--privacy_bar_desc_color,inherit)}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns.row{margin-left:calc(var(--privacy_bar_column_gap,30px)/ -2);margin-right:calc(var(--privacy_bar_column_gap,30px)/ -2)}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns.row .fusion-column{text-align:initial;padding-left:calc(var(--privacy_bar_column_gap,30px)/ 2);padding-right:calc(var(--privacy_bar_column_gap,30px)/ 2)}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns.row .fusion-column .column-title{text-transform:uppercase;margin-top:0;margin-bottom:.7em}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns.row .fusion-column .fusion-privacy-group-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7em}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns.row .fusion-column .fusion-privacy-group-heading .column-title{margin:0;flex:1 1 auto}.fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns.row .fusion-column .fusion-privacy-group-heading .awb-privacy-group-master-input{flex:0 0 auto;margin:0 0 0 .5em;cursor:pointer}.searchform .fusion-search-form-content{display:flex;align-items:center;overflow:hidden;width:100%}.searchform .fusion-search-form-content .fusion-search-field{flex-grow:1}.searchform .fusion-search-form-content .fusion-search-field input{background-color:#fff;border:1px solid #d2d2d2;color:#747474;font-size:13px;padding:8px 15px;height:33px;width:100%;box-sizing:border-box;margin:0;outline:0}.searchform .fusion-search-form-content .fusion-search-button input[type=submit]{background:#000;border:none;border-radius:0;color:#fff;font-size:1em;height:33px;line-height:33px;margin:0;padding:0;width:33px;text-indent:0;cursor:pointer;font-family:awb-icons;font-weight:400;text-shadow:none;-webkit-font-smoothing:antialiased;transition:all .2s}.fusion-search-element .searchform.fusion-search-form-clean .fusion-search-form-content,.fusion-search-form-clean .searchform:not(.fusion-search-form-classic) .fusion-search-form-content{position:relative}.fusion-search-element .searchform.fusion-search-form-clean .fusion-search-button,.fusion-search-form-clean .searchform:not(.fusion-search-form-classic) .fusion-search-button{position:absolute}.fusion-search-element .searchform.fusion-search-form-clean .fusion-search-button input[type=submit],.fusion-search-form-clean .searchform:not(.fusion-search-form-classic) .fusion-search-button input[type=submit]{background-color:transparent;color:#aaa9a9}.search-page-search-form-top{padding-bottom:60px;border-bottom:1px solid #e6e5e6;margin-bottom:60px}.search-page-search-form-bottom{padding-top:60px;border-top:1px solid #e6e5e6;margin-top:60px}.search-page-search-form .fusion-search-form{text-align:right}.search-page-search-form .fusion-search-form .fusion-search-form .fusion-search-field input{text-indent:0}.fusion-main-menu-search-overlay .fusion-main-menu>.fusion-menu{display:flex;flex-wrap:wrap;transition:opacity .8s cubic-bezier(.8, 0, .25, 1),transform .8s cubic-bezier(.8, 0, .25, 1)}.fusion-main-menu-search-overlay .fusion-main-menu>.fusion-overlay-search{display:flex;visibility:hidden;align-items:center;opacity:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-150%);width:100%;transition:opacity .8s cubic-bezier(.8, 0, .25, 1),transform .8s cubic-bezier(.8, 0, .25, 1)}.fusion-main-menu-search-overlay .fusion-main-menu>.fusion-overlay-search .fusion-search-form{flex-grow:2}.fusion-main-menu-search-overlay .fusion-main-menu>.fusion-overlay-search .fusion-close-search{overflow:hidden;position:relative;display:inline-block}.fusion-main-menu-search-overlay .fusion-main-menu>.fusion-overlay-search .fusion-close-search:after,.fusion-main-menu-search-overlay .fusion-main-menu>.fusion-overlay-search .fusion-close-search:before{content:"";position:absolute;top:50%;left:0;height:2px;width:100%;margin-top:-1px}.fusion-main-menu-search-overlay .fusion-main-menu>.fusion-overlay-search .fusion-close-search:before{transform:rotate(45deg)}.fusion-main-menu-search-overlay .fusion-main-menu>.fusion-overlay-search .fusion-close-search:after{transform:rotate(-45deg)}.fusion-main-menu-search-overlay .fusion-main-menu.search-open{overflow:visible}.fusion-main-menu-search-overlay .fusion-main-menu.search-open>.fusion-menu{opacity:0;transform:translateY(100%);visibility:hidden}.fusion-main-menu-search-overlay .fusion-main-menu.search-open>.fusion-overlay-search{opacity:1;visibility:visible;transform:translate(-50%,-50%)}.fusion-main-menu-search-overlay .fusion-main-menu.search-transition{overflow:hidden!important}.fusion-main-menu-search-overlay .fusion-main-menu.search-transition .fusion-menu{visibility:visible!important}.fusion-main-menu-search-overlay .fusion-main-menu.search-transition>.fusion-overlay-search{visibility:visible}.fusion-main-menu-search-overlay .fusion-header-v4.fusion-header-menu-align-right .fusion-overlay-search,.fusion-main-menu-search-overlay .fusion-header-v5.fusion-header-menu-align-right .fusion-overlay-search{right:0;left:auto;transform:translate(0,-150%)}.fusion-main-menu-search-overlay .fusion-header-v4.fusion-header-menu-align-right .search-open .fusion-overlay-search,.fusion-main-menu-search-overlay .fusion-header-v5.fusion-header-menu-align-right .search-open .fusion-overlay-search{transform:translate(0,-50%)}.fusion-main-menu-search-overlay .fusion-header-v4.fusion-header-menu-align-left .fusion-overlay-search,.fusion-main-menu-search-overlay .fusion-header-v5.fusion-header-menu-align-left .fusion-overlay-search{left:0;transform:translate(0,-150%)}.fusion-main-menu-search-overlay .fusion-header-v4.fusion-header-menu-align-left .search-open .fusion-overlay-search,.fusion-main-menu-search-overlay .fusion-header-v5.fusion-header-menu-align-left .search-open .fusion-overlay-search{transform:translate(0,-50%)}.fusion-overlay-search{position:absolute;opacity:0}.fusion-header-has-flyout-menu .fusion-flyout-search .fusion-live-search{position:relative}.fusion-header-has-flyout-menu .fusion-flyout-search .fusion-live-search .fusion-search-form-content{position:relative}.fusion-header-has-flyout-menu .fusion-flyout-search .fusion-live-search .fusion-search-form-content .fusion-search-button{display:block;position:absolute;right:0;background-color:transparent}.fusion-header-has-flyout-menu .fusion-flyout-search .fusion-live-search .fusion-search-form-content .fusion-search-button .fusion-search-submit{display:none}.fusion-header-has-flyout-menu .fusion-flyout-search .fusion-live-search .fusion-search-form-content .fusion-slider-loading{margin:-1.75em 0 0 -3.5em;width:3.5em;height:3.5em;border-top-width:.4em;border-right-width:.4em;border-bottom-width:.4em;border-left-width:.4em}.fusion-live-search .fusion-search-field{z-index:14}.fusion-live-search .fusion-search-button{z-index:14;position:relative}.fusion-live-search .fusion-slider-loading{display:none;margin:-1.2em 0 0 -1.2em;width:2.4em;height:2.4em;border-top:.3em solid rgba(255,255,255,.35);border-right:.3em solid rgba(255,255,255,.35);border-bottom:.3em solid #fff;border-left:.3em solid rgba(255,255,255,.35);pointer-events:none}.fusion-live-search .fusion-search-results-wrapper{position:relative}.fusion-flyout-search .fusion-live-search .fusion-search-results-wrapper{position:absolute;width:calc(100% - 100px);margin-top:62px}.fusion-live-search .fusion-search-results{z-index:-1;visibility:hidden;overflow-y:auto;position:absolute;margin-top:25px;width:100%;max-height:250px;opacity:0;transition:.3s opacity,.3s margin;background-color:#fff;border-style:solid}.fusion-live-search .fusion-search-results.suggestions-added{z-index:2001;visibility:visible;margin-top:0;opacity:1}.fusion-live-search .fusion-search-results.suggestions-empty .fusion-search-result{padding:14px;cursor:default}.fusion-live-search .fusion-search-results.suggestions-empty .fusion-search-result:hover{padding:14px}.fusion-live-search .fusion-search-results.suggestions-transition{visibility:visible}.fusion-live-search.fusion-main-menu-search-dropdown .fusion-main-menu .fusion-search-results.suggestions-added{position:static}.fusion-live-search .fusion-search-result{display:flex;align-items:center;padding:14px 7px;line-height:1.4;border-bottom-style:solid;border-top:none;text-align:initial;cursor:pointer;transition:.2s padding}.fusion-body .fusion-live-search .fusion-search-result{font-family:inherit}.fusion-body .fusion-live-search .fusion-search-result:after{content:""}.fusion-live-search .fusion-search-result:hover{padding:14px 0 14px 14px}.fusion-live-search .fusion-search-result:last-child{border-bottom:none}.fusion-live-search .fusion-search-content,.fusion-live-search .fusion-search-image{padding:0 7px}.fusion-live-search .fusion-search-image{max-width:45px;box-sizing:content-box}.fusion-main-menu .fusion-live-search .fusion-search-image{max-width:35px}.fusion-live-search .fusion-search-post-type{margin-top:.2em;font-size:.9em}.flex-container a:active,.flex-container a:focus,.flexslider a:active,.flexslider a:focus{outline:0}.flex-control-nav,.flex-direction-nav,.flexslider .slides{margin:0;padding:0;list-style:none;z-index:1000}.flexslider{margin:0;padding:0}.flexslider .slides{overflow:hidden}.flexslider .slides li{display:none;-webkit-backface-visibility:hidden}.flexslider .slides img{width:100%;max-width:100%;display:block;-webkit-user-select:none;user-select:none}.flexslider .slides .video-shortcode{margin-bottom:0}.flex-pauseplay span{text-transform:capitalize}.flexslider .slides:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}html[xmlns] .flexslider .slides{display:block}* html .flexslider .slides{height:1%}.flex-control-nav,.flex-direction-nav,.flexslider .slides{z-index:2}.flexslider{margin:0 0 60px;background-color:transparent;position:relative}.flex-viewport{max-height:2000px;transition:all 1s ease}.loading .flex-viewport{max-height:300px}.carousel li{margin-right:5px}.flex-direction-nav{height:0}.flex-direction-nav a{font-family:awb-icons;width:30px;height:30px;margin:-20px 0 0;background-color:rgba(0,0,0,.5);background-repeat:no-repeat;position:absolute;top:50%;cursor:pointer;opacity:0;transition:all .3s ease;z-index:100;overflow:hidden;text-align:center;line-height:30px;font-size:16px;font-weight:400;-webkit-font-smoothing:none;color:#fff}.flex-direction-nav a:hover{color:#fff}.sidebar .widget .flex-direction-nav a,.sidebar .widget .flex-direction-nav a:hover{color:#fff}.no-opacity .flex-direction-nav a{display:none}.no-opacity .flexslider:hover .flex-direction-nav a{display:block}.flex-direction-nav .flex-next{right:0;text-indent:2px}.flex-direction-nav .flex-prev{left:0;text-indent:-2px}.flexslider:hover .flex-next{opacity:.8;right:0}.flexslider:hover .flex-prev{opacity:.8;left:0}.flexslider:hover .flex-next:hover,.flexslider:hover .flex-prev:hover{opacity:1}.flex-direction-nav .flex-disabled,.main-flex:hover .flex-direction-nav .flex-disabled{opacity:0;cursor:default;display:none;visibility:hidden}.flex-control-nav{width:100%;position:absolute;bottom:0;text-align:center}.fusion-body .flex-control-nav li{margin:0 6px;display:inline-block}.fusion-body .flex-control-paging li a{display:block}.flex-control-paging li a{width:11px;height:11px;display:block;background:#666;background:rgba(0,0,0,.5);cursor:pointer;text-indent:-9999px;border-radius:20px;box-shadow:inset 0 0 3px rgba(0,0,0,.3)}.flex-control-paging li a:hover{background:#333;background:rgba(0,0,0,.7)}.flex-control-paging li a.flex-active{background:#000;background:rgba(0,0,0,.9);cursor:default}.flex-control-thumbs{margin:5px 0 0;position:static;overflow:hidden}.flex-control-thumbs li{width:25%;float:left}.fusion-body .flex-control-thumbs li{margin:0}.flex-control-thumbs img{width:100%;display:block;opacity:.7;cursor:pointer;transition:opacity .2s cubic-bezier(.21, .6, .35, 1)}.flex-control-thumbs img:hover{opacity:1}.flex-control-thumbs .flex-active{opacity:1;cursor:default}.flex-caption{position:absolute;background:rgba(0,0,0,.6);width:96%;padding:2%;color:#fff;left:0;bottom:0;margin:0}.main-flex{margin-bottom:0}.col .flexslider{margin:0}.isotope{transition-duration:.8s;transition-property:height,width}.isotope-item{z-index:2}.isotope-hidden.isotope-item{z-index:1}.isotope .isotope-item{transition-duration:.8s;transition-property:top,left,opacity}.isotope .isotope-item.no-transition,.isotope.no-transition,.isotope.no-transition .isotope-item{transition-duration:0s}.fusion-post-content .wooslider{border:0;background:0 0;box-shadow:none;border-radius:0;margin:0 auto;max-width:940px}.wooslider .slide-content{margin:0}.wooslider .wooslider-pauseplay{position:absolute;margin:0;top:auto;bottom:15px}.wooslider .wooslider-control-nav{position:absolute;margin:0;top:auto;bottom:-10px}.tfs-slider .flex-next,.tfs-slider .flex-prev{font-size:25px;-webkit-font-smoothing:antialiased}.main-flex:hover .flex-next,.main-flex:hover .flex-prev,.wooslider:hover .wooslider-next,.wooslider:hover .wooslider-prev{display:block}.main-flex .flex-next,.main-flex .flex-prev,.wooslider .wooslider-next,.wooslider .wooslider-prev{background-color:rgba(0,0,0,.5);background-repeat:no-repeat;width:63px;height:63px;display:none;position:absolute;top:42%;margin:0;color:#fff;font-family:awb-icons;text-align:center;line-height:63px;font-size:36px;font-weight:400;-webkit-font-smoothing:antialiased}.main-flex .flex-prev,.wooslider .wooslider-prev{left:0;padding:0;border:0;text-indent:-5px}.main-flex .flex-next,.wooslider .wooslider-next{right:0;padding:0;border:0;text-indent:5px}#sliders-container .wooslider .slide-content p{margin:0}.fusion-footer-widget-area .wooslider-control-nav li a,.sidebar .wooslider-control-nav li a{padding:0;border:0;background:rgba(0,0,0,.5);margin-right:3px}.fusion-footer-widget-area .wooslider-next,.fusion-footer-widget-area .wooslider-prev,.fusion-post-content .wooslider .wooslider-next,.fusion-post-content .wooslider .wooslider-prev,.sidebar .wooslider-next,.sidebar .wooslider-prev{width:29px;height:29px}.fusion-footer-widget-area .wooslider .wooslider-control-nav,.sidebar .wooslider .wooslider-control-nav{bottom:5px}.fusion-footer-widget-area .widget_wooslider_slideshow_slides .wooslider-control-nav,.sidebar .widget_wooslider_slideshow_slides .wooslider-control-nav{bottom:12px}.fusion-footer-widget-area .slide-excerpt{overflow:hidden;position:absolute;bottom:-50px;padding:0;width:100%;text-align:center}.sidebar .slide-excerpt{bottom:15%;width:100%}.sidebar .slide-excerpt .slide-title{float:none}.sidebar .slide-excerpt .slide-title a{color:#fff;border:none}.sidebar .slide-excerpt .slide-title a:hover{color:#fff}.sidebar .widget .slides li div a{padding:0}.layout-boxed-mode.fusion-top-header.avada-has-boxed-modal-shadow-light .fusion-boxed-shadow,.layout-boxed-mode.fusion-top-header.avada-has-boxed-modal-shadow-light:not(.avada-footer-fx-sticky) #wrapper{box-shadow:0 0 50px 1px rgba(0,0,0,.22)}.layout-boxed-mode.fusion-top-header.avada-has-boxed-modal-shadow-medium .fusion-boxed-shadow,.layout-boxed-mode.fusion-top-header.avada-has-boxed-modal-shadow-medium:not(.avada-footer-fx-sticky) #wrapper{box-shadow:0 0 50px 5px rgba(0,0,0,.35)}.layout-boxed-mode.fusion-top-header.avada-has-boxed-modal-shadow-hard .fusion-boxed-shadow,.layout-boxed-mode.fusion-top-header.avada-has-boxed-modal-shadow-hard:not(.avada-footer-fx-sticky) #wrapper{box-shadow:0 0 50px 10px rgba(0,0,0,.55)}.layout-boxed-mode:not(.fusion-top-header).avada-has-boxed-modal-shadow-light #boxed-wrapper,.layout-boxed-mode:not(.fusion-top-header).avada-has-boxed-modal-shadow-light .fusion-boxed-shadow{box-shadow:0 0 50px 1px rgba(0,0,0,.22)}.layout-boxed-mode:not(.fusion-top-header).avada-has-boxed-modal-shadow-medium #boxed-wrapper,.layout-boxed-mode:not(.fusion-top-header).avada-has-boxed-modal-shadow-medium .fusion-boxed-shadow{box-shadow:0 0 50px 5px rgba(0,0,0,.35)}.layout-boxed-mode:not(.fusion-top-header).avada-has-boxed-modal-shadow-hard #boxed-wrapper,.layout-boxed-mode:not(.fusion-top-header).avada-has-boxed-modal-shadow-hard .fusion-boxed-shadow{box-shadow:0 0 50px 10px rgba(0,0,0,.55)}.layout-boxed-mode.side-header #boxed-wrapper,.layout-boxed-mode.side-header #slidingbar-area .fusion-row,.layout-boxed-mode.side-header .fusion-footer-parallax,.layout-boxed-mode.side-header>#lang_sel_footer{margin-right:auto;margin-left:auto}.fusion-row{margin:0 auto}.fusion-row:after,.fusion-row:before{content:" ";display:table}.fusion-row:after{clear:both}.fusion-columns{margin:0 -15px}.fusion-columns-5 .col-lg-2,.fusion-columns-5 .col-md-2,.fusion-columns-5 .col-sm-2,.fusion-columns-5 .col-xs-2{width:20%}.fusion-block-element{display:block}.fusion-hidden{display:none}.fusion-responsive-img{margin:0}#wrapper #posts-container .fusion-grid-sizer,#wrapper .fusion-grid-sizer{margin:0;padding:0;height:0;min-height:0;visibility:hidden}.fusion-masonry-element-container{background-size:cover;background-position:center center}.fusion-element-grid .fusion-masonry-element-container{padding-top:80%}.fusion-element-landscape .fusion-masonry-element-container{padding-top:40%}.fusion-element-portrait .fusion-masonry-element-container{padding-top:160%}.fusion-masonry-element-container .fusion-image-wrapper>img,.fusion-masonry-element-container .fusion-placeholder-image,.fusion-masonry-element-container>img{display:none}bold,strong{font-weight:bolder}.fusion-video iframe,iframe{border:none}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#fff;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;clip-path:none;color:#333;display:block;font-size:1rem;font-weight:700;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}mark{background:0 0;color:inherit}.fusion-breadcrumb-prefix{padding-right:5px}.post-password-form input[type=password]{margin:0 10px;padding:8px 15px;width:200px;border:1px solid #d2d2d2;font-size:13px;color:#747474;box-sizing:border-box}.fusion-image-wrapper{overflow:hidden;z-index:1;position:relative}.fusion-image-wrapper:hover .fusion-rollover{opacity:1;transform:translateX(0)}.no-csstransforms .fusion-image-wrapper:hover .fusion-rollover{display:block}.fusion-image-wrapper.fusion-video{display:block}.fusion-image-size-fixed{display:inline-block;max-width:100%;vertical-align:top}.fusion-rollover{display:flex;align-items:center;justify-content:space-around;opacity:0;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;line-height:normal;text-align:center;background-image:linear-gradient(to top,#aad75d,#d1e990);transform:translateX(-100%);transition:all .3s ease-in-out;-webkit-transform-style:preserve-3d}.no-csstransforms .fusion-rollover{display:none}.fusion-clean-product-image-wrapper .fusion-rollover-content .view-cart{position:relative;z-index:9}.fusion-woo-slider .fusion-carousel-title-below-image .fusion-product-buttons{position:relative}.fusion-rollover-content{padding:10px;width:90%}.fusion-rollover-content .fusion-rollover-categories,.fusion-rollover-content .fusion-rollover-title,.fusion-rollover-content .price{margin:0;line-height:normal;font-size:13px;color:#333}.fusion-rollover-content .fusion-rollover-title{margin-bottom:3px;margin-top:10px}.fusion-rollover-content .fusion-rollover-categories a{font-size:11px}.fusion-rollover-content .fusion-rollover-categories a:hover{color:#444}.fusion-rollover-content .price{display:inline-block}.fusion-rollover-content .fusion-product-buttons{z-index:99;position:relative}.fusion-rollover-content .fusion-product-buttons a{display:block;margin-top:10px;padding-left:16px;width:auto;line-height:normal;text-align:left;max-width:49%;font-size:12px;box-sizing:border-box;z-index:99}.fusion-carousel-title-below-image .fusion-rollover-content .fusion-product-buttons a{max-width:none}.fusion-rollover-content .fusion-product-buttons a:first-child{float:left}.fusion-rollover-content .fusion-product-buttons a:first-child:before{position:absolute;margin-left:-16px;content:"\f07a";font-family:awb-icons}.fusion-rollover-content .fusion-product-buttons a:last-child{float:right}.fusion-rollover-content .fusion-product-buttons a:last-child:before{position:absolute;margin-left:-16px;content:"\e623";font-family:awb-icons}.fusion-rollover-content .fusion-product-buttons a.added_to_cart{display:none}.fusion-rollover-sep{display:inline-block;vertical-align:middle;height:36px;width:5px}.fusion-rollover-gallery,.fusion-rollover-link{display:inline-block;opacity:.9;position:relative;vertical-align:middle;margin:0;height:36px;width:35px;text-indent:-10000px;background-color:#333;border-radius:50%;background-clip:padding-box}.fusion-rollover-gallery:hover,.fusion-rollover-link:hover{opacity:1}.fusion-rollover-gallery:before,.fusion-rollover-link:before{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-indent:0;line-height:normal;text-shadow:none;font-family:awb-icons;font-size:15px;color:#fff;-webkit-font-smoothing:antialiased}.fusion-rollover-link:before{content:"\e619"}.fusion-rollover-gallery:before{content:"\f002"}.fusion-placeholder-image{max-width:100%;background-color:#f6f6f6}.fusion-hidden-content{overflow:hidden;position:absolute;left:-10000px;top:auto;width:1px;height:1px}.fusion-filters{display:none;overflow:hidden;list-style:none;margin-bottom:55px;padding:0;line-height:34px;border-top:1px solid #e7e6e6;border-bottom:1px solid #e7e6e6;align-items:center}.fusion-filter{float:left;margin-right:30px}.fusion-filter.fusion-active a{line-height:31px;border-top:3px solid #65bc7b;color:#65bc7b}.fusion-filter a{display:block}.fusion-load-more-button{display:block;margin-top:20px;width:100%;height:50px;line-height:50px;background-color:#e9eaee;cursor:pointer;text-align:center;font-size:inherit;text-transform:uppercase;border:none;transition:all .2s}.fusion-load-more-button:hover{transition:all .2s}.fusion-portfolio-wrapper .fusion-load-more-button{display:none}.fusion-loading-container{margin-top:20px}.fusion-loading-container .fusion-loading-spinner{display:inline-block}.fusion-loading-container .fusion-spinner-1,.fusion-loading-container .fusion-spinner-2,.fusion-loading-container .fusion-spinner-3{width:12px;height:12px;background-color:#e2e0e0;border-radius:100%;display:inline-block;animation:fusion-bounce-delay 1.4s infinite ease-in-out;animation-fill-mode:both}.fusion-loading-container .fusion-spinner-1{animation-delay:-.32s}.fusion-loading-container .fusion-spinner-2{animation-delay:-.16s}.fusion-loading-container .fusion-loading-msg{display:inline-block;margin-left:7px}@keyframes fusion-bounce-delay{0%,100%,80%{transform:scale(0)}40%{transform:scale(1)}}.fusion-body .wpcf7-form .fusion-slider-loading,.fusion-slider-loading{position:absolute;top:50%;left:50%;margin:-3em 0 0 -3em;color:transparent;font-size:10px;border-top:.5em solid rgba(0,0,0,.2);border-right:.5em solid rgba(0,0,0,.2);border-bottom:.5em solid #333;border-left:.5em solid rgba(0,0,0,.2);animation:fusion-rotate .8s infinite linear}.fusion-body .wpcf7-form .fusion-slider-loading .fusion-slider-loading-text,.fusion-slider-loading .fusion-slider-loading-text{position:absolute}.no-cssanimations .fusion-body .wpcf7-form .fusion-slider-loading,.no-cssanimations .fusion-slider-loading{padding-left:5px;padding-top:15px;color:#000}.fusion-slider-loading,.fusion-slider-loading:after{width:6em;height:6em;border-radius:50%;background-clip:padding-box}@keyframes fusion-rotate{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}.fusion-inline-sep{padding:0 5px}.fusion-inline-sep:last-child{display:none}.post-content p{margin-top:0;margin-bottom:20px}.table-1,.table-2,.tkt-slctr-tbl-wrap-dv{display:block;overflow-x:auto}.fusion-body .quantity{display:flex;align-items:center;justify-content:space-around;border:1px solid;overflow:hidden}.fusion-body .quantity .minus,.fusion-body .quantity .plus,.fusion-body .quantity .qty{float:left;border:0;margin:0;padding:0;text-align:center;vertical-align:middle;border-radius:0;-webkit-appearance:none;-moz-appearance:textfield}.fusion-body .quantity .minus,.fusion-body .quantity .plus{cursor:pointer}.fusion-body .quantity .qty{background:0 0;border-left:1px solid;border-right:1px solid}.fusion-body .quantity .qty -webkit-inner-spin-button,.fusion-body .quantity .qty -webkit-outer-spin-button{-webkit-appearance:none;margin:0}.select-arrow{width:35px;height:33px;line-height:33px;border-left-width:1px;border-left-style:solid;position:absolute;bottom:1px;right:1px;pointer-events:none;z-index:10;font-family:awb-icons;font-size:9px;text-align:center}.avada-select-parent{position:relative;overflow:hidden;margin:0}.fusion-layout-column.avada-select-parent{position:relative}.bbpress .avada-select-parent{overflow:hidden}.avada-select-parent select{border:1px solid #dadada;-webkit-appearance:none;text-overflow:"";box-sizing:border-box;cursor:pointer;display:block;font-size:13px;outline:0;height:auto;padding:9px 15px;position:relative;text-indent:.01px;vertical-align:middle;z-index:5;margin:0;border-radius:0;background-clip:padding-box;min-width:180px}.sidebar .avada-select-parent select{min-width:initial}.widget_archive select,.widget_categories select{width:100%}.select2-container .select2-selection--single .select2-selection__rendered{padding-left:15px;padding-right:34px}.select2-results__option,.select2-search--dropdown{padding-left:15px;padding-right:15px}.select2-search--dropdown .select2-search__field{margin-right:0}.select2-container--default .select2-selection--single{border-radius:0}.select2-container--default .select2-selection--single .select2-selection__arrow{top:50%;right:15px;transform:translateY(-50%)}.select2-dropdown{z-index:2051;border-radius:0}#submit,.submit{cursor:pointer}.rich-snippet-hidden{display:none}.fusion-avatar-circle .attachment-recent-works-thumbnail,.fusion-avatar-circle .avatar{border-radius:50%}.fusion-author .fusion-edit-profile{font-size:12px}.fusion-author .fusion-social-networks{display:table-cell;vertical-align:middle;text-align:right;line-height:normal}.fusion-author .fusion-social-networks .fusion-social-network-icon{margin-bottom:0}.fusion-author .fusion-social-networks.boxed-icons .fusion-social-network-icon{margin-bottom:2px}.fusion-author-avatar{float:left;margin-right:20px;max-width:20%}.fusion-author-info{overflow:hidden}.fusion-author-title{margin-top:0;color:#333;font-weight:400}.fusion-author-social{display:table;margin:20px 0 80px;padding:5px 0;width:100%;border-top:1px solid #e0dede;border-bottom:1px solid #e0dede}.fusion-author-tagline{display:table-cell;vertical-align:middle;max-width:70%;font-weight:700}.fusion-page-load-link{display:none}#menu-appearance a[href="themes.php?page=optionsframework"]{display:none}#wpadminbar{z-index:999999999999999}#wpadminbar #wp-admin-bar-awb-site-mode{display:flex;align-items:center;height:32px}#wpadminbar #wp-admin-bar-awb-site-mode>.ab-item{display:inline-flex;align-items:center;padding:.25em .5em;height:14px;border-radius:.35em;line-height:1;transition:opacity .2s ease-in-out}#wpadminbar #wp-admin-bar-awb-site-mode>.ab-item:hover,#wpadminbar #wp-admin-bar-awb-site-mode>.ab-itemfocus{opacity:.9}#wpadminbar .awb-site-mode-badge-avada>.ab-item:before{content:"\e971";font-family:awb-icons;padding:0;font-size:12px;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1}#wpadminbar .awb-site-mode-badge-live>.ab-item{background-color:#65bc7b!important;color:#f0f0f1!important}#wpadminbar .awb-site-mode-badge-coming-soon>.ab-item{background-color:#198fd9!important;color:#f0f0f1!important}#wpadminbar .awb-site-mode-badge-maintenance>.ab-item{background-color:#dc3232!important;color:#f0f0f1!important}#wpadminbar>#wp-toolbar #wp-admin-bar-avada>.ab-item:before,#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit>.ab-item:before{content:"\e971";font-family:awb-icons;top:4px;font-size:16px}#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .ab-item{height:auto}#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .fb-edit-group{border-top:1px solid #3c434a}#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .awb-layout-group .wp-admin-bar-arrow{display:none}#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .awb-layout-group .menupop>.ab-item{padding:0 10px}#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .awb-layout-group .ab-sub-wrapper{margin-top:0;top:50%;transform:translateY(-50%)}#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .awb-edit-item{display:flex;justify-content:space-between;align-items:center;margin:.3em -.75em}#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .awb-edit-name,#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .awb-edit-type{margin:0 .75em}#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .awb-edit-type{line-height:1;background:#3c434a;padding:.5em;border-radius:4px;color:rgba(255,255,255,.8);font-size:.9em}#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .ab-item:active .awb-edit-type,#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .ab-item:focus .awb-edit-type,#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit .ab-item:hover .awb-edit-type{color:inherit}@media screen and (max-width:782px){#wpadminbar #wp-admin-bar-awb-site-mode{display:none}#wpadminbar>#wp-toolbar #wp-admin-bar-avada>.ab-item:before,#wpadminbar>#wp-toolbar #wp-admin-bar-fb-edit>.ab-item:before{content:"\e971";font-family:awb-icons;top:0;padding:10px;font-size:25px}}.woocommerce-billing-fields .form-row .input-text{margin-right:0}.fusion-disable-outline input,.fusion-disable-outline select,.fusion-disable-outline textarea{outline:0}.fusion-disable-outline .woocommerce-billing-fields .form-row .input-text{outline:0}.select2-container .select2-selection{margin:0;box-shadow:none!important;outline:0!important}.select2-container .select2-selection .select2-selection__arrow{top:0;transform:inherit;right:0;width:40px;border-left:1px solid #d2d2d2}.select2-container--default .select2-dropdown .select2-search{border-bottom:1px solid #d2d2d2;padding:10px 15px;border-top:1px solid #d2d2d2;margin-top:-1px}.select2-container--default .select2-dropdown .select2-search input{padding:8px 10px;height:auto;background:#fff}.fusion-post-slideshow .image{margin-bottom:0}.fusion-post-slideshow .fusion-image-size-fixed{display:block}.fusion-flexslider.fusion-post-slideshow{overflow:visible}.fusion-meta-info{clear:both;overflow:hidden;margin-top:20px;padding:5px 0;border-top:1px solid #e7e6e6;border-bottom:1px solid #e7e6e6}.fusion-meta-info .fusion-alignleft{width:80%}.fusion-post-title-meta-wrap{margin-bottom:28px}.fusion-post-title-meta-wrap .entry-title{margin-bottom:10px}.fusion-post-title-meta-wrap .fusion-meta-info{margin-top:0}.fusion-single-line-meta{margin-bottom:20px}.fusion-content-sep{margin-top:20px;height:6px;border-top:1px solid #eaeaea;border-bottom:1px solid #eaeaea}.fusion-date-and-formats{float:left;margin-right:17px;width:82px;text-align:center}.fusion-date-and-formats .fusion-date-box{padding:8px 0 5px;color:#fff}.fusion-date-and-formats .fusion-date{display:block;line-height:29px;font-size:29px;font-weight:700}.fusion-date-and-formats .fusion-format-box{margin-top:3px;background-color:#eef0f2}.fusion-date-and-formats .fusion-format-box i{display:block;line-height:55px;font-size:30px}.fusion-timeline-line{position:absolute;left:50%;top:0;margin-left:-1px;height:100%;border-left:1px solid #efeeee;border-right:1px solid #ebeaea}.fusion-timeline-icon{margin:0 auto -6px;max-width:1000px;font-size:46px;height:47px;line-height:1;color:#ebeaea;text-align:center}.fusion-timeline-icon .fusionicon-bubbles{cursor:pointer}.fusion-timeline-circle{position:absolute;left:50%;margin:10px 0 0 -5px;height:10px;width:10px;border-radius:50%;background-color:#efeeee}.fusion-timeline-arrow{position:absolute;color:#e9eaee}.fusion-timeline-arrow:before{font-family:awb-icons;font-size:28px;position:absolute;top:0;line-height:30px}.fusion-blog-archive .entry-title{margin-top:0;margin-bottom:5px}.fusion-blog-layout-large .entry-title,.fusion-blog-layout-medium .entry-title{margin-top:0;margin-bottom:25px}.fusion-blog-layout-large .fusion-post-slideshow,.fusion-blog-layout-large-alternate .fusion-post-slideshow,.single-avada_faq .fusion-post-slideshow,.single-post .fusion-post-slideshow,.single-wpfc_sermon .fusion-post-slideshow{margin-bottom:30px}.fusion-blog-layout-large-alternate .entry-title,.fusion-blog-layout-medium-alternate .entry-title{margin-top:0;margin-bottom:5px}.fusion-blog-layout-large-alternate .fusion-post-content-container,.fusion-blog-layout-medium-alternate .fusion-post-content-container{margin-top:20px}.fusion-blog-layout-large-alternate .fusion-meta-info,.fusion-blog-layout-medium-alternate .fusion-meta-info{margin-top:0;border-top:0}.fusion-blog-layout-medium .fusion-post-medium,.fusion-blog-layout-medium .fusion-post-medium-alternate,.fusion-blog-layout-medium-alternate .fusion-post-medium,.fusion-blog-layout-medium-alternate .fusion-post-medium-alternate{display:flex;flex-wrap:wrap;align-items:start}.fusion-blog-layout-medium .fusion-post-slideshow,.fusion-blog-layout-medium-alternate .fusion-post-slideshow{margin-right:25px;width:320px}.fusion-blog-layout-medium .fusion-post-content,.fusion-blog-layout-medium-alternate .fusion-post-content{flex:1 1 1px}.fusion-blog-layout-medium .fusion-meta-info,.fusion-blog-layout-medium-alternate .fusion-meta-info{width:100%}.fusion-blog-layout-grid .fusion-post-slideshow,.fusion-blog-layout-timeline .fusion-post-slideshow{margin-bottom:0;border-bottom:1px solid #eaeaea}.fusion-blog-layout-grid .fusion-post-content-wrapper,.fusion-blog-layout-timeline .fusion-post-content-wrapper{padding:30px 25px 20px}.fusion-blog-layout-grid .fusion-single-line-meta,.fusion-blog-layout-timeline .fusion-single-line-meta{margin-bottom:0}.fusion-blog-layout-grid .fusion-post-content-container,.fusion-blog-layout-timeline .fusion-post-content-container{margin-top:20px}.fusion-blog-layout-grid .fusion-post-content-container p:last-child,.fusion-blog-layout-timeline .fusion-post-content-container p:last-child{margin-bottom:0}.fusion-blog-layout-grid .fusion-meta-info,.fusion-blog-layout-timeline .fusion-meta-info{border:0}.fusion-blog-layout-grid .fusion-meta-info .fusion-alignleft,.fusion-blog-layout-timeline .fusion-meta-info .fusion-alignleft{width:50%}.fusion-blog-layout-grid .fusion-password,.fusion-blog-layout-timeline .fusion-password{width:auto;max-width:100%}.fusion-blog-layout-large-alternate .fusion-post-large-alternate{display:flex;flex-wrap:wrap}.fusion-blog-layout-large-alternate .fusion-post-content{flex:1}.fusion-blog-layout-large-alternate .fusion-meta-info,.fusion-blog-layout-large-alternate .fusion-post-slideshow{width:100%}.fusion-blog-layout-medium-alternate .fusion-post-slideshow{display:none}.fusion-blog-layout-medium-alternate .has-post-thumbnail .fusion-post-slideshow{display:block;margin-right:17px}.fusion-blog-layout-grid .fusion-post-grid{margin-bottom:0}.fusion-blog-layout-grid.fusion-no-meta-info .fusion-post-content-container{margin-top:0}.fusion-blog-layout-grid .fusion-post-wrapper:not(.fusion-masonary-is-transparent){border:1px solid #eaeaea;border-bottom-width:3px}.fusion-blog-layout-grid.fusion-blog-layout-grid-2 .post{width:50%;display:inline-block;float:left}.fusion-blog-layout-grid.fusion-blog-layout-grid-2.fusion-blog-layout-masonry-has-vertical .post.fusion-element-landscape{width:100%}.fusion-blog-layout-grid.fusion-blog-layout-grid-3 .post{width:33.3333%;display:inline-block;float:left}.fusion-blog-layout-grid.fusion-blog-layout-grid-3.fusion-blog-layout-masonry-has-vertical .post.fusion-element-landscape{width:66.6666%}.fusion-blog-layout-grid.fusion-blog-layout-grid-4 .post{width:25%;display:inline-block;float:left}.fusion-blog-layout-grid.fusion-blog-layout-grid-4.fusion-blog-layout-masonry-has-vertical .post.fusion-element-landscape{width:50%}.fusion-blog-layout-grid.fusion-blog-layout-grid-5 .post{width:20%;display:inline-block;float:left}.fusion-blog-layout-grid.fusion-blog-layout-grid-5.fusion-blog-layout-masonry-has-vertical .post.fusion-element-landscape{width:40%}.fusion-blog-layout-grid.fusion-blog-layout-grid-6 .post{width:16.6666%;display:inline-block;float:left}.fusion-blog-layout-grid.fusion-blog-layout-grid-6.fusion-blog-layout-masonry-has-vertical .post.fusion-element-landscape{width:33.3333%}.fusion-blog-layout-grid .fusion-post-content,.fusion-blog-layout-grid .post-content{word-wrap:break-word}.fusion-blog-layout-grid.fusion-blog-equal-heights .fusion-post-grid{display:inline-flex}.fusion-blog-layout-grid.fusion-blog-equal-heights .fusion-post-wrapper{overflow:hidden;width:100%;display:flex;flex-direction:column}.fusion-blog-layout-grid.fusion-blog-equal-heights .fusion-post-wrapper .fusion-post-content-wrapper{display:flex;flex-grow:1;flex-direction:column}.fusion-blog-layout-grid.fusion-blog-equal-heights .fusion-post-wrapper .fusion-post-content.post-content{margin-bottom:20px}.fusion-blog-layout-grid.fusion-blog-equal-heights .fusion-post-wrapper .fusion-meta-info{margin-top:auto}.fusion-blog-layout-timeline{position:relative;margin:0 auto;padding-top:30px;max-width:1000px}.fusion-blog-layout-timeline .fusion-post-timeline{position:static;margin-bottom:40px;border:1px solid #eaeaea;border-bottom-width:3px}.fusion-no-meta-info .fusion-blog-layout-timeline .fusion-post-content-container{margin-top:0}.fusion-blog-layout-timeline .fusion-left-column{float:left;clear:left;width:40%}.fusion-blog-layout-timeline .fusion-right-column{float:right;clear:right;width:40%}.fusion-blog-layout-timeline .fusion-timeline-date{position:relative;clear:both;margin:0 auto 2px;padding:.35em .45em;width:auto;max-width:8em;line-height:1.35em;background:#efeeee;text-align:center;cursor:pointer}.fusion-blog-layout-timeline .fusion-left-column .fusion-timeline-arrow{left:40%;margin-left:-.5px}.fusion-blog-layout-timeline .fusion-left-column .fusion-timeline-arrow:before{content:"\f0da";left:100%}.fusion-blog-layout-timeline .fusion-right-column .fusion-timeline-arrow{right:40%;margin-right:-.5px}.fusion-blog-layout-timeline .fusion-right-column .fusion-timeline-arrow:before{content:"\f0d9";right:100%}.fusion-blog-layout-masonry .fusion-post-wrapper{overflow:hidden;position:relative}.fusion-blog-layout-masonry .fusion-post-content-wrapper{z-index:1;position:absolute;bottom:0;left:0;right:0}.fusion-blog-layout-masonry.fusion-blog-rollover .fusion-post-wrapper:hover .fusion-post-content-wrapper{transition:all .3s ease;transform:translateY(105%)}.fusion-blog-layout-masonry.fusion-blog-rollover .fusion-post-content-wrapper{transition:all .3s ease}.fusion-blog-infinite .pagination{display:none}.fusion-blog-infinite .fusion-load-more-button{margin-bottom:40px}.fusion-blog-layout-center .fusion-post-content{text-align:center}.fusion-blog-layout-left .fusion-post-content{text-align:left}.fusion-blog-layout-right .fusion-post-content{text-align:right}.single h1.entry-title{margin-top:0}.fusion-footer-parallax{position:relative;bottom:0;left:0;right:0;margin:0;padding:0}.fusion-footer-parallax.awb-footer-fixed{position:fixed;z-index:-1}.avada-footer-fx-no-height-parallax-effect #fusion-gmap-container,.avada-footer-fx-no-height-parallax-effect #main,.avada-footer-fx-no-height-parallax-effect #sliders-container,.avada-footer-fx-no-height-parallax-effect .fusion-page-title-bar,.avada-footer-fx-parallax-effect #fusion-gmap-container,.avada-footer-fx-parallax-effect #main,.avada-footer-fx-parallax-effect #sliders-container,.avada-footer-fx-parallax-effect .fusion-page-title-bar{position:relative;z-index:1}.avada-footer-fx-bg-parallax .fusion-footer-widget-area,.avada-footer-fx-no-height-bg-parallax .fusion-footer-widget-area,.avada-footer-fx-no-height-sticky-with-parallax-bg-image .fusion-footer-widget-area,.avada-footer-fx-sticky-with-parallax-bg-image .fusion-footer-widget-area{background-attachment:fixed;background-position:top center}.avada-footer-fx-sticky #boxed-wrapper,.avada-footer-fx-sticky #wrapper,.avada-footer-fx-sticky-with-parallax-bg-image #boxed-wrapper,.avada-footer-fx-sticky-with-parallax-bg-image #wrapper,.avada-footer-fx-sticky-with-parallax-bg-image.layout-boxed-mode:not(.fusion-top-header) #boxed-wrapper,.avada-footer-fx-sticky.layout-boxed-mode:not(.fusion-top-header) #boxed-wrapper{display:flex;flex-direction:column;min-height:100vh}.avada-footer-fx-sticky-with-parallax-bg-image.layout-boxed-mode:not(.fusion-top-header) #boxed-wrapper #wrapper,.avada-footer-fx-sticky.layout-boxed-mode:not(.fusion-top-header) #boxed-wrapper #wrapper{width:100%}.avada-footer-fx-sticky #main,.avada-footer-fx-sticky-with-parallax-bg-image #main{flex-grow:1}.wp-audio-shortcode{max-height:150px}.tkt-slctr-tbl-wrap-dv table{margin-bottom:10px}#fancybox-overlay{z-index:100049!important}#fancybox-wrap{z-index:100050!important}div#shShutter{z-index:100049}div#shDisplay{z-index:100050}#cboxOverlay{z-index:100049!important}#colorbox{z-index:100050!important}.fusion-main-menu .lang-item>a img,.fusion-mobile-nav-holder .lang-item>a img,.fusion-secondary-menu .lang-item>a img{vertical-align:middle;padding:0 2px}.qtranxs-lang-menu-item>a img,.qtranxs-lang-menu>a img{vertical-align:middle;padding:0 3px}#wpfc_sermon_sorting{overflow:hidden;margin:0 -10px}#wpfc_sermon_sorting>span{display:block;float:left;width:25%;padding:0 10px}#wpfc_sermon_sorting .avada-select-parent select{width:100%}.fusion-ubermenu-support .fusion-header-v1 .fusion-header .fusion-row,.fusion-ubermenu-support .fusion-header-v2 .fusion-header .fusion-row,.fusion-ubermenu-support .fusion-header-v3 .fusion-header .fusion-row,.fusion-ubermenu-support .fusion-header-v7 .fusion-header .fusion-row{position:relative}.fusion-ubermenu-support .fusion-secondary-main-menu .fusion-row{position:relative}.fusion-ubermenu{overflow:visible;position:static}.cp-module .cp-slidein{z-index:9999}.fusion-body .product-buttons .wc-gzd-additional-info{margin:.5em 0 .5em 0}.fusion-body .product-buttons .wc-gzd-additional-info a{display:inline;float:none;padding:inherit;font-size:inherit}.fusion-body .product-buttons .wc-gzd-additional-info+a{float:left}.fusion-body .product-buttons .wc-gzd-additional-info+a+a,.fusion-body .product-buttons .wc-gzd-additional-info+a+a+a,.fusion-body .product-buttons .wc-gzd-additional-info+a+a+a+a{float:right}.fusion-body .product-buttons .wc-gzd-additional-info:last-of-type{margin-bottom:1.5em}.fusion-body .fusion-carousel-meta .wc-gzd-additional-info{margin-bottom:.5em}.fusion-body .fusion-carousel-meta .wc-gzd-additional-info:first-of-type{margin-top:1.5em}.fusion-body .fusion-carousel-meta .wc-gzd-additional-info:last-of-type{margin-bottom:1.5em}.bg-parallax-parent.video{position:relative}.bg-parallax.video,.fusion-bg-parallax.video{position:absolute;pointer-events:none!important;overflow:hidden;top:0;left:0;right:0;bottom:0;z-index:-1}.bg-parallax.video iframe,.fusion-bg-parallax.video iframe{margin-bottom:0!important;display:block!important;max-width:none!important;max-height:none!important}.parallax-inner{min-height:150px}.fusion-bg-parallax[data-bg-size-adjust=dont-scale]+.bg-parallax-parent .parallax-inner{background-size:auto!important}.datepicker.dropdown-menu{border-radius:0;border:0;padding:15px}.datepicker.dropdown-menu:before{border-bottom:0}.datepicker.dropdown-menu thead tr:nth-child(2){font-size:16px}.datepicker.dropdown-menu td,.datepicker.dropdown-menu th{border-radius:0;border:0;padding:9px 10px}.datepicker.dropdown-menu td.active,.datepicker.dropdown-menu td.active:hover{border:0;text-shadow:none}.datepicker.dropdown-menu table tr td.new,.datepicker.dropdown-menu table tr td.old{background-color:#fff!important;color:#999!important}.datepicker.dropdown-menu tbody td{border:1px solid #fff}.datepicker.dropdown-menu .datepicker-months td{padding:15px 0 0}.datepicker.dropdown-menu .datepicker-months span{text-shadow:none}.datepicker.dropdown-menu .datepicker-months span:hover{text-shadow:none}.crossfade-images{white-space:nowrap;display:flex;align-items:center}.crossfade-images .helper{display:inline-block;height:100%;vertical-align:middle}.crossfade-images:hover img:not(.hover-image){opacity:0}.crossfade-images:hover .hover-image{opacity:1!important}.crossfade-images img{transition:opacity .5s ease-in-out;position:relative;z-index:50;min-width:100%;vertical-align:middle}.crossfade-images .hover-image{position:absolute;left:0;right:0;margin:0 auto;opacity:0}.avada-html-layout-boxed,.avada-html-layout-boxed body,.avada-html-layout-boxed body.custom-background,html:not(.avada-html-layout-boxed):not(.avada-html-layout-framed),html:not(.avada-html-layout-boxed):not(.avada-html-layout-framed) body{background-color:var(--bg_color);background-blend-mode:var(--bg-color-overlay)}.avada-html-has-bg-image .avada-has-bg-image-full.layout-boxed-mode.layout-scroll-offset-framed .fusion-bottom-frame,.avada-html-has-bg-image .avada-has-bg-image-full.layout-boxed-mode.layout-scroll-offset-framed .fusion-sides-frame,.avada-html-has-bg-image .avada-has-bg-image-full.layout-boxed-mode.layout-scroll-offset-framed .fusion-top-frame,.avada-html-has-bg-image .avada-has-bg-image-full:not(.layout-boxed-mode),.avada-html-has-bg-image .avada-has-bg-image-full:not(.layout-scroll-offset-framed){background-attachment:fixed;background-size:cover;background-position:center center}.layout-boxed-mode.layout-scroll-offset-framed .fusion-bottom-frame,.layout-boxed-mode.layout-scroll-offset-framed .fusion-sides-frame,.layout-boxed-mode.layout-scroll-offset-framed .fusion-top-frame{background-color:var(--bg_color);background-blend-mode:var(--bg-color-overlay);background-image:var(--bg_image)}body{background-image:var(--bg_image);background-repeat:var(--bg_repeat)}#main,.layout-boxed-mode #main,.layout-boxed-mode.avada-footer-fx-sticky .above-footer-wrapper,.layout-boxed-mode.avada-footer-fx-sticky-with-parallax-bg-image .above-footer-wrapper,.layout-wide-mode #main,.layout-wide-mode #wrapper,body,html,html body.custom-background{background-color:var(--content_bg_color)}.quicktags-toolbar input{background:linear-gradient(to top,var(--content_bg_color),var(--form_bg_color)) #3e3e3e}#main,.wrapper_blank #main{background-image:var(--content_bg_image);background-repeat:var(--content_bg_repeat)}#main.full-bg,.wrapper_blank #main.full-bg{background-attachment:fixed;background-position:center center;background-size:cover}.avada-content-bg-not-opaque #main,.avada-content-bg-not-opaque #wrapper,.avada-content-bg-not-opaque .bbp-arrow,.avada-content-bg-not-opaque .fusion-separator .icon-wrapper{background-blend-mode:overlay}html.avada-has-page-background-pattern{background-image:var(--bg_pattern);background-repeat:repeat}html.avada-has-page-background-pattern .layout-boxed-mode .fusion-bottom-frame,html.avada-has-page-background-pattern .layout-boxed-mode .fusion-sides-frame,html.avada-has-page-background-pattern .layout-boxed-mode .fusion-top-frame,html.avada-has-page-background-pattern body{background-image:var(--bg_pattern);background-repeat:repeat}html.avada-has-page-background-pattern .layout-boxed-mode.layout-scroll-offset-framed:not(.avada-has-zero-margin-offset-top){background-attachment:fixed}.fusion-load-more-button.fusion-blog-button{background-color:var(--blog_load_more_posts_button_bg_color);color:var(--blog_load_more_posts_button_text_color)}.fusion-load-more-button.fusion-blog-button:hover{background-color:var(--blog_load_more_posts_hover_button_bg_color);color:var(--blog_load_more_posts_hover_button_text_color)}body:not(.search-results) #posts-container .fusion-blog-layout-grid{margin-top:calc((var(--blog_archive_grid_column_spacing))/ -2);margin-right:calc((var(--blog_archive_grid_column_spacing))/ -2);margin-left:calc((var(--blog_archive_grid_column_spacing))/ -2);margin-bottom:0}body:not(.search-results) #posts-container .fusion-blog-layout-grid .fusion-post-grid{padding:calc((var(--blog_archive_grid_column_spacing))/ 2)}.avada-blog-archive-layout-grid .fusion-blog-archive .fusion-blog-layout-grid .post .fusion-post-content-wrapper,.avada-blog-archive-layout-masonry .fusion-blog-archive .fusion-blog-layout-masonry .post .fusion-post-content-wrapper,.avada-blog-archive-layout-timeline .fusion-blog-archive .fusion-blog-layout-timeline .post .fusion-post-content-wrapper,.avada-blog-layout-grid .fusion-blog-archive .fusion-blog-layout-grid .post .fusion-post-content-wrapper,.avada-blog-layout-masonry .fusion-blog-archive .fusion-blog-layout-masonry .post .fusion-post-content-wrapper,.avada-blog-layout-timeline .fusion-blog-archive .fusion-blog-layout-timeline .post .fusion-post-content-wrapper{padding:var(--blog_archive_grid_padding-top) var(--blog_archive_grid_padding-right) var(--blog_archive_grid_padding-bottom) var(--blog_archive_grid_padding-left)}#wrapper .fusion-events-shortcode .fusion-events-meta h4,.fusion-carousel-meta,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories a,.fusion-meta,.fusion-meta-info,.fusion-recent-posts .columns .column .meta,.fusion-single-line-meta,.post .single-line-meta,.widget_recent_entries .post-date{font-size:var(--meta_font_size)}.content-box-percentage,.fusion-date-and-formats .fusion-format-box i,.price ins .amount,.price>.amount,.star-rating span:before,.star-rating:before{color:var(--primary_color)}#main .about-author .title a:hover,#main .post h2 a:hover,.fusion-open-submenu:hover,.fusion-pagination .next:hover,.fusion-pagination .next:hover:after,.fusion-pagination .prev:hover,.fusion-pagination .prev:hover:before,.fusion-read-more:hover:after,.more a:hover:after,.pagination .pagination-next:hover:after,.pagination .pagination-prev:hover:before,.pagination-next:hover:after,.pagination-prev:hover:before,.project-content .project-info .project-info-box a:hover,.rtl .fusion-read-more:hover:before,.rtl .more a:hover:before,.single-navigation a[rel=next]:hover:after,.single-navigation a[rel=prev]:hover:before,a:hover,h5.toggle:hover a{color:var(--link_hover_color)}#wrapper .post-content blockquote,.comment-text blockquote,.fusion-body blockquote,.fusion-pagination .current,.fusion-pagination .page-numbers.current,.pagination .current,.progress-bar-content{border-color:var(--primary_color)}#nav ul li>a:hover,#sticky-nav ul li>a:hover,#wrapper .tagcloud a:hover,.fusion-hide-pagination-text .pagination-next:hover,.fusion-hide-pagination-text .pagination-prev:hover,.fusion-pagination .page-numbers:hover,.pagination a.inactive:hover{border-color:var(--link_hover_color)}.circle-yes ul li:before,.fusion-date-and-formats .fusion-date-box,.fusion-pagination .current,.fusion-search-element .searchform.fusion-search-form-classic .fusion-search-form-content .fusion-search-button input[type=submit]:hover,.fusion-search-form-classic .searchform:not(.fusion-search-form-clean) .fusion-search-form-content .fusion-search-button input[type=submit]:hover,.pagination .current,.progress-bar-content,.table-2 table thead,ul.arrow li:before,ul.circle-yes li:before{background-color:var(--primary_color)}#toTop:hover,.tagcloud a:hover{background-color:var(--link_hover_color)}#toTop{background-color:var(--totop_background);border-radius:4px 4px 0 0;bottom:0;height:35px;position:fixed;text-align:center;width:48px;opacity:0;z-index:100000;transition:opacity .4s ease-in-out,background .2s ease-in-out;line-height:1;pointer-events:none}.to-top-container #toTop:hover{background-color:var(--totop_background_hover)}#toTop:before{line-height:35px;content:"\f106";-webkit-font-smoothing:antialiased;font-family:awb-icons;font-size:22px;color:var(--totop_icon_color)}#toTop:hover::before{color:var(--totop_icon_hover)}#toTop:active,#toTop:focus{outline:0;background-color:var(--totop_background)}#toTop.fusion-to-top-active{pointer-events:auto;opacity:.9;transition:opacity .4s ease-in-out,background .2s ease-in-out}.to-top-container #toTop{border-radius:var(--totop_border_radius) var(--totop_border_radius) 0 0}.to-top-floating #toTop{bottom:var(--totop_spacing_bottom,30px);height:44px;width:44px;border-radius:var(--totop_border_radius) var(--totop_border_radius) var(--totop_border_radius) var(--totop_border_radius)}.to-top-floating #toTop:before{line-height:42px}.to-top-right #toTop{right:var(--totop_spacing_side,75px)}.to-top-left #toTop{left:var(--totop_spacing_side,75px)}.awb-to-top-progress{display:none}.awb-to-top-scroll-progress #toTop{display:flex;justify-content:center;background:0 0}.awb-to-top-scroll-progress #toTop:before{z-index:1}.awb-to-top-scroll-progress #toTop:active,.awb-to-top-scroll-progress #toTop:focus,.awb-to-top-scroll-progress #toTop:hover{background:0 0}.awb-to-top-scroll-progress .awb-to-top-progress{display:block;position:absolute;top:-2.2px;left:-2.2px}.awb-to-top-scroll-progress .awb-to-top-progress rect{stroke-width:4;fill:transparent;transition:fill .2s ease-in-out,stroke .2s ease-in-out;rx:var(--totop_border_radius);ry:var(--totop_border_radius)}.awb-to-top-scroll-progress .awb-to-top-progress .awb-scale{fill:var(--totop_background)}.awb-to-top-scroll-progress .awb-to-top-progress .awb-progress{stroke-dasharray:166;stroke-dashoffset:166;stroke:var(--totop_background_hover)}.awb-to-top-scroll-progress:hover .awb-to-top-progress .awb-scale{stroke:var(--totop_background_hover)!important;fill:var(--totop_background_hover)}.awb-to-top-scroll-progress:active .awb-to-top-progress .awb-scale,.awb-to-top-scroll-progress:focus .awb-to-top-progress .awb-scale{fill:var(--totop_background)}.fusion-body:not(.has-sidebar) .alignfull{margin-right:calc(50% - 50vw);margin-left:calc(50% - 50vw);max-width:100vw;width:100vw}.fusion-body:not(.has-sidebar) .alignwide:not(.tribe-events-view){position:relative;left:50%;transform:translateX(-50%);max-width:none;min-width:100%;width:80vw}.tribe-editor__block .tribe-editor__btn--link,.tribe-editor__event-website__label-text input,.wp-block-file .wp-block-file__button,.wp-block-search .wp-block-search__button{color:var(--button_accent_color);text-transform:var(--button_text_transform);background-color:var(--button_gradient_top_color);background-image:linear-gradient(to top,var(--button_gradient_bottom_color),var(--button_gradient_top_color));border-width:var(--button_border_width-top) var(--button_border_width-right) var(--button_border_width-bottom) var(--button_border_width-left);border-style:solid;border-color:var(--button_border_color);border-radius:var(--button-border-radius-top-left) var(--button-border-radius-top-right) var(--button-border-radius-bottom-right) var(--button-border-radius-bottom-left);font-family:var(--button_typography-font-family);font-weight:var(--button_typography-font-weight);font-style:var(--button_typography-font-style);letter-spacing:var(--button_letter_spacing);box-shadow:var(--button_box_shadow);padding:var(--button_padding);font-size:var(--button_font_size);line-height:var(--button_line_height);transition:all .2s}.tribe-editor__block .tribe-editor__btn--link:hover,.tribe-editor__event-website__label-text input:hover,.wp-block-file .wp-block-file__button:hover,.wp-block-search .wp-block-search__button:hover{color:var(--button_accent_hover_color);border-color:var(--button_border_hover_color);background-color:var(--button_gradient_top_color_hover);background-image:linear-gradient(to top,var(--button_gradient_bottom_color_hover),var(--button_gradient_top_color_hover))}.wp-block-code{border-color:var(--sep_color)}.wp-block-code code{white-space:pre-wrap;word-break:break-word}.wp-block-embed #meetup_oembed{height:auto!important}.wp-block-file{display:flex;align-items:center;flex-wrap:wrap}.wp-block-media-text .wp-block-media-text__content p{margin-bottom:0}p.has-background{padding:1.5em 2em}.fusion-body p.has-drop-cap:not(:focus):first-letter{font-size:5.5em}p.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;line-height:.68;font-weight:100;margin:.05em .1em 0 0;text-transform:uppercase;font-style:normal}.wp-block-preformatted{overflow:auto;padding:1em}.fusion-body .wp-block-pullquote blockquote{margin:1em;padding:0;background-color:transparent;border:none;font-style:normal}.wp-block-pullquote cite{color:inherit}.wp-block-quote{border-left-color:var(--primary_color);background-color:var(--testimonial_bg_color);font-style:italic}.wp-block-quote.is-style-default{margin:2em;padding:1em}.wp-block-quote.is-style-default cite{font-size:.75em}.wp-block-quote.is-style-large{margin:2em;padding:1.5em}.ltr .wp-block-quote.is-style-large{border-left:4px solid var(--primary_color)}.rtl .wp-block-quote.is-style-large{border-right:4px solid var(--primary_color)}.wp-block-quote.is-style-large p{font-size:2em}.wp-block-quote.is-style-large cite{font-size:1em}.wp-block-separator{border-color:var(--sep_color)}.wp-block-separator.is-style-dots:before{color:var(--sep_color)}.wp-block-table td,.wp-block-table th{border-color:var(--sep_color)}.wp-block-table th,.wp-block-table tr:nth-child(2n){background:#f6f6f6}.wp-block-table tr td{padding:10px 20px}.wp-block-tag-cloud a{border-color:var(--sep_color)}.wp-block-verse{color:inherit;margin:2em;padding:1em;font-style:italic;background-color:var(--testimonial_bg_color)}.wp-block-verse pre{padding:0;color:inherit}.wp-block-calendar table caption,.wp-block-calendar table tbody{color:inherit}.wp-block-calendar tbody td,.wp-block-calendar th{border-color:var(--sep_color)}.wp-block-calendar a{text-decoration:none}.wp-block-calendar tfoot a{color:var(--link_color)}.wp-block-calendar tfoot a:hover{color:var(--link_hover_color)}.fusion-body .wp-block-archives-list li{border-color:var(--sep_color)}.wp-block-categories .children,.wp-block-categories .wp-block-categories__list{margin:0 0 0 5px!important;padding:10px 0 0 0!important}.wp-block-categories .children li,.wp-block-categories .wp-block-categories__list li{border-color:var(--sep_color)}.wp-block-categories .children li:last-child,.wp-block-categories .wp-block-categories__list li:last-child{padding-bottom:0;border-bottom:none}.wp-block-latest-comments{margin:0;padding:0}.wp-block-latest-comments .wp-block-latest-comments__comment{margin-bottom:0;padding:10px 10px 10px 0;border-bottom:1px solid;font-size:inherit}.fusion-body .wp-block-latest-comments .wp-block-latest-comments__comment{border-color:var(--sep_color)}.fusion-avatar-square .wp-block-latest-comments .wp-block-latest-comments__comment-avatar{border-radius:0}.fusion-avatar-circle .wp-block-latest-comments .wp-block-latest-comments__comment-avatar{border-radius:50%}.wp-block-latest-comments .wp-block-latest-comments__comment-date{margin:.15em 0;font-size:.8em}.wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p{margin-bottom:0;font-size:.9em;line-height:inherit}.fusion-body .wp-block-latest-posts li{border-color:var(--sep_color)}.fusion-body .wp-block-rss li{border-color:var(--sep_color)}.wp-block-rss .wp-block-rss__item-author,.wp-block-rss .wp-block-rss__item-publish-date{margin:.15em 0}.wp-block-rss .wp-block-rss__item-author{font-style:italic}.wp-block-search{align-items:center}.wp-block-search .wp-block-search__input{padding:0 15px;border-style:solid;border-width:var(--form_border_width-top) var(--form_border_width-right) var(--form_border_width-bottom) var(--form_border_width-left);border-radius:var(--form_border_radius);background-color:var(--form_bg_color);color:var(--form_text_color);font-size:var(--form_text_size);border-color:var(--form_border_color);height:var(--form_input_height);padding-top:0;padding-bottom:0}.wp-block-search .wp-block-search__input:focus{border-color:var(--form_focus_border_color)}.wp-block-tag-cloud a{display:inline-flex;align-items:center;margin:2px 0;padding:0 10px;min-height:2.15em;line-height:2.15em;font-size:.9em;border:1px solid var(--link_color);color:var(--link_color);text-decoration:none}.wp-block-tag-cloud a:hover{color:#fff}.wp-block-tag-cloud a:hover .tag-link-count{color:#fff}.ltr .wp-block-tag-cloud a .tag-link-count{padding-left:2px}.rtl .wp-block-tag-cloud a .tag-link-count{padding-right:2px}.wp-block-tag-cloud .tag-cloud-link:hover{border-color:var(--link_hover_color);background-color:var(--link_hover_color)}.wp-block-archives-dropdown,.wp-block-categories-dropdown{width:100%}.wp-block-archives-list,.wp-block-categories,.wp-block-latest-posts,.wp-block-rss{margin:0;padding:0}.wp-block-archives-list li,.wp-block-categories li,.wp-block-latest-posts li,.wp-block-rss li{display:block;position:relative;padding:10px 10px 10px 12px;border-bottom:1px solid var(--sep_color)}.wp-block-archives-list li a:before,.wp-block-categories li a:before,.wp-block-latest-posts li a:before,.wp-block-rss li a:before{content:"\f105";position:absolute;margin-left:-12px;font-family:awb-icons;color:inherit}.wp-block-latest-comments .wp-block-latest-comments__comment-date,.wp-block-latest-posts__post-date,.wp-block-rss__item-author,.wp-block-rss__item-publish-date{font-size:var(--meta_font_size)}.tribe-editor__events-link .tribe-editor__btn--link input{font-family:inherit;font-weight:inherit;font-size:inherit;color:inherit;background:0 0}.tribe-editor__block .tribe-editor__btn--link svg{display:none}.tribe-editor__event-price__label{color:var(--primary_color)}.header-v4 .search-table{display:table;width:286px}.fusion-header-wrapper{position:relative;z-index:10011}.fusion-header-wrapper .tooltip{z-index:10030}.fusion-header-sticky-height{display:none}.fusion-is-sticky .fusion-header-sticky-height{display:block}.fusion-header{padding-left:30px;padding-right:30px;backface-visibility:hidden;transition:background-color .25s ease-in-out}.fusion-header-backface{backface-visibility:hidden}.fusion-header-v2 .fusion-header,.fusion-header-v3 .fusion-header,.fusion-header-v4 .fusion-header,.fusion-header-v5 .fusion-header{border-bottom:1px solid transparent}.fusion-mobile-logo{display:none}.fusion-secondary-header{border-bottom:1px solid transparent;background-color:var(--header_top_bg_color)}.fusion-secondary-header .fusion-alignleft{float:left;margin-right:0;flex-grow:1}.fusion-secondary-header .fusion-alignright{float:right;margin-left:0;flex-grow:1}.fusion-secondary-header .fusion-alignright>*{float:right}.fusion-secondary-header .fusion-row{display:flex;justify-content:space-between;align-items:center}.fusion-header-v2 .fusion-secondary-header{border-top:3px solid var(--primary_color)}.fusion-secondary-header .fusion-mobile-nav-holder{width:80%;margin:0 auto}.fusion-mobile-menu-design-flyout .fusion-secondary-header .fusion-icon-only-link .menu-title,.fusion-mobile-menu-design-modern .fusion-secondary-header .fusion-icon-only-link .menu-title{display:none}.fusion-header-separator{display:inline-block;padding:0 6px}.fusion-contact-info{line-height:43px}.fusion-header-v4 .fusion-header{padding-top:30px;padding-bottom:30px;transition:none}.fusion-header-v4 .fusion-header.live-suggestion-added{position:relative;z-index:201}.fusion-header-v4 .fusion-logo{width:100%;display:flex;flex-wrap:wrap;flex-direction:row;justify-content:space-between;align-items:center}.fusion-header-v4 .fusion-logo:after,.fusion-header-v4 .fusion-logo:before{content:none}.fusion-header-v4 .fusion-logo .fusion-logo-link{float:none}.fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper{display:flex;flex-wrap:nowrap;flex-direction:row;justify-content:space-between;align-items:center}.fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper .fusion-header-tagline{order:1}.fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper .fusion-header-tagline a{display:inline}.fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper .fusion-header-tagline .fusion-button{display:inline-block}.fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper .fusion-secondary-menu-search{order:2}.fusion-header-v4 .fusion-header-content-3-wrapper .searchform{margin-left:15px}.fusion-header-v4 .search-table{width:286px}.fusion-header-tagline{margin:0;padding:0;line-height:32px;font-weight:400;font-size:var(--tagline_font_size);color:var(--tagline_font_color)}.fusion-header-banner{float:right}.fusion-logo .fusion-header-banner a{float:none}.fusion-secondary-main-menu{border-bottom:1px solid transparent;padding-left:30px;padding-right:30px;backface-visibility:hidden}.fusion-secondary-main-menu .fusion-main-menu{float:none}.fusion-secondary-main-menu .search-table{width:100%}.fusion-secondary-main-menu .fusion-main-menu .searchform{float:none;margin-left:0;display:block;padding:0}.fusion-secondary-main-menu .fusion-mobile-menu-search{margin:5px 0}.fusion-header-v4 .fusion-main-menu,.fusion-header-v5 .fusion-main-menu{float:none}.fusion-header-v4 .fusion-main-menu .fusion-menu,.fusion-header-v5 .fusion-main-menu .fusion-menu{display:flex;flex-wrap:wrap}.fusion-header-menu-align-center .fusion-menu{justify-content:center}.fusion-header-menu-align-right .fusion-menu{justify-content:flex-end}.fusion-header-v5 .fusion-header{transition:none}.fusion-header-v5.fusion-logo-center .fusion-logo{float:none;text-align:center}.fusion-header-v5.fusion-logo-center .fusion-logo a{display:inline-block}.fusion-logo{display:block;float:left;max-width:100%}.fusion-logo:after,.fusion-logo:before{content:" ";display:table}.fusion-logo:after{clear:both}.fusion-logo a{display:block;max-width:100%}.fusion-logo img{width:auto}.fusion-logo-left .fusion-header-banner{float:right}.fusion-logo-left.fusion-header-v4 .fusion-logo{float:none;width:auto}.fusion-logo-right .fusion-logo{float:right;text-align:right}.fusion-logo-right.fusion-header-v1 .fusion-main-menu,.fusion-logo-right.fusion-header-v2 .fusion-main-menu,.fusion-logo-right.fusion-header-v3 .fusion-main-menu,.fusion-logo-right.fusion-header-v6 .fusion-main-menu{float:left}.fusion-logo-right .fusion-header-banner{float:left}.fusion-logo-right .fusion-header-tagline{float:left}.fusion-logo-right .searchform{float:left}.fusion-logo-right .fusion-mobile-menu-icons{left:0;right:auto}.fusion-logo-right .fusion-mobile-menu-icons a{float:left;margin-left:0;margin-right:15px}.fusion-logo-right.fusion-header-v4 .fusion-logo .fusion-logo-link{order:2}.fusion-logo-right.fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper{order:1}.fusion-logo-right .fusion-flyout-mobile-menu-icons{float:left}.fusion-sub-menu-slide .fusion-main-menu>ul>li>.fusion-megamenu-wrapper,.fusion-sub-menu-slide .fusion-main-menu>ul>li>.fusion-menu-cart-items,.fusion-sub-menu-slide .fusion-main-menu>ul>li>.sub-menu{margin-top:20px;transition:opacity .2s ease-in,margin .2s ease-out}.fusion-sub-menu-slide .fusion-main-menu>ul>li:hover>.fusion-megamenu-wrapper,.fusion-sub-menu-slide .fusion-main-menu>ul>li:hover>.fusion-menu-cart-items,.fusion-sub-menu-slide .fusion-main-menu>ul>li:hover>.sub-menu{margin-top:0}.fusion-sub-menu-slide .fusion-main-menu>ul>li>.sub-menu li .sub-menu{margin:0 20px;transition:opacity .2s ease-in,margin .2s ease-out}.fusion-sub-menu-slide .fusion-main-menu>ul>li>.sub-menu li:hover>.sub-menu{margin:0}.fusion-sub-menu-slide.side-header-right .fusion-main-menu>ul>li>.sub-menu li .sub-menu{margin:0 0 0 -20px}.fusion-sub-menu-slide.side-header-right .fusion-main-menu>ul>li>.sub-menu li:hover>.sub-menu{margin:0}.fusion-mobile-menu-design-flyout:not(.fusion-header-v6) .fusion-header{-webkit-transform:none;-moz-transform:none}.fusion-mobile-menu-design-flyout.fusion-header-has-flyout-menu .fusion-flyout-mobile-menu-icons{display:none}.fusion-mobile-menu-design-flyout.fusion-flyout-active .fusion-header{width:100%;max-width:100%;z-index:210}.fusion-flyout-mobile-menu-icons{float:right}body.side-header #wrapper .fusion-megamenu-wrapper{top:0}body.side-header #side-header .fusion-main-menu ul ul{right:auto}body.side-header #side-header .fusion-header-content-3-wrapper{display:flex;flex-wrap:wrap}body.side-header-left #wrapper{margin-left:280px;width:auto}body.side-header-left #side-header{left:0}body.side-header-left #side-header .side-header-border{border-right-width:1px;border-right-style:solid}body.side-header-left #side-header .fusion-main-menu .cart-contents,body.side-header-left #side-header .fusion-main-menu .login-box,body.side-header-left #side-header .fusion-main-menu .main-nav-search-form,body.side-header-left #side-header .fusion-main-menu>ul>li>ul{left:279px;top:0}body.side-header-left #side-header .fusion-main-menu .cart-contents{right:auto}body.side-header-left #side-header .fusion-main-menu .fusion-custom-menu-item-contents{top:0}body.side-header-left #side-header .fusion-main-menu .fusion-custom-menu-item-contents,body.side-header-left #side-header .fusion-main-menu>ul>li>ul{left:calc(var(--side_header_width) - 1px)}body.side-header-left #side-header.header-shadow .side-header-border:after{box-shadow:10px 0 15px -5px rgba(0,0,0,.14);right:0;width:25px}body.side-header-left #side-header #nav .cart-contents,body.side-header-left #side-header #nav .login-box,body.side-header-left #side-header #nav .main-nav-search-form,body.side-header-left #side-header #nav>ul>li>ul{left:calc(var(--side_header_width) - 1px)}body.side-header-left.layout-boxed-mode #side-header{left:auto;margin-left:calc((var(--side_header_width)) * -1)}body.side-header-right #wrapper{margin-right:280px;width:auto}body.side-header-right #side-header{right:0}body.side-header-right #side-header .side-header-border{border-left-width:1px;border-left-style:solid}body.side-header-right #side-header .fusion-main-menu .fusion-megamenu-wrapper .fusion-megamenu{float:right}body.side-header-right #side-header .fusion-main-menu .main-nav-search-form{left:-250px;top:0}body.side-header-right #side-header .fusion-main-menu .cart-contents{left:-182px}body.side-header-right #side-header .fusion-main-menu .login-box{left:-187px}body.side-header-right #side-header .cart-contents,body.side-header-right #side-header .login-box{left:0;right:auto}body.side-header-right #side-header.header-shadow .side-header-border:before{box-shadow:-10px 0 15px -5px rgba(0,0,0,.14);left:0;width:25px}body.side-header-right.rtl #side-header .cart-contents,body.side-header-right.rtl #side-header .login-box{right:0;left:auto}#side-header{width:280px;height:100%;position:absolute;z-index:3000;-webkit-backface-visibility:hidden;box-sizing:border-box}#side-header .side-header-background-color,#side-header .side-header-background-image,#side-header .side-header-border{z-index:-1;position:absolute;top:0;bottom:0;height:100vh;width:280px;pointer-events:none}#side-header .side-header-border{z-index:0;border-color:var(--header_border_color)}#side-header .side-header-wrapper{padding-bottom:20px;z-index:1}#side-header .side-header-wrapper:after,#side-header .side-header-wrapper:before{content:" ";display:table}#side-header .side-header-wrapper:after{clear:both}#side-header .side-header-wrapper .fusion-header-has-flyout-menu-content>.fusion-secondary-menu-search,#side-header .side-header-wrapper>.fusion-secondary-menu-search{display:none;clear:both}#side-header .fusion-secondary-menu-search-inner{border-top:1px solid;padding:5px 30px}#side-header .fusion-logo{float:none}#side-header .fusion-logo-left .fusion-logo{float:none}#side-header .fusion-logo-center .fusion-logo{float:none;text-align:center}#side-header .fusion-logo-right .fusion-logo{float:none}#side-header .fusion-sticky-logo{display:none}#side-header .fusion-main-menu{float:none;-webkit-backface-visibility:hidden;position:relative;z-index:1;clear:both}#side-header .fusion-main-menu ul ul{top:0;border-top:0}#side-header .fusion-main-menu .fusion-megamenu-wrapper .fusion-megamenu-holder{border-top:0}#side-header .fusion-main-menu>ul>li{float:none;padding:0}#side-header .fusion-main-menu>ul>li>a{border-top-width:0;border-bottom-width:1px;border-right:0;border-style:solid;height:auto}#side-header .fusion-main-menu>ul>li:first-child>a{border-top-width:1px;border-style:solid}#side-header .fusion-main-menu>ul .sub-menu>li:last-child>a{border-bottom:none}#side-header .fusion-main-menu .fusion-main-menu-search .fusion-custom-menu-item-contents{border-top-width:1px;border-top-style:solid}#side-header .fusion-main-menu .wpml-ls-item .menu-text,#side-header .fusion-main-menu .wpml-ls-item>a{justify-content:center}.side-header-left #side-header .fusion-main-menu>ul>li>a{border-left-width:0}.side-header-left #side-header .fusion-main-menu>ul>li.current-menu-ancestor>a,.side-header-left #side-header .fusion-main-menu>ul>li.current-menu-item>a{border-right-width:0}.side-header-right #side-header .fusion-main-menu>ul>li>a{border-left-width:0}.side-header-right #side-header .fusion-main-menu>ul>li.current-menu-ancestor>a,.side-header-right #side-header .fusion-main-menu>ul>li.current-menu-item>a{border-left-width:0}#side-header .side-header-content:after,#side-header .side-header-content:before{content:" ";display:table}#side-header .side-header-content:after{clear:both}#side-header .side-header-content-1,#side-header .side-header-content-2{margin-top:40px}#side-header .fusion-custom-menu-item-contents{right:auto!important;top:0}#side-header .fusion-contact-info{word-wrap:break-word}#side-header .header-social{background:0 0!important;border:0!important}#side-header .fusion-social-links-header{margin:0}#side-header .fusion-secondary-menu .fusion-secondary-menu-icon{background:0 0;min-width:100%;border-right:0}#side-header .fusion-secondary-menu .fusion-secondary-menu-icon .amount,#side-header .fusion-secondary-menu .fusion-secondary-menu-icon .fusion-woo-cart-separator,#side-header .fusion-secondary-menu .fusion-secondary-menu-icon:after{display:none}#side-header .fusion-secondary-menu>ul>li{margin-bottom:2px}#side-header .fusion-secondary-menu>ul>li:first-child>a{padding-left:0}#side-header .fusion-header-tagline{margin-top:40px;float:none;text-align:left}.rtl #side-header .fusion-header-tagline{text-align:right}#side-header .side-header-content-3 .searchform{margin-top:40px}#side-header .fusion-header-banner{margin-top:40px;float:none}#side-header .fusion-social-links-header .fusion-social-networks a{margin-bottom:20px}#side-header .fusion-social-networks.boxed-icons .fusion-social-network-icon{margin-bottom:10px}#side-header.fusion-is-sticky{box-shadow:rgba(0,0,0,.117647) 0 1px 3px}.fusion-main-menu{float:right;position:relative;z-index:200;overflow:hidden}#side-header .fusion-main-menu:hover,.fusion-header-v1 .fusion-main-menu:hover,.fusion-header-v2 .fusion-main-menu:hover,.fusion-header-v3 .fusion-main-menu:hover,.fusion-header-v4 .fusion-main-menu:hover,.fusion-header-v5 .fusion-main-menu:hover,.fusion-header-v7 .fusion-main-menu:hover{overflow:visible}.fusion-main-menu>ul>li{padding-right:45px}.fusion-main-menu>ul>li:last-child{padding-right:0}.fusion-main-menu>ul>li>a{display:flex;align-items:center;line-height:1;-webkit-font-smoothing:subpixel-antialiased}.fusion-main-menu>ul>li>a .fusion-menu-description{display:block;margin-top:.6em;font-size:.8em}.fusion-main-menu>ul>li>a>.fusion-megamenu-icon{width:auto;transition:color .2s linear}.fusion-main-menu>ul>li>a>.fusion-megamenu-image>img{max-height:none}.fusion-main-menu>ul>li>a.fusion-arrow-highlight{position:relative}.fusion-main-menu>ul>li>a.fusion-arrow-highlight:after{width:0;height:0;border-style:solid;position:absolute}.fusion-main-menu>ul>li>a.fusion-flex-link{text-align:center;box-sizing:border-box}.fusion-main-menu>ul>li>a.fusion-flex-link.fusion-flex-column:not(.fusion-layout-column){flex-direction:column;justify-content:center}.fusion-main-menu>ul>.fusion-menu-item-button>a{border-color:transparent}.fusion-main-menu ul{list-style:none;margin:0;padding:0}.fusion-main-menu ul a{display:block;box-sizing:content-box}.fusion-main-menu li{float:left;margin:0;padding:0;position:relative;cursor:pointer}.fusion-main-menu li:hover>.fusion-megamenu-wrapper .sub-menu{visibility:visible;opacity:1}.fusion-main-menu .iclflag{vertical-align:middle;margin-top:-2px}.fusion-main-menu li.fusion-active-link>.fusion-megamenu-wrapper,.fusion-main-menu li.fusion-active-link>.sub-menu,.fusion-main-menu li:hover>.fusion-megamenu-wrapper,.fusion-main-menu li:hover>.sub-menu{visibility:visible;opacity:1}.fusion-main-menu .fusion-dropdown-menu{overflow:hidden}.fusion-main-menu .fusion-dropdown-menu.fusion-active-link{overflow:visible}.fusion-main-menu .sub-menu{position:absolute;left:0;visibility:hidden;opacity:0;z-index:1;transition:opacity .2s ease-in}.fusion-main-menu .sub-menu ul{top:0}.fusion-main-menu .sub-menu li{float:none;margin:0;padding:0}.fusion-main-menu .sub-menu a{border:0;padding:7px 20px;line-height:19px;text-indent:0;height:auto;transition:color .2s ease-in-out,background-color .2s ease-in-out,border-color .2s ease-in-out,height 0s,line-height 0s}.fusion-main-menu .fusion-custom-menu-item-contents{position:absolute;left:auto;right:0;visibility:hidden;opacity:0;transition:opacity .2s ease-in}.fusion-main-menu .fusion-main-menu-search a{font-family:awb-icons;cursor:pointer}.fusion-main-menu .fusion-main-menu-search a:after{border-radius:50% 50% 50% 50%;content:"\f002"}.fusion-main-menu .fusion-main-menu-search .fusion-custom-menu-item-contents{display:none;padding:25px;text-align:right;border:1px solid transparent}.fusion-main-menu .fusion-main-menu-search-open .fusion-custom-menu-item-contents{visibility:visible;opacity:1;z-index:11}.fusion-main-menu .fusion-main-menu-cart:not(.menu-item-type-custom)>a{font-family:awb-icons;cursor:pointer}.fusion-main-menu .fusion-main-menu-cart:not(.menu-item-type-custom)>a:after{border-radius:50% 50% 50% 50%;content:"\f07a"}.fusion-main-menu .fusion-widget-cart-counter>a{font-family:awb-icons;cursor:pointer}.fusion-main-menu .fusion-widget-cart-counter>a:before{border-radius:50% 50% 50% 50%;content:"\f07a";margin-right:5px;line-height:1}.fusion-main-menu .fusion-widget-cart-counter>a:after{display:none}.fusion-main-menu .fusion-widget-cart-counter>a .fusion-widget-cart-number,.fusion-main-menu .fusion-widget-cart-counter>a .menu-text{line-height:1}.fusion-main-menu .fusion-widget-cart-counter>a .fusion-widget-cart-number{padding:5px 5px 4px;box-sizing:content-box}.fusion-header-has-flyout-menu .fusion-header{z-index:999999;left:0;right:0;top:0;margin:0 auto;width:100%;overflow:visible!important}.admin-bar .fusion-header-has-flyout-menu .fusion-header{top:32px}.fusion-header-has-flyout-menu .fusion-header-v6-content{z-index:99999;display:flex;align-items:center;justify-content:space-between}.fusion-header-has-flyout-menu .fusion-header-v6-content .fusion-logo{z-index:99999}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons{display:flex;align-items:center;z-index:99999}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-cart-wrapper,.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-menu-toggle,.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle{display:inline-block;padding:0 5px;line-height:1;cursor:pointer}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-menu-toggle,.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle{cursor:pointer;display:flex;justify-content:space-between;flex-direction:column;box-sizing:content-box}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-menu-toggle .fusion-toggle-icon-line,.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line{opacity:1;transform:rotate(0);transition:.25s ease-in-out}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-menu-toggle .fusion-toggle-icon-line:first-child,.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line:first-child{transform-origin:left top}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-menu-toggle .fusion-toggle-icon-line:nth-child(3),.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line:nth-child(3){transform-origin:left bottom}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle{position:relative;transition:margin .25s ease-in-out}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle .awb-icon-search{display:block;position:absolute;top:50%;left:50%;transform:translateX(-50%) translateY(-50%);opacity:1}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon{display:flex;justify-content:space-between;flex-direction:column;direction:ltr}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line{opacity:0;height:0;transition:.25s ease-in-out}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .awb-icon-shopping-cart.fusion-widget-cart-counter:before{vertical-align:middle}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .awb-icon-shopping-cart .fusion-widget-cart-number{margin-left:6px;padding:0 3px;vertical-align:middle;box-sizing:content-box}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-icon{transition:all .25s ease-in-out}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-icon:before{border-radius:50%;background-clip:padding-box;transition:all .25s ease-in-out}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .awb-icon-shopping-cart,.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle{margin-top:-2px}.fusion-header-has-flyout-menu.fusion-logo-right .fusion-logo{order:2}.fusion-header-has-flyout-menu.fusion-logo-right .fusion-flyout-menu-icons{order:1}.fusion-header-has-flyout-menu.fusion-logo-right .fusion-flyout-menu-icons .fusion-flyout-menu-toggle{order:1}.fusion-header-has-flyout-menu.fusion-logo-right .fusion-flyout-menu-icons .fusion-flyout-search-toggle{order:2}.fusion-header-has-flyout-menu.fusion-logo-right .fusion-flyout-menu-icons .fusion-flyout-cart-wrapper{order:3}.fusion-header-has-flyout-menu .fusion-flyout-menu{display:flex;align-items:center;overflow-y:auto;padding:0 25px 25px;height:100%}.fusion-is-sticky .fusion-header-has-flyout-menu .fusion-flyout-menu.fusion-main-menu{display:flex}.fusion-header-has-flyout-menu .fusion-flyout-menu.fusion-mobile-nav-holder{display:none}.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu{width:100%;text-align:center;margin-top:auto;margin-bottom:auto;padding:25px 0}.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu li,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu li{display:block;float:none;line-height:normal;width:100%;cursor:default}.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu li:first-child,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu li:first-child{padding-top:0}.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu li.fusion-mobile-nav-item.fusion-flyout-menu-item-last,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu li.fusion-mobile-nav-item:last-child,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu li.menu-item.fusion-flyout-menu-item-last,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu li.menu-item:last-child,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu li.fusion-mobile-nav-item.fusion-flyout-menu-item-last,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu li.fusion-mobile-nav-item:last-child,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu li.menu-item.fusion-flyout-menu-item-last,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu li.menu-item:last-child{padding-bottom:0}.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu li a,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu li a{display:inline-block}.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu li a.fusion-flex-link,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu li a.fusion-flex-link{display:inline-flex}.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu .fusion-flyout-menu-backgrounds,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu .fusion-flyout-menu-backgrounds{display:none;z-index:-1;position:fixed;top:0;right:0;bottom:0;left:0;padding:0}.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu .fusion-flyout-menu-backgrounds .fusion-flyout-menu-item-bg,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu .fusion-flyout-menu-backgrounds .fusion-flyout-menu-item-bg{opacity:0;position:absolute;top:0;left:0;height:100vh;width:100%;background-repeat:no-repeat;background-size:cover;background-position:center center;transition:opacity cubic-bezier(.25, .46, .45, .94) 450ms}.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-menu .fusion-flyout-menu-backgrounds .fusion-flyout-menu-item-bg.active,.fusion-header-has-flyout-menu .fusion-flyout-menu .fusion-mobile-menu .fusion-flyout-menu-backgrounds .fusion-flyout-menu-item-bg.active{opacity:1;transition:opacity cubic-bezier(.23, 1, .32, 1) 3s}.fusion-header-has-flyout-menu .fusion-flyout-search{display:flex}.fusion-header-has-flyout-menu .fusion-flyout-search .searchform{display:flex;align-items:center;margin:0 auto;padding:50px}#wrapper .fusion-header-has-flyout-menu .fusion-flyout-search .searchform .s{height:auto;background-color:transparent;border:none;border-bottom:1px solid;font-size:50px;padding:0}#wrapper .fusion-header-has-flyout-menu .fusion-flyout-search .searchform .s:-moz-placeholder,#wrapper .fusion-header-has-flyout-menu .fusion-flyout-search .searchform .s::-moz-placeholder,#wrapper .fusion-header-has-flyout-menu .fusion-flyout-search .searchform .s::-webkit-input-placeholder{opacity:1}.fusion-disable-outline #wrapper .fusion-header-has-flyout-menu .fusion-flyout-search .searchform .s{outline:0}.fusion-header-has-flyout-menu .fusion-flyout-search .searchform .search-button{display:none}.fusion-header-has-flyout-menu .fusion-flyout-menu,.fusion-header-has-flyout-menu .fusion-flyout-search{z-index:99998;position:fixed;top:0;left:0;right:0;width:100%;height:100%;opacity:0;transition:all .3s ease-in-out 0s}.fusion-header-has-flyout-menu .fusion-flyout-menu-bg{position:fixed;top:0;left:0;right:0;width:100%;height:100%;min-height:700px;opacity:0;transition:all .3s ease-in-out 0s}.fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-icons{z-index:99999}.fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-search-toggle{margin-top:0}.fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-bg{z-index:99997;opacity:1}.fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu-icons .fusion-flyout-menu-toggle .fusion-toggle-icon-line:first-child{transform:rotate(45deg)}.fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu-icons .fusion-flyout-menu-toggle .fusion-toggle-icon-line:nth-child(2){width:0;opacity:0}.fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu-icons .fusion-flyout-menu-toggle .fusion-toggle-icon-line:nth-child(3){transform:rotate(-45deg)}.fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu{opacity:1}.fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu .fusion-flyout-menu-backgrounds{display:block}.fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line{opacity:1;margin:0 auto;transition:.25s ease-in-out}.fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line:first-child{transform:rotate(45deg)}.fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line:nth-child(2){width:0;opacity:0}.fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line:nth-child(3){transform:rotate(-45deg)}.fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-menu-icons .fusion-flyout-search-toggle .awb-icon-search{opacity:0}.fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-search{opacity:1}.fusion-is-sticky .fusion-header-v6.fusion-sticky-menu-1 .fusion-main-menu .fusion-menu{display:none}.fusion-is-sticky .fusion-header-v6.fusion-sticky-menu-1 .fusion-main-menu #menu-main-menu-1{display:block}.fusion-is-sticky .fusion-header-v6.fusion-sticky-menu-1 .fusion-main-menu>ul>li>a>.fusion-megamenu-icon{font-size:inherit}.fusion-header-v6.fusion-sticky-menu-1 .fusion-main-menu #menu-main-menu-1{display:none}.fusion-header-v7 .fusion-main-menu{float:none;overflow:inherit}.fusion-header-v7 .fusion-middle-logo-ul{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.fusion-header-v7 .fusion-middle-logo-ul li{float:none;transition:padding-right .3s ease}.fusion-header-v7 .fusion-middle-logo-ul li.fusion-middle-logo-menu-logo a{height:auto;border-top-color:transparent;display:flex;align-items:center;justify-content:center}.fusion-header-v7 .fusion-middle-logo-ul li.fusion-middle-logo-menu-logo:focus a,.fusion-header-v7 .fusion-middle-logo-ul li.fusion-middle-logo-menu-logo:hover a{border-top-color:transparent}.fusion-secondary-menu{position:relative;z-index:210}.fusion-secondary-menu .fusion-megamenu-wrapper{display:none}.fusion-secondary-menu ul{margin:0;padding:0;list-style:none}.fusion-secondary-menu>ul>li{float:left;border-left:1px solid transparent}.fusion-secondary-menu>ul>li:first-child{border-left:none}.fusion-secondary-menu>ul>li>a{display:flex;align-items:center;position:relative;padding:0 13px}.fusion-secondary-menu>ul>li>.sub-menu .sub-menu{top:-1px}.fusion-secondary-menu li{position:relative}.fusion-secondary-menu .iclflag{margin-top:-2px}.fusion-secondary-menu .fusion-icon-only-link .fusion-megamenu-icon{text-align:center}.fusion-secondary-menu .sub-menu{display:block;position:absolute;left:-1px;z-index:1;visibility:hidden;opacity:0;transition:opacity .2s ease-in;border-bottom-right-radius:2px;border-bottom-left-radius:2px;border:1px solid transparent}.fusion-secondary-menu .sub-menu a{display:block;padding:7px 10px;line-height:normal;border-bottom:1px solid transparent;transition:color .2s ease-in-out,background-color .2s ease-in-out,border-color .2s ease-in-out,height 0s,line-height 0s}.fusion-secondary-menu .sub-menu>li:last-child>a{border-bottom:none}.fusion-secondary-menu li:hover>.sub-menu{visibility:visible;opacity:1}.fusion-secondary-menu .fusion-custom-menu-item-contents{position:absolute;left:-1px;visibility:hidden;opacity:0;transition:opacity .2s ease-in}.fusion-secondary-menu .fusion-secondary-menu-icon{padding-left:13px;padding-right:13px}.fusion-secondary-menu-cart>a{text-transform:uppercase}.fusion-secondary-menu-icon{min-width:176px;text-align:center}.fusion-secondary-menu-icon .menu-text{width:100%}.fusion-secondary-menu-icon .menu-text:before{font-family:awb-icons;content:"\f07a";margin-right:10px}.fusion-secondary-menu-icon .menu-text:after{font-family:awb-icons;content:"\e61f";margin-left:10px}.fusion-social-links-header{margin-top:10px}.fusion-social-links-header .fusion-social-networks a{font-size:var(--header_social_links_font_size)}.fusion-social-links-header .fusion-social-networks a.custom img{max-height:var(--header_social_links_font_size)}.fusion-social-links-header .fusion-social-networks.boxed-icons .fusion-social-network-icon{color:var(--header_social_links_icon_color)}.fusion-social-links-header .fusion-social-networks.boxed-icons .fusion-social-network-icon:not(.custom){background-color:var(--header_social_links_box_color);border-color:var(--header_social_links_box_color);border-radius:var(--header_social_links_boxed_radius)}.fusion-social-links-header .fusion-social-networks.boxed-icons a{padding:var(--header_social_links_boxed_padding);width:calc(var(--header_social_links_font_size) + (2 * (var(--header_social_links_boxed_padding))) + 2px)}.fusion-social-links-header .fusion-social-networks.boxed-icons a.fusion-social-network-icon.awb-custom-image{padding:0;background-color:transparent;border:none;border-radius:0;box-shadow:none}.fusion-social-links-header .fusion-social-networks.boxed-icons a.fusion-social-network-icon.awb-custom-image img{position:relative}.fusion-social-links-header .fusion-social-networks.boxed-icons a.custom{top:-var(--header_social_links_boxed_padding)}.fusion-social-links-header .fusion-social-networks.boxed-icons a.custom img{max-height:calc(var(--header_social_links_font_size) + (2 * (var(--header_social_links_boxed_padding))) + 2px)}.fusion-social-links-header .fusion-social-networks.boxed-icons a img{max-height:calc(var(--header_social_links_font_size) + (2 * (var(--header_social_links_boxed_padding))) + 2px)}.fusion-social-links-header .fusion-social-networks .fusion-social-network-icon{color:var(--header_social_links_icon_color)}.fusion-caret{margin-left:9px}.fusion-flex-column:not(.fusion-layout-column) .fusion-caret{margin:2px 0 0 0}.side-header-left .fusion-main-menu .fusion-caret,.side-header-right .fusion-main-menu .fusion-caret{display:inline-flex}.side-header-right .fusion-main-menu .fusion-caret{position:static}.side-header-left .fusion-main-menu .fusion-caret{position:absolute}.side-header-left.menu-text-align-right .fusion-main-menu>ul>li>a>.fusion-caret,.side-header-right.menu-text-align-left .fusion-main-menu>ul>li>a>.fusion-caret{position:static}.side-header-left .fusion-caret{margin-left:9px}.side-header-right .fusion-caret{margin-left:0;margin-right:9px}.fusion-caret .fusion-dropdown-indicator{vertical-align:middle}.fusion-caret .fusion-dropdown-indicator:before{content:"\f107";font-family:awb-icons;font-style:normal}.side-header-left .fusion-main-menu .fusion-caret .fusion-dropdown-indicator:before{content:"\f105"}.side-header-right .fusion-main-menu .fusion-caret .fusion-dropdown-indicator:before{content:"\f104"}.sub-menu .fusion-caret{position:absolute;right:15px;margin-left:0}.sub-menu .fusion-caret .fusion-dropdown-indicator:before{content:"\f105"}.side-header-right .sub-menu .fusion-caret{right:auto;left:10px}.fusion-menu-cart.fusion-active-link .fusion-custom-menu-item-contents,.fusion-menu-cart:hover .fusion-custom-menu-item-contents{visibility:visible;opacity:1}.fusion-main-menu .fusion-active-link .fusion-custom-menu-item-contents,.fusion-main-menu .fusion-active-link>.sub-menu,.fusion-secondary-menu .fusion-active-link .fusion-custom-menu-item-contents,.fusion-secondary-menu .fusion-active-link>.sub-menu{opacity:1;visibility:visible}.fusion-main-menu .fusion-active-login,.fusion-secondary-menu .fusion-active-login{overflow:visible}.fusion-main-menu .fusion-active-login .fusion-custom-menu-item-contents,.fusion-main-menu .fusion-active-login .sub-menu,.fusion-secondary-menu .fusion-active-login .fusion-custom-menu-item-contents,.fusion-secondary-menu .fusion-active-login .sub-menu{opacity:1;visibility:visible}.fusion-menu-cart-items{width:180px;border:1px solid transparent}.fusion-menu-cart-item a{border-bottom:1px solid transparent;padding:14px;line-height:normal;height:auto;display:block}.fusion-menu-cart-item img{display:inline-block;max-width:36px;margin-right:13px;border:1px solid transparent}.fusion-menu-cart-item .amount{display:inline-block}.fusion-menu-cart-item-details{display:inline-block;max-width:calc(100% - 49px);text-align:left}.fusion-menu-cart-item-title{margin-bottom:6px}.fusion-menu-cart-item-quantity,.fusion-menu-cart-item-title{display:block;line-height:normal}.fusion-menu-cart-checkout{display:flex;justify-content:space-between}.fusion-menu-cart-checkout-link,.fusion-menu-cart-link{padding:.75em 1em}.fusion-menu-cart-checkout-link a,.fusion-menu-cart-link a{margin:0 -.25em}.fusion-menu-cart-checkout-link a:before,.fusion-menu-cart-link a:before{padding:0 .25em;font-family:awb-icons;line-height:inherit}.fusion-menu-cart-checkout-link a span,.fusion-menu-cart-link a span{padding:0 .25em}.fusion-menu-cart-link a:before{content:"\f07a"}.fusion-menu-cart-checkout-link a:before{content:"\f046"}.fusion-menu-login-box .fusion-custom-menu-item-contents{left:0;border:1px solid transparent;width:187px;padding:20px}.fusion-menu-login-box:hover .fusion-custom-menu-item-contents{visibility:visible;opacity:1}.fusion-menu-login-box p{margin-top:0;margin-bottom:10px}.fusion-menu-login-box .fusion-login-box-submit,.fusion-menu-login-box .fusion-remember-checkbox{margin-bottom:0}.fusion-menu-login-box .fusion-menu-login-box-register{clear:both;float:right;padding-top:10px}.fusion-login-box-submit{float:right}.fusion-remember-checkbox{font-size:11px;line-height:32px}.fusion-menu-login-box-error{font-size:11px;color:#d04544}.fusion-megamenu-wrapper{margin:0 auto;padding:0 15px;visibility:hidden;opacity:0;position:absolute;left:0;transition:opacity .2s ease-in;z-index:10}.fusion-megamenu-wrapper.col-span-12 .fusion-megamenu{width:100%}.fusion-megamenu-wrapper.col-sm-12{width:100%}.fusion-megamenu-wrapper.col-sm-6{width:50%}.fusion-megamenu-wrapper.col-sm-4{width:33.33333333%}.fusion-megamenu-wrapper.col-sm-3{width:25%}.fusion-megamenu-wrapper.col-sm-2{width:16.66666667%}.fusion-megamenu-wrapper .fusion-megamenu-submenu{display:block;float:none;padding:29px 0;border-right:1px solid transparent;background-size:cover}.fusion-megamenu-wrapper .fusion-megamenu-submenu:last-child{border-right:none}.fusion-megamenu-wrapper .fusion-megamenu-submenu>a{display:block;padding:5px 34px;border-bottom:none;line-height:19px;transition:color .2s ease-in-out,background-color .2s ease-in-out,border-color .2s ease-in-out,height 0s,line-height 0s}.fusion-megamenu-wrapper .fusion-megamenu-submenu .sub-menu{position:relative;display:block;left:auto;right:auto;border:none;background:0 0;box-shadow:none;top:0;width:auto}.fusion-megamenu-wrapper .fusion-megamenu-submenu .sub-menu a{display:block;padding:5px 34px;border-bottom:none}.fusion-megamenu-wrapper .fusion-megamenu-submenu .sub-menu .deep-level a{padding-left:49px}.fusion-megamenu-wrapper .fusion-megamenu-submenu .sub-menu .deep-level .deep-level a{padding-left:64px}.ltr .fusion-megamenu-wrapper .fusion-megamenu-sitewidth .fusion-megamenu-submenu:first-child{border-left:1px solid transparent}.ltr .fusion-megamenu-wrapper .fusion-megamenu-sitewidth .fusion-megamenu-submenu:last-child{border-right:1px solid transparent}.fusion-megamenu-wrapper .fusion-megamenu-border{border-bottom:1px solid #dcd9d9}.fusion-megamenu-wrapper .menu-text{margin-left:23px}.fusion-megamenu-wrapper .fusion-caret{display:none}.fusion-megamenu-holder{padding:0;margin:0;border-top:3px solid transparent;background-size:cover}.fusion-megamenu-holder:after,.fusion-megamenu-holder:before{content:" ";display:table}.fusion-megamenu-holder:after{clear:both}.fusion-megamenu{display:flex}.fusion-megamenu:after,.fusion-megamenu:before{content:" ";display:table}.fusion-megamenu:after{clear:both}.fusion-megamenu-title{margin:0;padding:0 34px 15px;font-weight:400;line-height:normal;-webkit-font-smoothing:antialiased}.fusion-megamenu-icon{display:inline-block;width:26px}.fusion-megamenu-icon img{margin-top:-2px;max-height:15px;vertical-align:middle}.sub-menu .fusion-megamenu-icon.text-menu-icon{position:absolute}.fusion-megamenu-bullet{margin-right:10px}.fusion-megamenu-bullet:before{content:"\f0da";font-family:awb-icons}.fusion-megamenu-widgets-container{display:block;padding:0 34px;margin-bottom:10px;pointer-events:none}.fusion-main-menu>ul>.fusion-megamenu-menu:hover .fusion-megamenu-widgets-container{pointer-events:auto}.fusion-megamenu-widgets-container .textwidget a:not(.fb-icon-element){display:inline}.fusion-megamenu-widgets-container .textwidget a:not(.fb-icon-element).fusion-button{display:inline-block}.fusion-active-link .fusion-megamenu li .sub-menu,.fusion-active-link .fusion-megamenu-wrapper{opacity:1;visibility:visible}.fusion-is-sticky .fusion-logo img{width:auto}.fusion-is-sticky .fusion-header-v1 .fusion-header,.fusion-is-sticky .fusion-header-v2 .fusion-header,.fusion-is-sticky .fusion-header-v3 .fusion-header,.fusion-is-sticky .fusion-header-v6 .fusion-header,.fusion-is-sticky .fusion-header-v7 .fusion-header{position:fixed;top:0;z-index:210;max-width:100%;width:100%;border-bottom:0}.fusion-is-sticky .fusion-header-v1 .fusion-sticky-shadow,.fusion-is-sticky .fusion-header-v2 .fusion-sticky-shadow,.fusion-is-sticky .fusion-header-v3 .fusion-sticky-shadow,.fusion-is-sticky .fusion-header-v6 .fusion-sticky-shadow,.fusion-is-sticky .fusion-header-v7 .fusion-sticky-shadow{box-shadow:rgba(0,0,0,.117647) 0 1px 3px}.layout-boxed-mode .fusion-is-sticky .fusion-header-v1 .fusion-sticky-shadow,.layout-boxed-mode .fusion-is-sticky .fusion-header-v2 .fusion-sticky-shadow,.layout-boxed-mode .fusion-is-sticky .fusion-header-v3 .fusion-sticky-shadow,.layout-boxed-mode .fusion-is-sticky .fusion-header-v6 .fusion-sticky-shadow,.layout-boxed-mode .fusion-is-sticky .fusion-header-v7 .fusion-sticky-shadow{box-shadow:rgba(0,0,0,.118) 0 4px 3px -3px}.fusion-is-sticky .fusion-secondary-main-menu{border-bottom:0}.fusion-is-sticky .fusion-sticky-menu-only:not(.fusion-header-v6) .fusion-header{border-bottom:0}.fusion-is-sticky .fusion-sticky-menu-only:not(.fusion-header-v6) .fusion-secondary-main-menu{position:fixed;top:0;z-index:210;max-width:100%;width:100%;box-shadow:rgba(0,0,0,.117647) 0 1px 3px}.layout-boxed-mode .fusion-is-sticky .fusion-sticky-menu-only:not(.fusion-header-v6) .fusion-secondary-main-menu{box-shadow:rgba(0,0,0,.118) 0 4px 3px -3px}.fusion-is-sticky .fusion-sticky-menu-and-logo:not(.fusion-header-v6) .fusion-sticky-header-wrapper{position:fixed;top:0;z-index:210;max-width:100%;width:100%;box-shadow:rgba(0,0,0,.117647) 0 1px 3px}.layout-boxed-mode .fusion-is-sticky .fusion-sticky-menu-and-logo:not(.fusion-header-v6) .fusion-sticky-header-wrapper{box-shadow:rgba(0,0,0,.118) 0 4px 3px -3px}.fusion-is-sticky .fusion-main-menu>ul>li:last-child{padding-right:0}.fusion-is-sticky .fusion-main-menu .fusion-main-menu-icon:after,.fusion-is-sticky .fusion-main-menu .fusion-widget-cart-counter>a:before,.fusion-is-sticky .fusion-main-menu>ul>li>a,.fusion-is-sticky .fusion-main-menu>ul>li>a .fusion-menu-description{color:var(--header_sticky_menu_color)}.fusion-is-sticky .fusion-arrow-svg svg path{fill:var(--header_sticky_bg_color)}.fusion-body .fusion-is-sticky.fusion-header-wrapper .fusion-header,.fusion-body .fusion-is-sticky.fusion-header-wrapper .fusion-secondary-main-menu{background-color:var(--header_sticky_bg_color)}.fusion-sticky-menu-1 .fusion-sticky-menu{display:none}.fusion-is-sticky .fusion-sticky-menu-1 .fusion-main-menu{display:none}.fusion-is-sticky .fusion-sticky-menu-1 .fusion-sticky-menu{display:block}.fusion-sticky-logo-1#side-header .fusion-sticky-logo,.fusion-sticky-logo-1.fusion-header-v1 .fusion-sticky-logo,.fusion-sticky-logo-1.fusion-header-v2 .fusion-sticky-logo,.fusion-sticky-logo-1.fusion-header-v3 .fusion-sticky-logo,.fusion-sticky-logo-1.fusion-header-v4 .fusion-sticky-logo,.fusion-sticky-logo-1.fusion-header-v5 .fusion-sticky-logo,.fusion-sticky-logo-1.fusion-header-v6 .fusion-sticky-logo,.fusion-sticky-logo-1.fusion-header-v7 .fusion-sticky-logo{display:none}.fusion-is-sticky .fusion-sticky-logo-1#side-header .fusion-mobile-logo,.fusion-is-sticky .fusion-sticky-logo-1#side-header .fusion-standard-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v1 .fusion-mobile-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v1 .fusion-standard-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v2 .fusion-mobile-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v2 .fusion-standard-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v3 .fusion-mobile-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v3 .fusion-standard-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v4 .fusion-mobile-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v4 .fusion-standard-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v5 .fusion-mobile-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v5 .fusion-standard-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v6 .fusion-mobile-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v6 .fusion-standard-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v7 .fusion-mobile-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v7 .fusion-standard-logo{display:none}.fusion-is-sticky .fusion-sticky-logo-1#side-header .fusion-sticky-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v1 .fusion-sticky-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v2 .fusion-sticky-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v3 .fusion-sticky-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v4 .fusion-sticky-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v5 .fusion-sticky-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v6 .fusion-sticky-logo,.fusion-is-sticky .fusion-sticky-logo-1.fusion-header-v7 .fusion-sticky-logo{display:inline-block}.fusion-mobile-navigation{display:none}.fusion-mobile-nav-holder{display:none;clear:both;color:#333}.fusion-is-sticky .fusion-mobile-menu-design-modern .fusion-mobile-nav-holder>ul,.fusion-is-sticky.fusion-mobile-menu-design-modern .fusion-mobile-nav-holder>ul{max-height:340px;overflow-y:scroll;overflow-x:hidden}.fusion-mobile-nav-holder .fusion-megamenu-icon{display:none}.fusion-mobile-nav-holder .fusion-menu-description{display:none!important}.fusion-mobile-nav-holder .menu-text{-webkit-font-smoothing:auto}.fusion-mobile-nav-holder ul{list-style:none;margin:0;padding:0}.fusion-mobile-nav-holder>ul{display:none;list-style:none;margin:0;padding:0;border-left:1px solid transparent;border-right:1px solid transparent;border-bottom:1px solid transparent}.fusion-mobile-menu-text-align-left .fusion-mobile-selector{text-align:left}.fusion-mobile-menu-text-align-left .fusion-mobile-nav-item a{justify-content:left;padding-left:12px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-left .fusion-mobile-nav-item a{padding-left:30px}.fusion-mobile-menu-text-align-left .fusion-selector-down{right:0;border-left:1px solid transparent}.fusion-mobile-menu-text-align-left .fusion-open-submenu{right:0}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-left .fusion-open-submenu{padding-right:35px}.fusion-mobile-menu-text-align-left .fusion-has-highlight-label .menu-text{justify-content:left}.fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li a{padding-left:21px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li a{padding-left:39px}.fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li a:before{content:"-";margin-right:2px}.fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li li a{padding-left:30px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li li a{padding-left:48px}.fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li li a:before{content:"--"}.fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li li li a{padding-left:39px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li li li a{padding-left:57px}.fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li li li a:before{content:"---"}.fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li li li li a{padding-left:48px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li li li li a{padding-left:66px}.fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item li li li li a:before{content:"----"}.fusion-mobile-menu-text-align-left li.fusion-mobile-nav-item .submenu-languages li a:before{content:none}.fusion-mobile-menu-text-align-right .fusion-mobile-selector{text-align:right}.fusion-mobile-menu-text-align-right .fusion-mobile-nav-item a{justify-content:right;padding-right:12px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-right .fusion-mobile-nav-item a{padding-right:30px}.fusion-mobile-menu-text-align-right .fusion-selector-down{left:0;border-right:1px solid transparent}.fusion-mobile-menu-text-align-right .fusion-open-submenu{left:0}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-right .fusion-open-submenu{padding-left:30px}.fusion-mobile-menu-text-align-right .fusion-has-highlight-label .menu-text{justify-content:right;direction:rtl}.fusion-mobile-menu-text-align-right .fusion-has-highlight-label .fusion-menu-highlight-label{margin-right:.75em;margin-left:0}.fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li a{padding-right:21px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li a{padding-right:39px}.fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li a:after{content:"-";margin-left:2px}.fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li li a{padding-right:30px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li li a{padding-right:48px}.fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li li a:after{content:"--"}.fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li li li a{padding-right:39px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li li li a{padding-right:57px}.fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li li li a:after{content:"---"}.fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li li li li a{padding-right:48px}.fusion-mobile-menu-design-modern .fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li li li li a{padding-right:66px}.fusion-mobile-menu-text-align-right li.fusion-mobile-nav-item li li li li a:after{content:"----"}.fusion-mobile-menu-text-align-right .wpml-ls-item a:after{display:none}.fusion-mobile-menu-text-align-right .wpml-ls-item .wpml-ls-flag{order:2}.fusion-mobile-menu-text-align-center .fusion-mobile-selector{text-align:center}.fusion-mobile-menu-text-align-center .fusion-mobile-nav-item a{justify-content:center}.fusion-mobile-menu-text-align-center .fusion-has-highlight-label .menu-text{justify-content:center}.ltr .fusion-mobile-menu-text-align-center .fusion-selector-down{right:0;border-left:1px solid transparent}.ltr .fusion-mobile-menu-text-align-center .fusion-open-submenu{right:0}.fusion-mobile-menu-design-modern .ltr .fusion-mobile-menu-text-align-center .fusion-open-submenu{padding-right:35px}.rtl .fusion-mobile-menu-text-align-center .fusion-selector-down{left:0;border-right:1px solid transparent}.rtl .fusion-mobile-menu-text-align-center .fusion-open-submenu{left:0}.fusion-mobile-menu-design-modern .rtl .fusion-mobile-menu-text-align-center .fusion-open-submenu{padding-left:35px}.fusion-mobile-menu-text-align-center li.fusion-mobile-nav-item li a:before{content:"-"}.ltr .fusion-mobile-menu-text-align-center li.fusion-mobile-nav-item li a:before{margin-right:2px}.rtl .fusion-mobile-menu-text-align-center li.fusion-mobile-nav-item li a:before{margin-left:2px}.fusion-mobile-menu-text-align-center li.fusion-mobile-nav-item li li a:before{content:"--"}.fusion-mobile-menu-text-align-center li.fusion-mobile-nav-item li li li a:before{content:"---"}.fusion-mobile-menu-text-align-center li.fusion-mobile-nav-item li li li li a:before{content:"----"}.fusion-mobile-menu-text-align-center li.fusion-mobile-nav-item .submenu-languages li a:before{content:none}.fusion-mobile-selector{line-height:31px;padding-right:0;padding-left:0;width:100%;position:relative;font-size:12px;cursor:pointer;border:1px solid transparent}.fusion-mobile-selector span{margin-left:12px;margin-right:12px}.fusion-selector-down{position:absolute;top:0;height:31px;width:50px;font-size:24px;font-style:normal;text-align:center}.fusion-selector-down:before{content:"\f0c9";font-family:awb-icons}.fusion-mobile-menu-design-modern .fusion-mobile-nav-holder>ul{border:none;border-top:1px solid transparent}.fusion-mobile-menu-design-modern .fusion-header>.fusion-row{position:relative}.fusion-mobile-nav-item{position:relative;font-size:12px;line-height:normal}.fusion-mobile-nav-item a{color:#333;padding:0 12px;font-size:12px;display:flex;align-items:center;border-bottom:1px solid transparent}.fusion-mobile-nav-item .iclflag{vertical-align:middle;margin-right:5px}.fusion-mobile-menu-icons{display:none;position:relative;top:0;right:0;vertical-align:middle;text-align:right}.fusion-mobile-menu-icons a{float:right;font-size:21px;margin-left:20px}.fusionicon-bars:before{content:"\f0c9"}.fusionicon-shopping-cart:before{content:"\f0c9"}.fusion-mobile-menu-search{display:none;margin-top:15px}.fusion-mobile-menu-sep{position:absolute;top:43px;width:100%;border-bottom:1px solid transparent}.fusion-open-submenu{display:block;z-index:1;position:absolute;top:0;-webkit-appearance:none;-moz-appearance:none;outline:0;background:0 0;min-width:50px;border:none;line-height:15px;font-size:13px;text-align:center}.fusion-open-submenu:hover{color:#65bc7b}.fusion-open-submenu:before{display:block;margin:0;content:"\e61f";font-family:awb-icons}.fusion-open-submenu:focus{outline:revert}.fusion-has-highlight-label .menu-text{display:flex;align-items:center}.fusion-menu-highlight-label{padding:.35em .55em;line-height:1;margin-left:.75em;font-size:.7em;border:.1em solid transparent}.fusion-header-shadow:after,body.side-header-left #side-header.header-shadow .side-header-border:after,body.side-header-right #side-header.header-shadow .side-header-border:before{content:"";z-index:99996;position:absolute;top:0;height:100%;pointer-events:none}.fusion-header-shadow:after{left:0;width:100%}.fusion-header-shadow>div{box-shadow:0 10px 50px -2px rgba(0,0,0,.14)}body:not(.fusion-header-layout-v6) .fusion-header{-webkit-transform:translate3d(0,0,0);-moz-transform:none}body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li>a.fusion-bar-highlight{box-sizing:border-box}body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button)>a.fusion-bottombar-highlight:not(.fusion-main-menu-icon){position:relative}body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button)>a.fusion-bottombar-highlight:not(.fusion-main-menu-icon):after{content:" ";position:absolute;top:calc(50% + 1.15em);left:0;width:100%;border-top-style:solid;transform:scaleX(0);transition:transform .2s ease-in-out}body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button)>a.fusion-bottombar-highlight:not(.fusion-main-menu-icon).fusion-has-description:after{top:calc(50% + 1.79em)}body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button)>a.fusion-bottombar-highlight:not(.fusion-main-menu-icon).fusion-flex-column:not(.fusion-layout-column):after{top:calc(50% + 1.325em)}body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button)>a.fusion-bottombar-highlight:not(.fusion-main-menu-icon).fusion-flex-column:not(.fusion-layout-column).fusion-has-description:after{top:calc(50% + 1.955em)}body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button)>a.fusion-bottombar-highlight:not(.fusion-main-menu-icon):hover:after{transform:scaleX(1)}body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button).current-menu-ancestor>.fusion-bottombar-highlight:not(.fusion-main-menu-icon):after,body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button).current-menu-item>.fusion-bottombar-highlight:not(.fusion-main-menu-icon):after,body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button).current-menu-parent>.fusion-bottombar-highlight:not(.fusion-main-menu-icon):after,body:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>li:not(.fusion-menu-item-button).current_page_item>.fusion-bottombar-highlight:not(.fusion-main-menu-icon):after{transform:scaleX(1)}body:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li>a{font-size:var(--header_sticky_nav_font_size)}.fusion-top-header.menu-text-align-center .fusion-main-menu>ul>li>a,.side-header-left.menu-text-align-center .fusion-main-menu>ul>li>a,.side-header-right.menu-text-align-center .fusion-main-menu>ul>li>a{justify-content:center}.side-header-left.menu-text-align-right.ltr .fusion-main-menu>ul>li>a,.side-header-right.menu-text-align-right.ltr .fusion-main-menu>ul>li>a{justify-content:flex-end}.side-header-left.menu-text-align-left.rtl .fusion-main-menu>ul>li>a,.side-header-right.menu-text-align-left.rtl .fusion-main-menu>ul>li>a{justify-content:flex-end}.side-header-left.menu-text-align-left.ltr .fusion-main-menu>ul>li>a,.side-header-right.menu-text-align-left.ltr .fusion-main-menu>ul>li>a{justify-content:flex-start}.side-header-right #side-header .fusion-main-menu-search .fusion-custom-menu-item-contents{left:-250px}.side-header-right.layout-boxed-mode .fusion-footer-parallax.awb-footer-fixed{padding-right:var(--side_header_width)}.fusion-body .fusion-main-menu .current-menu-item.fusion-menu-cart>a,.fusion-body .fusion-main-menu .current-menu-item.fusion-menu-item-button>a,.fusion-body .fusion-main-menu .current_page_item.fusion-menu-cart>a,.fusion-body .fusion-main-menu .current_page_item.fusion-menu-item-button>a{border-color:transparent}.fusion-body .fusion-main-menu .fusion-main-menu-icon{border-color:transparent}.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide li.fusion-mobile-nav-item li a:after,.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide li.fusion-mobile-nav-item li a:before{content:"";margin:0;width:7px;display:inline-block}.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide li.fusion-mobile-nav-item li li a:after,.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide li.fusion-mobile-nav-item li li a:before{content:"";margin:0;width:12px}.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide li.fusion-mobile-nav-item li li li a:after,.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide li.fusion-mobile-nav-item li li li a:before{content:"";margin:0;width:17px}.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide li.fusion-mobile-nav-item li li li li a:after,.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide li.fusion-mobile-nav-item li li li li a:before{content:"";margin:0;width:22px}.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide .fusion-mobile-nav-item li a:after{display:none}.fusion-body .fusion-mobile-nav-holder.fusion-mobile-menu-indicator-hide.fusion-mobile-menu-text-align-right .fusion-mobile-nav-item li a:before{display:none}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-dropdown-svg{visibility:hidden;opacity:0;pointer-events:none;transition:opacity .2s ease-in}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-dropdown-svg svg path{transition:fill .2s ease-in-out}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-dropdown-menu .fusion-button{position:static}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) li.fusion-active-link .fusion-dropdown-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) li:hover .fusion-dropdown-svg{visibility:visible;opacity:1;pointer-events:auto}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-mobile-nav-holder .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-mobile-nav-holder .fusion-dropdown-svg{display:none}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-arrow-highlight .fusion-arrow-svg{opacity:0;font-size:0;visibility:hidden;position:absolute;overflow:hidden;display:inline-block}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-logo-link,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul{line-height:1}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-arrow-highlight .fusion-arrow-svg{left:50%;transform:translateX(-50%)}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-is-sticky .fusion-sticky-menu-only .fusion-arrow-highlight .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-sticky-shadow .fusion-arrow-highlight .fusion-arrow-svg svg{filter:drop-shadow(0 1px 3px rgba(0, 0, 0, .117647))}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-is-sticky .fusion-sticky-menu-only .fusion-arrow-highlight .fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-sticky-shadow .fusion-arrow-highlight .fusion-arrow-highlight .fusion-arrow-svg{box-sizing:content-box;padding-bottom:3px;margin-bottom:-3px}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-dropdown-svg{transform:translateX(-50%) translateY(200%);position:absolute;left:50%;bottom:-10px;z-index:100;filter:drop-shadow(0 -2px 1px rgba(0, 0, 0, .03))}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>.menu-item-has-children fusion-active-link:before,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul>.menu-item-has-children:hover:before{position:absolute;background:0 0;width:100%;display:block;content:""}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul .sub-menu .fusion-active-link:before,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul .sub-menu .menu-item-has-children:hover:before{position:absolute;right:-5px;left:-5px;height:100%;background:0 0;width:5px;display:block;content:"";top:0}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul .fusion-dropdown-menu .sub-menu .sub-menu{top:0}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu .fusion-dropdown-menu .sub-menu .sub-menu{margin-left:5px}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu .fusion-dropdown-menu .sub-menu .sub-menu.fusion-switched-side{margin-left:-5px}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu .fusion-dropdown-menu .sub-menu,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu .fusion-megamenu-holder{border-top-width:0}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-left .fusion-main-menu .fusion-dropdown-menu .sub-menu,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-left .fusion-main-menu .fusion-megamenu-holder{top:50%;line-height:1}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-left .fusion-main-menu .menu-item-has-children:hover:before{position:absolute;top:0;background:0 0;height:100%;display:block;content:""}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-left .fusion-main-menu .fusion-dropdown-menu .sub-menu .sub-menu{margin-left:5px;margin-right:5px}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-left .fusion-arrow-svg svg{margin-left:-1px}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-left .fusion-dropdown-svg{transform:translateX(200%) translateY(-50%);position:absolute;top:50%;right:-4px;z-index:100}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-left .fusion-arrow-highlight .fusion-arrow-svg{transform:translateY(-50%);line-height:1;top:50%}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-right .fusion-main-menu .fusion-dropdown-menu>.sub-menu,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-right .fusion-main-menu .fusion-megamenu-wrapper{top:50%;transform:translateY(-50%);line-height:1}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-right .fusion-main-menu .menu-item-has-children:hover:before{position:absolute;top:0;background:0 0;height:100%;display:block;content:""}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-right .fusion-main-menu .fusion-dropdown-menu .sub-menu .sub-menu{margin-left:-5px;margin-right:-5px}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-right .fusion-arrow-svg svg{margin-right:-1px}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-right .fusion-dropdown-svg{transform:translateX(-200%) translateY(-50%);position:absolute;top:50%;left:-5px;z-index:100}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).side-header-right .fusion-arrow-highlight .fusion-arrow-svg{transform:translateY(-50%);line-height:1;top:50%}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).rtl .fusion-main-menu .fusion-dropdown-menu .sub-menu .sub-menu{margin-right:5px}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6).rtl .fusion-main-menu .fusion-dropdown-menu .sub-menu .sub-menu.fusion-switched-side{margin-right:-5px}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu .current-menu-ancestor>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu .current-menu-item>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu .current-menu-parent>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu .current_page_item>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li>a.fusion-arrow-highlight:hover .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-main-menu .current-menu-ancestor>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-main-menu .current-menu-item>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-main-menu .current-menu-parent>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-main-menu .current_page_item>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li.fusion-active-link>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li:hover>a.fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li>a.fusion-arrow-highlight:hover .fusion-arrow-svg{opacity:1;visibility:visible}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li>a.fusion-arrow-highlight{overflow:visible!important}.avada-menu-highlight-style-arrow .fusion-main-menu,.avada-menu-highlight-style-arrow .fusion-main-menu .fusion-dropdown-menu{overflow:visible}.avada-menu-highlight-style-arrow.fusion-top-header .fusion-arrow-highlight .fusion-arrow-svg{bottom:calc((var(--menu_arrow_size-height,12px)) * -1)}.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v2:not(.avada-header-border-color-full-transparent) .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v3:not(.avada-header-border-color-full-transparent) .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v4:not(.avada-header-border-color-full-transparent) .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v5:not(.avada-header-border-color-full-transparent) .fusion-arrow-svg svg{margin-top:-1px;display:block}.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v2.avada-header-border-color-full-transparent .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v3.avada-header-border-color-full-transparent .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v4.avada-header-border-color-full-transparent .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v5.avada-header-border-color-full-transparent .fusion-arrow-svg svg{margin-top:1px}.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v2.avada-header-border-color-full-transparent.avada-sticky-shrinkage .fusion-is-sticky .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v3.avada-header-border-color-full-transparent.avada-sticky-shrinkage .fusion-is-sticky .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v4.avada-header-border-color-full-transparent.avada-sticky-shrinkage .fusion-is-sticky .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v5.avada-header-border-color-full-transparent.avada-sticky-shrinkage .fusion-is-sticky .fusion-arrow-svg svg{margin-top:0}.avada-menu-highlight-style-background:not(.fusion-header-layout-v6).fusion-top-header .fusion-logo-link,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6).fusion-top-header .fusion-main-menu>ul{line-height:1}.avada-menu-highlight-style-background:not(.fusion-header-layout-v6).fusion-body .fusion-wrapper nav.fusion-main-menu>ul.fusion-menu>li.fusion-main-menu-cart>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6).fusion-body .fusion-wrapper nav.fusion-main-menu>ul.fusion-menu>li.fusion-main-menu-search>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6).fusion-body .fusion-wrapper nav.fusion-main-menu>ul.fusion-menu>li.fusion-main-menu-sliding-bar>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6).fusion-body .fusion-wrapper nav.fusion-main-menu>ul.fusion-menu>li.fusion-menu-item-button>a{background-color:transparent}.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li{padding-right:0}.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) #side-header .fusion-main-menu>ul>li{border-right:1px solid transparent}.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li>a{padding-left:calc((var(--header_sticky_nav_padding))/ 2);padding-right:calc((var(--header_sticky_nav_padding))/ 2)}.avada-menu-highlight-style-bar .fusion-main-menu .sub-menu ul{top:-3px}body.fusion-top-header.avada-sticky-shrinkage .fusion-header-wrapper:not(.fusion-is-sticky) .fusion-main-menu>ul>li>a.fusion-flex-link{line-height:1!important}body.fusion-top-header.avada-sticky-shrinkage .fusion-is-sticky .fusion-main-menu>ul>li>a{display:flex}body.fusion-top-header.avada-sticky-shrinkage .fusion-is-sticky .fusion-main-menu>ul>li>a .fusion-menu-description{display:none}body.fusion-top-header:not(.avada-sticky-shrinkage) .fusion-header-wrapper .fusion-main-menu>ul>li>a.fusion-flex-link{line-height:1!important}body.fusion-top-header:not(.avada-sticky-shrinkage).fusion-header-layout-v6 .avada-menu-highlight-style-arrow .fusion-header{overflow:visible!important}.fusion-main-menu>ul>.fusion-menu-item-button>a:hover{border-color:transparent}.fusion-is-sticky .fusion-main-menu .current-menu-ancestor>a>.fusion-megamenu-icon,.fusion-is-sticky .fusion-main-menu .current-menu-item>a>.fusion-megamenu-icon,.fusion-is-sticky .fusion-main-menu .current-menu-parent>a>.fusion-megamenu-icon,.fusion-is-sticky .fusion-main-menu .current_page_item>a>.fusion-megamenu-icon,.fusion-is-sticky .fusion-main-menu>ul>li>a:hover>.fusion-megamenu-icon,.fusion-main-menu .current-menu-ancestor>a>.fusion-megamenu-icon,.fusion-main-menu .current-menu-item>a>.fusion-megamenu-icon,.fusion-main-menu .current-menu-parent>a>.fusion-megamenu-icon,.fusion-main-menu .current_page_item>a>.fusion-megamenu-icon,.fusion-main-menu>ul>li>a:hover>.fusion-megamenu-icon{color:var(--menu_icon_hover_color)}#side-header,#side-header .side-header-background-color,#side-header .side-header-background-image,#side-header .side-header-border{width:var(--side_header_width)}.side-header-left.layout-wide-mode .fusion-footer-parallax.awb-footer-fixed,body.side-header-left #wrapper{margin-left:var(--side_header_width)}.rtl.avada-footer-fx-sticky.side-header-left.layout-boxed-mode #boxed-wrapper #side-header{margin-left:calc((var(--side_header_width))/ -2)}.side-header-left.layout-boxed-mode .fusion-footer-parallax.awb-footer-fixed{padding-left:var(--side_header_width)}.header_border_color_stroke{stroke:var(--header_border_color)}#side-header .fusion-main-menu>ul>li>a,.fusion-header-v2 .fusion-header,.fusion-header-v3 .fusion-header,.fusion-header-v4 .fusion-header,.fusion-header-v5 .fusion-header,.fusion-mobile-menu-design-modern .fusion-secondary-header .fusion-alignleft,.fusion-mobile-menu-sep,.fusion-secondary-header,.fusion-secondary-main-menu{border-bottom-color:var(--header_border_color)}#side-header .fusion-main-menu>ul>li>a,#side-header .fusion-secondary-menu-search-inner,.fusion-mobile-menu-design-modern .fusion-secondary-header .fusion-alignleft{border-top-color:var(--header_border_color)}.side-header-right.layout-wide-mode .fusion-footer-parallax.awb-footer-fixed,body.side-header-right #wrapper{margin-right:var(--side_header_width)}#side-header .fusion-main-menu>ul>li>a,#side-header .side-header-content,.fusion-header-wrapper .fusion-row{padding-left:var(--header_padding-left);padding-right:var(--header_padding-right)}.fusion-header .fusion-row,.side-header-wrapper{padding-top:var(--header_padding-top);padding-bottom:var(--header_padding-bottom)}.side-header-left .fusion-main-menu>ul>li>a>.fusion-caret{right:var(--header_padding-right)}.side-header-right .fusion-main-menu>ul>li>a>.fusion-caret{left:var(--header_padding-left)}.avada-header-shadow-no .fusion-is-sticky:after,.avada-header-shadow-no .fusion-is-sticky:before{display:none}.layout-wide-mode.avada-has-pagetitle-100-width.avada-has-header-100-width .fusion-page-title-row{padding-left:var(--header_padding-left);padding-right:var(--header_padding-right)}.layout-wide-mode.avada-has-header-100-width .fusion-header-wrapper .fusion-row{max-width:100%}.avada-header-color-not-opaque .avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v4:not(.avada-header-border-color-full-transparent) .fusion-arrow-svg svg,.avada-header-color-not-opaque .avada-menu-highlight-style-arrow.fusion-top-header.fusion-header-layout-v5:not(.avada-header-border-color-full-transparent) .fusion-arrow-svg svg{margin-top:-1px;display:block}body:not(.avada-menu-highlight-style-background) .fusion-is-sticky .fusion-main-menu>ul>li:not(:last-child){padding-right:var(--header_sticky_nav_padding)}.rtl .fusion-is-sticky .fusion-header-v1 .fusion-main-menu>ul>li,.rtl .fusion-is-sticky .fusion-header-v2 .fusion-main-menu>ul>li,.rtl .fusion-is-sticky .fusion-header-v3 .fusion-main-menu>ul>li,.rtl .fusion-is-sticky .fusion-header-v7 .fusion-main-menu>ul>li{padding-left:var(--header_sticky_nav_padding)}.rtl:not(.avada-menu-highlight-style-background) .fusion-is-sticky .fusion-main-menu>ul>li:not(:first-child){padding-left:var(--header_sticky_nav_padding)}.avada-responsive.avada-has-logo-background.fusion-top-header.fusion-header-layout-v7:not(.avada-menu-highlight-style-background) .fusion-is-sticky .fusion-header .fusion-logo-background{margin-right:var(--header_sticky_nav_padding)}.avada-menu-icon-position-left.avada-sticky-shrinkage .fusion-is-sticky .fusion-main-menu>ul>li>a>.fusion-megamenu-icon,.avada-menu-icon-position-right.avada-sticky-shrinkage .fusion-is-sticky .fusion-main-menu>ul>li>a>.fusion-megamenu-icon{font-size:var(--header_sticky_nav_font_size)}.avada-menu-icon-position-bottom.avada-sticky-shrinkage .fusion-is-sticky .fusion-main-menu>ul>li>a .fusion-megamenu-icon,.avada-menu-icon-position-top.avada-sticky-shrinkage .fusion-is-sticky .fusion-main-menu>ul>li>a .fusion-megamenu-icon{display:none}.avada-menu-icon-position-bottom:not(.fusion-top-header) .fusion-main-menu .fusion-flex-link,.avada-menu-icon-position-top:not(.fusion-top-header) .fusion-main-menu .fusion-flex-link{line-height:1}.avada-menu-highlight-style-bar:not(.fusion-header-layout-v6).side-header-left #side-header .fusion-main-menu>ul>li.current-menu-ancestor>a,.avada-menu-highlight-style-bar:not(.fusion-header-layout-v6).side-header-left #side-header .fusion-main-menu>ul>li.current-menu-item>a,.avada-menu-highlight-style-bottombar:not(.fusion-header-layout-v6).side-header-left #side-header .fusion-main-menu>ul>li.current-menu-ancestor>a,.avada-menu-highlight-style-bottombar:not(.fusion-header-layout-v6).side-header-left #side-header .fusion-main-menu>ul>li.current-menu-item>a{border-right-width:var(--nav_highlight_border)}.avada-menu-highlight-style-bar:not(.fusion-header-layout-v6).side-header-right #side-header .fusion-main-menu>ul>li.current-menu-ancestor>a,.avada-menu-highlight-style-bar:not(.fusion-header-layout-v6).side-header-right #side-header .fusion-main-menu>ul>li.current-menu-item>a,.avada-menu-highlight-style-bottombar:not(.fusion-header-layout-v6).side-header-right #side-header .fusion-main-menu>ul>li.current-menu-ancestor>a,.avada-menu-highlight-style-bottombar:not(.fusion-header-layout-v6).side-header-right #side-header .fusion-main-menu>ul>li.current-menu-item>a{border-left-width:var(--nav_highlight_border)}.side-header .side-header .fusion-footer-parallax,.side-header .side-header-background-color{background-color:var(--header_bg_color)}.avada-html-is-archive .side-header .side-header .fusion-footer-parallax,.avada-html-is-archive .side-header .side-header-background-color{background-color:var(--archive_header_bg_color,var(--header_bg_color))}.fusion-top-header .fusion-header{background-color:var(--header_bg_color)}.avada-html-is-archive .fusion-top-header .fusion-header{background-color:var(--archive_header_bg_color,var(--header_bg_color))}.fusion-arrow-svg path{fill:var(--header_bg_color)}.avada-html-is-archive .fusion-arrow-svg path{fill:var(--archive_header_bg_color,var(--header_bg_color))}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image .side-header-background-image{background-image:var(--header_bg_image);background-repeat:var(--header_bg_repeat)}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.avada-header-bg-no-repeat .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.avada-header-bg-no-repeat .side-header-background-image,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.avada-header-bg-repeat-y .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.avada-header-bg-repeat-y .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.avada-header-bg-no-repeat .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.avada-header-bg-no-repeat .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.avada-header-bg-repeat-y .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.avada-header-bg-repeat-y .side-header-background-image{background-position:center center}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.avada-has-header-bg-full .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.avada-has-header-bg-full .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.avada-has-header-bg-full .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.avada-has-header-bg-full .side-header-background-image{background-position:center center;background-size:cover}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.avada-has-header-bg-parallax.fusion-top-header .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.avada-has-header-bg-parallax.fusion-top-header .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.avada-has-header-bg-parallax.fusion-top-header .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.avada-has-header-bg-parallax.fusion-top-header .side-header-background-image{background-position:top center;background-attachment:fixed}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-is-sticky.fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-is-sticky.fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-is-sticky.fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-is-sticky.fusion-header-wrapper{background-image:none;background-color:transparent}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-is-sticky .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-is-sticky .fusion-header{background-image:var(--header_bg_image)}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-no-repeat .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-repeat-y .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-no-repeat .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-repeat-y .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-no-repeat .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-repeat-y .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-no-repeat .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-repeat-y .fusion-header-wrapper{background-position:center center}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-no-repeat .fusion-is-sticky .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-repeat-y .fusion-is-sticky .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-no-repeat .fusion-is-sticky .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-repeat-y .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-no-repeat .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-repeat-y .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-no-repeat .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-header-bg-repeat-y .fusion-is-sticky .fusion-header{background-position:50% calc(50% - var(--top-bar-height))}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque .fusion-header-wrapper{background-repeat:var(--header_bg_repeat)}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-is-sticky .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-is-sticky .fusion-header{background-attachment:scroll;background-size:cover}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-header-wrapper{background-position:center center}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-is-sticky .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-full .fusion-is-sticky .fusion-header{background-position:50% calc(50% - var(--top-bar-height))}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-parallax .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-parallax .fusion-is-sticky .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-parallax .fusion-header-wrapper,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-parallax .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-parallax .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v2.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-parallax .fusion-is-sticky .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-parallax .fusion-header-wrapper,html:not(.avada-html-header-position-top) .avada-has-header-bg-image.fusion-header-layout-v3.fusion-top-header.avada-header-top-bg-not-opaque.avada-has-header-bg-parallax .fusion-is-sticky .fusion-header{background-attachment:fixed;background-position:top center}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3) .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3) .side-header-background-image,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header) .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header) .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3) .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3) .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header) .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header) .side-header-background-image{background-image:var(--header_bg_image);background-repeat:var(--header_bg_repeat)}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-header-bg-no-repeat .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-header-bg-no-repeat .side-header-background-image,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-header-bg-repeat-y .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-header-bg-repeat-y .side-header-background-image,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-header-bg-no-repeat .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-header-bg-no-repeat .side-header-background-image,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-header-bg-repeat-y .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-header-bg-repeat-y .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-header-bg-no-repeat .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-header-bg-no-repeat .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-header-bg-repeat-y .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-header-bg-repeat-y .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-header-bg-no-repeat .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-header-bg-no-repeat .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-header-bg-repeat-y .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-header-bg-repeat-y .side-header-background-image{background-position:center center}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-full.fusion-top-header .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-full.fusion-top-header .side-header-background-image,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-full.fusion-top-header .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-full.fusion-top-header .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-full.fusion-top-header .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-full.fusion-top-header .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-full.fusion-top-header .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-full.fusion-top-header .side-header-background-image{background-attachment:scroll}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-full .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-full .side-header-background-image,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-full .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-full .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-full .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-full .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-full .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-full .side-header-background-image{background-position:center center;background-size:cover}html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-parallax.fusion-top-header .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-parallax.fusion-top-header .side-header-background-image,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-parallax.fusion-top-header .fusion-header,html:not(.avada-header-color-not-opaque) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-parallax.fusion-top-header .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-parallax.fusion-top-header .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-header-layout-v2):not(.fusion-header-layout-v3).avada-has-header-bg-parallax.fusion-top-header .side-header-background-image,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-parallax.fusion-top-header .fusion-header,html:not(.avada-html-header-position-top) .avada-has-header-bg-image:not(.fusion-top-header).avada-has-header-bg-parallax.fusion-top-header .side-header-background-image{background-attachment:fixed;background-position:top center}.layout-boxed-mode.layout-scroll-offset-full.fusion-top-header #sliders-container .tfs-slider{position:absolute!important;top:0}.layout-boxed-mode.layout-scroll-offset-full.fusion-top-header #sliders-container .tfs-slider.fusion-fixed-slider{position:fixed!important}.layout-boxed-mode.layout-scroll-offset-full.fusion-top-header:not(.fusion-top-header) #sliders-container .tfs-slider{position:relative!important;margin-left:auto!important;left:auto!important}.layout-boxed-mode.layout-scroll-offset-full.fusion-top-header:not(.fusion-top-header) #sliders-container .tfs-slider.fusion-fixed-slider{position:fixed!important}.layout-boxed-mode.layout-scroll-offset-full.fusion-top-header.side-header-right #sliders-container .tfs-slider{right:auto!important}.avada-has-header-hidden.rtlside-header-left #boxed-wrapper{direction:ltr}.avada-has-header-hidden.rtlside-header-left #main.fusion-footer,.avada-has-header-hidden.rtlside-header-left #side-header,.avada-has-header-hidden.rtlside-header-left #sliders-container{direction:rtl}.fusion-header-wrapper .fusion-row,.layout-boxed-mode.side-header #boxed-wrapper,.layout-boxed-mode.side-header #slidingbar-area .fusion-row,.layout-boxed-mode.side-header .fusion-footer-parallax,.layout-boxed-mode.side-header>#lang_sel_footer{max-width:var(--site_width)}html:not(.avada-has-site-width-percent) #main,html:not(.avada-has-site-width-percent) .fusion-secondary-header,html:not(.avada-has-site-width-percent) .header-v4 #small-nav,html:not(.avada-has-site-width-percent) .header-v5 #small-nav,html:not(.avada-has-site-width-percent) .sticky-header .sticky-shadow{padding-left:30px;padding-right:30px}body.layout-boxed-mode.side-header-left #wrapper,body.layout-boxed-mode.side-header-right #wrapper{width:auto}body.layout-boxed-mode.side-header #wrapper,body.layout-boxed-mode.side-header .fusion-footer-parallax{max-width:calc(var(--site_width) - var(--side_header_width))}body.layout-boxed-mode.side-header-left #wrapper{margin-left:var(--side_header_width)}body.layout-boxed-mode.side-header-right #boxed-wrapper{position:relative}body.layout-boxed-mode.side-header-right #wrapper{margin-right:var(--side_header_width)}html.avada-has-site-width-percent body .fusion-secondary-header,html.avada-has-site-width-percent body .header-v4 #small-nav,html.avada-has-site-width-percent body .header-v5 #small-nav,html.avada-has-site-width-percent body.avada-responsive .fusion-secondary-header,html.avada-has-site-width-percent body.avada-responsive .header-v4 #small-nav,html.avada-has-site-width-percent body.avada-responsive .header-v5 #small-nav{padding-left:0;padding-right:0}html.avada-has-site-width-percent .avada-responsive.layout-boxed-mode .fusion-header .fusion-row,html.avada-has-site-width-percent .avada-responsive.layout-boxed-mode .fusion-secondary-header .fusion-row{max-width:none;padding-left:10px;padding-right:10px}html.avada-has-site-width-percent .layout-boxed-mode.side-header #wrapper{max-width:none}html.avada-has-site-width-percent.avada-has-site-width-100-percent .fusion-body .fusion-secondary-header,html.avada-has-site-width-percent.avada-has-site-width-100-percent .fusion-header{padding-left:var(--hundredp_padding);padding-right:var(--hundredp_padding)}.layout-boxed-mode.layout-scroll-offset-framed #side-header{height:calc(100vh - var(--margin_offset-top-no-percent) - var(--margin_offset-bottom-no-percent))}.layout-boxed-mode.layout-scroll-offset-framed.admin-bar #side-header{height:calc(100vh - var(--margin_offset-top-no-percent) - var(--margin_offset-bottom-no-percent) - var(--adminbar-height))}.avada-html-not-responsive.avada-html-header-position-top{overflow-x:hidden}.avada-html-not-responsive.avada-html-header-position-top body{overflow-x:hidden}.avada-html-not-responsive:not(.avada-html-header-position-top).ua-mobile #wrapper{width:auto!important}#side-header .fusion-logo,.fusion-header .fusion-logo{margin:var(--logo_margin-top) var(--logo_margin-right) var(--logo_margin-bottom) var(--logo_margin-left)}body:not(.mobile-logo-pos-right) #side-header .fusion-header-tagline,body:not(.mobile-logo-pos-right) .fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper .fusion-header-tagline,body:not(.mobile-logo-pos-right).rtl .fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper .fusion-secondary-menu-search{order:1}.mobile-logo-pos-right #side-header .fusion-secondary-menu-search,.mobile-logo-pos-right .fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper .fusion-secondary-menu-search,.mobile-logo-pos-right .rtl .fusion-header-v4 .fusion-logo .fusion-header-content-3-wrapper .fusion-header-tagline{order:2}.fusion-main-menu>ul>li{padding-right:var(--nav_padding)}.fusion-main-menu>ul>li>a{border-color:transparent}.fusion-main-menu>ul>li>a>.fusion-megamenu-image>img{width:var(--menu_thumbnail_size-width);height:var(--menu_thumbnail_size-height)}.fusion-main-menu>ul>li>a .fusion-menu-description{color:var(--nav_typography-color-65a);font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight);letter-spacing:var(--body_typography-letter-spacing)}.fusion-main-menu>ul>li>a:not(.fusion-logo-link):not(.awb-icon-sliding-bar):hover{border-color:var(--menu_hover_first_color)}.fusion-main-menu>ul>li>a:not(.fusion-logo-link):hover{color:var(--menu_hover_first_color)}.fusion-main-menu>ul>li>a>.fusion-megamenu-icon{font-size:var(--menu_icon_size);color:var(--menu_icon_color)}.avada-menu-icon-position-top .fusion-main-menu>ul>li>a>.fusion-megamenu-icon{padding-bottom:.5em}.avada-menu-icon-position-bottom .fusion-main-menu>ul>li>a>.fusion-megamenu-icon{padding-top:.5em}.avada-menu-icon-position-left .fusion-main-menu>ul>li>a>.fusion-megamenu-icon{padding-right:.5em}.avada-menu-icon-position-right .fusion-main-menu>ul>li>a>.fusion-megamenu-icon{padding-left:.5em}.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li{padding-right:0}.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li>a{padding-left:calc((var(--nav_padding))/ 2);padding-right:calc((var(--nav_padding))/ 2)}.fusion-main-menu .sub-menu{font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight);width:var(--dropdown_menu_width);background-color:var(--menu_sub_bg_color)}.fusion-main-menu .sub-menu ul{left:var(--dropdown_menu_width)}.rtl.fusion-top-header .fusion-main-menu .sub-menu ul{right:var(--dropdown_menu_width)}.fusion-main-menu .sub-menu li a{font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight);padding-top:var(--mainmenu_dropdown_vertical_padding);padding-bottom:var(--mainmenu_dropdown_vertical_padding);color:var(--menu_sub_color);font-size:var(--nav_dropdown_font_size)}.fusion-main-menu .sub-menu li a:hover{background-color:var(--menu_bg_hover_color)}.fusion-main-menu .sub-menu .current-menu-item>a,.fusion-main-menu .sub-menu .current_page_item>a{background-color:var(--menu_bg_hover_color)}.fusion-main-menu .sub-menu .current-menu-parent>a{background-color:var(--menu_bg_hover_color)}.fusion-main-menu .fusion-custom-menu-item-contents{font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight)}.fusion-main-menu .fusion-main-menu-cart .fusion-custom-menu-item-contents,.fusion-main-menu .fusion-main-menu-search .fusion-custom-menu-item-contents,.fusion-main-menu .fusion-menu-login-box .fusion-custom-menu-item-contents{background-color:var(--menu_sub_bg_color);border-color:var(--menu_sub_sep_color)}.fusion-main-menu .awb-icon-sliding-bar.fusion-main-menu-icon-active:before,.fusion-main-menu .fusion-main-menu-icon.fusion-main-menu-icon-active:after,.fusion-main-menu .fusion-main-menu-search-open .fusion-main-menu-icon:after,.fusion-main-menu .fusion-menu-cart-checkout-link a:hover,.fusion-main-menu .fusion-menu-cart-checkout-link a:hover:before,.fusion-main-menu .fusion-menu-cart-link a:hover,.fusion-main-menu .fusion-menu-cart-link a:hover:before{color:var(--menu_hover_first_color)}.fusion-main-menu .fusion-main-menu-icon:after{color:var(--nav_typography-color)}.fusion-main-menu .fusion-main-menu-icon:hover:after{color:var(--menu_hover_first_color)}.fusion-main-menu .fusion-widget-cart-counter>a:before{color:var(--nav_typography-color);width:var(--nav_typography-font-size);box-sizing:content-box}.fusion-main-menu .fusion-widget-cart-counter>a:hover:before{color:var(--menu_hover_first_color)}.fusion-main-menu .fusion-widget-cart-counter>a .fusion-widget-cart-number{width:var(--nav_typography-font-size)}.fusion-main-menu .fusion-dropdown-menu .sub-menu li a{font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight);padding-top:var(--mainmenu_dropdown_vertical_padding);padding-bottom:var(--mainmenu_dropdown_vertical_padding);border-bottom-color:var(--menu_sub_sep_color);color:var(--menu_sub_color);font-size:var(--nav_dropdown_font_size)}.fusion-main-menu .fusion-main-menu-cart{font-size:var(--nav_dropdown_font_size)}.fusion-main-menu .current-menu-ancestor>a>.fusion-megamenu-icon,.fusion-main-menu .current-menu-item>a>.fusion-megamenu-icon,.fusion-main-menu .current-menu-parent>a>.fusion-megamenu-icon,.fusion-main-menu .current_page_item>a>.fusion-megamenu-icon{color:var(--menu_icon_hover_color)}body:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li>a,body:not(.fusion-top-header) .fusion-main-menu>ul>li>a{height:var(--nav_height)}.avada-menu-highlight-style-bar .fusion-main-menu .sub-menu,.avada-menu-highlight-style-bottombar .fusion-main-menu .sub-menu{border-top:var(--dropdown_menu_top_border_size) solid var(--menu_hover_first_color)}.avada-menu-highlight-style-bar .fusion-main-menu .sub-menu ul,.avada-menu-highlight-style-bottombar .fusion-main-menu .sub-menu ul{top:calc((var(--dropdown_menu_top_border_size)) * -1)}.avada-menu-highlight-style-bar .fusion-megamenu-wrapper .fusion-megamenu-submenu .sub-menu,.avada-menu-highlight-style-bottombar .fusion-megamenu-wrapper .fusion-megamenu-submenu .sub-menu{border:none}.avada-menu-highlight-style-bar:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li>a{border-top-width:var(--nav_highlight_border);border-top-style:solid}.avada-menu-highlight-style-bar:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li>a:not(.fusion-logo-link):not(.awb-icon-sliding-bar):hover{border-top-color:var(--menu_hover_first_color)}.fusion-body.avada-menu-highlight-style-bar:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li.fusion-main-menu-cart a:hover,.fusion-body.avada-menu-highlight-style-bar:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li.fusion-main-menu-search a:hover,.fusion-body.avada-menu-highlight-style-bar:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li.fusion-menu-item-button a:hover{border-top-color:transparent}.avada-menu-highlight-style-bar:not(.fusion-top-header) .fusion-main-menu>ul>li>a:not(.fusion-main-menu-icon){line-height:calc(var(--nav_height) - var(--nav_highlight_border))}#side-header .fusion-main-menu>ul>li>a{min-height:var(--nav_height);text-align:var(--menu_text_align)}#side-header .fusion-main-menu>ul>li>a.fusion-flex-link{justify-content:var(--menu_text_align)}#side-header .fusion-main-menu>ul>li.current-menu-ancestor>a,#side-header .fusion-main-menu>ul>li.current-menu-item>a{border-right-color:var(--menu_hover_first_color);border-left-color:var(--menu_hover_first_color);color:var(--menu_hover_first_color)}#side-header .fusion-main-menu>ul>li.fusion-menu-item-button>a{justify-content:var(--menu_text_align)}#side-header .fusion-secondary-menu>ul>li>a,#side-header .side-header-content-1,#side-header .side-header-content-2{color:var(--header_top_menu_sub_color);font-size:var(--snav_font_size)}.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li.current-menu-ancestor>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li.current-menu-item>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li.current-menu-parent>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li.current_page_item>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li:not(.fusion-middle-logo-menu-logo):not(.fusion-menu-item-button)>a:not(.awb-icon-sliding-bar):hover,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li.current-menu-ancestor>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li.current-menu-item>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li.current-menu-parent>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li.current_page_item>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li:not(.fusion-middle-logo-menu-logo):not(.fusion-menu-item-button):hover>a:not(.awb-icon-sliding-bar),.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li:not(.fusion-middle-logo-menu-logo):not(.fusion-menu-item-button)>a:not(.awb-icon-sliding-bar):hover{background-color:var(--menu_highlight_background)}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-arrow-highlight .fusion-arrow-svg{bottom:calc((var(--menu_arrow_size-height,12px)) * -1)}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-sticky-menu-only .fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-sticky-shadow .fusion-arrow-highlight .fusion-arrow-svg{box-sizing:content-box;padding-bottom:3px;margin-bottom:-3px}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-logo-link,.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu>ul{line-height:1}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-arrow-highlight .fusion-arrow-svg{transform:translateX(-50%);left:50%}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-arrow-highlight .fusion-arrow-svg,.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-dropdown-svg{height:var(--menu_arrow_size-height,12px);line-height:var(--menu_arrow_size-height, 12px)}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu>ul>.menu-item-has-children.fusion-active-link:before,.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu>ul>.menu-item-has-children:hover:before{bottom:calc(-10px - (var(--menu_arrow_size-height,12px)) * 2);height:calc((var(--menu_arrow_size-height,12px)) * 2 + 10px)}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu .fusion-dropdown-menu>.sub-menu,.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu .fusion-megamenu-wrapper{margin-top:calc((var(--menu_arrow_size-height,12px)) * 2 + 10px)}.fusion-sub-menu-slide.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu .fusion-dropdown-menu>.sub-menu,.fusion-sub-menu-slide.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu .fusion-megamenu-wrapper{margin-top:calc((var(--menu_arrow_size-height,12px)) * 2 + 30px)}.fusion-sub-menu-slide.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li:hover>.fusion-megamenu-wrapper,.fusion-sub-menu-slide.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li:hover>.fusion-menu-cart-items,.fusion-sub-menu-slide.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li:hover>.sub-menu{margin-top:calc((var(--menu_arrow_size-height,12px)) * 2 + 10px)}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6):not(.fusion-header-layout-v4):not(.fusion-header-layout-v5) .fusion-arrow-highlight .fusion-arrow-svg svg path{transition:fill .25s ease-in-out}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6).avada-header-border-color-full-transparent.fusion-header-layout-v2 .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6).avada-header-border-color-full-transparent.fusion-header-layout-v3 .fusion-arrow-svg svg{margin-top:1px}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6).avada-header-border-color-full-transparent.fusion-header-layout-v2.avada-sticky-shrinkage .fusion-is-sticky .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6).avada-header-border-color-full-transparent.fusion-header-layout-v3.avada-sticky-shrinkage .fusion-is-sticky .fusion-arrow-svg svg{margin-top:0}html:not(.avada-header-color-not-opaque) .avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6).avada-header-border-color-full-transparent.fusion-header-layout-v4 .fusion-arrow-svg svg,html:not(.avada-header-color-not-opaque) .avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6).avada-header-border-color-full-transparent.fusion-header-layout-v5 .fusion-arrow-svg svg{margin-top:1px}html:not(.avada-header-color-not-opaque) .avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6).avada-header-border-color-full-transparent.fusion-header-layout-v4.avada-sticky-shrinkage .fusion-is-sticky .fusion-arrow-svg svg,html:not(.avada-header-color-not-opaque) .avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6).avada-header-border-color-full-transparent.fusion-header-layout-v5.avada-sticky-shrinkage .fusion-is-sticky .fusion-arrow-svg svg{margin-top:0}.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6):not(.avada-header-border-color-full-transparent).fusion-header-layout-v2 .fusion-arrow-svg svg,.avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6):not(.avada-header-border-color-full-transparent).fusion-header-layout-v3 .fusion-arrow-svg svg{margin-top:-1px;display:block}html:not(.avada-header-color-not-opaque) .avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6):not(.avada-header-border-color-full-transparent).fusion-header-layout-v4 .fusion-arrow-svg svg,html:not(.avada-header-color-not-opaque) .avada-menu-highlight-style-arrow.fusion-top-header:not(.fusion-header-layout-v6):not(.avada-header-border-color-full-transparent).fusion-header-layout-v5 .fusion-arrow-svg svg{margin-top:-1px;display:block}.avada-menu-highlight-style-arrow.side-header-left:not(.fusion-header-layout-v6) .fusion-dropdown-svg{height:var(--menu_arrow_size-height,23px)}.avada-menu-highlight-style-arrow.side-header-left:not(.fusion-header-layout-v6) .fusion-main-menu .menu-item-has-children:hover:before{right:calc(-5px - (var(--menu_arrow_size-width)) * 2);width:calc((var(--menu_arrow_size-width)) * 2 + 5px)}.avada-menu-highlight-style-arrow.side-header-left:not(.fusion-header-layout-v6) .fusion-main-menu .fusion-dropdown-menu>.sub-menu,.avada-menu-highlight-style-arrow.side-header-left:not(.fusion-header-layout-v6) .fusion-main-menu .fusion-megamenu-wrapper{margin-left:calc((var(--menu_arrow_size-width)) * 2 + 5px)}.avada-menu-highlight-style-arrow.side-header-left:not(.fusion-header-layout-v6) .fusion-arrow-highlight .fusion-arrow-svg{right:calc(2px - var(--menu_arrow_size-width));line-height:1;transform:translateY(-50%);top:50%}.avada-menu-highlight-style-arrow.side-header-left:not(.fusion-header-layout-v6) .fusion-arrow-svg svg{margin-left:-1px}.avada-menu-highlight-style-arrow.side-header-left:not(.fusion-header-layout-v6).avada-header-border-color-full-transparent .fusion-arrow-highlight .fusion-arrow-svg{right:calc(1px - var(--menu_arrow_size-width))}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-mobile-nav-holder .fusion-arrow-svg,.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-mobile-nav-holder .fusion-dropdown-svg{display:none}.avada-menu-highlight-style-arrow:not(.fusion-header-layout-v6) .fusion-arrow-highlight .fusion-arrow-svg{opacity:0;font-size:0;visibility:hidden;position:absolute;overflow:hidden;display:inline-block}.fusion-arrow-highlight .fusion-arrow-svg{left:calc(1px + var(--menu_arrow_size-width-header_border_color_condition_5));right:calc(1px - var(--menu_arrow_size-width-header_border_color_condition_5))}.side-header-right:not(.fusion-header-layout-v6) .fusion-arrow-highlight .fusion-arrow-svg{left:calc(2px - var(--menu_arrow_size-width))}.side-header-right:not(.fusion-header-layout-v6).avada-menu-highlight-style-arrow .fusion-main-menu .menu-item-has-children:hover:before{left:calc(-5px - (var(--menu_arrow_size-width)) * 2);width:calc((var(--menu_arrow_size-width)) * 2 + 5px)}.side-header-right:not(.fusion-header-layout-v6).avada-menu-highlight-style-arrow .fusion-main-menu .fusion-dropdown-menu>.sub-menu{margin-left:calc(-5px - (var(--menu_arrow_size-width)) * 2)}.side-header-right:not(.fusion-header-layout-v6).avada-menu-highlight-style-arrow .fusion-main-menu .fusion-megamenu-wrapper{margin-left:calc(-5px - (var(--menu_arrow_size-width)) * 2)}.side-header-right:not(.fusion-header-layout-v6).avada-menu-highlight-style-arrow.rtl .fusion-main-menu .fusion-megamenu-wrapper{margin-left:calc(-4px - (var(--menu_arrow_size-width)) * 2)}.side-header-right:not(.fusion-header-layout-v6).avada-menu-highlight-style-arrow .fusion-dropdown-svg{height:var(--menu_arrow_size-height,23px);line-height:var(--menu_arrow_size-height, 23px)}.fusion-top-header.fusion-header-layout-v7.avada-menu-highlight-style-background .fusion-header .fusion-logo-background{margin-right:var(--nav_padding)}.avada-has-megamenu-shadow .fusion-main-menu .sub-menu,.avada-has-megamenu-shadow .fusion-megamenu-holder{box-shadow:1px 1px 30px rgba(0,0,0,.06)}.avada-has-megamenu-shadow .fusion-megamenu-wrapper .fusion-megamenu-submenu .sub-menu{box-shadow:none}.fusion-megamenu-holder{border-top-width:var(--dropdown_menu_top_border_size);border-color:var(--menu_hover_first_color);background-color:var(--menu_sub_bg_color)}.side-header-right #side-header .fusion-main-menu .fusion-menu-cart-items,.side-header-right #side-header .fusion-main-menu .fusion-menu-login-box .fusion-custom-menu-item-contents,.side-header-right #side-header .fusion-main-menu ul .fusion-dropdown-menu .sub-menu,.side-header-right #side-header .fusion-main-menu ul .fusion-dropdown-menu .sub-menu li ul,.side-header-right #side-header .fusion-main-menu ul .fusion-menu-login-box .sub-menu{left:calc((var(--dropdown_menu_width)) * -1)}.fusion-body .fusion-megamenu-wrapper .fusion-megamenu-holder .fusion-megamenu .fusion-megamenu-submenu{border-color:var(--menu_sub_sep_color)}.fusion-megamenu-wrapper li .fusion-megamenu-title-disabled{font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight);padding-top:var(--mainmenu_dropdown_vertical_padding);padding-bottom:var(--mainmenu_dropdown_vertical_padding);color:var(--menu_sub_color);font-size:var(--nav_dropdown_font_size)}.fusion-megamenu-wrapper .fusion-megamenu-submenu>a:hover{font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight);background-color:var(--menu_bg_hover_color);color:var(--menu_sub_color);font-size:var(--nav_dropdown_font_size)}.fusion-megamenu-wrapper .fusion-megamenu-submenu .fusion-megamenu-border{border-color:var(--menu_sub_sep_color)}.fusion-megamenu-wrapper .fusion-megamenu-submenu .sub-menu a{padding-top:var(--megamenu_item_vertical_padding);padding-bottom:var(--megamenu_item_vertical_padding)}.sub-menu .fusion-caret{top:var(--mainmenu_dropdown_vertical_padding)}.avada-has-mainmenu-dropdown-divider .fusion-main-menu .fusion-dropdown-menu .sub-menu li a{border-bottom-width:1px;border-bottom-style:solid}body:not(.avada-has-mainmenu-dropdown-divider) .fusion-main-menu .fusion-dropdown-menu .sub-menu li a{border-bottom:none}.avada-menu-highlight-style-arrow .fusion-dropdown-svg.fusion-svg-active path{fill:var(--menu_bg_hover_color)}.fusion-menu-highlight-label{border-radius:var(--main_nav_highlight_radius)}.fusion-main-menu>ul>li>a,.side-nav li a{font-family:var(--nav_typography-font-family);font-weight:var(--nav_typography-font-weight);font-size:var(--nav_typography-font-size);letter-spacing:var(--nav_typography-letter-spacing);text-transform:var(--nav_typography-text-transform);font-style:var(--nav_typography-font-style,normal)}.fusion-main-menu>ul>li>a{color:var(--nav_typography-color)}.fusion-flyout-cart-wrapper .fusion-widget-cart-number,.fusion-main-menu-cart .fusion-widget-cart-number{font-family:var(--nav_typography-font-family);font-style:var(--nav_typography-font-style,normal)}.fusion-megamenu-icon img{max-height:var(--nav_typography-font-size)}.fusion-body.avada-menu-icon-position-bottom:not(.fusion-top-header) .fusion-main-menu .fusion-flex-link,.fusion-body.avada-menu-icon-position-top:not(.fusion-top-header) .fusion-main-menu .fusion-flex-link{padding:calc((var(--nav_height) - var(--nav_typography-font-size))/ 2) 0;line-height:1}#wrapper .fusion-header-has-flyout-menu .fusion-flyout-search .searchform .s{color:var(--nav_typography-color);border-color:var(--nav_typography-color);font-family:var(--nav_typography-font-family);font-style:var(--nav_typography-font-style,normal)}#wrapper .fusion-header-has-flyout-menu .fusion-flyout-search .searchform .s::-webkit-input-placeholder{color:var(--nav_typography-color)}#wrapper .fusion-header-has-flyout-menu .fusion-flyout-search .searchform .s::-moz-placeholder{color:var(--nav_typography-color)}#wrapper .fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout .fusion-flyout-search .searchform .s{border-color:var(--mobile_menu_typography-color);font-family:var(--mobile_menu_typography-font-family);color:var(--mobile_menu_typography-color)}#wrapper .fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout .fusion-flyout-search .searchform .s::-webkit-input-placeholder{color:var(--mobile_menu_typography-color)}#wrapper .fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout .fusion-flyout-search .searchform .s::-moz-placeholder{color:var(--mobile_menu_typography-color)}#wrapper .fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout .fusion-flyout-search .searchform .s:-moz-placeholder{color:var(--mobile_menu_typography-color)}#wrapper .side-nav li a{font-size:var(--side_nav_font_size)}.fusion-secondary-menu .fusion-menu-cart-item a:hover{color:var(--header_top_menu_sub_hover_color)}.fusion-secondary-menu .fusion-secondary-menu-icon{color:var(--nav_typography-color);min-width:var(--topmenu_dropwdown_width)}.fusion-secondary-menu .fusion-secondary-menu-icon:hover{color:var(--nav_typography-color)}.fusion-secondary-menu .sub-menu{background-color:var(--header_top_sub_bg_color);width:var(--topmenu_dropwdown_width);border-color:var(--header_top_menu_sub_sep_color)}.fusion-secondary-menu .sub-menu a{color:var(--header_top_menu_sub_color);border-color:var(--header_top_menu_sub_sep_color)}.fusion-secondary-menu .sub-menu a:hover{color:var(--header_top_menu_sub_hover_color);background-color:var(--header_top_menu_bg_hover_color)}.fusion-secondary-menu .fusion-custom-menu-item-contents{background-color:var(--header_top_sub_bg_color);color:var(--header_top_menu_sub_color);width:var(--topmenu_dropwdown_width);border-color:var(--header_top_menu_sub_sep_color)}.fusion-secondary-menu .fusion-menu-cart-items a{color:var(--header_top_menu_sub_color)}.fusion-secondary-menu .fusion-menu-cart-item a{border-color:var(--header_top_menu_sub_sep_color)}.fusion-secondary-menu .fusion-menu-cart-item a:hover{background-color:var(--header_top_menu_bg_hover_color)}.fusion-secondary-menu>ul>li{border-color:var(--header_top_first_border_color)}.fusion-secondary-menu>ul>li>.sub-menu .sub-menu{left:calc(var(--topmenu_dropwdown_width) - 2px)}.fusion-secondary-menu>ul>li>a{height:var(--sec_menu_lh)}.fusion-secondary-menu-icon{color:var(--nav_typography-color)}.fusion-secondary-menu-icon:after,.fusion-secondary-menu-icon:before{color:var(--nav_typography-color)}.fusion-megamenu-title{color:var(--nav_typography-color);font-size:var(--megamenu_title_size)}.fusion-megamenu-title a{color:var(--nav_typography-color)}.fusion-has-main-nav-icon-circle .fusion-main-menu .fusion-main-menu-icon:after{border:1px solid var(--nav_typography-color);padding:calc((var(--nav_typography-font-size)) * .35)}.fusion-has-main-nav-icon-circle .fusion-main-menu .fusion-main-menu-icon:hover:after{border:1px solid var(--menu_hover_first_color)}.fusion-has-main-nav-icon-circle .fusion-main-menu .fusion-widget-cart-counter>a:before{border:1px solid var(--nav_typography-color);padding:calc((var(--nav_typography-font-size)) * .35)}.fusion-has-main-nav-icon-circle .fusion-main-menu .fusion-widget-cart-counter>a:hover:before{border:1px solid var(--menu_hover_first_color)}.fusion-has-main-nav-icon-circle .fusion-main-menu .fusion-main-menu-search-open .fusion-main-menu-icon:after{border:1px solid var(--menu_hover_first_color)}.fusion-has-main-nav-icon-circle .fusion-main-menu .fusion-main-menu-icon-active:after{border:1px solid var(--menu_hover_first_color)}.fusion-has-main-nav-icon-circle .fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-icons .fusion-icon:before{border:1px solid var(--nav_typography-color)}.fusion-has-main-nav-icon-circle .fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-icons .fusion-icon:hover:before{border:1px solid var(--menu_hover_first_color)}.fusion-has-main-nav-icon-circle .fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-icon:before{border:1px solid var(--flyout_menu_icon_color);padding:calc((var(--flyout_menu_icon_font_size_px)) * .35)}.fusion-has-main-nav-icon-circle .fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-icon:hover:before{border:1px solid var(--flyout_menu_icon_hover_color)}.fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-icons .fusion-icon:before{color:var(--nav_typography-color)}.fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-icons .fusion-toggle-icon-line{background-color:var(--nav_typography-color)}.fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-icons .fusion-flyout-menu-toggle:hover .fusion-toggle-icon-line,.fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-icons .fusion-flyout-search-toggle:hover .fusion-toggle-icon-line{background-color:var(--menu_hover_first_color)}.fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-icons .fusion-icon:hover:before{color:var(--menu_hover_first_color)}.fusion-header-has-flyout-menu .fusion-flyout-search .fusion-live-search .fusion-slider-loading{border-bottom-color:var(--nav_typography-color);border-top-color:var(--nav_typography-color-35a);border-right-color:var(--nav_typography-color-35a);border-left-color:var(--nav_typography-color-35a)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons{font-size:var(--flyout_menu_icon_font_size);margin:0 calc((var(--flyout_nav_icons_padding))/ -2)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-cart-wrapper,.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-sliding-bar-toggle{padding:0 calc((var(--flyout_nav_icons_padding))/ 2)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-icon:before{color:var(--flyout_menu_icon_color)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-icon:hover:before{color:var(--flyout_menu_icon_hover_color)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-toggle-icon-line{background-color:var(--flyout_menu_icon_color);width:calc((var(--flyout_menu_icon_font_size_px)) * 1.5);height:calc((var(--flyout_menu_icon_font_size_px)) * .1)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-menu-toggle,.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle{padding:0 calc((var(--flyout_nav_icons_padding))/ 2)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-menu-toggle:hover .fusion-toggle-icon-line,.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle:hover .fusion-toggle-icon-line{background-color:var(--flyout_menu_icon_hover_color)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-menu-toggle{height:calc((var(--flyout_menu_icon_font_size_px)) * .9);width:calc((var(--flyout_menu_icon_font_size_px)) * 1.5)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon{height:calc((var(--flyout_menu_icon_font_size_px)) * .9);width:calc((var(--flyout_menu_icon_font_size_px)) * .9)}.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .awb-icon-sliding-bar:before{padding:calc((var(--flyout_menu_icon_font_size_px)) * .2)}.fusion-header-has-flyout-menu .fusion-flyout-mobile-menu-icons{margin-top:var(--mobile_menu_icons_top_margin)}.fusion-header-has-flyout-menu .fusion-widget-cart-number{min-width:var(--flyout_menu_icon_font_size)}.fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu-icons .fusion-flyout-menu-toggle .fusion-toggle-icon-line{width:calc((var(--flyout_menu_icon_font_size_px)) * 1.2)}.fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line{width:calc((var(--flyout_menu_icon_font_size_px)) * 1.2)}.fusion-header-has-flyout-menu .fusion-flyout-menu-bg{background-color:var(--flyout_menu_background_color)}.fusion-header-has-flyout-menu .fusion-flyout-menu>ul.fusion-menu>li{padding:calc((var(--flyout_menu_item_padding))/ 2) 0}.fusion-body .fusion-is-sticky .fusion-header-has-flyout-menu .fusion-flyout-menu>ul.fusion-menu>li{padding:calc((var(--flyout_menu_item_padding))/ 2) 0}.fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout.fusion-flyout-active .fusion-flyout-menu-icons .fusion-toggle-icon-line{background-color:var(--mobile_menu_typography-color)}.fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout.fusion-flyout-active .fusion-flyout-menu-icons .fusion-icon:before{color:var(--mobile_menu_typography-color)}.fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout.fusion-flyout-active .fusion-flyout-menu-icons .fusion-icon:hover:before{color:var(--mobile_menu_font_hover_color)}.fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout.fusion-flyout-active .fusion-flyout-menu-icons .fusion-flyout-menu-toggle:hover .fusion-toggle-icon-line,.fusion-header-has-flyout-menu.fusion-mobile-menu-design-flyout.fusion-flyout-active .fusion-flyout-menu-icons .fusion-flyout-search-toggle:hover .fusion-toggle-icon-line{background-color:var(--mobile_menu_font_hover_color)}.fusion-header-layout-v4.fusion-top-header.avada-menu-highlight-style-arrow .fusion-arrow-svg path,.fusion-header-layout-v5.fusion-top-header.avada-menu-highlight-style-arrow .fusion-arrow-svg path{fill:var(--menu_h45_bg_color)}.fusion-secondary-main-menu{background-color:var(--menu_h45_bg_color)}.fusion-widget-cart-counter a:hover:before{color:var(--menu_hover_first_color)}.woocommerce-cart .fusion-main-menu-cart .fusion-main-menu-icon:after,.woocommerce-cart .fusion-main-menu-cart .fusion-main-menu-icon:before{color:var(--menu_hover_first_color)}.fusion-is-sticky .fusion-main-menu .fusion-main-menu-icon-active:after,.fusion-is-sticky .fusion-main-menu .fusion-main-menu-icon:hover:after,.fusion-is-sticky .fusion-main-menu .fusion-main-menu-search-open .fusion-main-menu-icon:after,.fusion-is-sticky .fusion-main-menu .fusion-menu .fusion-main-menu-icon-active:after,.fusion-is-sticky .fusion-main-menu .fusion-widget-cart-counter>a:hover:before,.fusion-is-sticky .fusion-main-menu>ul>li.current-menu-item>a,.fusion-is-sticky .fusion-main-menu>ul>li>a:hover{color:var(--menu_hover_first_color)}.fusion-body .fusion-main-menu .current-menu-ancestor>a,.fusion-body .fusion-main-menu .current-menu-item>a,.fusion-body .fusion-main-menu .current-menu-parent>a,.fusion-body .fusion-main-menu .current_page_item>a{border-color:var(--menu_hover_first_color);color:var(--menu_hover_first_color)}.fusion-body .fusion-main-menu .current-menu-ancestor>a .fusion-menu-description,.fusion-body .fusion-main-menu .current-menu-item>a .fusion-menu-description,.fusion-body .fusion-main-menu .current-menu-parent>a .fusion-menu-description,.fusion-body .fusion-main-menu .current_page_item>a .fusion-menu-description{color:var(--menu_hover_first_color-65a)}.fusion-body .fusion-main-menu .current-menu-item:not(.fusion-main-menu-cart)>a:before{border-color:var(--menu_hover_first_color);color:var(--menu_hover_first_color)}.fusion-body .fusion-main-menu .fusion-widget-cart-counter .fusion-main-menu-icon-active:before{color:var(--menu_hover_first_color)}.fusion-body .fusion-main-menu>ul>li>a:hover .fusion-menu-description{color:var(--menu_hover_first_color-65a)}.fusion-body .fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-menu-icons .fusion-flyout-search-toggle .fusion-toggle-icon-line{height:calc((var(--flyout_menu_icon_font_size_px)) * .1)}.fusion-body .fusion-mobile-nav-holder .fusion-selector-down{line-height:calc(var(--mobile_menu_nav_height) - 2px);height:calc(var(--mobile_menu_nav_height) - 2px);border-color:var(--mobile_menu_border_color)}.avada-flyout-menu-direction-fade .fusion-header-has-flyout-menu .fusion-flyout-menu,.avada-flyout-menu-direction-fade .fusion-header-has-flyout-menu .fusion-flyout-menu-bg,.avada-flyout-menu-direction-fade .fusion-header-has-flyout-menu .fusion-flyout-search{top:-1000%;transition:opacity .4s ease 0s,top 0s ease .4s}.avada-flyout-menu-direction-fade .fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-bg,.avada-flyout-menu-direction-fade .fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu,.avada-flyout-menu-direction-fade .fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-search{top:0;transition:opacity .4s ease 0s,top 0s ease 0s}.avada-flyout-menu-direction-left .fusion-header-has-flyout-menu .fusion-flyout-menu,.avada-flyout-menu-direction-left .fusion-header-has-flyout-menu .fusion-flyout-menu-bg,.avada-flyout-menu-direction-left .fusion-header-has-flyout-menu .fusion-flyout-search{transform:translateX(-100%)}.avada-flyout-menu-direction-left .fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-bg,.avada-flyout-menu-direction-left .fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu,.avada-flyout-menu-direction-left .fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-search{transform:translateX(0)}.avada-flyout-menu-direction-right .fusion-header-has-flyout-menu .fusion-flyout-menu,.avada-flyout-menu-direction-right .fusion-header-has-flyout-menu .fusion-flyout-menu-bg,.avada-flyout-menu-direction-right .fusion-header-has-flyout-menu .fusion-flyout-search{transform:translateX(100%)}.avada-flyout-menu-direction-right .fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-bg,.avada-flyout-menu-direction-right .fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu,.avada-flyout-menu-direction-right .fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-search{transform:translateX(0)}.avada-flyout-menu-direction-bottom .fusion-header-has-flyout-menu .fusion-flyout-menu,.avada-flyout-menu-direction-bottom .fusion-header-has-flyout-menu .fusion-flyout-menu-bg,.avada-flyout-menu-direction-bottom .fusion-header-has-flyout-menu .fusion-flyout-search{transform:translateY(100%)}.avada-flyout-menu-direction-bottom .fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-bg,.avada-flyout-menu-direction-bottom .fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu,.avada-flyout-menu-direction-bottom .fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-search{transform:translateY(0)}.avada-flyout-menu-direction-top .fusion-header-has-flyout-menu .fusion-flyout-menu,.avada-flyout-menu-direction-top .fusion-header-has-flyout-menu .fusion-flyout-menu-bg,.avada-flyout-menu-direction-top .fusion-header-has-flyout-menu .fusion-flyout-search{transform:translateY(-100%)}.avada-flyout-menu-direction-top .fusion-header-has-flyout-menu.fusion-flyout-active .fusion-flyout-menu-bg,.avada-flyout-menu-direction-top .fusion-header-has-flyout-menu.fusion-flyout-menu-active .fusion-flyout-menu,.avada-flyout-menu-direction-top .fusion-header-has-flyout-menu.fusion-flyout-search-active .fusion-flyout-search{transform:translateY(0)}.fusion-secondary-header{color:var(--snav_color);font-size:var(--snav_font_size)}.fusion-secondary-header a{color:var(--snav_color)}.fusion-secondary-header a:hover{color:var(--snav_color)}.fusion-mobile-menu-icons{margin-top:var(--mobile_menu_icons_top_margin)}.fusion-mobile-menu-icons a{color:var(--mobile_menu_toggle_color)}.fusion-mobile-menu-icons a:after,.fusion-mobile-menu-icons a:before{color:var(--mobile_menu_toggle_color)}.fusion-megamenu-widgets-container{font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight);color:var(--menu_sub_color);font-size:var(--nav_dropdown_font_size)}.fusion-megamenu-bullet{border-left-color:var(--menu_sub_color)}body:not(.mobile-menu-design-flyout) .fusion-mobile-nav-item a{height:var(--mobile_menu_nav_height);background-color:var(--mobile_menu_background_color);border-color:var(--mobile_menu_border_color)}body:not(.mobile-menu-design-flyout) .fusion-mobile-nav-item a:hover{background-color:var(--mobile_menu_hover_color)}body:not(.mobile-menu-design-flyout) .fusion-mobile-current-nav-item>a,body:not(.mobile-menu-design-flyout) .fusion-mobile-nav-item.current-menu-item>a{background-color:var(--mobile_menu_hover_color)}.fusion-mobile-selector{height:var(--mobile_menu_nav_height);line-height:var(--mobile_menu_nav_height);background-color:var(--mobile_menu_background_color);border-color:var(--mobile_menu_border_color);color:var(--mobile_menu_typography-color);font-size:var(--mobile_menu_typography-font-size)}.fusion-open-submenu{height:var(--mobile_menu_nav_height);line-height:var(--mobile_menu_nav_height);font-size:var(--mobile_menu_typography-font-size-open-submenu)}.avada-has-mobile-menu-search:not(.avada-has-main-nav-search-icon) .fusion-header-v6.fusion-header-has-flyout-menu .fusion-flyout-menu-icons .fusion-flyout-search-toggle{display:none}.fusion-mobile-nav-holder>ul{border-color:var(--mobile_menu_border_color)}.fusion-mobile-nav-holder>ul li a{font-family:var(--mobile_menu_typography-font-family);font-weight:var(--mobile_menu_typography-font-weight);font-style:var(--mobile_menu_typography-font-style,normal)}.fusion-mobile-nav-holder>ul li .fusion-icon-only-link .menu-text{font-family:var(--mobile_menu_typography-font-family);font-weight:var(--mobile_menu_typography-font-weight);font-style:var(--mobile_menu_typography-font-style,normal)}.fusion-mobile-nav-holder>ul>li.fusion-mobile-nav-item>a{font-size:var(--mobile_menu_typography-font-size);letter-spacing:var(--mobile_menu_typography-letter-spacing);text-transform:var(--mobile_menu_typography-text-transform)}.fusion-mobile-menu-design-modern .fusion-mobile-nav-holder>ul{border-color:var(--mobile_menu_border_color)}.fusion-selector-down{font-size:var(--mobile_menu_typography-font-size-30-or-24px)}.fusion-selector-down:before{color:var(--mobile_menu_toggle_color)}.fusion-mobile-nav-item .fusion-open-submenu{color:var(--mobile_menu_typography-color)}.fusion-mobile-nav-item a{color:var(--mobile_menu_typography-color);font-size:var(--mobile_menu_typography-font-size);line-height:var(--mobile_menu_typography-line-height);letter-spacing:var(--mobile_menu_typography-letter-spacing);text-transform:var(--mobile_menu_typography-text-transform)}.fusion-mobile-nav-item a:hover{color:var(--mobile_menu_font_hover_color)}.fusion-mobile-nav-item a:before{color:var(--mobile_menu_typography-color)}.fusion-mobile-nav-item.fusion-main-menu-sliding-bar a:after{color:var(--mobile_menu_typography-color)}.fusion-mobile-nav-item.current-menu-item>a{color:var(--mobile_menu_font_hover_color)}.fusion-mobile-current-nav-item>a{color:var(--mobile_menu_font_hover_color)}.avada-has-megamenu-item-divider #side-header .fusion-main-menu>ul .sub-menu>li:last-child>a,.avada-has-megamenu-item-divider .fusion-megamenu-wrapper .fusion-megamenu-submenu .sub-menu a,.avada-has-megamenu-item-divider .fusion-megamenu-wrapper .fusion-megamenu-submenu>a{border-bottom:1px solid var(--menu_sub_sep_color)}.avada-has-megamenu-item-divider .fusion-megamenu-wrapper .fusion-megamenu-submenu{padding-bottom:0}.avada-has-megamenu-item-divider .fusion-megamenu-wrapper .fusion-megamenu-submenu-notitle{padding-top:0}.rtl .fusion-secondary-menu>ul>li>.sub-menu .sub-menu{right:var(--topmenu_dropwdown_width)}.rtl .fusion-secondary-menu>ul>li:first-child{border-left:1px solid var(--header_top_first_border_color)}.rtl .fusion-header-v1 .fusion-main-menu>ul>li,.rtl .fusion-header-v2 .fusion-main-menu>ul>li,.rtl .fusion-header-v3 .fusion-main-menu>ul>li,.rtl .fusion-header-v4 .fusion-main-menu>ul>li,.rtl .fusion-header-v5 .fusion-main-menu>ul>li,.rtl .fusion-header-v7 .fusion-main-menu>ul>li{padding-left:var(--nav_padding-no-zero,var(--nav_padding))}.rtl .fusion-megamenu-wrapper .fusion-megamenu-submenu:last-child{border-color:var(--menu_sub_sep_color)}.rtl .fusion-mobile-nav-holder .fusion-selector-down{line-height:calc(var(--mobile_menu_nav_height) - 2px);height:calc(var(--mobile_menu_nav_height) - 2px);border-color:var(--mobile_menu_border_color)}.rtl .fusion-selector-down:before{color:var(--mobile_menu_toggle_color)}.fusion-is-sticky .fusion-main-menu .current-menu-ancestor>a>.fusion-megamenu-icon,.fusion-is-sticky .fusion-main-menu .current-menu-item>a>.fusion-megamenu-icon,.fusion-is-sticky .fusion-main-menu .current-menu-parent>a>.fusion-megamenu-icon,.fusion-is-sticky .fusion-main-menu .current_page_item>a>.fusion-megamenu-icon,.fusion-is-sticky .fusion-main-menu>ul>li>a:hover>.fusion-megamenu-icon{color:var(--menu_icon_hover_color)}.fusion-top-header.fusion-sticky-header:not(.fusion-header-v6) .avada-menu-highlight-style-arrow .fusion-is-sticky .fusion-arrow-svg svg path{stroke:transparent}.avada-menu-highlight-style-bottombar.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li>.fusion-bottombar-highlight:after{border-top:var(--nav_highlight_border) solid var(--menu_hover_first_color)}.avada-menu-highlight-style-bottombar.fusion-top-header:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li>.fusion-bottombar-highlight.fusion-flex-column:after{margin-top:var(--menu_icon_size)}.fusion-contact-info{line-height:var(--sec_menu_lh)}.side-header.menu-text-align-right:not(.avada-menu-icon-position-left) .fusion-main-menu>ul>li>a.fusion-flex-link,.side-header.menu-text-align-right:not(.avada-menu-icon-position-right) .fusion-main-menu>ul>li>a.fusion-flex-link{align-items:flex-end}.side-header.menu-text-align-right:not(.avada-menu-icon-position-left).rtl .fusion-main-menu>ul>li>a.fusion-flex-link,.side-header.menu-text-align-right:not(.avada-menu-icon-position-right).rtl .fusion-main-menu>ul>li>a.fusion-flex-link{align-items:flex-start}.side-header.menu-text-align-left:not(.avada-menu-icon-position-left) .fusion-main-menu>ul>li>a.fusion-flex-link,.side-header.menu-text-align-left:not(.avada-menu-icon-position-right) .fusion-main-menu>ul>li>a.fusion-flex-link{align-items:flex-start}.side-header.menu-text-align-left:not(.avada-menu-icon-position-left).rtl .fusion-main-menu>ul>li>a.fusion-flex-link,.side-header.menu-text-align-left:not(.avada-menu-icon-position-right).rtl .fusion-main-menu>ul>li>a.fusion-flex-link{align-items:flex-end}.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li:hover>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-is-sticky .fusion-main-menu>ul>li:hover>a .fusion-menu-description,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li:hover>a,.avada-menu-highlight-style-background:not(.fusion-header-layout-v6) .fusion-main-menu>ul>li:hover>a .fusion-menu-description{color:var(--menu_hover_first_color)}.fusion-body .avada-google-map{margin-top:var(--gmap_topmargin)}.avada-image-rollover-no .fusion-rollover{display:none}.avada-image-rollover-no .fusion-masonry-element-container.fusion-image-wrapper>a{position:absolute;top:0;bottom:0;left:0;right:0}.fusion-image-wrapper .fusion-rollover{background-image:linear-gradient(to top,var(--image_gradient_bottom_color) 0,var(--image_gradient_top_color) 100%)}.avada-image-rollover-direction-fade .fusion-image-wrapper .fusion-rollover{transform:translateY(0);transition:opacity .5s ease-in-out}.avada-image-rollover-direction-right .fusion-image-wrapper .fusion-rollover{transform:translateX(100%)}.avada-image-rollover-direction-bottom .fusion-image-wrapper .fusion-rollover{transform:translateY(100%)}.avada-image-rollover-direction-top .fusion-image-wrapper .fusion-rollover{transform:translateY(-100%)}.avada-image-rollover-direction-center_horiz .fusion-image-wrapper .fusion-rollover{transform:scaleX(0)}.avada-image-rollover-direction-center_vertical .fusion-image-wrapper .fusion-rollover{transform:scaleY(0)}.fusion-image-wrapper .fusion-rollover .fusion-rollover-gallery,.fusion-image-wrapper .fusion-rollover .fusion-rollover-link{width:calc((var(--image_rollover_icon_size)) * 1.5);height:calc((var(--image_rollover_icon_size)) * 1.5);background-color:transparent}.avada-image-rollover-circle-yes .fusion-image-wrapper .fusion-rollover .fusion-rollover-gallery,.avada-image-rollover-circle-yes .fusion-image-wrapper .fusion-rollover .fusion-rollover-link{width:calc((var(--image_rollover_icon_size)) * 2.41);height:calc((var(--image_rollover_icon_size)) * 2.41);background-color:var(--image_rollover_text_color);line-height:2.41}.fusion-image-wrapper .fusion-rollover .fusion-rollover-gallery:before,.fusion-image-wrapper .fusion-rollover .fusion-rollover-link:before{font-size:var(--image_rollover_icon_size);color:var(--image_rollover_icon_color)}.fusion-image-wrapper.hover .fusion-rollover{opacity:1}.avada-image-rollover-direction-fade .fusion-image-wrapper.hover .fusion-rollover,.avada-image-rollover-direction-fade .fusion-image-wrapper:hover .fusion-rollover,.avada-image-rollover-direction-right .fusion-image-wrapper.hover .fusion-rollover,.avada-image-rollover-direction-right .fusion-image-wrapper:hover .fusion-rollover{transform:translateX(0)}.avada-image-rollover-direction-bottom .fusion-image-wrapper.hover .fusion-rollover,.avada-image-rollover-direction-bottom .fusion-image-wrapper:hover .fusion-rollover,.avada-image-rollover-direction-top .fusion-image-wrapper.hover .fusion-rollover,.avada-image-rollover-direction-top .fusion-image-wrapper:hover .fusion-rollover{transform:translateY(0)}.avada-image-rollover-direction-center_horiz .fusion-image-wrapper.hover .fusion-rollover,.avada-image-rollover-direction-center_horiz .fusion-image-wrapper:hover .fusion-rollover{transform:scaleX(1)}.avada-image-rollover-direction-center_vertical .fusion-image-wrapper.hover .fusion-rollover,.avada-image-rollover-direction-center_vertical .fusion-image-wrapper:hover .fusion-rollover{transform:scaleY(1)}.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-product-buttons a:before,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories a,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-title a,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .price,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .price *,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content a,.fusion-rollover .fusion-rollover-content .fusion-rollover-title{color:var(--image_rollover_text_color)}.fusion-hide-pagination-text .fusion-pagination .next,.fusion-hide-pagination-text .fusion-pagination .prev,.fusion-hide-pagination-text .pagination .pagination-next,.fusion-hide-pagination-text .pagination .pagination-prev,.fusion-pagination .current,.fusion-pagination .page-numbers:not(.prev):not(.next),.page-links a,.page-links>.page-number:not(.prev):not(.next),.pagination .current,.pagination .pagination-next,.pagination a.inactive{border-radius:var(--pagination_border_radius);border-width:var(--pagination_border_width)}body:not(.fusion-hide-pagination-text) .fusion-pagination .next,body:not(.fusion-hide-pagination-text) .fusion-pagination .prev,body:not(.fusion-hide-pagination-text) .pagination .pagination-next,body:not(.fusion-hide-pagination-text) .pagination .pagination-prev{line-height:var(--pagination_width_height)}body:not(.avada-has-pagination-padding) .fusion-pagination .current,body:not(.avada-has-pagination-padding) .fusion-pagination .page-numbers:not(.prev):not(.next),body:not(.avada-has-pagination-padding) .page-links a,body:not(.avada-has-pagination-padding) .page-links>.page-number:not(.prev):not(.next),body:not(.avada-has-pagination-padding) .pagination .current,body:not(.avada-has-pagination-padding) .pagination a.inactive,body:not(.avada-has-pagination-padding).fusion-hide-pagination-text .fusion-pagination .next,body:not(.avada-has-pagination-padding).fusion-hide-pagination-text .fusion-pagination .prev,body:not(.avada-has-pagination-padding).fusion-hide-pagination-text .pagination .pagination-next,body:not(.avada-has-pagination-padding).fusion-hide-pagination-text .pagination .pagination-prev{width:var(--pagination_width_height);height:var(--pagination_width_height);margin-left:calc((var(--pagination_width_height))/ 10);margin-right:calc((var(--pagination_width_height))/ 10)}body:not(.avada-has-pagination-padding) .pagination .pagination-next,body:not(.avada-has-pagination-padding) .pagination .pagination-prev{margin-left:calc((var(--pagination_width_height))/ 10);margin-right:calc((var(--pagination_width_height))/ 10)}body:not(.avada-has-pagination-padding) .pagination .pagination-dots{width:calc((var(--pagination_width_height))/ 2);margin-left:calc((var(--pagination_width_height))/ 10);margin-right:calc((var(--pagination_width_height))/ 10)}.avada-has-pagination-padding .fusion-pagination .current,.avada-has-pagination-padding .fusion-pagination .page-numbers:not(.prev):not(.next),.avada-has-pagination-padding .page-links a,.avada-has-pagination-padding .page-links>.page-number:not(.prev):not(.next),.avada-has-pagination-padding .pagination .current,.avada-has-pagination-padding .pagination a.inactive,.avada-has-pagination-padding.fusion-hide-pagination-text .fusion-pagination .next,.avada-has-pagination-padding.fusion-hide-pagination-text .fusion-pagination .prev,.avada-has-pagination-padding.fusion-hide-pagination-text .pagination .pagination-next,.avada-has-pagination-padding.fusion-hide-pagination-text .pagination .pagination-prev{padding:var(--pagination_box_padding-height) var(--pagination_box_padding-width) var(--pagination_box_padding-height) var(--pagination_box_padding-width)}.fusion-pagination .next,.fusion-pagination .page-numbers,.fusion-pagination .prev,.page-links,.pagination,.pagination .pagination-next,.pagination .pagination-prev{font-size:var(--pagination_font_size)}#comment-input input,.avada-select .select2-container .select2-choice,.avada-select .select2-container .select2-choice .select2-arrow,.avada-select .select2-container .select2-choice2 .select2-arrow,.chzn-container .chzn-drop,.chzn-container-single .chzn-single,.fusion-body .avada-select-parent select,.fusion-body .gift-cards-list button.ywgc-amount-buttons,.fusion-login-box .fusion-login-form input[type=password],.fusion-login-box .fusion-login-form input[type=text],.input-text:not(textarea),.main-nav-search-form input,.post-password-form label input[type=password],.search-page-search-form input,.searchform .fusion-search-form-content .fusion-search-button input[type=submit],.searchform .fusion-search-form-content .fusion-search-field input,.searchform .search-table .search-field input,.select2-container--default .select2-selection--single,.select2-container--default .select2-selection--single .select2-selection__arrow,input.s,input[type=date],input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=time],select{height:var(--form_input_height);padding-top:0;padding-bottom:0}.avada-select .select2-container .select2-choice .select2-arrow,.avada-select .select2-container .select2-choice2 .select2-arrow,.searchform .fusion-search-form-content .fusion-search-button input[type=submit]{width:var(--form_input_height)}.avada-select .select2-container .select2-choice .select2-arrow,.avada-select .select2-container .select2-choice2 .select2-arrow,.searchform .fusion-search-form-content .fusion-search-button input[type=submit],.select2-container .select2-choice>.select2-chosen,.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:var(--form_input_height)}.fusion-main-menu .fusion-main-menu-search .fusion-custom-menu-item-contents{width:var(--form_input_height-main-menu-search-width)}#comment-input input,#comment-textarea textarea,.avada-select .select2-container .select2-choice,.avada-select .select2-container .select2-choice2,.chzn-container .chzn-drop,.chzn-container-single .chzn-single,.comment-form-comment textarea,.fusion-body .avada-select-parent select,.fusion-body .gift-cards-list button.ywgc-amount-buttons,.input-text,.main-nav-search-form input,.post-password-form label input[type=password],.search-page-search-form input,input.s,input[type=date],input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=time],select,textarea{background-color:var(--form_bg_color);font-size:var(--form_text_size);color:var(--form_text_color)}#comment-input input:focus,#comment-textarea textarea:focus,.avada-select .select2-container .select2-choice2:focus,.avada-select .select2-container .select2-choice:focus,.chzn-container .chzn-drop:focus,.chzn-container-single .chzn-single:focus,.comment-form-comment textarea:focus,.fusion-body .avada-select-parent select:focus,.fusion-body .gift-cards-list button.ywgc-amount-buttons:focus,.input-text:focus,.main-nav-search-form input:focus,.post-password-form label input[type=password]:focus,.search-page-search-form input:focus,input.s:focus,input[type=date]:focus,input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,select:focus,textarea:focus{border-color:var(--form_focus_border_color)}.fusion-body .gift-cards-list .ywgc-amount-buttons.selected_button{border-color:var(--form_focus_border_color)}.searchform .fusion-search-form-content .fusion-search-field input,.select2-container--default .select2-selection--single{background-color:var(--form_bg_color);font-size:var(--form_text_size)}#wrapper .select-arrow,.avada-select-parent .select-arrow,.fusion-modal-content .select-arrow,.select2-dropdown{background-color:var(--form_bg_color)}#calc_shipping_state_field .select2-selection__placeholder,#comment-input .placeholder,#comment-textarea .placeholder,.fusion-search-element .searchform.fusion-search-form-clean .fusion-search-form-content .fusion-search-button input[type=submit],.fusion-search-form-clean .searchform:not(.fusion-search-form-classic) .fusion-search-form-content .fusion-search-button input[type=submit],.select2-results__option,input.s .placeholder{font-size:var(--form_text_size);color:var(--form_text_color)}#calc_shipping_state_field .select2-selection__placeholder:focus,#comment-input .placeholder:focus,#comment-textarea .placeholder:focus,.fusion-search-element .searchform.fusion-search-form-clean .fusion-search-form-content .fusion-search-button input[type=submit]:focus,.fusion-search-form-clean .searchform:not(.fusion-search-form-classic) .fusion-search-form-content .fusion-search-button input[type=submit]:focus,.select2-results__option:focus,input.s .placeholder:focus{border-color:var(--form_focus_border_color)}.select2-selection__rendered{font-size:var(--form_text_size)}.catalog-ordering a,.order-dropdown ul li a,.order-dropdown>li:after,.searchform .fusion-search-form-content .fusion-search-field input,.select2-container--default .select2-selection--single .select2-selection__rendered{color:var(--form_text_color)}.catalog-ordering a:focus,.order-dropdown ul li a:focus,.order-dropdown>li:after:focus,.searchform .fusion-search-form-content .fusion-search-field input:focus,.select2-container--default .select2-selection--single .select2-selection__rendered:focus{border-color:var(--form_focus_border_color)}.quicktags-toolbar{background:linear-gradient(to top,var(--content_bg_color),var(--form_bg_color)) #3e3e3e}.quicktags-toolbar input{font-size:var(--form_text_size);color:var(--form_text_color)}.quicktags-toolbar input:hover{background:var(--form_bg_color)}.quicktags-toolbar input:focus{border-color:var(--form_focus_border_color)}.fusion-live-search .fusion-search-results{background-color:var(--form_bg_color);font-size:var(--form_text_size);color:var(--form_text_color);border-radius:var(--form_border_radius)}.fusion-live-search .fusion-search-results:focus{border-color:var(--form_focus_border_color)}.fusion-live-search .fusion-search-results.suggestions-added{margin-top:var(--form_border_width-top)}.fusion-live-search .fusion-search-result,.fusion-live-search .fusion-search-results{border-color:var(--form_focus_border_color);border-width:var(--form_border_width-top) var(--form_border_width-right) var(--form_border_width-bottom) var(--form_border_width-left)}#wrapper .select-arrow,.avada-select-parent .select-arrow,.fusion-modal-content .select-arrow,.gravity-select-parent .select-arrow,.select-arrow,.wpcf7-select-parent .select-arrow{font-size:calc((var(--form_text_size)) * .75)}#comment-input input::-moz-placeholder,#comment-textarea textarea::-moz-placeholder,.comment-form-comment textarea::-moz-placeholder,.input-text::-moz-placeholder,.post-password-form label input[type=password]::-moz-placeholder,.searchform .s::-moz-placeholder,input.s::-moz-placeholder,input::-moz-placeholder,textarea.fusion-form-input::-moz-placeholder{color:var(--form_text_color)}#comment-input input::-webkit-input-placeholder,#comment-textarea textarea::-webkit-input-placeholder,.comment-form-comment textarea::-webkit-input-placeholder,.input-text::-webkit-input-placeholder,.post-password-form label input[type=password]::-webkit-input-placeholder,.searchform .s::-webkit-input-placeholder,input.s::-webkit-input-placeholder,input::-webkit-input-placeholder,textarea.fusion-form-input::-webkit-input-placeholder{color:var(--form_text_color)}.fusion-body select:focus+.select-arrow,.fusion-body select:focus+.select2-arrow{border-color:var(--form_focus_border_color);color:var(--form_focus_border_color)}.select2-container--default.select2-container--open .select2-dropdown,.select2-container--default.select2-container--open .select2-dropdown .select2-search,.select2-container--default.select2-container--open .select2-search--dropdown .select2-search__field,.select2-container--default.select2-container--open .select2-selection--single,.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow,.select2-container--default.select2-container--open .select2-selection--single .select2-selection__rendered{border-color:var(--form_focus_border_color)}.select2-container--default.select2-container--open .select2-selection--single:focus .select2-selection__arrow b{border-bottom-color:var(--form_focus_border_color)}.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b{border-bottom-color:var(--form_border_color)}.select2-container--default .select2-container .select2-selection:focus .select2-selection__arrow{border-color:var(--form_focus_border_color)}.select2-container--default .select2-selection--single:focus .select2-selection__arrow b{border-top-color:var(--form_focus_border_color)}.select2-container--default .select2-selection--single .select2-selection__arrow b{border-top-color:var(--form_border_color)}.fusion-search-form-clean .fusion-live-search .fusion-slider-loading{border-bottom-color:var(--form_text_color);border-top-color:var(--form_text_color-35a);border-right-color:var(--form_text_color-35a);border-left-color:var(--form_text_color-35a)}#comment-input input,#comment-textarea textarea,.avada-select .select2-container .select2-choice,.avada-select .select2-container .select2-choice .select2-arrow,.avada-select .select2-container .select2-choice2 .select2-arrow,.chzn-container .chzn-drop,.chzn-container-single .chzn-single,.comment-form-comment textarea,.fusion-body .avada-select-parent .select-arrow,.fusion-body .avada-select-parent select,.fusion-body .gift-cards-list button.ywgc-amount-buttons,.gravity-select-parent .select-arrow,.input-text,.main-nav-search-form input,.post-password-form label input[type=password],.search-page-search-form input,.searchform .fusion-search-form-content .fusion-search-field input,.select-arrow,.select2-container .select2-selection .select2-selection__arrow,.select2-container--default .select2-dropdown .select2-search,.select2-container--default .select2-search--dropdown .select2-search__field,.select2-container--default .select2-selection--single,.select2-dropdown,input.s,input[type=date],input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=time],select,textarea{border-width:var(--form_border_width-top) var(--form_border_width-right) var(--form_border_width-bottom) var(--form_border_width-left);border-color:var(--form_border_color);border-radius:var(--form_border_radius)}.select-arrow,.select2-arrow{color:var(--form_border_color)}.quicktags-toolbar input{border:1px solid var(--form_border_color)}.fusion-contact-form .grecaptcha-badge{box-shadow:0 0 3px var(--form_border_color)!important}.fusion-search-element .searchform.fusion-search-form-classic .fusion-search-form-content,.fusion-search-form-classic .searchform:not(.fusion-search-form-clean) .fusion-search-form-content,input[type=tel]{border-radius:var(--form_border_radius);border-width:var(--form_border_width-top) var(--form_border_width-right) var(--form_border_width-bottom) var(--form_border_width-left)}.select2-container .select2-selection .select2-selection__arrow{border-width:var(--form_border_width-top) var(--form_border_width-right) var(--form_border_width-bottom) var(--form_border_width-left)}.avada-select-parent .select-arrow,.gravity-select-parent .select-arrow,.select-arrow,.wpcf7-select-parent .select-arrow{bottom:var(--form_border_width-bottom)}.fusion-blog-layout-masonry .fusion-post-content-wrapper,.fusion-portfolio-layout-masonry .fusion-portfolio-content{background-color:var(--timeline_bg_color-not-transparent)}.fusion-blog-layout-grid .post .fusion-post-wrapper,.fusion-blog-layout-timeline .post,.fusion-portfolio.fusion-portfolio-boxed .fusion-portfolio-content-wrapper{background-color:var(--timeline_bg_color)}.fusion-blog-layout-timeline .fusion-timeline-circle,.fusion-blog-layout-timeline .fusion-timeline-date,.fusion-blog-timeline-layout .fusion-timeline-circle,.fusion-blog-timeline-layout .fusion-timeline-date{background-color:var(--timeline_color)}.fusion-blog-timeline-layout .fusion-timeline-arrow,.fusion-blog-timeline-layout .fusion-timeline-icon,.fusion-timeline-arrow,.fusion-timeline-icon{color:var(--timeline_color)}.fusion-blog-layout-grid .post .flexslider,.fusion-blog-layout-grid .post .fusion-post-wrapper,.fusion-blog-layout-timeline .fusion-timeline-arrow,.fusion-blog-layout-timeline .fusion-timeline-date,.fusion-blog-layout-timeline .fusion-timeline-line,.fusion-blog-layout-timeline .post,.fusion-blog-layout-timeline .post .flexslider,.fusion-blog-timeline-layout .post,.fusion-blog-timeline-layout .post .flexslider,.fusion-portfolio.fusion-portfolio-boxed .fusion-portfolio-content-wrapper{border-color:var(--timeline_color)}.avada-has-transparent-timeline_color .fusion-blog-layout-grid .post .flexslider,.avada-has-transparent-timeline_color .fusion-blog-layout-grid .post .fusion-post-wrapper,.avada-has-transparent-timeline_color .fusion-blog-layout-timeline .fusion-timeline-arrow,.avada-has-transparent-timeline_color .fusion-blog-layout-timeline .fusion-timeline-date,.avada-has-transparent-timeline_color .fusion-blog-layout-timeline .fusion-timeline-line,.avada-has-transparent-timeline_color .fusion-blog-layout-timeline .post,.avada-has-transparent-timeline_color .fusion-blog-layout-timeline .post .flexslider,.avada-has-transparent-timeline_color .fusion-blog-timeline-layout .post,.avada-has-transparent-timeline_color .fusion-blog-timeline-layout .post .flexslider,.avada-has-transparent-timeline_color .fusion-portfolio.fusion-portfolio-boxed .fusion-portfolio-content-wrapper,.avada-has-transparent-timeline_color.fusion-portfolio.fusion-portfolio-boxed .fusion-portfolio-content-wrapper{border:none}.fusion-blog-layout-grid .post .fusion-content-sep,.fusion-blog-layout-timeline .post .fusion-content-sep,.fusion-blog-timeline-layout .post .fusion-content-sep,.fusion-body .product .fusion-content-sep,.fusion-portfolio.fusion-portfolio-boxed .fusion-content-sep{border-color:var(--grid_separator_color)}.fusion-blog-layout-grid .post .fusion-content-sep,.fusion-layout-timeline .post .fusion-content-sep,.fusion-portfolio.fusion-portfolio-boxed .fusion-content-sep{border-color:var(--grid_separator_color)}@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:landscape){.avada-footer-fx-bg-parallax.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-no-height-bg-parallax.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-no-height-parallax-effect.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-no-height-sticky-with-parallax-bg-image.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-parallax-effect.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-sticky-with-parallax-bg-image.avada-has-footer-widget-bg-image .fusion-body #wrapper{background-color:transparent}}@media only screen and (min-device-width:768px) and (max-device-width:1024px) and (orientation:portrait){.avada-footer-fx-bg-parallax.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-no-height-bg-parallax.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-no-height-parallax-effect.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-no-height-sticky-with-parallax-bg-image.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-parallax-effect.avada-has-footer-widget-bg-image .fusion-body #wrapper,.avada-footer-fx-sticky-with-parallax-bg-image.avada-has-footer-widget-bg-image .fusion-body #wrapper{background-color:transparent}}#slidingbar-area .widget-title,#slidingbar-area h3,.fusion-privacy-bar-full .column-title{font-family:var(--footer_headings_typography-font-family);font-size:var(--footer_headings_typography-font-size);font-weight:var(--footer_headings_typography-font-weight);line-height:var(--footer_headings_typography-line-height);letter-spacing:var(--footer_headings_typography-letter-spacing);text-transform:var(--footer_headings_typography-text-transform);font-style:var(--footer_headings_typography-font-style,normal);color:var(--footer_headings_typography-color)}.fusion-footer-widget-column .product-title{color:var(--footer_headings_typography-color)}:root{--adminbar-height:0px}body.admin-bar{--adminbar-height:32px}@media screen and (max-width:782px){body.admin-bar{--adminbar-height:46px}}.page-template-blank #boxed-wrapper{display:flex}.page-template-blank #boxed-wrapper>div{flex-grow:1;flex-basis:auto}#main .fusion-row,#slidingbar-area .fusion-row,.fusion-footer-widget-area .fusion-row,.fusion-page-title-row{max-width:var(--site_width)}.ua-mobile .avada-not-responsive #slidingbar-area.fusion-sliding-bar-position-bottom,.ua-mobile .avada-not-responsive #slidingbar-area.fusion-sliding-bar-position-top{width:var(--site_width)}body.avada-not-responsive{min-width:var(--site_width)}html:not(.avada-has-site-width-percent) #main,html:not(.avada-has-site-width-percent) .fusion-footer-copyright-area,html:not(.avada-has-site-width-percent) .fusion-footer-widget-area,html:not(.avada-has-site-width-percent) .fusion-sliding-bar-position-bottom .fusion-sliding-bar,html:not(.avada-has-site-width-percent) .fusion-sliding-bar-position-top .fusion-sliding-bar{padding-left:30px;padding-right:30px}html:not(.avada-has-site-width-percent) #main.width-100{padding-left:var(--hundredp_padding-fallback_to_zero);padding-right:var(--hundredp_padding-fallback_to_zero)}.fusion-page-title-bar.fusion-tb-page-title-bar{padding-left:0;padding-right:0;height:auto}.fusion-footer.fusion-tb-footer .fusion-footer-widget-area{padding:0}body.layout-boxed-mode{margin-top:var(--margin_offset-top)!important;margin-bottom:var(--margin_offset-bottom)!important}body.layout-boxed-mode #wrapper,body.layout-boxed-mode .fusion-footer-parallax{width:var(--site_width);max-width:100%;margin:0 auto}body.layout-boxed-mode #wrapper.wrapper_blank{display:block}.has-sidebar .width-100 .fusion-fullwidth,.has-sidebar .width-100 .nonhundred-percent-fullwidth{margin-left:0;margin-right:0}.width-100 .fusion-fullwidth,.width-100 .nonhundred-percent-fullwidth{margin-left:var(--hundredp_padding-hundred_percent_negative_margin);margin-right:var(--hundredp_padding-hundred_percent_negative_margin)}.width-100 .fusion-fullwidth .fusion-fullwidth,.width-100 .fusion-fullwidth .nonhundred-percent-fullwidth{margin-left:0;margin-right:0}.width-100 .fusion-fullwidth.fusion-absolute-container{width:calc(100% + 2 * (var(--hundredp_padding-fallback_to_zero_px)))}body.page-template-100-width.side-header .fusion-tb-footer .fusion-fullwidth.fusion-absolute-container{width:calc(100% - var(--side_header_width))}html.avada-has-site-width-percent body #main.width-100>.fusion-row,html.avada-has-site-width-percent body.avada-responsive #main.width-100>.fusion-row{padding-left:0;padding-right:0}html.avada-has-site-width-percent .width-100 .fullwidth-box,html.avada-has-site-width-percent .width-100 .fullwidth-box .fusion-row .fusion-full-width-sep{margin-left:var(--hundredp_padding-hundred_percent_negative_margin);margin-right:var(--hundredp_padding-hundred_percent_negative_margin)}html.avada-has-site-width-percent .width-100 .fullwidth-box .fullwidth-box,html.avada-has-site-width-percent .width-100 .fullwidth-box .fullwidth-box .fusion-row .fusion-full-width-sep{margin-left:0;margin-right:0}html.avada-has-site-width-percent.avada-has-site-width-100-percent #main .fusion-row,html.avada-has-site-width-percent.avada-has-site-width-100-percent #slidingbar .fusion-row,html.avada-has-site-width-percent.avada-has-site-width-100-percent .fusion-footer-copyright-area,html.avada-has-site-width-percent.avada-has-site-width-100-percent .fusion-footer-widget-area{padding-left:var(--hundredp_padding);padding-right:var(--hundredp_padding)}body.awb-no-sidebars #content{width:100%;float:none}body.has-sidebar #main .sidebar{width:var(--sidebar_width)}body.has-sidebar #content{width:calc(100% - var(--sidebar_width) - var(--sidebar_gutter))}body.has-sidebar.double-sidebars #main #sidebar{width:var(--sidebar_2_1_width);margin-left:calc(var(--dual_sidebar_gutter) - 100% + var(--sidebar_2_2_width))}body.has-sidebar.double-sidebars #main #sidebar-2{width:var(--sidebar_2_2_width);margin-left:var(--dual_sidebar_gutter)}body.has-sidebar.double-sidebars #content{width:calc(100% - var(--sidebar_2_1_width) - var(--sidebar_2_2_width) - var(--dual_sidebar_gutter) - var(--dual_sidebar_gutter));margin-left:calc(var(--sidebar_2_1_width) + var(--dual_sidebar_gutter))}#main{padding-left:30px;padding-right:30px;padding-top:var(--main_padding-top);padding-bottom:var(--main_padding-bottom)}#main.width-100{padding-left:var(--hundredp_padding-fallback_to_zero);padding-right:var(--hundredp_padding-fallback_to_zero)}html.avada-is-100-percent-template #main{padding-left:0;padding-right:0}html.avada-is-100-percent-template #main.width-100{padding-left:var(--hundredp_padding-fallback_to_zero);padding-right:var(--hundredp_padding-fallback_to_zero)}body.layout-boxed-mode.layout-scroll-offset-framed{margin-top:var(--margin_offset-top-no-percent)!important;margin-bottom:var(--margin_offset-bottom-no-percent)!important}.fusion-bottom-frame,.fusion-boxed-shadow,.fusion-sides-frame,.fusion-top-frame{display:none}.layout-boxed-mode.layout-scroll-offset-framed .fusion-sides-frame{display:block;position:fixed;width:100%;height:100%;left:0;top:0;pointer-events:none}.layout-boxed-mode.layout-scroll-offset-framed:not(.avada-has-zero-margin-offset-top) .fusion-bottom-frame,.layout-boxed-mode.layout-scroll-offset-framed:not(.avada-has-zero-margin-offset-top) .fusion-top-frame{display:block;position:fixed;z-index:99999;width:100%}.layout-boxed-mode.layout-scroll-offset-framed:not(.avada-has-zero-margin-offset-top) .fusion-sides-frame,.layout-boxed-mode.layout-scroll-offset-framed:not(.avada-has-zero-margin-offset-top) .fusion-top-frame{top:0}.layout-boxed-mode.layout-scroll-offset-framed:not(.avada-has-zero-margin-offset-top) .fusion-bottom-frame{bottom:0}.layout-boxed-mode.layout-scroll-offset-framed:not(.avada-has-zero-margin-offset-top).avada-has-boxed-modal-shadow-none .fusion-boxed-shadow{display:none}.layout-boxed-mode.layout-scroll-offset-framed:not(.avada-has-zero-margin-offset-top):not(.avada-has-boxed-modal-shadow-none):not(.avada-footer-fx-sticky) #wrapper{box-shadow:none}.layout-boxed-mode.layout-scroll-offset-framed.avada-has-boxed-modal-shadow-hard .fusion-boxed-shadow,.layout-boxed-mode.layout-scroll-offset-framed.avada-has-boxed-modal-shadow-light .fusion-boxed-shadow,.layout-boxed-mode.layout-scroll-offset-framed.avada-has-boxed-modal-shadow-medium .fusion-boxed-shadow{display:block;position:fixed;z-index:99999;pointer-events:none}.layout-boxed-mode.layout-scroll-offset-framed .fusion-top-frame{height:var(--margin_offset-top-no-percent)}.layout-boxed-mode.layout-scroll-offset-framed .fusion-bottom-frame{height:var(--margin_offset-bottom-no-percent)}.layout-boxed-mode.layout-scroll-offset-framed .fusion-boxed-shadow{width:var(--site_width);height:calc(100vh - var(--margin_offset-top-no-percent) - var(--margin_offset-bottom-no-percent));top:var(--margin_offset-top-no-percent);left:calc((100% - var(--site_width))/ 2)}.layout-boxed-mode.layout-scroll-offset-framed.admin-bar .fusion-sides-frame,.layout-boxed-mode.layout-scroll-offset-framed.admin-bar .fusion-top-frame{top:32px}.layout-boxed-mode.layout-scroll-offset-framed.admin-bar .fusion-boxed-shadow{height:calc(100vh - var(--margin_offset-top-no-percent) - var(--margin_offset-bottom-no-percent) - var(--adminbar-height))}.layout-boxed-mode.layout-scroll-offset-framed.admin-bar .fusion-boxed-shadow{top:calc(var(--margin_offset-top-no-percent) + var(--adminbar-height))}.layout-boxed-mode:not(.avada-has-zero-margin-offset-top).layout-scroll-offset-framed #boxed-wrapper{padding-top:var(--margin_offset-top-no-percent);padding-bottom:var(--margin_offset-bottom-no-percent);margin-top:calc(var(--margin_offset-top-no-percent)/ -1);margin-bottom:calc(var(--margin_offset-bottom-no-percent)/ -1)}html.avada-has-site-width-percent .avada-responsive.layout-boxed-mode #main .fusion-row,html.avada-has-site-width-percent .avada-responsive.layout-boxed-mode #slidingbar-area .fusion-row,html.avada-has-site-width-percent .avada-responsive.layout-boxed-mode #small-nav .fusion-row,html.avada-has-site-width-percent .avada-responsive.layout-boxed-mode .fusion-footer-copyright-area .fusion-row,html.avada-has-site-width-percent .avada-responsive.layout-boxed-mode .fusion-footer-widget-area .fusion-row,html.avada-has-site-width-percent .avada-responsive.layout-boxed-mode .fusion-page-title-row{max-width:none;padding-left:10px;padding-right:10px}html.avada-has-site-width-percent.avada-html-not-responsive{overflow-x:auto}html.avada-has-site-width-percent.avada-html-not-responsive body{overflow-x:auto}.layout-wide-mode #wrapper{width:100%;max-width:none}.avada-has-pagetitle-100-width.layout-wide-mode .fusion-page-title-row{max-width:100%}.avada-footer-fx-parallax-effect #main{z-index:auto}.avada-footer-fx-parallax-effect .fusion-tb-header .fusion-fullwidth{--awb-z-index:2}.fusion-live-search .fusion-search-results{max-height:var(--live_search_results_height)}.search #posts-container .fusion-blog-layout-grid,.search-results #posts-container .fusion-blog-layout-grid{margin-top:calc((var(--search_grid_column_spacing))/ -2);margin-right:calc((var(--search_grid_column_spacing))/ -2);margin-bottom:0;margin-left:calc((var(--search_grid_column_spacing))/ -2)}.search #posts-container .fusion-blog-layout-grid .fusion-post-grid,.search-results #posts-container .fusion-blog-layout-grid .fusion-post-grid{padding:calc((var(--search_grid_column_spacing))/ 2)}.fusion-main-menu-search-overlay .fusion-overlay-search .fusion-search-spacer{width:calc((var(--form_input_height)) * .4)}.fusion-main-menu-search-overlay .fusion-overlay-search .fusion-close-search{width:var(--form_text_size);height:var(--form_text_size)}.fusion-main-menu-search-overlay .fusion-overlay-search .fusion-close-search:after,.fusion-main-menu-search-overlay .fusion-overlay-search .fusion-close-search:before{background-color:var(--nav_typography-color)}.fusion-main-menu-search-overlay .fusion-overlay-search .fusion-close-search:hover:after,.fusion-main-menu-search-overlay .fusion-overlay-search .fusion-close-search:hover:before{background-color:var(--menu_hover_first_color)}.fusion-body .fusion-flexslider .flex-direction-nav a,.fusion-body .fusion-flexslider.flexslider-attachments .flex-direction-nav a,.fusion-body .fusion-flexslider.flexslider-posts .flex-direction-nav a,.fusion-body .fusion-flexslider.flexslider-posts-with-excerpt .flex-direction-nav a,.fusion-body .fusion-slider-sc .flex-direction-nav a,.fusion-body .woocommerce-product-gallery .flex-direction-nav a{width:var(--slider_nav_box_dimensions-width);height:var(--slider_nav_box_dimensions-height);line-height:var(--slider_nav_box_dimensions-height);font-size:var(--slider_arrow_size)}.fusion-social-links-footer .fusion-social-networks a{font-size:var(--footer_social_links_font_size)}.fusion-social-links-footer .fusion-social-networks a.custom{max-height:var(--footer_social_links_boxed_padding)}.fusion-social-links-footer .fusion-social-networks a.custom img{max-height:var(--footer_social_links_font_size)}.fusion-social-links-footer .fusion-social-networks.boxed-icons a{width:calc(var(--footer_social_links_font_size) + (2 * (var(--footer_social_links_boxed_padding))) + 2px);padding:var(--footer_social_links_boxed_padding)}.fusion-social-links-footer .fusion-social-networks.boxed-icons a.custom{top:calc((var(--footer_social_links_boxed_padding)) * -1)}.fusion-social-links-footer .fusion-social-networks.boxed-icons a.custom img{max-height:calc(var(--footer_social_links_font_size) + (2 * (var(--footer_social_links_boxed_padding))) + 2px)}.fusion-social-links-footer .fusion-social-networks.boxed-icons .fusion-social-network-icon{color:var(--footer_social_links_icon_color)}.fusion-social-links-footer .fusion-social-networks.boxed-icons .fusion-social-network-icon:not(.custom){background-color:var(--footer_social_links_box_color);border-color:var(--footer_social_links_box_color);border-radius:var(--footer_social_links_boxed_radius)}.fusion-social-links-footer .fusion-social-networks .fusion-social-network-icon{color:var(--footer_social_links_icon_color)}.fusion-social-networks.boxed-icons .fusion-social-network-icon:not(.custom){background-color:var(--footer_social_links_box_color);border-color:var(--footer_social_links_box_color)}.fusion-single-sharing-box{background-color:var(--social_bg_color);padding:var(--social_bg_color-0-transparent,20px)}.fusion-footer-widget-column{margin-bottom:50px}.fusion-footer-widget-column:last-child{margin-bottom:0}.fusion-footer-widget-column .row{margin-left:0;margin-right:0}.fusion-footer-widget-column .flexslider a{border:0;padding:0}.fusion-footer footer .fusion-columns .fusion-column{padding-left:var(--footer_widgets_padding);padding-right:var(--footer_widgets_padding)}.fusion-body .fusion-footer-widget-area-center .fusion-columns .fusion-column{text-align:center}.fusion-body .fusion-footer-copyright-center .fusion-social-links-footer{display:block;width:100%;text-align:center;margin-top:20px}.fusion-footer footer .fusion-columns{margin:0 calc((var(--footer_widgets_padding)) * -1)}.fusion-footer footer .fusion-columns .fusion-column.fusion-has-widgets{border-color:var(--footer_divider_color)}.ltr .fusion-footer footer .fusion-columns .fusion-column.fusion-has-widgets{border-right-width:var(--footer_divider_line_size);border-right-style:var(--footer_divider_line_style)}.rtl .fusion-footer footer .fusion-columns .fusion-column.fusion-has-widgets{border-left-width:var(--footer_divider_line_size);border-left-style:var(--footer_divider_line_style)}.fusion-footer footer .fusion-row .fusion-columns{display:var(--footer_divider_line-flex);flex-flow:wrap}.rtl .fusion-footer footer .fusion-row .fusion-columns .fusion-column.fusion-column-last{border-left:none}.ltr .fusion-footer footer .fusion-row .fusion-columns .fusion-column.fusion-column-last{border-right:none}.fusion-footer-copyright-area{z-index:10;position:relative;padding:var(--copyright_padding-top) 10px var(--copyright_padding-bottom);border-top:var(--copyright_border_size) solid var(--copyright_border_color);background-color:var(--copyright_bg_color)}.fusion-footer-copyright-area .fusion-row{max-width:var(--site_width)}.fusion-footer-copyright-area>.fusion-row{padding-left:var(--footer_area_padding-left);padding-right:var(--footer_area_padding-right)}.fusion-copyright-notice a{color:var(--copyright_link_color)}.fusion-footer-copyright-area a:hover{color:var(--copyright_link_color_hover)}.fusion-copyright-content{display:table;width:100%}.fusion-copyright-notice{display:table-cell;vertical-align:middle;margin:0;padding:0;color:var(--copyright_text_color);font-size:var(--copyright_font_size)}.fusion-body .fusion-footer-copyright-center .fusion-copyright-content{display:block;text-align:center}.fusion-body .fusion-footer-copyright-center .fusion-copyright-notice{display:block;width:100%;text-align:center}.layout-wide-mode.avada-has-100-footer .fusion-footer-copyright-area>.fusion-row{max-width:100%!important}.fusion-page-title-bar{clear:both;padding:0 10px;height:var(--page_title_height);width:100%;background-position:center center;background-repeat:no-repeat;background-origin:border-box;background-color:var(--page_title_bg_color);border-top:1px solid;border-bottom:1px solid;background-image:var(--page_title_bg);border-color:var(--page_title_border_color);background-size:auto}.fusion-page-title-bar h1,.fusion-page-title-bar h3{margin:0;padding:0;line-height:26px;font-weight:400;font-size:14px;color:#343333}.fusion-page-title-bar h1{font-size:18px;color:var(--page_title_color)}.fusion-page-title-bar .fusion-page-title-row h1{font-size:var(--page_title_font_size);line-height:var(--page_title_line_height)}.fusion-page-title-bar h3{font-size:var(--page_title_subheader_font_size);line-height:calc(var(--page_title_subheader_font_size) + 12px);color:var(--page_title_subheader_color)}@media only screen and (min-resolution:144dpi),only screen and (min-resolution:1.5dppx){.fusion-page-title-bar{background-image:var(--page_title_bg_retina,var(--page_title_bg));background-size:cover}}.fusion-page-title-bar .fusion-breadcrumbs{font-size:var(--breadcrumbs_font_size);color:var(--breadcrumbs_text_color)}.fusion-page-title-bar .fusion-breadcrumbs .awb-breadcrumb-sep:after{content:var(--breadcrumbs_separator);margin:0 .35em;color:var(--breadcrumbs_separator_color)}.fusion-page-title-bar .fusion-breadcrumbs .awb-breadcrumb-home-icon{font-size:1.15em}.fusion-page-title-bar .fusion-breadcrumbs .awb-term-sep:after{content:",";margin-inline-end:.175em}.fusion-page-title-bar .fusion-breadcrumbs .awb-breadcrumb-sep-icon i:not(.awb-breadcrumb-home-icon){margin:0 .4em;color:var(--breadcrumbs_separator_color)}.fusion-page-title-bar .fusion-breadcrumbs .fusion-breadcrumb-prefix{color:var(--breadcrumbs_prefix_color)}.fusion-page-title-bar .fusion-breadcrumbs [aria-current=page]{color:var(--breadcrumbs_current_page_color)}.fusion-page-title-bar .fusion-breadcrumbs li,.fusion-page-title-bar .fusion-breadcrumbs li a{font-size:var(--breadcrumbs_font_size)}.fusion-page-title-bar .fusion-breadcrumbs a{color:var(--breadcrumbs_text_color)}.fusion-page-title-bar .fusion-breadcrumbs a:hover{color:var(--breadcrumbs_text_hover_color)}.avada-has-pagetitle-bg-full .fusion-page-title-bar{background-size:cover}.fusion-page-title-row{margin:0 auto;height:100%}.fusion-page-title-wrapper{display:flex;align-items:center;justify-content:space-between;position:relative;height:100%;width:100%}.page-title-bar-search .fusion-page-title-captions{width:auto}.fusion-page-title-secondary{flex-shrink:0;text-align:right}.fusion-page-title-secondary .searchform{display:inline-block;width:100%;max-width:250px}.awb-breadcrumb-list{display:inline-flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}.fusion-page-title-bar-left .fusion-page-title-secondary{margin-left:10px}.fusion-page-title-bar-center .fusion-page-title-captions{text-align:center;width:100%}.fusion-page-title-bar-center .fusion-page-title-secondary{display:block;width:100%;text-align:center}.fusion-page-title-bar-center .searchform{margin-top:10px}.fusion-page-title-bar-center .awb-breadcrumb-list{justify-content:center}.fusion-page-title-bar-right .fusion-page-title-wrapper{flex-flow:row-reverse}.fusion-page-title-bar-right .fusion-page-title-captions{text-align:right}.fusion-page-title-bar-right .fusion-page-title-secondary{margin-right:10px;text-align:left}html:not(.avada-has-site-width-percent) .fusion-page-title-bar{padding-left:30px;padding-right:30px}html.avada-has-site-width-percent.avada-has-site-width-100-percent .fusion-page-title-bar{padding-left:var(--hundredp_padding);padding-right:var(--hundredp_padding)}.avada-has-pagetitle-bg-parallax .fusion-page-title-bar{background-attachment:fixed;background-position:top center}@media only screen and (min-resolution:144dpi),only screen and (min-resolution:1.5dppx){.avada-has-pagetitlebar-retina-bg-image .fusion-page-title-bar{background-image:var(--page_title_bg_retina);background-size:cover}}.avada-has-titlebar-content_only.fusion-body .fusion-page-title-bar{background:0 0;border:none}.wrapper_blank .page-title-bar{margin-bottom:25px}.rtl .fusion-page-title-bar{direction:ltr}.rtl .fusion-page-title-bar-left .fusion-page-title-captions{text-align:left}.rtl .fusion-page-title-bar-center .fusion-breadcrumbs,.rtl .fusion-page-title-bar-center .fusion-page-title-captions,.rtl .fusion-page-title-bar-center .searchform,.rtl .fusion-page-title-bar-left .fusion-breadcrumbs,.rtl .fusion-page-title-bar-left .fusion-page-title-captions,.rtl .fusion-page-title-bar-left .searchform,.rtl .fusion-page-title-bar-right .fusion-breadcrumbs,.rtl .fusion-page-title-bar-right .fusion-page-title-captions,.rtl .fusion-page-title-bar-right .searchform{direction:rtl}#nav ul li ul li a,#sticky-nav ul li ul li a,#wrapper #nav ul li ul li > a,#wrapper #sticky-nav ul li ul li > a,.avada-container h3,.comment-form input[type="submit"],.ei-title h3,.fusion-blog-shortcode .fusion-timeline-date,.fusion-body #main .tribe-common .tribe-events-c-day-marker__date,.fusion-body #main .tribe-events .datepicker,.fusion-body .fusion-wrapper #main .tribe-common .tribe-common-h6--min-medium,.fusion-body .tribe-common .tribe-common-b2,.fusion-body .tribe-common .tribe-common-b3,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-title,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .price,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content a,.fusion-load-more-button,.fusion-main-menu .sub-menu,.fusion-main-menu .sub-menu li a,.fusion-megamenu-widgets-container,.fusion-megamenu-wrapper .fusion-megamenu-submenu > a:hover,.fusion-megamenu-wrapper li .fusion-megamenu-title-disabled,.fusion-page-title-captions h3,.gform_page_footer input[type=button],.meta .fusion-date,.more,.review blockquote div strong,.review blockquote q,.ticket-selector-submit-btn[type=submit],body{font-family:var(--body_typography-font-family);font-weight:var(--body_typography-font-weight);letter-spacing:var(--body_typography-letter-spacing);font-style:var(--body_typography-font-style,normal)}#slidingbar-area .slide-excerpt h2,#slidingbar-area ul,.counter-box-content,.fusion-alert,.fusion-blog-layout-timeline .fusion-timeline-date,.fusion-body #main .tribe-events .datepicker,.fusion-body .tribe-common .tribe-common-b2,.fusion-body .tribe-common .tribe-common-b3,.fusion-footer-widget-area .slide-excerpt h2,.fusion-footer-widget-area ul,.fusion-progressbar .progress-title,.fusion-project-details-tb .project-info h4,.gform_wrapper .gfield_description,.gform_wrapper label,.jtwt .jtwt_tweet,.project-content .project-info h4,.review blockquote q,.sidebar .jtwt .jtwt_tweet,.sidebar .slide-excerpt h2,body{font-size:var(--body_typography-font-size)}#nav ul li ul li a,#side-header .fusion-contact-info,#side-header .header-social .top-menu,#sticky-nav ul li ul li a,#wrapper #nav ul li ul li > a,#wrapper #sticky-nav ul li ul li > a,.avada-container h3,.comment-form input[type="submit"],.ei-title h3,.fusion-accordian .panel-body,.fusion-body #main .tribe-common .tribe-events-c-day-marker__date,.fusion-body .fusion-wrapper #main .tribe-common .tribe-common-h6--min-medium,.fusion-body .tribe-common .tribe-common-b2,.fusion-body .tribe-common .tribe-common-b3,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-title,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .price,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content a,.fusion-main-menu .sub-menu,.fusion-main-menu .sub-menu li a,.fusion-megamenu-widgets-container,.fusion-megamenu-wrapper .fusion-megamenu-submenu > a:hover,.fusion-megamenu-wrapper li .fusion-megamenu-title-disabled,.fusion-page-title-captions h3,.gform_page_footer input[type=button],.meta .fusion-date,.more,.review blockquote div strong,.review blockquote q,.single-tribe_events #tribe-events-content .tribe-events-event-meta dt,.ticket-selector-submit-btn[type=submit],body{line-height:var(--body_typography-line-height)}.fusion-blog-timeline-layout .fusion-timeline-date,.fusion-body #main .tribe-common .tribe-events-c-day-marker__date,.fusion-body .fusion-wrapper #main .tribe-common .tribe-common-h6--min-medium,.fusion-body .fusion-wrapperr .meta,.fusion-body .tribe-block__tickets__registration__tickets__header,.fusion-body .tribe-common .tribe-common-b2,.fusion-body .tribe-common .tribe-common-b3,.fusion-body .tribe-events .tribe-events-calendar-list__event-datetime,.fusion-main-menu .fusion-custom-menu-item-contents,.fusion-project-details-tb .project-info h4,.fusion-rollover .price .amount,.post .post-content,.project-content .project-info h4,.review blockquote div,.search input,.sidebar .jtwt,.sidebar .widget .recentcomments,.sidebar .widget_archive li,.sidebar .widget_categories li,.sidebar .widget_layered_nav li,.sidebar .widget_links li,.sidebar .widget_meta li,.sidebar .widget_nav_menu li,.sidebar .widget_pages li,.sidebar .widget_product_categories li,.sidebar .widget_recent_entries li,.title-row,body{color:var(--body_typography-color)}.meta .fusion-date{font-style:italic}#main .post h2 a,.about-author .title a,.fusion-blog-pagination .pagination .pagination-next:after,.fusion-blog-pagination .pagination .pagination-prev:before,.fusion-hide-pagination-text .pagination-next:after,.fusion-hide-pagination-text .pagination-prev:before,.fusion-load-more-button,.fusion-rollover a,.pagination .pagination-next:after,.pagination .pagination-prev:before,.project-content .project-info .project-info-box a,.shop_attributes tr th,.single-navigation a[rel=next]:after,.single-navigation a[rel=prev]:before,body a,body a:after,body a:before{color:var(--link_color)}.fusion-modal h1,.fusion-page-title-bar h1,.fusion-tb-footer h1,.fusion-tb-page-title-bar h1,.fusion-title h1,.fusion-widget-area h1,.post-content h1,.search-page-search-form h1,h1{font-family:var(--h1_typography-font-family);font-weight:var(--h1_typography-font-weight);line-height:var(--h1_typography-line-height);letter-spacing:var(--h1_typography-letter-spacing);text-transform:var(--h1_typography-text-transform);font-style:var(--h1_typography-font-style,normal)}.fusion-modal h1,.fusion-tb-footer h1,.fusion-tb-page-title-bar h1,.fusion-widget-area h1,.post-content h1,.search-page-search-form h1,h1{font-size:var(--h1_typography-font-size)}.fusion-modal h1,.fusion-post-content h1,.fusion-tb-footer h1,.fusion-tb-page-title-bar h1,.fusion-widget-area h1,.post-content h1,.search-page-search-form h1,.title h1,h1{color:var(--h1_typography-color)}h1{margin-top:var(--h1_typography-margin-top);margin-bottom:var(--h1_typography-margin-bottom)}.ei-title h2,.main-flex .slide-content h2,.post h2,.post-content h2,h2{font-family:var(--h2_typography-font-family);font-weight:var(--h2_typography-font-weight);line-height:var(--h2_typography-line-height);letter-spacing:var(--h2_typography-letter-spacing);text-transform:var(--h2_typography-text-transform);font-style:var(--h2_typography-font-style,normal)}.post h2,.post-content h2,h2,h2.entry-title{font-size:var(--h2_typography-font-size)}.fusion-post-content h2,.search-page-search-form h2,h2{color:var(--h2_typography-color)}.fusion-title-size-two,h2{margin-top:var(--h2_typography-margin-top);margin-bottom:var(--h2_typography-margin-bottom)}.fusion-author .fusion-author-title,.fusion-header-tagline,.fusion-modal .modal-title,.fusion-pricing-table .pricing-row,.fusion-pricing-table .title-row,.main-flex .slide-content h3,.post-content h3,.project-content h3,.sidebar .widget h3,h3{font-family:var(--h3_typography-font-family);font-weight:var(--h3_typography-font-weight);line-height:var(--h3_typography-line-height);letter-spacing:var(--h3_typography-letter-spacing);text-transform:var(--h3_typography-text-transform);font-style:var(--h3_typography-font-style,normal)}.fusion-author .fusion-author-title,.fusion-modal .modal-title,.fusion-widget-area h3,.post-content h3,.project-content h3,h3{font-size:var(--h3_typography-font-size)}.fusion-author .fusion-author-title,.fusion-post-content h3,.fusion-title h3,.person-author-wrapper span,.post-content h3,.project-content h3,.sidebar .widget h3,.title h3,h3{color:var(--h3_typography-color)}h3{margin-top:var(--h3_typography-margin-top);margin-bottom:var(--h3_typography-margin-bottom)}.fusion-carousel-title,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-title,.fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-title a,.fusion-megamenu-title,.fusion-person .person-desc .person-author .person-author-wrapper,.fusion-project-details-tb .project-info h4,.fusion-tabs .nav-tabs  li .fusion-tab-heading,.fusion-tabs-widget .fusion-tabs-nav ul li a,.fusion-theme-sharing-box h4,.fusion-title h4,.fusion-widget-area h4,.popover .popover-title,.post-content h4,.project-content .project-info h4,.tribe-events-single ul.tribe-related-events li .tribe-related-events-title,h4,table th{font-family:var(--h4_typography-font-family);font-weight:var(--h4_typography-font-weight);line-height:var(--h4_typography-line-height);letter-spacing:var(--h4_typography-letter-spacing);text-transform:var(--h4_typography-text-transform);font-style:var(--h4_typography-font-style,normal)}.fusion-project-details-tb .project-info .project-terms,.fusion-tb-footer h4,.fusion-tb-page-title-bar h4,.project-content .project-info .project-terms,.project-info-box span,.tribe-events-single ul.tribe-related-events li .tribe-related-events-title,h4{line-height:var(--h4_typography-line-height)}.fusion-carousel-title,.fusion-person .person-author-wrapper .person-name,.fusion-person .person-author-wrapper .person-title,.fusion-rollover .fusion-rollover-content .fusion-rollover-title,.fusion-sharing-box h4,.fusion-tabs .nav-tabs > li .fusion-tab-heading,.fusion-tabs-widget .fusion-tabs-nav ul li a,.fusion-theme-sharing-box h4,.fusion-widget-area h4,.person-author-wrapper,.popover .popover-title,.post-content h4,.tribe-events-single ul.tribe-related-events li .tribe-related-events-title,h4{font-size:var(--h4_typography-font-size)}.fusion-carousel-title,.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-nav ul li a,.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-widget-content .fusion-date-box,.fusion-post-content h4,.fusion-project-details-tb .project-info h4,.fusion-tabs .nav-tabs > li .fusion-tab-heading,.fusion-theme-sharing-box h4,.fusion-title h4,.fusion-widget-area h4,.post-content h4,.project-content .project-info h4,.title h4,.tribe-events-single ul.tribe-related-events li .tribe-related-events-title,h4{color:var(--h4_typography-color)}.fusion-title-size-four,h4{margin-top:var(--h4_typography-margin-top);margin-bottom:var(--h4_typography-margin-bottom)}.fusion-title h5,.fusion-widget-area h5,.post-content h5,h5{font-family:var(--h5_typography-font-family);font-weight:var(--h5_typography-font-weight);line-height:var(--h5_typography-line-height);letter-spacing:var(--h5_typography-letter-spacing);text-transform:var(--h5_typography-text-transform);font-style:var(--h5_typography-font-style,normal)}.fusion-widget-area h5,.post-content h5,h5{font-size:var(--h5_typography-font-size)}.fusion-post-content h5,.fusion-title h5,.fusion-widget-area h5,.post-content h5,.title h5,h5{color:var(--h5_typography-color)}h5{margin-top:var(--h5_typography-margin-top);margin-bottom:var(--h5_typography-margin-bottom)}.fusion-title h6,.fusion-widget-area h6,.post-content h6,h6{font-family:var(--h6_typography-font-family);font-weight:var(--h6_typography-font-weight);line-height:var(--h6_typography-line-height);letter-spacing:var(--h6_typography-letter-spacing);text-transform:var(--h6_typography-text-transform);font-style:var(--h6_typography-font-style,normal)}.fusion-widget-area h6,.post-content h6,h6{font-size:var(--h6_typography-font-size)}.fusion-post-content h6,.fusion-title h6,.fusion-widget-area h6,.post-content h6,.title h6,h6{color:var(--h6_typography-color)}.fusion-title-size-six,h6{margin-top:var(--h6_typography-margin-top);margin-bottom:var(--h6_typography-margin-bottom)}#main .fusion-woocommerce-quick-view-container .product_title,#wrapper #main .fusion-portfolio-content > h1.fusion-post-title,#wrapper #main .fusion-portfolio-content > h2.fusion-post-title,#wrapper #main .fusion-post-content > .blog-shortcode-post-title,#wrapper #main .fusion-post-content > h1.fusion-post-title,#wrapper #main .fusion-post-content > h2.fusion-post-title,#wrapper #main .post > .fusion-post-title-meta-wrap > h1.fusion-post-title,#wrapper #main .post > .fusion-post-title-meta-wrap > h2.fusion-post-title,#wrapper #main .post > h1.fusion-post-title,#wrapper #main .post > h2.fusion-post-title,.single-product #main .product h1.product_title,.single-product #main .product h2.product_title{font-family:var(--post_title_typography-font-family);font-weight:var(--post_title_typography-font-weight);line-height:var(--post_title_typography-line-height);letter-spacing:var(--post_title_typography-letter-spacing);text-transform:var(--post_title_typography-text-transform);font-style:var(--post_title_typography-font-style,normal)}#main .fusion-woocommerce-quick-view-container .product_title,#wrapper #main .fusion-portfolio-content > h1.fusion-post-title,#wrapper #main .fusion-portfolio-content > h2.fusion-post-title,#wrapper #main .fusion-post-content > .blog-shortcode-post-title,#wrapper #main .fusion-post-content > h1.fusion-post-title,#wrapper #main .fusion-post-content > h2.fusion-post-title,#wrapper #main .post > .fusion-post-title-meta-wrap > h1.fusion-post-title,#wrapper #main .post > .fusion-post-title-meta-wrap > h2.fusion-post-title,#wrapper #main .post > h1.fusion-post-title,#wrapper #main .post > h2.fusion-post-title,.single-product #main .product h1.product_title,.single-product #main .product h2.product_title{font-size:var(--post_title_typography-font-size)}#wrapper #main .fusion-portfolio-content > h1.fusion-post-title,#wrapper #main .fusion-portfolio-content > h2.fusion-post-title,#wrapper #main .fusion-post-content > .blog-shortcode-post-title,#wrapper #main .fusion-post-content > h1.fusion-post-title,#wrapper #main .fusion-post-content > h2.fusion-post-title,#wrapper #main .post > .fusion-post-title-meta-wrap > h1.fusion-post-title,#wrapper #main .post > .fusion-post-title-meta-wrap > h2.fusion-post-title,#wrapper #main .post > h1.fusion-post-title,#wrapper #main .post > h2.fusion-post-title{color:var(--post_title_typography-color)}#tab-reviews #reviews #comments > h2,#wrapper #main #comments .fusion-title h2,#wrapper #main #comments .fusion-title h3,#wrapper #main #respond .fusion-title h2,#wrapper #main #respond .fusion-title h3,#wrapper #main .about-author .fusion-title h2,#wrapper #main .about-author .fusion-title h3,#wrapper #main .related-posts .fusion-title h2,#wrapper #main .related-posts .fusion-title h3,#wrapper #main .related.products .fusion-title h2,#wrapper #main .related.products .fusion-title h3,.single-product .woocommerce-tabs .fusion-woocommerce-tab-title,.woocommerce-container .up-sells .fusion-title h3{font-family:var(--post_titles_extras_typography-font-family);font-weight:var(--post_titles_extras_typography-font-weight);line-height:var(--post_titles_extras_typography-line-height);letter-spacing:var(--post_titles_extras_typography-letter-spacing);text-transform:var(--post_titles_extras_typography-text-transform);font-style:var(--post_titles_extras_typography-font-style,normal)}#tab-reviews #reviews #comments > h2,#wrapper #main #comments .fusion-title h2,#wrapper #main #comments .fusion-title h3,#wrapper #main #respond .fusion-title h2,#wrapper #main #respond .fusion-title h3,#wrapper #main .about-author .fusion-title h2,#wrapper #main .about-author .fusion-title h3,#wrapper #main .related-posts .fusion-title h2,#wrapper #main .related-posts .fusion-title h3,#wrapper #main .related.products .fusion-title h2,#wrapper #main .related.products .fusion-title h3,.single-product .woocommerce-tabs .fusion-woocommerce-tab-title,.woocommerce-container .up-sells .fusion-title h3{font-size:var(--post_titles_extras_typography-font-size)}#tab-reviews #reviews #comments > h2,#wrapper #main #comments .fusion-title h2,#wrapper #main #comments .fusion-title h3,#wrapper #main #respond .fusion-title h2,#wrapper #main #respond .fusion-title h3,#wrapper #main .about-author .fusion-title h2,#wrapper #main .about-author .fusion-title h3,#wrapper #main .related-posts .fusion-title h2,#wrapper #main .related-posts .fusion-title h3,#wrapper #main .related.products .fusion-title h2,#wrapper #main .related.products .fusion-title h3,.single-product .woocommerce-tabs .fusion-woocommerce-tab-title,.woocommerce-container .up-sells .fusion-title h3{color:var(--post_titles_extras_typography-color)}.avada-select-parent .select-arrow,.gravity-select-parent .select-arrow,.select-arrow,.wpcf7-select-parent .select-arrow{right:var(--form_border_width-right)}.avada-select-parent .select-arrow,.gravity-select-parent .select-arrow,.select-arrow,.wpcf7-select-parent .select-arrow{border-top-left-radius:0;border-bottom-left-radius:0}.fusion-search-element .searchform.fusion-search-form-clean .fusion-search-form-content .fusion-search-field input,.fusion-search-form-clean #bbpress-forums .bbp-search-form #bbp_search,.fusion-search-form-clean .searchform:not(.fusion-search-form-classic) .fusion-search-form-content .fusion-search-field input{padding-left:var(--form_input_height)}.fusion-search-element .searchform.fusion-search-form-classic .fusion-search-form-content .fusion-search-field input,.fusion-search-form-classic #bbpress-forums .bbp-search-form #bbp_search,.fusion-search-form-classic .searchform:not(.fusion-search-form-clean) .fusion-search-form-content .fusion-search-field input{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}#wrapper .fusion-date-and-formats .fusion-format-box,.tribe-mini-calendar-event .list-date .list-dayname,.widget .tribe-mini-calendar-event .list-date .list-dayname{background-color:var(--dates_box_color)}.fusion-menu-item-button .menu-text{border-color:var(--button_border_color)}.fusion-menu-item-button:hover .menu-text{border-color:var(--button_border_hover_color,var(--button_border_color))}.fusion-page-title-bar{border:none;--page_title_height:300px;--page_title_mobile_height:240px;--page_title_bg_color:var(--awb-color2);--page_title_border_color:rgba(226,226,226,0);--page_title_font_size:54px;--page_title_line_height:normal;--page_title_color:var(--awb-color8);--page_title_subheader_font_size:18px;--page_title_subheader_color:var(--awb-color8);--page_title_bg:none;--page_title_bg_retina:var(--page_title_bg);}.fusion-alert:not(.fusion-live-alert) .close{display:inline;}.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-widget-content{background-color:var(--tabs_bg_color);}.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-nav ul li{border-right-color:var(--tabs_bg_color);}.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-clean .fusion-tabs-nav ul{border:1px solid var(--tabs_border_color,  var(--awb-fusion-border-color));}.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-clean .fusion-tabs-nav ul li{border-right-color:var(--tabs_border_color,  var(--awb-fusion-border-color));}.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-nav ul li a{border-top-color:var(--tabs_inactive_color);}.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-nav ul li a,.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-widget-content .fusion-date-box{background:var(--tabs_inactive_color);}.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-nav ul li a:hover{background:var(--tabs_bg_color);border-top-color:var(--tabs_bg_color);}.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-nav ul li.active a{background:var(--tabs_bg_color);}.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-classic,.fusion-content-widget-area .fusion-tabs-widget .fusion-tabs-widget-content .fusion-tabs-widget-items li{border-color:var(--tabs_border_color,  var(--awb-fusion-border-color));}.fusion-secondary-menu .fusion-menu-cart-item img{border-color:var(--sep_color);}.checkout .payment_methods .payment_box,.fusion-body blockquote,.post-content blockquote,.review blockquote q{background-color:var(--testimonial_bg_color);}.review blockquote q{color:var(--testimonial_text_color);}.fontawesome-icon{color:var(--icon_color);}.fontawesome-icon.circle-yes{color:var(--icon_color);background-color:var(--icon_circle_color);border-color:var(--icon_border_color);border-radius:50% 50% 50% 50%;}.fontawesome-icon:hover{color:var(--icon_color_hover);}.fontawesome-icon.circle-yes:hover{color:var(--icon_color_hover);background-color:var(--icon_circle_color_hover);border-color:var(--icon_border_color_hover);}#reviews li .comment-text,#small-nav,#wrapper .side-nav li a,#wrapper .side-nav li.current_page_item li a,.avada-skin-rev,.chzn-container-single .chzn-single,.chzn-container-single .chzn-single div,.chzn-drop,.commentlist .the-comment,.es-carousel-wrapper.fusion-carousel-small .es-carousel ul li img,.fusion-author .fusion-author-social,.fusion-author-widget .fusion-author-widget-separator .fusion-author-widget-sep,.fusion-content-widget-area .widget .recentcomments,.fusion-content-widget-area .widget li a,.fusion-content-widget-area .widget li a:before,.fusion-content-widget-area .widget_archive li,.fusion-content-widget-area .widget_categories li,.fusion-content-widget-area .widget_links li,.fusion-content-widget-area .widget_meta li,.fusion-content-widget-area .widget_nav_menu li,.fusion-content-widget-area .widget_pages li,.fusion-content-widget-area .widget_recent_entries li,.fusion-counters-box .fusion-counter-box .counter-box-border,.fusion-filters,.fusion-hide-pagination-text .pagination-next,.fusion-hide-pagination-text .pagination-prev,.fusion-pagination .page-numbers,.fusion-project-details-tb .project-info .project-info-box,.fusion-tabs.vertical-tabs.clean .nav-tabs li .tab-link,.input-radio,.ls-avada,.page-links a,.pagination a.inactive,.panel.entry-content,.post .fusion-meta-info,.price_slider_wrapper,.progress-bar,.project-content .project-info .project-info-box,.search-page-search-form,.side-nav,.side-nav li a,.single-navigation,.table,.table > tbody > tr > td,.table > tbody > tr > th,.table > tfoot > tr > td,.table > tfoot > tr > th,.table > thead > tr > td,.table > thead > tr > th,.table-1 table,.table-1 table th,.table-1 tr td,.table-2 table thead,.table-2 tr td,.tabs-vertical .tabs-container .tab_content,.tabs-vertical .tabset,.tagcloud a,.tkt-slctr-tbl-wrap-dv table,.tkt-slctr-tbl-wrap-dv tr td,h5.toggle.active + .toggle-content,tr td{border-color:var(--sep_color);}.price_slider_wrapper .ui-widget-content{background-color:var(--sep_color);}:root{--awb-color1:#ffffff;--awb-color1-h:0;--awb-color1-s:0%;--awb-color1-l:100%;--awb-color1-a:100%;--awb-color2:#f9f9fb;--awb-color2-h:240;--awb-color2-s:20%;--awb-color2-l:98%;--awb-color2-a:100%;--awb-color3:#f2f3f5;--awb-color3-h:220;--awb-color3-s:13%;--awb-color3-l:95%;--awb-color3-a:100%;--awb-color4:#f4ee9c;--awb-color4-h:56;--awb-color4-s:80%;--awb-color4-l:78%;--awb-color4-a:100%;--awb-color5:#f6d800;--awb-color5-h:53;--awb-color5-s:100%;--awb-color5-l:48%;--awb-color5-a:100%;--awb-color6:#434549;--awb-color6-h:220;--awb-color6-s:4%;--awb-color6-l:27%;--awb-color6-a:100%;--awb-color7:#212326;--awb-color7-h:216;--awb-color7-s:7%;--awb-color7-l:14%;--awb-color7-a:100%;--awb-color8:#141617;--awb-color8-h:200;--awb-color8-s:7%;--awb-color8-l:8%;--awb-color8-a:100%;--awb-typography1-font-family:Inter, Arial, Helvetica, sans-serif;--awb-typography1-font-size:48px;--awb-typography1-font-weight:600;--awb-typography1-font-style:normal;--awb-typography1-line-height:1.2;--awb-typography1-letter-spacing:-0.015em;--awb-typography1-text-transform:none;--awb-typography2-font-family:Inter, Arial, Helvetica, sans-serif;--awb-typography2-font-size:24px;--awb-typography2-font-weight:600;--awb-typography2-font-style:normal;--awb-typography2-line-height:1.1;--awb-typography2-letter-spacing:0px;--awb-typography2-text-transform:none;--awb-typography3-font-family:Inter, Arial, Helvetica, sans-serif;--awb-typography3-font-size:16px;--awb-typography3-font-weight:500;--awb-typography3-font-style:normal;--awb-typography3-line-height:1.2;--awb-typography3-letter-spacing:0.015em;--awb-typography3-text-transform:none;--awb-typography4-font-family:Inter, Arial, Helvetica, sans-serif;--awb-typography4-font-size:16px;--awb-typography4-font-weight:400;--awb-typography4-font-style:normal;--awb-typography4-line-height:1.72;--awb-typography4-letter-spacing:0.015em;--awb-typography4-text-transform:none;--awb-typography5-font-family:Inter, Arial, Helvetica, sans-serif;--awb-typography5-font-size:13px;--awb-typography5-font-weight:400;--awb-typography5-font-style:normal;--awb-typography5-line-height:1.72;--awb-typography5-letter-spacing:0.015em;--awb-typography5-text-transform:none;--site_width:1440px;--site_width-int:1440;--margin_offset-top:0px;--margin_offset-bottom:0px;--margin_offset-top-no-percent:0px;--margin_offset-bottom-no-percent:0px;--main_padding-top:0px;--main_padding-top-or-55px:0px;--main_padding-bottom:0px;--hundredp_padding:30px;--hundredp_padding-fallback_to_zero:30px;--hundredp_padding-fallback_to_zero_px:30px;--hundredp_padding-hundred_percent_negative_margin:-30px;--grid_main_break_point:1000;--side_header_break_point:800;--content_break_point:800;--typography_sensitivity:0;--typography_factor:1.5;--primary_color:var(--awb-color5);--primary_color-85a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 15%));--primary_color-7a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 30%));--primary_color-5a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 50%));--primary_color-35a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 65%));--primary_color-2a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 80%));--header_bg_repeat:no-repeat;--side_header_width:280px;--side_header_width-int:280;--header_padding-top:0px;--header_padding-bottom:0px;--header_padding-left:0px;--header_padding-right:0px;--menu_highlight_background:var(--awb-color4);--menu_arrow_size-width:23px;--menu_arrow_size-height:12px;--nav_highlight_border:3px;--nav_padding:48px;--nav_padding-no-zero:48px;--dropdown_menu_top_border_size:3px;--dropdown_menu_width:200px;--mainmenu_dropdown_vertical_padding:12px;--menu_sub_bg_color:var(--awb-color1);--menu_bg_hover_color:var(--awb-color3);--menu_sub_sep_color:var(--awb-color3);--menu_h45_bg_color:var(--awb-color1);--nav_typography-font-family:var(--awb-typography3-font-family);--nav_typography-font-weight:var(--awb-typography3-font-weight);--nav_typography-font-size:var(--awb-typography3-font-size);--nav_typography-font-style:var(--awb-typography3-font-style);--nav_typography-letter-spacing:var(--awb-typography3-letter-spacing);--nav_typography-color:var(--awb-color8);--nav_typography-color-65a:hsla(var(--awb-color8-h),var(--awb-color8-s),var(--awb-color8-l),calc(var(--awb-color8-a) - 35%));--nav_typography-color-35a:hsla(var(--awb-color8-h),var(--awb-color8-s),var(--awb-color8-l),calc(var(--awb-color8-a) - 65%));--nav_typography-text-transform:none;--menu_hover_first_color:var(--awb-color4);--menu_hover_first_color-65a:hsla(var(--awb-color4-h),var(--awb-color4-s),var(--awb-color4-l),calc(var(--awb-color4-a) - 35%));--menu_sub_color:var(--awb-color8);--nav_dropdown_font_size:14px;--flyout_menu_icon_font_size:20px;--flyout_menu_icon_font_size_px:20px;--snav_font_size:12px;--sec_menu_lh:48px;--header_top_menu_sub_color:var(--awb-color8);--mobile_menu_icons_top_margin:2px;--mobile_menu_nav_height:42px;--mobile_header_bg_color:var(--awb-color1);--mobile_menu_background_color:var(--awb-color1);--mobile_menu_hover_color:var(--awb-color1);--mobile_menu_border_color:var(--awb-color3);--mobile_menu_toggle_color:var(--awb-color6);--mobile_menu_typography-font-family:var(--awb-typography3-font-family);--mobile_menu_typography-font-size:var(--awb-typography3-font-size);--mobile_menu_typography-font-weight:var(--awb-typography3-font-weight);--mobile_menu_typography-line-height:var(--awb-typography3-line-height);--mobile_menu_typography-letter-spacing:var(--awb-typography3-letter-spacing);--mobile_menu_typography-color:var(--awb-color8);--mobile_menu_typography-font-style:var(--awb-typography3-font-style);--mobile_menu_typography-text-transform:none;--mobile_menu_typography-font-size-30-or-24px:24px;--mobile_menu_typography-font-size-open-submenu:var(--mobile_menu_typography-font-size, 13px);--mobile_menu_font_hover_color:var(--awb-color8);--menu_icon_size:14px;--logo_alignment:left;--logo_background_color:var(--awb-color4);--slidingbar_width:300px;--slidingbar_width-percent_to_vw:300px;--slidingbar_content_padding-top:60px;--slidingbar_content_padding-bottom:60px;--slidingbar_content_padding-left:30px;--slidingbar_content_padding-right:30px;--slidingbar_bg_color:var(--awb-color7);--slidingbar_divider_color:var(--awb-color6);--slidingbar_link_color:hsla(var(--awb-color1-h),var(--awb-color1-s),var(--awb-color1-l),calc(var(--awb-color1-a) - 14%));--slidingbar_link_color_hover:var(--awb-color1);--footer_divider_color:var(--awb-color6);--footer_headings_typography-font-family:var(--awb-typography2-font-family);--footer_headings_typography-font-size:var(--awb-typography2-font-size);--footer_headings_typography-font-weight:var(--awb-typography2-font-weight);--footer_headings_typography-line-height:var(--awb-typography2-line-height);--footer_headings_typography-font-style:var(--awb-typography2-font-style);--footer_headings_typography-letter-spacing:var(--awb-typography2-letter-spacing);--footer_headings_typography-color:var(--awb-color1);--footer_headings_typography-text-transform:none;--footer_text_color:hsla(var(--awb-color1-h),var(--awb-color1-s),var(--awb-color1-l),calc(var(--awb-color1-a) - 40%));--bg_image:none;--bg_repeat:no-repeat;--bg_color:var(--awb-color3);--bg-color-overlay:normal;--bg_pattern:url("//theater28.de/wp-content/themes/Avada/assets/images/patterns/pattern1.png");--content_bg_color:var(--awb-color1);--content_bg_image:none;--content_bg_repeat:no-repeat;--body_typography-font-family:var(--awb-typography4-font-family);--body_typography-font-size:var(--awb-typography4-font-size);--base-font-size:16;--body_typography-font-weight:var(--awb-typography4-font-weight);--body_typography-font-style:var(--awb-typography4-font-style);--body_typography-line-height:var(--awb-typography4-line-height);--body_typography-letter-spacing:var(--awb-typography4-letter-spacing);--body_typography-color:var(--awb-color8);--link_color:var(--awb-color8);--link_color-8a:hsla(var(--awb-color8-h),var(--awb-color8-s),var(--awb-color8-l),calc(var(--awb-color8-a) - 20%));--link_hover_color:var(--awb-color5);--link_hover_color-85a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 15%));--link_hover_color-7a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 30%));--link_hover_color-5a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 50%));--link_hover_color-35a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 65%));--link_hover_color-2a:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 80%));--awb-link_decoration_line:none;--awb-link_decoration_style:solid;--awb-link_decoration_thickness:1px;--awb-link_decoration_underline_offset:auto;--awb-link_decoration_line_hover:none;--awb-link_decoration_style_hover:solid;--awb-link_decoration_thickness_hover:1px;--awb-link_decoration_underline_offset_hover:auto;--h1_typography-font-family:var(--awb-typography1-font-family);--h1_typography-font-weight:var(--awb-typography1-font-weight);--h1_typography-line-height:var(--awb-typography1-line-height);--h1_typography-letter-spacing:var(--awb-typography1-letter-spacing);--h1_typography-font-style:var(--awb-typography1-font-style);--h1_typography-font-size:64px;--h1_typography-color:var(--awb-color8);--h1_typography-text-transform:none;--h1_typography-margin-top:0.67em;--h1_typography-margin-bottom:0.67em;--h2_typography-font-family:var(--awb-typography1-font-family);--h2_typography-font-weight:var(--awb-typography1-font-weight);--h2_typography-line-height:var(--awb-typography1-line-height);--h2_typography-letter-spacing:var(--awb-typography1-letter-spacing);--h2_typography-font-style:var(--awb-typography1-font-style);--h2_typography-font-size:var(--awb-typography1-font-size);--h2_typography-color:var(--awb-color8);--h2_typography-text-transform:none;--h2_typography-margin-top:0em;--h2_typography-margin-bottom:1.1em;--h3_typography-font-family:var(--awb-typography1-font-family);--h3_typography-font-weight:var(--awb-typography1-font-weight);--h3_typography-line-height:var(--awb-typography1-line-height);--h3_typography-letter-spacing:var(--awb-typography1-letter-spacing);--h3_typography-font-style:var(--awb-typography1-font-style);--h3_typography-font-size:36px;--h3_typography-color:var(--awb-color8);--h3_typography-text-transform:none;--h3_typography-margin-top:1em;--h3_typography-margin-bottom:1em;--h4_typography-font-family:var(--awb-typography1-font-family);--h4_typography-font-weight:var(--awb-typography1-font-weight);--h4_typography-line-height:var(--awb-typography1-line-height);--h4_typography-letter-spacing:var(--awb-typography1-letter-spacing);--h4_typography-font-style:var(--awb-typography1-font-style);--h4_typography-font-size:24px;--h4_typography-color:var(--awb-color8);--h4_typography-text-transform:none;--h4_typography-margin-top:1.33em;--h4_typography-margin-bottom:1.33em;--h5_typography-font-family:var(--awb-typography1-font-family);--h5_typography-font-weight:var(--awb-typography1-font-weight);--h5_typography-line-height:var(--awb-typography1-line-height);--h5_typography-letter-spacing:var(--awb-typography1-letter-spacing);--h5_typography-font-style:var(--awb-typography1-font-style);--h5_typography-font-size:20px;--h5_typography-color:var(--awb-color8);--h5_typography-text-transform:none;--h5_typography-margin-top:1.67em;--h5_typography-margin-bottom:1.67em;--h6_typography-font-family:var(--awb-typography1-font-family);--h6_typography-font-weight:var(--awb-typography1-font-weight);--h6_typography-line-height:var(--awb-typography1-line-height);--h6_typography-letter-spacing:var(--awb-typography1-letter-spacing);--h6_typography-font-style:var(--awb-typography1-font-style);--h6_typography-font-size:16px;--h6_typography-color:var(--awb-color8);--h6_typography-text-transform:none;--h6_typography-margin-top:2.33em;--h6_typography-margin-bottom:2.33em;--post_title_typography-font-family:var(--awb-typography1-font-family);--post_title_typography-font-weight:var(--awb-typography1-font-weight);--post_title_typography-line-height:var(--awb-typography1-line-height);--post_title_typography-letter-spacing:var(--awb-typography1-letter-spacing);--post_title_typography-font-style:var(--awb-typography1-font-style);--post_title_typography-font-size:48px;--post_title_typography-color:var(--awb-color8);--post_title_typography-text-transform:none;--post_titles_extras_typography-font-family:var(--awb-typography1-font-family);--post_titles_extras_typography-font-weight:var(--awb-typography1-font-weight);--post_titles_extras_typography-line-height:var(--awb-typography1-line-height);--post_titles_extras_typography-letter-spacing:var(--awb-typography1-letter-spacing);--post_titles_extras_typography-font-style:var(--awb-typography1-font-style);--post_titles_extras_typography-font-size:20px;--post_titles_extras_typography-color:var(--awb-color8);--post_titles_extras_typography-text-transform:none;--blog_archive_grid_column_spacing:40px;--dates_box_color:var(--awb-color2);--meta_font_size:13px;--portfolio_archive_column_spacing:20px;--portfolio_meta_font_size:13px;--social_bg_color:var(--awb-color2);--social_sharing_padding-top:1.25em;--social_sharing_padding-right:1.25em;--social_sharing_padding-bottom:1.25em;--social_sharing_padding-left:1.25em;--sharing_social_links_icon_color:var(--awb-color8);--sharing_social_links_box_color:var(--awb-color3);--slider_nav_box_dimensions-width:30px;--slider_nav_box_dimensions-height:30px;--slider_arrow_size:14px;--es_caption_font_size:20px;--form_input_height:50px;--form_input_height-main-menu-search-width:calc(250px + 1.43 * 50px);--form_text_size:16px;--form_bg_color:var(--awb-color1);--form_text_color:var(--awb-color8);--form_text_color-35a:hsla(var(--awb-color8-h),var(--awb-color8-s),var(--awb-color8-l),calc(var(--awb-color8-a) - 65%));--form_border_width-top:1px;--form_border_width-bottom:1px;--form_border_width-left:1px;--form_border_width-right:1px;--form_border_color:var(--awb-color3);--form_focus_border_color:var(--awb-color4);--form_focus_border_color-5a:hsla(var(--awb-color4-h),var(--awb-color4-s),var(--awb-color4-l),calc(var(--awb-color4-a) - 50%));--form_border_radius:6px;--live_search_results_height:250px;--privacy_bg_color:hsla(var(--awb-color8-h),var(--awb-color8-s),var(--awb-color8-l),calc(var(--awb-color8-a) - 90%));--privacy_color:hsla(var(--awb-color8-h),var(--awb-color8-s),var(--awb-color8-l),calc(var(--awb-color8-a) - 70%));--privacy_necessary_opacity:0.7;--privacy_bar_padding-top:15px;--privacy_bar_padding-bottom:15px;--privacy_bar_padding-left:30px;--privacy_bar_padding-right:30px;--privacy_bar_bg_color:var(--awb-color8);--privacy_bar_font_size:13px;--privacy_bar_color:var(--awb-color6);--privacy_bar_link_color:var(--awb-color2);--privacy_bar_link_hover_color:var(--awb-color4);--privacy_bar_content_max_width:50%;--privacy_bar_headings_font_size:13px;--privacy_bar_headings_color:var(--awb-color1);--privacy_bar_tabs_border_size:1px;--privacy_bar_tabs_border_color:var(--awb-color6);--privacy_bar_tabs_active_bg_color:var(--awb-color7);--privacy_bar_tabs_padding-top:20px;--privacy_bar_tabs_padding-bottom:20px;--privacy_bar_tabs_padding-left:20px;--privacy_bar_tabs_padding-right:20px;--privacy_bar_column_gap:30px;--privacy_bar_toggle_off_color:var(--awb-color6);--privacy_bar_toggle_on_color:var(--awb-color5);--privacy_bar_toggle_thumb_color:var(--awb-color3);--privacy_bar_lifespan_color:#ffffff;--privacy_bar_desc_color:#ffffff;--privacy_bar_desc_font_size:0.85em;--scrollbar_background:var(--awb-color2);--scrollbar_handle:var(--awb-color4);--related_posts_columns:4;--related_posts_column_spacing:48px;--image_rollover_icon_size:15px;--image_rollover_text_color:var(--awb-color8);--pagination_width_height:30px;--pagination_box_padding-width:6px;--pagination_box_padding-height:2px;--pagination_border_width:1px;--pagination_border_radius:0px;--pagination_font_size:13px;--timeline_bg_color:rgba(255,255,255,0);--timeline_bg_color-not-transparent:rgba(255,255,255,1);--timeline_color:var(--awb-color2);--grid_separator_color:var(--awb-color3);--carousel_nav_color:hsla(var(--awb-color8-h),var(--awb-color8-s),var(--awb-color8-l),calc(var(--awb-color8-a) - 30%));--carousel_hover_color:hsla(var(--awb-color5-h),var(--awb-color5-s),var(--awb-color5-l),calc(var(--awb-color5-a) - 20%));--info_bg_color:var(--awb-color1);--info_accent_color:var(--awb-color8);--danger_bg_color:rgba(219,75,104,0.1);--danger_accent_color:#db4b68;--success_bg_color:rgba(18,184,120,0.1);--success_accent_color:#12b878;--warning_bg_color:rgba(241,174,42,0.1);--warning_accent_color:#f1ae2a;--alert_border_size:1px;--button_padding-top:13px;--button_padding-bottom:13px;--button_padding-left:29px;--button_padding-right:29px;--button_typography-font-family:var(--awb-typography3-font-family);--button_typography-font-weight:var(--awb-typography3-font-weight);--button_typography-letter-spacing:var(--awb-typography3-letter-spacing);--button_typography-font-style:var(--awb-typography3-font-style);--button_font_size:var(--awb-typography3-font-size);--button_line_height:var(--awb-typography3-line-height);--button_text_transform:var(--awb-typography3-text-transform);--button_gradient_top_color:var(--awb-color5);--button_gradient_bottom_color:var(--awb-color5);--button_gradient_top_color_hover:hsla(var(--awb-color5-h),calc(var(--awb-color5-s) - 5%),calc(var(--awb-color5-l) - 10%),var(--awb-color5-a));--button_gradient_bottom_color_hover:hsla(var(--awb-color5-h),calc(var(--awb-color5-s) - 5%),calc(var(--awb-color5-l) - 10%),var(--awb-color5-a));--button_gradient_start:0%;--button_gradient_end:100%;--button_gradient_angle:180deg;--button_radial_direction:center center;--button_accent_color:var(--awb-color1);--button_accent_hover_color:var(--awb-color1);--button_bevel_color:hsla(var(--awb-color5-h),calc(var(--awb-color5-s) - 5%),calc(var(--awb-color5-l) - 10%),var(--awb-color5-a));--button_box_shadow:none;--button_bevel_color_hover:hsla(var(--awb-color5-h),calc(var(--awb-color5-s) - 5%),calc(var(--awb-color5-l) - 10%),var(--awb-color5-a));--button_border_width-top:0px;--button_border_width-right:0px;--button_border_width-bottom:0px;--button_border_width-left:0px;--button_border_color:var(--awb-color1);--button_border_hover_color:var(--awb-color1);--col_margin-top:0px;--col_margin-bottom:20px;--col_spacing:4%;--container_padding_default_top:0px;--container_padding_default_bottom:0px;--container_padding_default_left:0px;--container_padding_default_right:0px;--container_padding_100_top:0px;--container_padding_100_bottom:0px;--container_padding_100_left:30px;--container_padding_100_right:30px;--full_width_bg_color:rgba(255,255,255,0);--full_width_border_sizes_top:0px;--full_width_border_sizes_bottom:0px;--full_width_border_sizes_left:0px;--full_width_border_sizes_right:0px;--full_width_border_color:var(--awb-color3);--sep_color:var(--awb-color3);--accordion_divider_color:var(--awb-color3);--accordion_divider_hover_color:var(--awb-color3);--accordian_inactive_color:var(--awb-color8);--accordian_active_color:var(--awb-color5);}#side-header,.fusion-header{--header_bg_color:var(--awb-color1);--archive_header_bg_color:var(--awb-color1);}.fusion-header-wrapper,#side-header{--header_border_color:rgba(226,226,226,0);}.fusion-secondary-header{--header_top_bg_color:var(--awb-color4);--snav_color:var(--awb-color1);}.fusion-header-tagline{--tagline_font_size:16px;--tagline_font_color:var(--awb-color8);}.fusion-arrow-svg,.fusion-header-wrapper,#side-header{--header_sticky_bg_color:var(--awb-color1);}.fusion-main-menu{--header_sticky_menu_color:var(--awb-color8);--header_sticky_nav_font_size:14px;--nav_height:94px;--mobile_nav_padding:25px;--menu_text_align:center;--menu_thumbnail_size-width:26px;--menu_thumbnail_size-height:14px;}.fusion-main-menu,.fusion-logo-background{--header_sticky_nav_padding:35px;}.fusion-menu-highlight-label, .awb-menu__highlight{--main_nav_highlight_radius:2px;}.fusion-flyout-menu-icons{--flyout_nav_icons_padding:32px;--flyout_menu_icon_color:var(--awb-color8);--flyout_menu_icon_hover_color:var(--awb-color4);}.fusion-flyout-menu-bg{--flyout_menu_background_color:hsla(var(--awb-color1-h),var(--awb-color1-s),var(--awb-color1-l),calc(var(--awb-color1-a) - 6%));}.fusion-flyout-menu{--flyout_menu_item_padding:32px;}.fusion-secondary-menu{--topmenu_dropwdown_width:200px;--header_top_first_border_color:var(--awb-color6);--header_top_sub_bg_color:var(--awb-color1);--header_top_menu_bg_hover_color:var(--awb-color2);--header_top_menu_sub_sep_color:var(--awb-color3);--header_top_menu_sub_hover_color:var(--awb-color4);}.fusion-header{--top-bar-height:calc(48px / 2);}.fusion-megamenu-submenu{--megamenu_item_vertical_padding:7px;}.fusion-megamenu-icon{--menu_icon_color:var(--awb-color6);--menu_icon_hover_color:var(--awb-color4);}.fusion-logo{--logo_margin-top:34px;--logo_margin-bottom:34px;--logo_margin-left:0px;--logo_margin-right:0px;}.fusion-page-title-bar, .fusion-breadcrumbs .awb-breadcrumb-sep{--breadcrumbs_separator:"/";}.fusion-page-title-bar, .fusion-breadcrumbs{--breadcrumbs_font_size:14px;--breadcrumbs_text_color:var(--awb-color8);--breadcrumbs_text_hover_color:var(--awb-color4);}.fusion-sliding-bar{--slidingbar_content_align:left;}.fusion-sb-toggle-wrapper{--slidingbar_toggle_icon_color:var(--awb-color1);}#slidingbar{--slidingbar_font_size:14px;}#slidingbar-area{--slidingbar_headings_color:var(--awb-color1);--slidingbar_text_color:hsla(var(--awb-color1-h),var(--awb-color1-s),var(--awb-color1-l),calc(var(--awb-color1-a) - 40%));}.fusion-footer-widget-area{--footerw_bg_full-size:initial;--footerw_bg_full-position:var(--footerw_bg_pos);--footerw_bg_repeat:no-repeat;--footerw_bg_pos:center center;--footer_bg_color:var(--awb-color7);--footer_border_size:0px;--footer_border_color:var(--awb-color3);--footer_link_color:hsla(var(--awb-color1-h),var(--awb-color1-s),var(--awb-color1-l),calc(var(--awb-color1-a) - 20%));--footer_link_color_hover:var(--awb-color4);}.fusion-footer{--footer_area_padding-top:60px;--footer_area_padding-bottom:64px;--footer_area_padding-left:0px;--footer_area_padding-right:0px;--footer_divider_line-flex:block;--footer_divider_line_size:1px;--footer_divider_line_style:solid;--footer_widgets_padding:16px;}.fusion-footer-copyright-area{--copyright_padding-top:20px;--copyright_padding-bottom:20px;--copyright_bg_color:var(--awb-color8);--copyright_border_size:0px;--copyright_border_color:var(--awb-color8);--copyright_link_color_hover:var(--awb-color4);}.fusion-copyright-notice{--copyright_text_color:hsla(var(--awb-color1-h),var(--awb-color1-s),var(--awb-color1-l),calc(var(--awb-color1-a) - 60%));--copyright_link_color:hsla(var(--awb-color1-h),var(--awb-color1-s),var(--awb-color1-l),calc(var(--awb-color1-a) - 20%));--copyright_font_size:13px;}.fusion-load-more-button{--blog_load_more_posts_button_bg_color:var(--awb-color7);--blog_load_more_posts_button_text_color:var(--awb-color1);--blog_load_more_posts_hover_button_bg_color:var(--awb-color5);--blog_load_more_posts_hover_button_text_color:var(--awb-color1);--portfolio_archive_load_more_posts_button_bg_color:var(--awb-color7);--portfolio_archive_load_more_posts_button_text_color:var(--awb-color1);--portfolio_archive_load_more_posts_hover_button_bg_color:var(--awb-color5);--portfolio_archive_load_more_posts_hover_button_text_color:var(--awb-color1);}.fusion-post-content-wrapper{--blog_archive_grid_padding-top:30px;--blog_archive_grid_padding-bottom:20px;--blog_archive_grid_padding-left:25px;--blog_archive_grid_padding-right:25px;}.fusion-portfolio-content{--portfolio_archive_text_layout-padding:20px 0;--portfolio_archive_layout_padding-top:25px;--portfolio_archive_layout_padding-bottom:25px;--portfolio_archive_layout_padding-left:25px;--portfolio_archive_layout_padding-right:25px;}.fusion-portfolio-content-wrapper{--portfolio_archive_text_alignment:left;}.fusion-theme-sharing-box{--sharing_box_tagline_text_color:var(--awb-color8);}.fusion-sharing-box{--sharing_social_links_font_size:16px;--sharing_social_links_boxed_padding:8px;}.fusion-social-network-icon{--sharing_social_links_boxed_radius:4px;}.ei-slider{--tfes_dimensions-width:100%;--tfes_dimensions-height:400px;--es_title_font_size:42px;--es_title_color:var(--awb-color8);--es_caption_color:var(--awb-color8);}.avada-google-map{--gmap_topmargin:55px;}.fusion-blog-layout-grid{--search_grid_column_spacing:40px;}.fusion-image-wrapper{--image_gradient_top_color:hsla(var(--awb-color4-h),var(--awb-color4-s),var(--awb-color4-l),calc(var(--awb-color4-a) - 20%));}.fusion-rollover{--image_gradient_bottom_color:var(--awb-color4);--image_rollover_icon_color:var(--awb-color1);}#toTop{--totop_spacing_side:75px;--totop_spacing_bottom:30px;--totop_border_radius:6px;--totop_background:var(--awb-color8);--totop_background_hover:var(--awb-color5);--totop_icon_color:var(--awb-color1);--totop_icon_hover:var(--awb-color1);}.shadow-left{--avada-rev-image-shadow-top:1;}.shadow-right{--avada-rev-image-shadow-bottom:1;}body{--awb-alert-border-top-left-radius-default:0px;--awb-alert-border-top-right-radius-default:0px;--awb-alert-border-bottom-right-radius-default:0px;--awb-alert-border-bottom-left-radius-default:0px;--button-border-radius-top-left:4px;--button-border-radius-top-right:4px;--button-border-radius-bottom-right:4px;--button-border-radius-bottom-left:4px;}.fusion-scroll-section-nav{--container_scroll_nav_bg_color:hsla(var(--awb-color8-h),var(--awb-color8-s),var(--awb-color8-l),calc(var(--awb-color8-a) - 80%));}.fusion-scroll-section-link-bullet{--container_scroll_nav_bullet_color:var(--awb-color3);}@media only screen and (max-width: 800px){.has-sidebar #{order:1;}}@font-face {font-family: "awb-icons";src:url('//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/icomoon/awb-icons.woff') format('woff'),url('//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/icomoon/awb-icons.ttf') format('truetype'),url('//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/icomoon/awb-icons.svg#awb-icons') format('svg');font-weight: normal;font-style: normal;font-display: block;}.fa,.fab,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:solid .08em #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{-webkit-transform:scale(1,-1);transform:scale(1,-1)}.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1,-1);transform:scale(-1,-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-rotate-90{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:normal;src:url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-brands-400.eot);src:url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-brands-400.woff2) format("woff2"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-brands-400.woff) format("woff"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-brands-400.ttf) format("truetype"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-brands-400.svg#fontawesome) format("svg");font-display: block;}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;src:url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-regular-400.eot);src:url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-regular-400.woff2) format("woff2"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-regular-400.woff) format("woff"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-regular-400.ttf) format("truetype"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-regular-400.svg#fontawesome) format("svg");font-display: block;}.far{font-family:"Font Awesome 5 Free";font-weight:400;}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;src:url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-solid-900.eot);src:url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-solid-900.woff2) format("woff2"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-solid-900.woff) format("woff"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-solid-900.ttf) format("truetype"),url(//theater28.de/wp-content/themes/Avada/includes/lib/assets/fonts/fontawesome/webfonts/fa-solid-900.svg#fontawesome) format("svg");font-display: block;}.fa,.fas{font-family:"Font Awesome 5 Free";font-weight:900}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bacteria:before{content:"\e059"}.fa-bacterium:before{content:"\e05a"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\e05b"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudflare:before{content:"\e07d"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\e052"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-deezer:before{content:"\e077"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edge-legacy:before{content:"\e078"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-faucet:before{content:"\e005"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\e007"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-pay:before{content:"\e079"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guilded:before{content:"\e07e"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\e05d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-wash:before{content:"\e05e"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt-slash:before{content:"\e05f"}.fa-handshake-slash:before{content:"\e060"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-head-side-cough:before{content:"\e061"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-head-side-mask:before{content:"\e063"}.fa-head-side-virus:before{content:"\e064"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hive:before{content:"\e07f"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-house-user:before{content:"\e065"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\e013"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-innosoft:before{content:"\e080"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\e055"}.fa-instalod:before{content:"\e081"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-house:before{content:"\e066"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\e067"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\e01a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\e056"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-octopus-deploy:before{content:"\e082"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-arrows:before{content:"\e068"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-perbyte:before{content:"\e083"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\e01e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\e069"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pump-medical:before{content:"\e06a"}.fa-pump-soap:before{content:"\e06b"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-rust:before{content:"\e07a"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-virus:before{content:"\e06c"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\e057"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sink:before{content:"\e06d"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\e06e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\e06f"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-store-alt-slash:before{content:"\e070"}.fa-store-slash:before{content:"\e071"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-tiktok:before{content:"\e07b"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\e041"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-uncharted:before{content:"\e084"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\e049"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-unsplash:before{content:"\e07c"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-users-slash:before{content:"\e073"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-vest:before{content:"\e085"}.fa-vest-patches:before{content:"\e086"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-virus:before{content:"\e074"}.fa-virus-slash:before{content:"\e075"}.fa-viruses:before{content:"\e076"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-watchman-monitoring:before{content:"\e087"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wodu:before{content:"\e088"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.fade{opacity:0;transition:opacity .3s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#356635}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#2d6987}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#a47e3c}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#953b39}.close{position:relative;top:-2px;opacity:.2;float:right;padding:0;background:0 0;border:0 none;cursor:pointer;font-size:21px;color:#000;font-weight:700;line-height:1}.awb-alert-inherit-link-color a{color:inherit}.awb-alert-inherit-link-color a:focus,.awb-alert-inherit-link-color a:hover{color:inherit}.fusion-alert{--awb-padding-top:25px;--awb-padding-right:25px;--awb-padding-bottom:25px;--awb-padding-left:25px;--awb-margin-top:0;--awb-margin-right:0;--awb-margin-bottom:20px;--awb-margin-left:0;--awb-accent-color:inherit;--awb-background-color:transparent;--awb-border-size:var(--alert_border_size);--awb-border-top-left-radius:var(--awb-alert-border-top-left-radius-default, 0);--awb-border-top-right-radius:var(--awb-alert-border-top-right-radius-default, 0);--awb-border-bottom-right-radius:var(--awb-alert-border-bottom-right-radius-default, 0);--awb-border-bottom-left-radius:var(--awb-alert-border-bottom-left-radius-default, 0);display:flex;align-items:center;clear:both;position:relative;padding:var(--awb-padding-top) var(--awb-padding-right) var(--awb-padding-bottom) var(--awb-padding-left);margin:var(--awb-margin-top) var(--awb-margin-right) var(--awb-margin-bottom) var(--awb-margin-left);border-radius:0;text-shadow:none;color:var(--awb-accent-color);background:var(--awb-background-color);border-color:var(--awb-accent-color);border-width:var(--awb-border-size);border-top-left-radius:var(--awb-border-top-left-radius);border-top-right-radius:var(--awb-border-top-right-radius);border-bottom-right-radius:var(--awb-border-bottom-right-radius);border-bottom-left-radius:var(--awb-border-bottom-left-radius)}.fusion-alert.alert-shadow{box-shadow:0 1px 1px rgba(0,0,0,.1)}.fusion-alert .alert-icon,.fusion-alert .fusion-alert-content{color:var(--awb-accent-color)}.fusion-alert .fusion-alert-content-wrapper{flex:1;display:flex}.fusion-alert .alert-icon i{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fusion-alert.awb-alert-close-boxed .close{position:absolute;box-sizing:content-box;top:-1px;right:-1px;height:25px;width:25px;line-height:25px;opacity:1;border:1px solid;border-color:inherit;color:inherit;font-size:15px;transition:all .2s}.fusion-alert.awb-alert-close-boxed .close:hover{opacity:1;background-color:rgba(0,0,0,.05)}.fusion-alert.awb-alert-close-floated .close{position:static;opacity:.75;height:1em;width:1em;line-height:1;border:none;color:inherit;font-size:2em;font-weight:400;transition:opacity .2s}.fusion-alert.awb-alert-close-floated .close:hover{opacity:1}.fusion-alert.alert-blank{border:1px solid #747474}.fusion-alert.fusion-alert-capitalize{text-transform:uppercase}.fusion-alert.fusion-alert-center{text-align:center}.fusion-alert.fusion-alert-center .fusion-alert-content-wrapper{justify-content:center}.fusion-alert.fusion-alert-center .close{border-top-width:0}.ltr .fusion-alert.fusion-alert-center .close{border-right-width:0}.rtl .fusion-alert.fusion-alert-center .close{border-left-width:0}.fusion-alert.fusion-alert-center .alert-icon{margin-right:10px}.fusion-alert.fusion-alert-left .close{border-top-width:0;border-right-width:0}.fusion-alert.fusion-alert-left .fusion-alert-content-wrapper .alert-icon{margin-right:1em}.fusion-alert.fusion-alert-right .close{left:-1px;right:auto;border-top-width:0;border-left-width:0}.fusion-alert.fusion-alert-right .fusion-alert-content-wrapper{justify-content:flex-end}.fusion-alert.fusion-alert-right .fusion-alert-content-wrapper .alert-icon{order:1;margin-left:1em}.fusion-alert.fusion-alert-right.awb-alert-close-floated .fusion-alert-content-wrapper{order:1}.fusion-alert.awb-stripe-button-response.fusion-hidden{display:none}.fusion-alert.alert-info.general{--awb-background-color:var(--info_bg_color);--awb-accent-color:var(--info_accent_color)}.fusion-alert.alert-warning.notice{--awb-background-color:var(--warning_bg_color);--awb-accent-color:var(--warning_accent_color)}.fusion-alert.alert-danger.error{--awb-background-color:var(--danger_bg_color);--awb-accent-color:var(--danger_accent_color)}.fusion-alert.alert-success.success{--awb-background-color:var(--success_bg_color);--awb-accent-color:var(--success_accent_color)}.gform_wrapper .gform_validation_errors{position:relative;padding:25px;border-radius:0;margin-bottom:20px;text-shadow:none}.gform_wrapper .gfield_error .gfield_validation_message,.gform_wrapper .gform_validation_errors{--awb-background-color:var(--danger_bg_color);--awb-accent-color:var(--danger_accent_color);background:var(--danger_bg_color);border-color:var(--danger_accent_color);color:var(--danger_accent_color)}#main #comment-submit,.button-default,.button.default,.comment-form input[type="submit"],.fusion-button,.fusion-button-default,input.button-default{--awb-margin-top:0px;--awb-margin-right:0px;--awb-margin-bottom:0px;--awb-margin-left:0px;--awb-padding-top:var(--button_padding-top, 13px);--awb-padding-right:var(--button_padding-right, 29px);--awb-padding-bottom:var(--button_padding-bottom, 13px);--awb-padding-left:var(--button_padding-left, 29px);display:inline-flex;justify-content:center;align-items:center;position:relative;text-decoration:none;cursor:pointer;box-sizing:border-box;font-family:var(--button_typography-font-family);font-weight:var(--button_typography-font-weight);font-style:var(--button_typography-font-style,normal);letter-spacing:var(--button_typography-letter-spacing);border-width:var(--button_border_width-top,0) var(--button_border_width-right,0) var(--button_border_width-bottom,0) var(--button_border_width-left,0);border-style:solid;border-radius:var(--button-border-radius-top-left,0) var(--button-border-radius-top-right,0) var(--button-border-radius-bottom-right,0) var(--button-border-radius-bottom-left,0);text-transform:var(--button_text_transform);transition:color .2s,font-size .2s,background-color .2s,background-image .2s,border-color .2s,border-width .2s,border-style .2s,border-radius .2s,box-shadow .2s,opacity .2s,transform .2s;margin:var(--awb-margin-top) var(--awb-margin-right) var(--awb-margin-bottom) var(--awb-margin-left)}.fusion-body .fusion-button-default-size,button.button{padding-top:var(--awb-padding-top);padding-right:var(--awb-padding-right);padding-bottom:var(--awb-padding-bottom);padding-left:var(--awb-padding-left);line-height:var(--button_line_height, 1);font-size:var(--button_font_size, 14px)}.fusion-body .fusion-button-default-size .fusion-button-text-left,button.button .fusion-button-text-left{display:inline-block;margin-left:calc(var(--awb-padding-left,29px)/ 2 + var(--button_font_size,14px) + 1px)}.fusion-body .fusion-button-default-size .fusion-button-text-right,button.button .fusion-button-text-right{display:inline-block;margin-right:calc(var(--awb-padding-right,29px)/ 2 + var(--button_font_size,14px) + 1px)}.fusion-body .fusion-button-default-size .button-icon-divider-left,.fusion-body .fusion-button-default-size .button-icon-divider-right,button.button .button-icon-divider-left,button.button .button-icon-divider-right{margin:0;padding:0;width:calc(var(--awb-padding-left,29px) + var(--button_font_size,14px))}.fusion-body .fusion-button-default-size .button-icon-divider-left i,.fusion-body .fusion-button-default-size .button-icon-divider-left img,.fusion-body .fusion-button-default-size .button-icon-divider-right i,.fusion-body .fusion-button-default-size .button-icon-divider-right img,button.button .button-icon-divider-left i,button.button .button-icon-divider-left img,button.button .button-icon-divider-right i,button.button .button-icon-divider-right img{display:block}#main #comment-submit,.button-default,.button.default,.comment-form input[type="submit"],.fusion-button-default,input.button-default{background:var(--button_gradient_top_color);color:var(--button_accent_color);border-color:var(--button_border_color)}#main #comment-submit .fusion-button-text,.button-default .fusion-button-text,.button.default .fusion-button-text,.comment-form input[type="submit"] .fusion-button-text,.fusion-button-default .fusion-button-text,input.button-default .fusion-button-text{color:var(--button_accent_color)}#main #comment-submit:active .fusion-button-text,.button-default:active .fusion-button-text,.button.default:active .fusion-button-text,.comment-form input[type="submit"]:active .fusion-button-text,.fusion-button-default:active .fusion-button-text,input.button-default:active .fusion-button-text,#main #comment-submit:focus .fusion-button-text,.button-default:focus .fusion-button-text,.button.default:focus .fusion-button-text,.comment-form input[type="submit"]:focus .fusion-button-text,.fusion-button-default:focus .fusion-button-text,input.button-default:focus .fusion-button-text,#main #comment-submit:hover .fusion-button-text,.button-default:hover .fusion-button-text,.button.default:hover .fusion-button-text,.comment-form input[type="submit"]:hover .fusion-button-text,.fusion-button-default:hover .fusion-button-text,input.button-default:hover .fusion-button-text{color:var(--button_accent_hover_color,var(--button_accent_color))}.fusion-has-button-gradient #main #comment-submit,.fusion-has-button-gradient .button-default,.fusion-has-button-gradient .button.default,.fusion-has-button-gradient .comment-form input[type="submit"],.fusion-has-button-gradient .fusion-button-default,.fusion-has-button-gradient input.button-default,.fusion-has-button-gradient.fusion-button-default{--button_gradient:linear-gradient(var(--button_gradient_angle, 180deg), var(--button_gradient_top_color) var(--button_gradient_start, 0%), var(--button_gradient_bottom_color) var(--button_gradient_end, 100%));background-image:var(--button_gradient)}.fusion-has-button-gradient #main #comment-submit:active,.fusion-has-button-gradient .button-default:active,.fusion-has-button-gradient .button.default:active,.fusion-has-button-gradient .comment-form input[type="submit"]:active,.fusion-has-button-gradient .fusion-button-default:active,.fusion-has-button-gradient input.button-default:active,.fusion-has-button-gradient.fusion-button-default:active,.fusion-has-button-gradient #main #comment-submit:focus,.fusion-has-button-gradient .button-default:focus,.fusion-has-button-gradient .button.default:focus,.fusion-has-button-gradient .comment-form input[type="submit"]:focus,.fusion-has-button-gradient .fusion-button-default:focus,.fusion-has-button-gradient input.button-default:focus,.fusion-has-button-gradient.fusion-button-default:focus,.fusion-has-button-gradient #main #comment-submit:hover,.fusion-has-button-gradient .button-default:hover,.fusion-has-button-gradient .button.default:hover,.fusion-has-button-gradient .comment-form input[type="submit"]:hover,.fusion-has-button-gradient .fusion-button-default:hover,.fusion-has-button-gradient input.button-default:hover,.fusion-has-button-gradient.fusion-button-default:hover{--button_gradient_hover:linear-gradient(var(--button_gradient_angle, 180deg), var(--button_gradient_top_color_hover) var(--button_gradient_start, 0%), var(--button_gradient_bottom_color_hover) var(--button_gradient_end, 100%));background-image:var(--button_gradient_hover)}.fusion-button_gradient-radial #main #comment-submit,.fusion-button_gradient-radial .button-default,.fusion-button_gradient-radial .button.default,.fusion-button_gradient-radial .comment-form input[type="submit"],.fusion-button_gradient-radial .fusion-button-default,.fusion-button_gradient-radial input.button-default,.fusion-button_gradient-radial.fusion-button-default{--button_gradient:radial-gradient(circle at var(--button_radial_direction, center center), var(--button_gradient_top_color) var(--button_gradient_start, 0%), var(--button_gradient_bottom_color) var(--button_gradient_end, 100%));background-image:var(--button_gradient)}.fusion-button_gradient-radial #main #comment-submit:active,.fusion-button_gradient-radial .button-default:active,.fusion-button_gradient-radial .button.default:active,.fusion-button_gradient-radial .comment-form input[type="submit"]:active,.fusion-button_gradient-radial .fusion-button-default:active,.fusion-button_gradient-radial input.button-default:active,.fusion-button_gradient-radial.fusion-button-default:active,.fusion-button_gradient-radial #main #comment-submit:focus,.fusion-button_gradient-radial .button-default:focus,.fusion-button_gradient-radial .button.default:focus,.fusion-button_gradient-radial .comment-form input[type="submit"]:focus,.fusion-button_gradient-radial .fusion-button-default:focus,.fusion-button_gradient-radial input.button-default:focus,.fusion-button_gradient-radial.fusion-button-default:focus,.fusion-button_gradient-radial #main #comment-submit:hover,.fusion-button_gradient-radial .button-default:hover,.fusion-button_gradient-radial .button.default:hover,.fusion-button_gradient-radial .comment-form input[type="submit"]:hover,.fusion-button_gradient-radial .fusion-button-default:hover,.fusion-button_gradient-radial input.button-default:hover,.fusion-button_gradient-radial.fusion-button-default:hover{--button_gradient_hover:radial-gradient(circle at var(--button_radial_direction, center center), var(--button_gradient_top_color_hover) var(--button_gradient_start, 0%), var(--button_gradient_bottom_color_hover) var(--button_gradient_end, 100%));background-image:var(--button_gradient_hover)}#main #comment-submit:visited,.button-default:visited,.button.default:visited,.comment-form input[type="submit"]:visited,.fusion-button-default:visited,input.button-default:visited{color:var(--button_accent_color)}#main #comment-submit:active,.button-default:active,.button.default:active,.comment-form input[type="submit"]:active,.fusion-button-default:active,input.button-default:active,#main #comment-submit:focus,.button-default:focus,.button.default:focus,.comment-form input[type="submit"]:focus,.fusion-button-default:focus,input.button-default:focus,#main #comment-submit:hover,.button-default:hover,.button.default:hover,.comment-form input[type="submit"]:hover,.fusion-button-default:hover,input.button-default:hover{background:var(--button_gradient_top_color_hover);color:var(--button_accent_hover_color,var(--button_accent_color));border-color:var(--button_border_hover_color)}.fusion-button_span-yes #main #comment-submit:not(.fusion-button-span-no),.fusion-button_span-yes .button-default:not(.fusion-button-span-no),.fusion-button_span-yes .button.default:not(.fusion-button-span-no),.fusion-button_span-yes .comment-form input[type="submit"]:not(.fusion-button-span-no),.fusion-button_span-yes .fusion-button-default:not(.fusion-button-span-no),.fusion-button_span-yes input.button-default:not(.fusion-button-span-no),.fusion-button_span-yes.fusion-button-default:not(.fusion-button-span-no){width:100%}.fusion-button.button-flat{box-shadow:none!important}.fusion-button-wrapper{display:inline}.fusion-button-wrapper.fusion-aligncenter{display:block;text-align:center}.fusion-button-wrapper.fusion-align-block{display:block}.fusion-disable-outline .bbp-submit-wrapper .button,.fusion-disable-outline .button,.fusion-disable-outline .fusion-button,.fusion-disable-outline .gform_wrapper .button,.fusion-disable-outline .gform_wrapper .gform_button,.fusion-disable-outline .post-password-form input[type=submit],.fusion-disable-outline .single_add_to_cart_button,.fusion-disable-outline .tml-submit-wrap input[type=submit],.fusion-disable-outline .tribe-events-tickets .button,.fusion-disable-outline .tribe-tickets button,.fusion-disable-outline .woocommerce .cart-collaterals .checkout-button,.fusion-disable-outline .woocommerce .checkout #place_order,.fusion-disable-outline .woocommerce.add_to_cart_inline .button,.fusion-disable-outline .wpcf7-submit{outline:0}.fusion-disable-outline .bbp-submit-wrapper .button:focus,.fusion-disable-outline .button:focus,.fusion-disable-outline .fusion-button:focus,.fusion-disable-outline .gform_wrapper .button:focus,.fusion-disable-outline .gform_wrapper .gform_button:focus,.fusion-disable-outline .post-password-form input[type=submit]:focus,.fusion-disable-outline .single_add_to_cart_button:focus,.fusion-disable-outline .tml-submit-wrap input[type=submit]:focus,.fusion-disable-outline .tribe-events-tickets .button:focus,.fusion-disable-outline .tribe-tickets button:focus,.fusion-disable-outline .woocommerce .cart-collaterals .checkout-button:focus,.fusion-disable-outline .woocommerce .checkout #place_order:focus,.fusion-disable-outline .woocommerce.add_to_cart_inline .button:focus,.fusion-disable-outline .wpcf7-submit:focus{outline:0}.fusion-button i,.fusion-button-icon-divider,.fusion-button-text{transition:inherit}#bbp_user_edit_submit,.bbp-submit-wrapper .button,.button-small,.fusion-body .fusion-button-small,.single_add_to_cart_button,.wpcf7-form .wpcf7-submit.button-small,.wpcf7-form .wpcf7-submit.fusion-button-small{padding:9px 20px;line-height:14px;font-size:12px}#bbp_user_edit_submit .fusion-button-text-left,.bbp-submit-wrapper .button .fusion-button-text-left,.button-small .fusion-button-text-left,.fusion-body .fusion-button-small .fusion-button-text-left,.single_add_to_cart_button .fusion-button-text-left,.wpcf7-form .wpcf7-submit.button-small .fusion-button-text-left,.wpcf7-form .wpcf7-submit.fusion-button-small .fusion-button-text-left{display:inline-block;padding-left:25px}#bbp_user_edit_submit .fusion-button-text-right,.bbp-submit-wrapper .button .fusion-button-text-right,.button-small .fusion-button-text-right,.fusion-body .fusion-button-small .fusion-button-text-right,.single_add_to_cart_button .fusion-button-text-right,.wpcf7-form .wpcf7-submit.button-small .fusion-button-text-right,.wpcf7-form .wpcf7-submit.fusion-button-small .fusion-button-text-right{display:inline-block;padding-right:25px}#bbp_user_edit_submit .button-icon-divider-left,.bbp-submit-wrapper .button .button-icon-divider-left,.button-small .button-icon-divider-left,.fusion-body .fusion-button-small .button-icon-divider-left,.single_add_to_cart_button .button-icon-divider-left,.wpcf7-form .wpcf7-submit.button-small .button-icon-divider-left,.wpcf7-form .wpcf7-submit.fusion-button-small .button-icon-divider-left{padding:0 10px}#bbp_user_edit_submit .button-icon-divider-left.fusion-megamenu-image,.bbp-submit-wrapper .button .button-icon-divider-left.fusion-megamenu-image,.button-small .button-icon-divider-left.fusion-megamenu-image,.fusion-body .fusion-button-small .button-icon-divider-left.fusion-megamenu-image,.single_add_to_cart_button .button-icon-divider-left.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.button-small .button-icon-divider-left.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.fusion-button-small .button-icon-divider-left.fusion-megamenu-image{padding:0 5px}#bbp_user_edit_submit .button-icon-divider-right,.bbp-submit-wrapper .button .button-icon-divider-right,.button-small .button-icon-divider-right,.fusion-body .fusion-button-small .button-icon-divider-right,.single_add_to_cart_button .button-icon-divider-right,.wpcf7-form .wpcf7-submit.button-small .button-icon-divider-right,.wpcf7-form .wpcf7-submit.fusion-button-small .button-icon-divider-right{padding:0 10px}#bbp_user_edit_submit .button-icon-divider-right.fusion-megamenu-image,.bbp-submit-wrapper .button .button-icon-divider-right.fusion-megamenu-image,.button-small .button-icon-divider-right.fusion-megamenu-image,.fusion-body .fusion-button-small .button-icon-divider-right.fusion-megamenu-image,.single_add_to_cart_button .button-icon-divider-right.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.button-small .button-icon-divider-right.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.fusion-button-small .button-icon-divider-right.fusion-megamenu-image{padding:0 5px}#bbp_user_edit_submit .button-icon-divider-left i,#bbp_user_edit_submit .button-icon-divider-left img,#bbp_user_edit_submit .button-icon-divider-right i,#bbp_user_edit_submit .button-icon-divider-right img,.bbp-submit-wrapper .button .button-icon-divider-left i,.bbp-submit-wrapper .button .button-icon-divider-left img,.bbp-submit-wrapper .button .button-icon-divider-right i,.bbp-submit-wrapper .button .button-icon-divider-right img,.button-small .button-icon-divider-left i,.button-small .button-icon-divider-left img,.button-small .button-icon-divider-right i,.button-small .button-icon-divider-right img,.fusion-body .fusion-button-small .button-icon-divider-left i,.fusion-body .fusion-button-small .button-icon-divider-left img,.fusion-body .fusion-button-small .button-icon-divider-right i,.fusion-body .fusion-button-small .button-icon-divider-right img,.single_add_to_cart_button .button-icon-divider-left i,.single_add_to_cart_button .button-icon-divider-left img,.single_add_to_cart_button .button-icon-divider-right i,.single_add_to_cart_button .button-icon-divider-right img,.wpcf7-form .wpcf7-submit.button-small .button-icon-divider-left i,.wpcf7-form .wpcf7-submit.button-small .button-icon-divider-left img,.wpcf7-form .wpcf7-submit.button-small .button-icon-divider-right i,.wpcf7-form .wpcf7-submit.button-small .button-icon-divider-right img,.wpcf7-form .wpcf7-submit.fusion-button-small .button-icon-divider-left i,.wpcf7-form .wpcf7-submit.fusion-button-small .button-icon-divider-left img,.wpcf7-form .wpcf7-submit.fusion-button-small .button-icon-divider-right i,.wpcf7-form .wpcf7-submit.fusion-button-small .button-icon-divider-right img{display:block}.button-medium,.fusion-body .fusion-button-medium,.ticket-selector-submit-btn[type=submit],.wpcf7-form .wpcf7-submit.button-medium,.wpcf7-form .wpcf7-submit.fusion-button-medium{padding:11px 23px;line-height:16px;font-size:13px}.button-medium .fusion-button-text-left,.fusion-body .fusion-button-medium .fusion-button-text-left,.ticket-selector-submit-btn[type=submit] .fusion-button-text-left,.wpcf7-form .wpcf7-submit.button-medium .fusion-button-text-left,.wpcf7-form .wpcf7-submit.fusion-button-medium .fusion-button-text-left{display:inline-block;padding-left:28px}.button-medium .fusion-button-text-right,.fusion-body .fusion-button-medium .fusion-button-text-right,.ticket-selector-submit-btn[type=submit] .fusion-button-text-right,.wpcf7-form .wpcf7-submit.button-medium .fusion-button-text-right,.wpcf7-form .wpcf7-submit.fusion-button-medium .fusion-button-text-right{display:inline-block;padding-right:28px}.button-medium .button-icon-divider-left,.fusion-body .fusion-button-medium .button-icon-divider-left,.ticket-selector-submit-btn[type=submit] .button-icon-divider-left,.wpcf7-form .wpcf7-submit.button-medium .button-icon-divider-left,.wpcf7-form .wpcf7-submit.fusion-button-medium .button-icon-divider-left{padding:0 12.5px}.button-medium .button-icon-divider-left.fusion-megamenu-image,.fusion-body .fusion-button-medium .button-icon-divider-left.fusion-megamenu-image,.ticket-selector-submit-btn[type=submit] .button-icon-divider-left.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.button-medium .button-icon-divider-left.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.fusion-button-medium .button-icon-divider-left.fusion-megamenu-image{padding:0 6.25px}.button-medium .button-icon-divider-right,.fusion-body .fusion-button-medium .button-icon-divider-right,.ticket-selector-submit-btn[type=submit] .button-icon-divider-right,.wpcf7-form .wpcf7-submit.button-medium .button-icon-divider-right,.wpcf7-form .wpcf7-submit.fusion-button-medium .button-icon-divider-right{padding:0 12.5px}.button-medium .button-icon-divider-right.fusion-megamenu-image,.fusion-body .fusion-button-medium .button-icon-divider-right.fusion-megamenu-image,.ticket-selector-submit-btn[type=submit] .button-icon-divider-right.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.button-medium .button-icon-divider-right.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.fusion-button-medium .button-icon-divider-right.fusion-megamenu-image{padding:0 6.25px}.button-medium .button-icon-divider-left i,.button-medium .button-icon-divider-left img,.button-medium .button-icon-divider-right i,.button-medium .button-icon-divider-right img,.fusion-body .fusion-button-medium .button-icon-divider-left i,.fusion-body .fusion-button-medium .button-icon-divider-left img,.fusion-body .fusion-button-medium .button-icon-divider-right i,.fusion-body .fusion-button-medium .button-icon-divider-right img,.ticket-selector-submit-btn[type=submit] .button-icon-divider-left i,.ticket-selector-submit-btn[type=submit] .button-icon-divider-left img,.ticket-selector-submit-btn[type=submit] .button-icon-divider-right i,.ticket-selector-submit-btn[type=submit] .button-icon-divider-right img,.wpcf7-form .wpcf7-submit.button-medium .button-icon-divider-left i,.wpcf7-form .wpcf7-submit.button-medium .button-icon-divider-left img,.wpcf7-form .wpcf7-submit.button-medium .button-icon-divider-right i,.wpcf7-form .wpcf7-submit.button-medium .button-icon-divider-right img,.wpcf7-form .wpcf7-submit.fusion-button-medium .button-icon-divider-left i,.wpcf7-form .wpcf7-submit.fusion-button-medium .button-icon-divider-left img,.wpcf7-form .wpcf7-submit.fusion-button-medium .button-icon-divider-right i,.wpcf7-form .wpcf7-submit.fusion-button-medium .button-icon-divider-right img{display:block}#tribe-bar-form .tribe-bar-submit input[type=submit],.button-large,.fusion-body .fusion-button-large,.tml-submit-wrap input[type=submit],.wpcf7-form .wpcf7-submit.button-large,.wpcf7-form .wpcf7-submit.fusion-button-large{padding:13px 29px;line-height:17px;font-size:14px}#tribe-bar-form .tribe-bar-submit input[type=submit] .fusion-button-text-left,.button-large .fusion-button-text-left,.fusion-body .fusion-button-large .fusion-button-text-left,.tml-submit-wrap input[type=submit] .fusion-button-text-left,.wpcf7-form .wpcf7-submit.button-large .fusion-button-text-left,.wpcf7-form .wpcf7-submit.fusion-button-large .fusion-button-text-left{display:inline-block;padding-left:34px}#tribe-bar-form .tribe-bar-submit input[type=submit] .fusion-button-text-right,.button-large .fusion-button-text-right,.fusion-body .fusion-button-large .fusion-button-text-right,.tml-submit-wrap input[type=submit] .fusion-button-text-right,.wpcf7-form .wpcf7-submit.button-large .fusion-button-text-right,.wpcf7-form .wpcf7-submit.fusion-button-large .fusion-button-text-right{display:inline-block;padding-right:34px}#tribe-bar-form .tribe-bar-submit input[type=submit] .button-icon-divider-left,.button-large .button-icon-divider-left,.fusion-body .fusion-button-large .button-icon-divider-left,.tml-submit-wrap input[type=submit] .button-icon-divider-left,.wpcf7-form .wpcf7-submit.button-large .button-icon-divider-left,.wpcf7-form .wpcf7-submit.fusion-button-large .button-icon-divider-left{padding:0 14.5px}#tribe-bar-form .tribe-bar-submit input[type=submit] .button-icon-divider-left.fusion-megamenu-image,.button-large .button-icon-divider-left.fusion-megamenu-image,.fusion-body .fusion-button-large .button-icon-divider-left.fusion-megamenu-image,.tml-submit-wrap input[type=submit] .button-icon-divider-left.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.button-large .button-icon-divider-left.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.fusion-button-large .button-icon-divider-left.fusion-megamenu-image{padding:0 7.25px}#tribe-bar-form .tribe-bar-submit input[type=submit] .button-icon-divider-right,.button-large .button-icon-divider-right,.fusion-body .fusion-button-large .button-icon-divider-right,.tml-submit-wrap input[type=submit] .button-icon-divider-right,.wpcf7-form .wpcf7-submit.button-large .button-icon-divider-right,.wpcf7-form .wpcf7-submit.fusion-button-large .button-icon-divider-right{padding:0 14.5px}#tribe-bar-form .tribe-bar-submit input[type=submit] .button-icon-divider-right.fusion-megamenu-image,.button-large .button-icon-divider-right.fusion-megamenu-image,.fusion-body .fusion-button-large .button-icon-divider-right.fusion-megamenu-image,.tml-submit-wrap input[type=submit] .button-icon-divider-right.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.button-large .button-icon-divider-right.fusion-megamenu-image,.wpcf7-form .wpcf7-submit.fusion-button-large .button-icon-divider-right.fusion-megamenu-image{padding:0 7.25px}#tribe-bar-form .tribe-bar-submit input[type=submit] .button-icon-divider-left i,#tribe-bar-form .tribe-bar-submit input[type=submit] .button-icon-divider-left img,#tribe-bar-form .tribe-bar-submit input[type=submit] .button-icon-divider-right i,#tribe-bar-form .tribe-bar-submit input[type=submit] .button-icon-divider-right img,.button-large .button-icon-divider-left i,.button-large .button-icon-divider-left img,.button-large .button-icon-divider-right i,.button-large .button-icon-divider-right img,.fusion-body .fusion-button-large .button-icon-divider-left i,.fusion-body .fusion-button-large .button-icon-divider-left img,.fusion-body .fusion-button-large .button-icon-divider-right i,.fusion-body .fusion-button-large .button-icon-divider-right img,.tml-submit-wrap input[type=submit] .button-icon-divider-left i,.tml-submit-wrap input[type=submit] .button-icon-divider-left img,.tml-submit-wrap input[type=submit] .button-icon-divider-right i,.tml-submit-wrap input[type=submit] .button-icon-divider-right img,.wpcf7-form .wpcf7-submit.button-large .button-icon-divider-left i,.wpcf7-form .wpcf7-submit.button-large .button-icon-divider-left img,.wpcf7-form .wpcf7-submit.button-large .button-icon-divider-right i,.wpcf7-form .wpcf7-submit.button-large .button-icon-divider-right img,.wpcf7-form .wpcf7-submit.fusion-button-large .button-icon-divider-left i,.wpcf7-form .wpcf7-submit.fusion-button-large .button-icon-divider-left img,.wpcf7-form .wpcf7-submit.fusion-button-large .button-icon-divider-right i,.wpcf7-form .wpcf7-submit.fusion-button-large .button-icon-divider-right img{display:block}.button-xlarge,.fusion-body .fusion-button-xlarge,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge{padding:17px 40px;line-height:21px;font-size:18px}.button-xlarge .fusion-button-text-left,.fusion-body .fusion-button-xlarge .fusion-button-text-left,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .fusion-button-text-left,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .fusion-button-text-left{display:inline-block;padding-left:45px}.button-xlarge .fusion-button-text-right,.fusion-body .fusion-button-xlarge .fusion-button-text-right,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .fusion-button-text-right,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .fusion-button-text-right{display:inline-block;padding-right:45px}.button-xlarge .button-icon-divider-left,.fusion-body .fusion-button-xlarge .button-icon-divider-left,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .button-icon-divider-left,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .button-icon-divider-left{padding:0 18.5px}.button-xlarge .button-icon-divider-left.fusion-megamenu-image,.fusion-body .fusion-button-xlarge .button-icon-divider-left.fusion-megamenu-image,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .button-icon-divider-left.fusion-megamenu-image,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .button-icon-divider-left.fusion-megamenu-image{padding:0 9.25px}.button-xlarge .button-icon-divider-right,.fusion-body .fusion-button-xlarge .button-icon-divider-right,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .button-icon-divider-right,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .button-icon-divider-right{padding:0 18.5px}.button-xlarge .button-icon-divider-right.fusion-megamenu-image,.fusion-body .fusion-button-xlarge .button-icon-divider-right.fusion-megamenu-image,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .button-icon-divider-right.fusion-megamenu-image,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .button-icon-divider-right.fusion-megamenu-image{padding:0 9.25px}.button-xlarge .button-icon-divider-left i,.button-xlarge .button-icon-divider-left img,.button-xlarge .button-icon-divider-right i,.button-xlarge .button-icon-divider-right img,.fusion-body .fusion-button-xlarge .button-icon-divider-left i,.fusion-body .fusion-button-xlarge .button-icon-divider-left img,.fusion-body .fusion-button-xlarge .button-icon-divider-right i,.fusion-body .fusion-button-xlarge .button-icon-divider-right img,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .button-icon-divider-left i,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .button-icon-divider-left img,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .button-icon-divider-right i,.fusion-body .wpcf7-form .wpcf7-submit.button-xlarge .button-icon-divider-right img,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .button-icon-divider-left i,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .button-icon-divider-left img,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .button-icon-divider-right i,.fusion-body .wpcf7-form .wpcf7-submit.fusion-button-xlarge .button-icon-divider-right img{display:block}.button span{line-height:normal}.button-icon-left{margin-right:.7em}.button-icon-right{margin-left:.7em}.button-icon-divider-left,.button-icon-divider-right{display:inline-flex;align-items:center;justify-content:center;position:absolute;top:0;height:100%}.button-icon-divider-left i,.button-icon-divider-right i{position:relative}.button-icon-divider-left img,.button-icon-divider-right img{position:relative}.button-small .button-icon-divider-left img,.button-small .button-icon-divider-right img{max-width:22px}.button-medium .button-icon-divider-left img,.button-medium .button-icon-divider-right img{max-width:23px}.button-large .button-icon-divider-left img,.button-large .button-icon-divider-right img{max-width:24px}.button-xlarge .button-icon-divider-left img,.button-xlarge .button-icon-divider-right img{max-width:25px}.button-icon-divider-left{left:0;border-right:1px solid}.button-icon-divider-right{right:0;border-left:1px solid}#main #comment-submit,.comment-form input[type="submit"],.fusion-button-default-size{padding-top:var(--awb-padding-top);padding-right:var(--awb-padding-right);padding-bottom:var(--awb-padding-bottom);padding-left:var(--awb-padding-left);line-height:var(--button_line_height, 1);font-size:var(--button_font_size, 14px)}.fusion-button i{color:var(--button_accent_color)}.fusion-button.hover i,.fusion-button:focus i,.fusion-button:hover i{color:var(--button_accent_hover_color,var(--button_accent_color))}.fusion-button[data-hover=icon_position] .fusion-button-text{transition:color .2s,opacity .4s cubic-bezier(.21, .6, .35, 1),transform .4s 125ms cubic-bezier(.21, .6, .35, 1);--button-hover-content-transition:color 0.2s,opacity 0.4s cubic-bezier(0.21, 0.6, 0.35, 1),transform 0.4s 0.125s cubic-bezier(0.21, 0.6, 0.35, 1)}.fusion-button[data-hover=icon_position] i{transition:color .2s,opacity .4s cubic-bezier(.21, .6, .35, 1) .25s,transform .4s cubic-bezier(.21, .6, .35, 1) .25s;--button-hover-content-transition:color 0.2s,opacity 0.4s cubic-bezier(0.21, 0.6, 0.35, 1) 0.25s,transform 0.4s cubic-bezier(0.21, 0.6, 0.35, 1) 0.25s}.fusion-button[data-hover=icon_position] i+i{opacity:0;transition-delay:0s;margin:0}.fusion-button[data-hover=icon_position]:hover i{transition-delay:0s;opacity:0}.fusion-button[data-hover=icon_position]:hover i+i{opacity:1;transform:translateX(0)!important;transition-delay:0.25s}.fusion-button[data-hover=icon_position].awb-b-icon-pos-left .fusion-button-text{margin-right:-1em}.fusion-button[data-hover=icon_position].awb-b-icon-pos-left i+i{order:1;transform:translateX(1em)}.fusion-button[data-hover=icon_position].awb-b-icon-pos-left:hover .fusion-button-text{transform:translateX(-1.7em);--button-slide-text-hover-1:translateX(-1.7em);--button-slide-text-hover-2:translateX(-1.7em)}.fusion-button[data-hover=icon_position].awb-b-icon-pos-left:hover i{transform:translateX(-1em)}.fusion-button[data-hover=icon_position].awb-b-icon-pos-right .fusion-button-text{margin-left:-1em}.fusion-button[data-hover=icon_position].awb-b-icon-pos-right i+i{order:-1;transform:translateX(-1em)}.fusion-button[data-hover=icon_position].awb-b-icon-pos-right:hover .fusion-button-text{transform:translateX(1.7em)}.fusion-button[data-hover=icon_position].awb-b-icon-pos-right:hover i{transform:translateX(1em)}.fusion-button[data-hover=icon_slide]>i{animation:slide_icon_reverse .4s cubic-bezier(.21,.6,.35,1)}.fusion-button[data-hover=icon_slide] .awb-button__hover-content>i{animation:slide_icon_reverse_two_icons_1 .2s .2s cubic-bezier(.21,.6,.35,1) both}.fusion-button[data-hover=icon_slide] .awb-button__hover-content>i+i{animation:slide_icon_reverse_two_icons_2 .2s cubic-bezier(.21,.6,.35,1) both}.fusion-button[data-hover=icon_slide]:hover>i{animation:slide_icon .4s cubic-bezier(.21,.6,.35,1)}.fusion-button[data-hover=icon_slide]:hover .awb-button__hover-content>i{animation:slide_icon_two_icons_1 .2s cubic-bezier(.21,.6,.35,1) both}.fusion-button[data-hover=icon_slide]:hover .awb-button__hover-content>i+i{animation:slide_icon_two_icons_2 .2s .2s cubic-bezier(.21,.6,.35,1) both;opacity:0}@keyframes slide_icon{0%{transform:translateX(0)}25%{opacity:0}26%{transform:translateX(1.25em)}27%{transform:translateX(-1.25em)}75%{opacity:1}100%{transform:translateX(0)}}@keyframes slide_icon_reverse{0%{transform:translateX(0)}25%{opacity:0}26%{transform:translateX(-1.25em)}27%{transform:translateX(1.25em)}75%{opacity:1}100%{transform:translateX(0)}}@keyframes slide_icon_two_icons_1{0%{transform:translateX(0);opacity:1}99%{opacity:0}100%{transform:translateX(1.25em);opacity:0}}@keyframes slide_icon_two_icons_2{0%{transform:translateX(-1.25em);opacity:0}50%{opacity:1}100%{transform:translateX(0);opacity:1}}@keyframes slide_icon_reverse_two_icons_1{0%{transform:translateX(1.25em);opacity:0}50%{opacity:1}100%{transform:translateX(0)}}@keyframes slide_icon_reverse_two_icons_2{0%{transform:translateX(0);opacity:1}50%{opacity:0}100%{transform:translateX(-1.25em);opacity:0}}.fusion-button[data-hover=icon_rotate] i{transition:all .2s,transform .6s cubic-bezier(.21, .6, .35, 1);--button-hover-content-transition:color 0.2s,opacity 0.6s cubic-bezier(0.21, 0.6, 0.35, 1) 0.2s,transform 0.6s cubic-bezier(0.21, 0.6, 0.35, 1)}.fusion-button[data-hover=icon_rotate]:hover i{transform:rotate(360deg);--button-slide-text-hover-1:rotate(360deg);--button-slide-text-hover-2:rotate(360deg)}.fusion-button[data-hover=underline] .fusion-button-text,.fusion-button[data-hover=underline_expand] .fusion-button-text{position:relative}.fusion-button[data-hover=underline] .fusion-button-text:after,.fusion-button[data-hover=underline_expand] .fusion-button-text:after{content:"";position:absolute;left:0;bottom:-1px;width:100%;border-bottom:1px solid currentColor;transition:transform .4s cubic-bezier(.21, .6, .35, 1);transform-origin:var(--button-underline-origin)}.fusion-button[data-hover=underline]{--button-underline-origin:left;--button-underline-origin-hover:right}.rtl .fusion-button[data-hover=underline]{--button-underline-origin:right;--button-underline-origin-hover:left}.fusion-button[data-hover=underline]:hover .fusion-button-text:after{transform:scaleX(0);transform-origin:var(--button-underline-origin-hover)}.fusion-button[data-hover=underline_expand]{--button-underline-origin:right;--button-underline-origin-hover:left}.rtl .fusion-button[data-hover=underline_expand]{--button-underline-origin:left;--button-underline-origin-hover:right}.fusion-button[data-hover=underline_expand] .fusion-button-text:after{transform:scaleX(0)}.fusion-button[data-hover=underline_expand]:hover .fusion-button-text:after{transform:scaleX(1);transform-origin:var(--button-underline-origin-hover)}.fusion-button[data-hover=text_slide_up]{--button-slide-text-2:translateY(90%);--button-slide-text-hover-1:translateY(-90%);--button-slide-text-hover-2:translateY(0%)}.fusion-button[data-hover=text_slide_down]{--button-slide-text-2:translateY(-90%);--button-slide-text-hover-1:translateY(90%);--button-slide-text-hover-2:translateY(0%);--button-hover-content-transition:color 0.2s,opacity 0.4s cubic-bezier(0.21, 0.6, 0.35, 1),transform 0.4s cubic-bezier(0.21, 0.6, 0.35, 1)}.fusion-button[data-hover*=bg_slide]{overflow:hidden}.fusion-button[data-hover*=bg_slide]:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;transform:translateZ(0);backface-visibility:hidden;transition:clip-path .35s cubic-bezier(.21, .6, .35, 1);background:var(--button_gradient_hover,var(--button_gradient_top_color_hover))}.fusion-button[data-hover*=bg_slide].fusion-button-span-yes:before{transition-duration:.6s}.fusion-button[data-hover*=bg_slide]:hover{background:var(--button_gradient,var(--button_gradient_top_color))}.fusion-button[data-hover*=bg_slide] .fusion-button-text,.fusion-button[data-hover*=bg_slide]>i{position:relative}.fusion-button[data-hover=bg_slide_right]:before{clip-path:polygon(0 0,0 0,-50% 100%,0 100%)}.fusion-button[data-hover=bg_slide_right]:hover:before{clip-path:polygon(0 0,150% 0,100% 100%,0 100%)}.fusion-button[data-hover=bg_slide_left]:before{clip-path:polygon(100% 0,150% 0,100% 100%,100% 100%)}.fusion-button[data-hover=bg_slide_left]:hover:before{clip-path:polygon(100% 0,0 0,-50% 100%,100% 100%)}.fusion-button .awb-button__icon--no-margin{margin:0}.fusion-button .awb-button__hover-content{display:flex;align-items:center;--button-hover-content-transition:color 0.2s,opacity 0.2s cubic-bezier(0.21, 0.6, 0.35, 1),transform 0.4s cubic-bezier(0.21, 0.6, 0.35, 1)}.fusion-button .awb-button__hover-content .awb-button__icon,.fusion-button .awb-button__hover-content .awb-button__text{transition:var(--button-hover-content-transition)}.fusion-button .awb-button__hover-content .awb-button__icon--hover,.fusion-button .awb-button__hover-content .awb-button__text--hover{transform:var(--button-slide-text-2);opacity:0}.fusion-button .awb-button__hover-content .awb-button__icon:nth-child(2),.fusion-button .awb-button__hover-content .awb-button__text:nth-child(2){position:absolute;pointer-events:none}.fusion-button .awb-button__hover-content--centered{justify-content:center}.fusion-button .awb-button__hover-content--centered .awb-button__icon{margin:0}.fusion-button.awb-button--click-active .awb-button__hover-content .awb-button__icon--default,.fusion-button.awb-button--click-active .awb-button__hover-content .awb-button__text--default,.fusion-button:not(.awb-button--click-mode,.awb-button--toggle-mode):hover .awb-button__hover-content .awb-button__icon--default,.fusion-button:not(.awb-button--click-mode,.awb-button--toggle-mode):hover .awb-button__hover-content .awb-button__text--default{transform:var(--button-slide-text-hover-1);opacity:0}.fusion-button.awb-button--click-active .awb-button__hover-content .awb-button__icon--hover,.fusion-button.awb-button--click-active .awb-button__hover-content .awb-button__text--hover,.fusion-button:not(.awb-button--click-mode,.awb-button--toggle-mode):hover .awb-button__hover-content .awb-button__icon--hover,.fusion-button:not(.awb-button--click-mode,.awb-button--toggle-mode):hover .awb-button__hover-content .awb-button__text--hover{transform:var(--button-slide-text-hover-2);opacity:1}.fusion-button .awb-button-text-transition{display:flex}.fusion-button .awb-button-text-transition .fusion-button-text{transition:color .2s,opacity .4s cubic-bezier(.21, .6, .35, 1),transform .4s cubic-bezier(.21, .6, .35, 1)}.fusion-button .awb-button-text-transition .fusion-button-text:nth-child(2){transform:var(--button-slide-text-2);position:absolute;opacity:0;pointer-events:none}.fusion-button:hover .awb-button-text-transition .fusion-button-text:first-child{transform:var(--button-slide-text-hover-1);opacity:0}.fusion-button:hover .awb-button-text-transition .fusion-button-text:nth-child(2){transform:var(--button-slide-text-hover-2);opacity:1}.fusion-button[data-hover=border_rotate],.fusion-button[data-hover=border_rotate_glow]{clip-path:inset(0 round var(--button-border-radius-top-left,0) var(--button-border-radius-top-right,0) var(--button-border-radius-bottom-right,0) var(--button-border-radius-bottom-left,0))}.fusion-button[data-hover=border_rotate] .fusion-button-text,.fusion-button[data-hover=border_rotate]>.awb-button-text-transition,.fusion-button[data-hover=border_rotate]>.awb-button__hover-content,.fusion-button[data-hover=border_rotate]>i,.fusion-button[data-hover=border_rotate_glow] .fusion-button-text,.fusion-button[data-hover=border_rotate_glow]>.awb-button-text-transition,.fusion-button[data-hover=border_rotate_glow]>.awb-button__hover-content,.fusion-button[data-hover=border_rotate_glow]>i{position:relative;z-index:1}.fusion-button[data-hover=border_rotate]::before,.fusion-button[data-hover=border_rotate_glow]::before{content:'';position:absolute;width:200%;padding-bottom:200%;top:50%;left:50%;background:conic-gradient(transparent 0,var(--button_border_hover_color) 12%,transparent 25%);animation:awb-btn-border-spin var(--awb_btn_border_spin_duration,3s) linear infinite;opacity:0;transition:opacity .2s}.fusion-button[data-hover=border_rotate]::after,.fusion-button[data-hover=border_rotate_glow]::after{content:'';position:absolute;inset:0;background:inherit;border-radius:inherit;opacity:0;transition:opacity .2s .15s,background .2s ease}.fusion-button[data-hover=border_rotate]:focus,.fusion-button[data-hover=border_rotate]:hover,.fusion-button[data-hover=border_rotate_glow]:focus,.fusion-button[data-hover=border_rotate_glow]:hover{border-color:var(--button_border_color)}.fusion-button[data-hover=border_rotate]:focus::before,.fusion-button[data-hover=border_rotate]:hover::before,.fusion-button[data-hover=border_rotate_glow]:focus::before,.fusion-button[data-hover=border_rotate_glow]:hover::before{opacity:1;transition:opacity .2s}.fusion-button[data-hover=border_rotate]:focus::after,.fusion-button[data-hover=border_rotate]:hover::after,.fusion-button[data-hover=border_rotate_glow]:focus::after,.fusion-button[data-hover=border_rotate_glow]:hover::after{opacity:1;transition:opacity .2s}@keyframes awb-btn-border-spin{from{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.fusion-button[data-hover=border_rotate_glow]::before{background:conic-gradient(transparent 0,var(--button_border_hover_color) 20%,transparent 40%)}.fusion-button[data-hover=border_rotate_glow]::after{filter:blur(5px)}.fusion-button[data-hover=border_rotate_glow]:focus::after,.fusion-button[data-hover=border_rotate_glow]:hover::after{opacity:1}.fusion-button.button-3d{box-shadow:inset 0 1px 0 #fff,0 .15em 0 var(--button_bevel_color),.1em .2em .2em .15em rgba(0,0,0,.3)}.fusion-button.button-3d:active{transform:translateY(calc(.15em - 1px));box-shadow:inset 0 1px 0 #fff,0 1px 0 var(--button_bevel_color),.05em .1em .1em .07em rgba(0,0,0,.3)}.fusion-button.button-3d:hover{box-shadow:inset 0 1px 0 #fff,0 .15em 0 var(--button_bevel_color_hover),.1em .2em .2em .15em rgba(0,0,0,.3)}.fusion-button.button-3d:hover:active{box-shadow:inset 0 1px 0 #fff,0 1px 0 var(--button_bevel_color_hover),.05em .1em .1em .07em rgba(0,0,0,.3)}.fusion-button_type-3d #main #comment-submit:not(.button-flat),.fusion-button_type-3d .button-default:not(.button-flat),.fusion-button_type-3d .button.default:not(.button-flat),.fusion-button_type-3d .comment-form input[type="submit"]:not(.button-flat),.fusion-button_type-3d .fusion-button-default:not(.button-flat),.fusion-button_type-3d input.button-default:not(.button-flat),.fusion-button_type-3d.fusion-button-default:not(.button-flat),.fusion-button_type-3d.fusion-button:not(.button-flat){box-shadow:inset 0 1px 0 #fff,0 .15em 0 var(--button_bevel_color),.1em .2em .2em .15em rgba(0,0,0,.3)}.fusion-button_type-3d #main #comment-submit:not(.button-flat):active,.fusion-button_type-3d .button-default:not(.button-flat):active,.fusion-button_type-3d .button.default:not(.button-flat):active,.fusion-button_type-3d .comment-form input[type="submit"]:not(.button-flat):active,.fusion-button_type-3d .fusion-button-default:not(.button-flat):active,.fusion-button_type-3d input.button-default:not(.button-flat):active,.fusion-button_type-3d.fusion-button-default:not(.button-flat):active,.fusion-button_type-3d.fusion-button:not(.button-flat):active{transform:translateY(calc(.15em - 1px));box-shadow:inset 0 1px 0 #fff,0 1px 0 var(--button_bevel_color),.05em .1em .1em .07em rgba(0,0,0,.3)}.fusion-button_type-3d #main #comment-submit:not(.button-flat):hover,.fusion-button_type-3d .button-default:not(.button-flat):hover,.fusion-button_type-3d .button.default:not(.button-flat):hover,.fusion-button_type-3d .comment-form input[type="submit"]:not(.button-flat):hover,.fusion-button_type-3d .fusion-button-default:not(.button-flat):hover,.fusion-button_type-3d input.button-default:not(.button-flat):hover,.fusion-button_type-3d.fusion-button-default:not(.button-flat):hover,.fusion-button_type-3d.fusion-button:not(.button-flat):hover{box-shadow:inset 0 1px 0 #fff,0 .15em 0 var(--button_bevel_color_hover),.1em .2em .2em .15em rgba(0,0,0,.3)}.fusion-button_type-3d #main #comment-submit:not(.button-flat):hover:active,.fusion-button_type-3d .button-default:not(.button-flat):hover:active,.fusion-button_type-3d .button.default:not(.button-flat):hover:active,.fusion-button_type-3d .comment-form input[type="submit"]:not(.button-flat):hover:active,.fusion-button_type-3d .fusion-button-default:not(.button-flat):hover:active,.fusion-button_type-3d input.button-default:not(.button-flat):hover:active,.fusion-button_type-3d.fusion-button-default:not(.button-flat):hover:active,.fusion-button_type-3d.fusion-button:not(.button-flat):hover:active{box-shadow:inset 0 1px 0 #fff,0 1px 0 var(--button_bevel_color_hover),.05em .1em .1em .07em rgba(0,0,0,.3)}.fusion-button-quantity,body.fusion-body .quantity .minus,body.fusion-body .quantity .plus,body.fusion-body .quantity .qty{width:var(--qty_size-width,38px)}.fusion-button-quantity,body.fusion-body .quantity .minus,body.fusion-body .quantity .plus,body.fusion-body .quantity .qty{font-size:var(--qty_font_size, 14px);width:var(--qty_size-height,36px);height:var(--qty_size-height,36px);line-height:1}.fusion-body .quantity,.single-product .product .summary .cart .quantity{width:calc(var(--qty_size-width,38px) + var(--qty_size-height,36px) + var(--qty_size-height,36px))}.fusion-button-span-yes{width:calc(100% - var(--awb-margin-left,0) - var(--awb-margin-right,0))}body.fusion-button_span-yes .fusion-button-default-span{width:calc(100% - var(--awb-margin-left,0) - var(--awb-margin-right,0))}.fusion-button.fusion-button-submitting{outline:0;letter-spacing:0}.fusion-button.fusion-button-submitting span,.fusion-button.fusion-button-submitting:active span,.fusion-button.fusion-button-submitting:focus span,.fusion-button.fusion-button-submitting:hover span{color:transparent!important}.fusion-button.fusion-button-submitting::after{content:"";display:inline-block;position:absolute;z-index:10;line-height:1;width:.4em;height:.4em;left:50%;transform:translateX(-50%);border-radius:50%;animation:dots .75s infinite cubic-bezier(.42,.01,.58,1)}@keyframes dots{0%{box-shadow:1.5em 0 currentColor,-1.5em 0 color-mix(in sRGB,currentColor 50%,transparent);background:currentColor}33%{box-shadow:1.5em 0 currentColor,-1.5em 0 color-mix(in sRGB,currentColor 50%,transparent);background:currentColor}66%{box-shadow:1.5em 0 color-mix(in sRGB,currentColor 50%,transparent),-1.5em 0 currentColor;background:color-mix(in sRGB,currentColor 50%,transparent)}100%{box-shadow:1.5em 0 color-mix(in sRGB,currentColor 50%,transparent),-1.5em 0 currentColor;background:currentColor}}.awb-carousel{--awb-caption-overlay-color:var(--primary_color)}.fusion-image-carousel{--awb-border-style:solid;--awb-border-width:0;--awb-border-color:var(--awb-color3);--awb-border-radius-top-left:0;--awb-border-radius-top-right:0;--awb-border-radius-bottom-right:0;--awb-border-radius-bottom-left:0;margin-bottom:40px}.fusion-image-carousel .fusion-image-wrapper{border-width:var(--awb-border-width);border-style:var(--awb-border-style);border-color:var(--awb-border-color);border-radius:var(--awb-border-radius-top-left) var(--awb-border-radius-top-right) var(--awb-border-radius-bottom-left) var(--awb-border-radius-bottom-right)}.fusion-carousel-title-below-image .fusion-carousel-meta,.fusion-carousel-title-below-image .fusion-carousel-title{text-align:left}.fusion-carousel-border .awb-carousel{border:none}.fusion-carousel-border .fusion-image-wrapper.hover-type-liftup{box-sizing:content-box}.awb-carousel--marquee .swiper-wrapper{transition-timing-function:linear}.awb-carousel--masked{-webkit-mask-image:linear-gradient(to right,transparent,black 15%,black 85%,transparent);mask-image:linear-gradient(to right,transparent,black 15%,black 85%,transparent)}.fusion-sep-clear{clear:both;display:block;height:1px;font-size:0;line-height:0;width:100%;overflow:hidden}.fusion-separator{clear:both;position:relative;z-index:11}.fusion-absolute-separator{position:absolute;bottom:0}.fusion-absolute-separator.fusion-align-center{left:50%}.fusion-absolute-separator.fusion-align-center.fusion-single-px{transform:translateX(-50%)}.fusion-absolute-separator.fusion-align-center:not(.fusion-single-px){transform:translate(-50%,50%)}.fusion-absolute-separator.fusion-align-left{left:0;right:auto}.fusion-absolute-separator.fusion-align-left:not(.fusion-single-px){transform:translateY(50%)}.fusion-absolute-separator.fusion-align-right{right:0;left:auto}.fusion-absolute-separator.fusion-align-right:not(.fusion-single-px){transform:translateY(50%)}.fusion-body .fusion-separator{display:flex;align-items:center}.fusion-body .fusion-separator .fusion-separator-border{flex-grow:2;border:0 solid #e7e6e6}.fusion-body .fusion-separator .sep-none,.fusion-body .fusion-separator.sep-none{height:1px;border-color:transparent}.fusion-body .fusion-separator.fusion-has-icon .sep-shadow:first-of-type:after{background:radial-gradient(ellipse at 70% -50%,rgba(0,0,0,.5) 0,rgba(255,255,255,0) 75%)}.rtl.fusion-body .fusion-separator.fusion-has-icon .sep-shadow:first-of-type:after{background:radial-gradient(ellipse at 30% -50%,rgba(0,0,0,.5) 0,rgba(255,255,255,0) 75%)}.fusion-body .fusion-separator.fusion-has-icon .sep-shadow:nth-of-type(2):after{background:radial-gradient(ellipse at 30% -50%,rgba(0,0,0,.5) 0,rgba(255,255,255,0) 75%)}.rtl.fusion-body .fusion-separator.fusion-has-icon .sep-shadow:nth-of-type(2):after{background:radial-gradient(ellipse at 70% -50%,rgba(0,0,0,.5) 0,rgba(255,255,255,0) 75%)}.fusion-body .fusion-content-sep.sep-none{display:none}.fusion-body .fusion-content-sep,.fusion-body .fusion-separator,.fusion-body .fusion-separator-border{--awb-separator-pattern-url:none;--awb-sep-color:var(--sep_color);--awb-height:20px;--awb-amount:20px}.fusion-body .fusion-content-sep.sep-double,.fusion-body .fusion-separator-border.sep-double,.fusion-body .fusion-separator.sep-double{height:6px;border-bottom-width:1px;border-top-width:1px;box-sizing:content-box}.fusion-body .fusion-content-sep.sep-single,.fusion-body .fusion-separator-border.sep-single,.fusion-body .fusion-separator.sep-single{height:auto;border-top-width:1px;border-bottom-width:0}.fusion-body .fusion-content-sep.sep-solid,.fusion-body .fusion-separator-border.sep-solid,.fusion-body .fusion-separator.sep-solid{border-bottom-style:solid;border-top-style:solid}.fusion-body .fusion-content-sep.sep-dashed,.fusion-body .fusion-separator-border.sep-dashed,.fusion-body .fusion-separator.sep-dashed{border-bottom-style:dashed;border-top-style:dashed}.fusion-body .fusion-content-sep.sep-dotted,.fusion-body .fusion-separator-border.sep-dotted,.fusion-body .fusion-separator.sep-dotted{border-bottom-style:dotted;border-top-style:dotted}.fusion-body .fusion-content-sep.sep-transparent,.fusion-body .fusion-separator-border.sep-transparent,.fusion-body .fusion-separator.sep-transparent{border:none}.fusion-body .fusion-content-sep.sep-shadow,.fusion-body .fusion-separator-border.sep-shadow,.fusion-body .fusion-separator.sep-shadow{height:1px;overflow:visible;border:none;background:linear-gradient(to left,rgba(150,150,150,0) 0,rgba(150,150,150,0) 15%,rgba(150,150,150,.65) 50%,rgba(150,150,150,0) 85%,rgba(150,150,150,0) 100%)}.fusion-body .fusion-content-sep.sep-shadow:after,.fusion-body .fusion-separator-border.sep-shadow:after,.fusion-body .fusion-separator.sep-shadow:after{display:block;height:6px;width:100%;content:"";background:radial-gradient(ellipse at 50% -50%,rgba(0,0,0,.5) 0,rgba(255,255,255,0) 65%)}.fusion-body .fusion-content-sep.sep-wavy,.fusion-body .fusion-separator-border.sep-wavy,.fusion-body .fusion-separator.sep-wavy{background-color:var(--awb-sep-color);-webkit-mask-image:var(--awb-separator-pattern-url);mask-image:var(--awb-separator-pattern-url);-webkit-mask-size:var(--awb-amount) 100%;mask-size:var(--awb-amount) 100%;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x;min-height:var(--awb-height)}.fusion-body .fusion-content-sep .icon-wrapper,.fusion-body .fusion-separator .icon-wrapper{display:flex;align-items:center;justify-content:center;height:calc(var(--body_typography-font-size,16px) * 1.63);width:calc(var(--body_typography-font-size,16px) * 1.63);border:1px solid #aaa;border-radius:50%;background-clip:padding-box;text-align:center}.fusion-body .fusion-content-sep .icon-wrapper i,.fusion-body .fusion-separator .icon-wrapper i{display:block}body:not(:-moz-handler-blocked) .fusion-separator.sep-shadow:after{background:radial-gradient(ellipse at 50% -50%,rgba(0,0,0,.5) 0,rgba(255,255,255,0) 80%)}.fusion-accordian{--awb-margin-top:0;--awb-margin-bottom:0;--awb-padding-top:0;--awb-padding-right:0;--awb-padding-bottom:0;--awb-padding-left:0;--awb-border-size:1px;--awb-icon-size:13px;--awb-title-color:var(--link_color, var(--h4_typography-color));--awb-title-font-weight:normal;--awb-title-font-style:normal;--awb-title-line-height:22px;--awb-title-font-size:16px;--awb-title-letter-spacing:var(--h4_typography-letter-spacing);--awb-title-text-transform:var(--h4_typography-text-transform);--awb-content-color:var(--body_typography-color);--awb-content-font-size:var(--body_typography-font-size);--awb-content-line-height:var(--body_typography-line-height);--awb-content-letter-spacing:var(--body_typography-letter-spacing);--awb-content-text-transform:none;--awb-content-font-family:inherit;--awb-content-font-weight:400;--awb-content-font-style:var(--body_typography-font-style, normal);--awb-icon-box-color:var(--accordian_inactive_color, #333);--awb-toggle-hover-accent-color:var(--primary_color);width:100%;margin-top:var(--awb-margin-top);margin-bottom:var(--awb-margin-bottom)}.fusion-accordian .fusion-panel{box-shadow:none;border:none;border-bottom:1px solid var(--accordion_divider_color);border-radius:0;background-clip:padding-box;padding:var(--awb-padding-top) var(--awb-padding-right) var(--awb-padding-bottom) var(--awb-padding-left)}.fusion-accordian .fusion-panel:hover{border-bottom:1px solid var(--accordion_divider_hover_color)}.fusion-accordian .panel-heading{padding:0;background:0 0}.fusion-accordian .panel-heading .panel-title{margin:0}.fusion-accordian .panel-heading .panel-title a{display:flex;align-items:baseline;color:var(--awb-title-color)}.fusion-accordian .panel-heading .panel-title a:not(.active) .fusion-toggle-icon-wrapper .active-icon{display:none}.fusion-accordian .panel-heading .panel-title a.active .fusion-toggle-icon-wrapper .inactive-icon{display:none}.fusion-body .fusion-accordian .panel-title{font-family:var(--awb-title-font-family);font-weight:var(--awb-title-font-weight);font-style:var(--awb-title-font-style);line-height:var(--awb-title-line-height);font-size:var(--awb-title-font-size);letter-spacing:var(--awb-title-letter-spacing);text-transform:var(--awb-title-text-transform)}.fusion-accordian .panel-title{position:relative;color:inherit}.fusion-accordian .panel-title a{display:block;padding:10px 0;text-decoration:none;box-shadow:none!important}.fusion-accordian .panel-title a.hover,.fusion-accordian .panel-title a:hover{color:var(--awb-toggle-hover-accent-color,var(--primary_color))}.fusion-accordian .panel-title a.hover .fa-fusion-box,.fusion-accordian .panel-title a:hover .fa-fusion-box{background-color:var(--awb-toggle-hover-accent-color,var(--primary_color))}.fusion-accordian .panel-title a .fa.pull-left{margin-left:1px}.fusion-accordian .panel-title a .fa-fusion-box{display:inline-block;vertical-align:middle;background-color:var(--awb-icon-box-color)!important;border-color:var(--awb-icon-box-color)!important;color:var(--awb-icon-color);text-align:center;padding:4.5px;-webkit-font-smoothing:subpixel-antialiased}.fusion-accordian .panel-title a .fa-fusion-box:before{font-style:normal;line-height:1;font-size:var(--awb-icon-size);width:var(--awb-icon-size);display:grid}.fusion-accordian .panel-title a:not(.active).hover .fa-fusion-box,.fusion-accordian .panel-title a:not(.active):hover .fa-fusion-box{background-color:var(--awb-toggle-hover-accent-color)!important;border-color:var(--awb-toggle-hover-accent-color)!important}.fusion-accordian .panel-title a.active{color:var(--awb-toggle-active-accent-color,var(--awb-title-color))!important}.fusion-accordian .panel-title a.active .fa-fusion-box{background-color:var(--awb-toggle-active-accent-color,var(--awb-toggle-hover-accent-color))!important;border-color:var(--awb-toggle-active-accent-color,var(--awb-toggle-hover-accent-color))!important}.fusion-accordian .panel-title .fusion-toggle-heading{margin-left:18px}.fusion-accordian .panel-body{padding:10px 0 15px;border:none;line-height:var(--body_typography-line-height)}.fusion-accordian .toggle-content{color:var(--awb-content-color);font-family:var(--awb-content-font-family);font-weight:var(--awb-content-font-weight);font-style:var(--awb-content-font-style);font-size:var(--awb-content-font-size);text-transform:var(--awb-content-text-transform);line-height:var(--awb-content-line-height);letter-spacing:var(--awb-content-letter-spacing)}.fusion-accordian .fusion-toggle-boxed-mode:hover .panel-title a{color:var(--awb-toggle-hover-accent-color)}.fusion-accordian .fusion-panel.fusion-toggle-no-divider.fusion-toggle-boxed-mode{margin-bottom:10px;border-style:solid;cursor:pointer}.fusion-accordian .fusion-panel.fusion-toggle-no-divider.fusion-toggle-boxed-mode .panel-body{padding-left:25px;padding-right:25px}.fusion-accordian .fusion-panel.fusion-toggle-no-divider.fusion-toggle-boxed-mode .panel-title a{padding:15px 25px}.fusion-accordian .fusion-panel.fusion-toggle-no-divider{border-bottom:none}.fusion-accordian .fusion-panel.fusion-toggle-no-divider .panel-title a{padding:10px 0}.fusion-accordian .fusion-toggle-icon-unboxed .panel-title a .fa-fusion-box{background-color:transparent!important;padding:0}.fusion-accordian .fusion-toggle-icon-unboxed .panel-title a.hover .fa-fusion-box,.fusion-accordian .fusion-toggle-icon-unboxed .panel-title a:hover .fa-fusion-box{background-color:transparent!important}.fusion-accordian .fusion-toggle-icon-unboxed .panel-title a.hover:not(.active) .fa-fusion-box,.fusion-accordian .fusion-toggle-icon-unboxed .panel-title a:hover:not(.active) .fa-fusion-box{color:var(--awb-toggle-hover-accent-color)!important}.fusion-accordian .fusion-toggle-icon-unboxed .panel-title a.active .fa-fusion-box{color:var(--awb-toggle-active-accent-color,var(--awb-toggle-hover-accent-color))!important}.fusion-accordian .fusion-toggle-icon-unboxed .panel-heading .fusion-toggle-icon-wrapper{left:0}.fusion-accordian .fusion-toggle-icon-right .fusion-toggle-heading{margin-left:0;width:100%;margin-right:calc(var(--awb-icon-size) + 18px)}.fusion-accordian .fusion-toggle-icon-right.fusion-toggle-icon-unboxed .fusion-toggle-icon-wrapper{left:auto}.fusion-accordian .fusion-toggle-icon-right .panel-heading a{flex-direction:row-reverse}.fusion-accordian .fusion-panel.fusion-toggle-boxed-mode{border-color:var(--awb-border-color);border-width:var(--awb-border-size);background-color:var(--awb-background-color)}.fusion-accordian .fusion-panel.fusion-toggle-boxed-mode.hover,.fusion-accordian .fusion-panel.fusion-toggle-boxed-mode:hover{background-color:var(--awb-hover-color)}.fusion-accordian .fusion-panel.fusion-toggle-has-divider{border-color:var(--awb-divider-color)}.fusion-accordian .fusion-panel.fusion-toggle-has-divider.hover,.fusion-accordian .fusion-panel.fusion-toggle-has-divider:hover{border-color:var(--awb-divider-hover-color)}.fusion-faq-shortcode .fusion-accordian{--awb-title-font-family:var(--faq_accordion_title_typography-font-family);--awb-title-font-weight:var(--faq_accordion_title_typography-font-weight);--awb-title-font-style:var(--faq_accordion_title_typography-font-style);--awb-title-line-height:var(--faq_accordion_title_typography-line-height);--awb-title-font-size:var(--faq_accordion_title_typography-font-size);--awb-title-letter-spacing:var(--faq_accordion_title_typography-letter-spacing);--awb-title-text-transform:var(--faq_accordion_title_typography-text-transform);--awb-title-color:var(--faq_accordion_title_typography-color);--awb-icon-size:16px;--awb-icon-color:var(--faq_accordian_icon_color);--awb-icon-box-color:var(--faq_accordian_inactive_color)}.fusion-single-accordian{margin-bottom:0}.tooltip{position:absolute;z-index:2030;display:block;visibility:visible;font-size:12px;line-height:1.4;opacity:0}.tooltip.in{opacity:.9}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:rgba(33,33,33,.97)}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:rgba(33,33,33,.97)}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:rgba(33,33,33,.97)}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:rgba(33,33,33,.97)}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-width:5px 5px 0;border-top-color:rgba(33,33,33,.97)}.tooltip.top-right .tooltip-arrow{bottom:0;right:5px;border-width:5px 5px 0;border-top-color:rgba(33,33,33,.97)}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-width:0 5px 5px;border-bottom-color:rgba(33,33,33,.97)}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-width:0 5px 5px;border-bottom-color:rgba(33,33,33,.97)}.tooltip-inner{max-width:200px;padding:3px 8px;color:#d1d1d2;text-align:center;text-decoration:none;background-color:rgba(33,33,33,.97);border-radius:4px;background-clip:padding-box}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.fusion-tooltip{cursor:pointer}/**
 * WEPRO: Animated Counter Bar
 */
.wsk-counter-bar {
	padding: var(--wsk-cb-padding, 60px 48px) !important;
	background: var(--wsk-cb-bg, rgba(255,255,255,0.03)) !important;
	border-top: 1px solid var(--wsk-cb-border, rgba(255,255,255,0.08)) !important;
	border-bottom: 1px solid var(--wsk-cb-border, rgba(255,255,255,0.08)) !important;
}

.wsk-counter-bar__list {
	display: grid;
	grid-template-columns: repeat(var(--wsk-cb-cols, 4), 1fr);
	gap: 32px;
	margin: 0;
	padding: 0;
}

.wsk-counter-bar__stat {
	text-align: center;
}

/* Reset dl/dt/dd browser defaults */
.wsk-counter-bar__stat dt,
.wsk-counter-bar__stat dd {
	margin: 0;
	padding: 0;
}

/* Inline layout: number and label side by side */
.wsk-counter-bar__list--inline .wsk-counter-bar__stat {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 8px;
}

.wsk-counter-bar__list--inline .wsk-counter-bar__label {
	margin-top: 0;
}

.wsk-counter-bar__number {
	font-family: 'Space Grotesk', 'Inter', system-ui, sans-serif;
	font-size: var(--wsk-cb-num-size, 3rem);
	font-weight: 700;
	line-height: 1.2;
	color: var(--wsk-cb-num-color, #ffffff);
}

/* Opt-in gradient finish via Number Finish param. */
.wsk-counter-bar--num-gradient .wsk-counter-bar__number {
	background: linear-gradient(135deg, var(--wsk-cb-num-color, #fff), rgba(255,255,255,0.6));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

.wsk-counter-bar__label {
	font-family: var(--wsk-cb-label-font-family, inherit);
	font-size: var(--wsk-cb-label-font-size, var(--wsk-cb-label-size, 0.9rem));
	font-weight: var(--wsk-cb-label-font-weight, 500);
	font-style: var(--wsk-cb-label-font-style, normal);
	line-height: var(--wsk-cb-label-line-height, 1.4);
	letter-spacing: var(--wsk-cb-label-letter-spacing, normal);
	text-transform: var(--wsk-cb-label-text-transform, none);
	color: var(--wsk-cb-label-color, rgba(255,255,255,0.4));
	text-align: var(--wsk-cb-label-text-align, center);
	margin-top: var(--wsk-cb-label-margin-top, 8px);
	margin-bottom: var(--wsk-cb-label-margin-bottom, 0);
}

/* Responsive typography overrides */
@media (max-width: 1024px) {
	.wsk-counter-bar__label {
		font-size: var(--wsk-cb-label-font-size-md, var(--wsk-cb-label-font-size, var(--wsk-cb-label-size, 0.85rem)));
		text-align: var(--wsk-cb-label-text-align-md, var(--wsk-cb-label-text-align, center)) !important;
	}
}

/* Responsive */
@media (max-width: 768px) {
	.wsk-counter-bar__label {
		font-size: var(--wsk-cb-label-font-size-sm, var(--wsk-cb-label-font-size-md, var(--wsk-cb-label-font-size, var(--wsk-cb-label-size, 0.85rem))));
		text-align: var(--wsk-cb-label-text-align-sm, var(--wsk-cb-label-text-align-md, var(--wsk-cb-label-text-align, center))) !important;
	}
	.wsk-counter-bar {
		padding: var(--wsk-cb-padding-sm, var(--wsk-cb-padding, 40px 24px)) !important;
	}
	.wsk-counter-bar__list {
		grid-template-columns: repeat(2, 1fr);
		gap: 24px;
	}
	.wsk-counter-bar__number {
		font-size: var(--wsk-cb-num-size, 2.2rem);
	}
}

@media (max-width: 480px) {
	.wsk-counter-bar__list {
		grid-template-columns: 1fr;
	}
}
/**
 * WEPRO: Marquee Ticker
 */
.wsk-marquee {
	padding: var(--wsk-mq-padding, 80px 0);
	overflow: hidden;
	background: var(--wsk-mq-bg, transparent);
	border-top: 1px solid var(--wsk-mq-border, rgba(255,255,255,0.08));
	border-bottom: 1px solid var(--wsk-mq-border, rgba(255,255,255,0.08));
}

.wsk-marquee__track {
	display: flex;
	gap: 0;
	width: max-content;
	animation: wsk-marquee-scroll var(--wsk-mq-speed, 30s) linear infinite;
	animation-direction: var(--wsk-mq-direction, normal);
}

.wsk-marquee--pause-hover:hover .wsk-marquee__track {
	animation-play-state: paused;
}

.wsk-marquee__item {
	font-family: var(--wsk-mq-item-font-family, 'Space Grotesk', 'Inter', system-ui, sans-serif);
	font-size: var(--wsk-mq-item-font-size, var(--wsk-mq-font-size, clamp(2rem, 4vw, 4rem)));
	font-weight: var(--wsk-mq-item-font-weight, 700);
	font-style: var(--wsk-mq-item-font-style, normal);
	line-height: var(--wsk-mq-item-line-height, 1.2);
	letter-spacing: var(--wsk-mq-item-letter-spacing, normal);
	text-transform: var(--wsk-mq-item-text-transform, none);
	color: var(--wsk-mq-item-color, var(--wsk-mq-color, rgba(255,255,255,0.08)));
	white-space: nowrap;
	transition: color 0.3s ease;
	padding: 0 16px;
}

.wsk-marquee__item:hover {
	color: var(--wsk-mq-hover, rgba(255,255,255,0.2));
}

.wsk-marquee__dot {
	display: inline-block;
	width: 12px;
	height: 12px;
	background: var(--wsk-mq-dot, #00F5D4);
	border-radius: 50%;
	margin: 0 16px;
	vertical-align: middle;
}

.wsk-marquee__pipe {
	color: var(--wsk-mq-dot, #00F5D4);
	margin: 0 24px;
	opacity: 0.5;
}

.wsk-marquee__dash {
	color: var(--wsk-mq-dot, #00F5D4);
	margin: 0 24px;
	opacity: 0.5;
}

@keyframes wsk-marquee-scroll {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}

/* Reduced motion — element is pure-CSS animation, no JS reduced-motion check needed. */
@media (prefers-reduced-motion: reduce) {
	.wsk-marquee__track {
		animation: none !important;
	}
}

/* Touch devices — pause on tap */
@media (hover: none) {
	.wsk-marquee--pause-hover:active .wsk-marquee__track {
		animation-play-state: paused;
	}
	.wsk-marquee__item:active {
		color: var(--wsk-mq-hover, rgba(255,255,255,0.2));
	}
}

/* Responsive typography overrides */
@media (max-width: 1024px) {
	.wsk-marquee__item {
		font-size: var(--wsk-mq-item-font-size-md, var(--wsk-mq-item-font-size, var(--wsk-mq-font-size, clamp(1rem, 2vw, 1.3rem))));
	}
}

/* Mobile */
@media (max-width: 768px) {
	.wsk-marquee__item {
		font-size: var(--wsk-mq-item-font-size-sm, var(--wsk-mq-item-font-size-md, var(--wsk-mq-item-font-size, var(--wsk-mq-font-size, clamp(1rem, 2vw, 1.3rem)))));
	}
	.wsk-marquee {
		padding: 40px 0;
	}
	.wsk-marquee__dot {
		width: 8px;
		height: 8px;
		margin: 0 10px;
	}
	.wsk-marquee__pipe,
	.wsk-marquee__dash {
		margin: 0 14px;
	}
}
/**
 * WEPRO: Gradient CTA Block
 */
.wsk-gradient-cta {
	position: relative;
	padding: var(--wsk-cta-padding, 120px 48px);
	text-align: var(--wsk-cta-align, center);
	overflow: hidden;
}

.wsk-gradient-cta__glow {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: var(--wsk-cta-glow-size, 600px);
	height: var(--wsk-cta-glow-size, 600px);
	background: radial-gradient(circle, var(--wsk-cta-glow, rgba(108,92,231,0.15)), transparent 70%);
	pointer-events: none;
	z-index: 0;
}

.wsk-gradient-cta .wsk-gradient-cta__heading {
	position: relative;
	z-index: 1;
	font-family: var(--wsk-cta-heading-font-family, 'Space Grotesk', 'Inter', system-ui, sans-serif);
	font-size: var(--wsk-cta-heading-font-size, clamp(2.5rem, 6vw, 5rem));
	font-weight: var(--wsk-cta-heading-font-weight, 800);
	font-style: var(--wsk-cta-heading-font-style, normal);
	line-height: var(--wsk-cta-heading-line-height, 1.1);
	letter-spacing: var(--wsk-cta-heading-letter-spacing, -2px);
	text-transform: var(--wsk-cta-heading-text-transform, none);
	color: var(--wsk-cta-heading-color, #ffffff);
	text-align: var(--wsk-cta-heading-text-align, center) !important;
	margin-top: var(--wsk-cta-heading-margin-top, 0);
	margin-bottom: var(--wsk-cta-heading-margin-bottom, 24px);
	overflow-wrap: break-word;
	word-break: break-word;
}

.wsk-gradient-cta__gradient-text {
	background: linear-gradient(
		135deg,
		var(--wsk-cta-g-start, #00F5D4),
		var(--wsk-cta-g-mid, #6C5CE7),
		var(--wsk-cta-g-end, #FF6B6B)
	);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	background-size: 200% 200%;
	animation: wsk-gradient-shift 4s ease infinite;
}

.wsk-gradient-cta .wsk-gradient-cta__subtext {
	position: relative;
	z-index: 1;
	font-family: var(--wsk-cta-subtext-font-family, inherit);
	font-size: var(--wsk-cta-subtext-font-size, 1.2rem);
	font-weight: var(--wsk-cta-subtext-font-weight, inherit);
	font-style: var(--wsk-cta-subtext-font-style, normal);
	line-height: var(--wsk-cta-subtext-line-height, 1.6);
	letter-spacing: var(--wsk-cta-subtext-letter-spacing, normal);
	text-transform: var(--wsk-cta-subtext-text-transform, none);
	color: var(--wsk-cta-subtext-color, rgba(255,255,255,0.4));
	text-align: var(--wsk-cta-subtext-text-align, center) !important;
	max-width: 500px;
	margin-top: var(--wsk-cta-subtext-margin-top, 0);
	margin-bottom: var(--wsk-cta-subtext-margin-bottom, 48px);
	margin-left: auto;
	margin-right: auto;
}

.wsk-gradient-cta__buttons {
	position: relative;
	z-index: 1;
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	justify-content: center;
}

.wsk-gradient-cta__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 28px;
	border-radius: 100px;
	font-family: "Inter", sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.2px;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
	white-space: nowrap;
}

.wsk-gradient-cta__btn--primary {
	background: var(--wsk-cta-btn1-bg, linear-gradient(135deg, #6C5CE7, #8B5CF6));
	color: var(--wsk-cta-btn1-color, #fff);
	border: none;
}

.wsk-gradient-cta__btn--primary::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
	transition: left 0.5s;
}

.wsk-gradient-cta__btn--primary:hover::before {
	left: 100%;
}

.wsk-gradient-cta__btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 20px 40px rgba(108, 92, 231, 0.3);
}

.wsk-gradient-cta__btn--outline {
	background: transparent;
	color: var(--wsk-cta-btn2-color, #fff);
	border: 1px solid var(--wsk-cta-btn2-border, rgba(255,255,255,0.08));
}

.wsk-gradient-cta__btn--outline:hover {
	border-color: var(--wsk-cta-g-start, #00F5D4);
	color: var(--wsk-cta-g-start, #00F5D4) !important;
	transform: translateY(-2px);
}

/* Focus states (accessibility) */
.wsk-gradient-cta__btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

@keyframes wsk-gradient-shift {
	0%, 100% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
}

/* Touch devices */
@media (hover: none) {
	.wsk-gradient-cta__btn--primary:active {
		transform: translateY(-2px);
		box-shadow: 0 20px 40px rgba(108, 92, 231, 0.3);
	}
	.wsk-gradient-cta__btn--outline:active {
		border-color: var(--wsk-cta-g-start, #00F5D4);
		color: var(--wsk-cta-g-start, #00F5D4) !important;
		transform: translateY(-2px);
	}
}

/* Responsive typography overrides */
@media (max-width: 1024px) {
	.wsk-gradient-cta .wsk-gradient-cta__heading {
		font-size: var(--wsk-cta-heading-font-size-md, var(--wsk-cta-heading-font-size, clamp(2.5rem, 6vw, 5rem)));
		text-align: var(--wsk-cta-heading-text-align-md, var(--wsk-cta-heading-text-align, center)) !important;
	}
	.wsk-gradient-cta .wsk-gradient-cta__subtext {
		font-size: var(--wsk-cta-subtext-font-size-md, var(--wsk-cta-subtext-font-size, 1.2rem));
		text-align: var(--wsk-cta-subtext-text-align-md, var(--wsk-cta-subtext-text-align, center)) !important;
	}
}

/* Responsive */
@media (max-width: 768px) {
	.wsk-gradient-cta .wsk-gradient-cta__heading {
		font-size: var(--wsk-cta-heading-font-size-sm, var(--wsk-cta-heading-font-size-md, var(--wsk-cta-heading-font-size, clamp(2.5rem, 6vw, 5rem))));
		text-align: var(--wsk-cta-heading-text-align-sm, var(--wsk-cta-heading-text-align-md, var(--wsk-cta-heading-text-align, center))) !important;
	}
	.wsk-gradient-cta .wsk-gradient-cta__subtext {
		font-size: var(--wsk-cta-subtext-font-size-sm, var(--wsk-cta-subtext-font-size-md, var(--wsk-cta-subtext-font-size, 1.2rem)));
		text-align: var(--wsk-cta-subtext-text-align-sm, var(--wsk-cta-subtext-text-align-md, var(--wsk-cta-subtext-text-align, center))) !important;
	}
	.wsk-gradient-cta {
		padding: 80px 20px;
	}
	.wsk-gradient-cta__heading {
		letter-spacing: -1px;
	}
	.wsk-gradient-cta__subtext {
		max-width: 100%;
	}
	.wsk-gradient-cta__buttons {
		gap: 10px;
	}
	.wsk-gradient-cta__btn {
		padding: 8px 20px;
		font-size: 12px;
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables non-essential transitions/animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-gradient-cta,
	.wsk-gradient-cta *,
	.wsk-gradient-cta *::before,
	.wsk-gradient-cta *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-gradient-cta a:focus-visible,
.wsk-gradient-cta button:focus-visible,
.wsk-gradient-cta [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/**
 * WEPRO: Particle Hero — Editorial / Luxury redesign
 * Serif display · character-by-character reveal · monochrome silk sweep ·
 * restrained glass badge · slim pill CTAs · prefers-reduced-motion aware.
 */

/* ────────────────────────────────────────────────────────────────────
   1. LAYOUT
   ──────────────────────────────────────────────────────────────────── */
.wsk-particle-hero {
	--wsk-ph-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-ph-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	position: relative;
	min-height: var(--wsk-ph-min-height, 100vh);
	background: var(--wsk-ph-bg, #0a0a0f);
	display: flex;
	flex-direction: column;
	justify-content: var(--wsk-ph-valign, center);
	align-items: var(--wsk-ph-align, center);
	overflow: hidden;
}

/* Vignette — draw focus to centre */
.wsk-particle-hero::after {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 80% 60% at 50% 45%, transparent 0%, rgba(0,0,0,0.55) 100%),
		linear-gradient(to bottom, transparent 60%, rgba(0,0,0,0.35));
	z-index: 1;
	pointer-events: none;
}

.wsk-particle-hero__canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	opacity: 0.85;
}

.wsk-particle-hero__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0, var(--wsk-ph-overlay-opacity, 0));
	z-index: 1;
	pointer-events: none;
}

.wsk-particle-hero__content {
	position: relative;
	z-index: 2;
	padding: var(--wsk-ph-padding, 140px 24px 100px);
	text-align: var(--wsk-ph-align, center);
	max-width: 1080px;
	width: 100%;
}

/* ────────────────────────────────────────────────────────────────────
   2. BADGE — restrained glass
   ──────────────────────────────────────────────────────────────────── */
.wsk-particle-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	border-radius: 999px;
	background: rgba(255,255,255,0.025);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid rgba(255,255,255,0.08);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	color: rgba(255,255,255,0.78);
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 40px;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-ph-fade 1s var(--wsk-ph-ease-out) 0.2s forwards;
}

.wsk-particle-hero__badge-dot {
	width: 6px;
	height: 6px;
	background: var(--wsk-ph-badge-color, #C9A87A);
	border-radius: 50%;
	box-shadow: 0 0 10px var(--wsk-ph-badge-color, #C9A87A);
	animation: wsk-ph-pulse 2.4s ease-in-out infinite;
}

/* ────────────────────────────────────────────────────────────────────
   3. HEADING — editorial display with character reveal
   ──────────────────────────────────────────────────────────────────── */
/* Locked-rule pattern: every typography property carries !important to
   beat Avada's compiled CSS, which re-declares h1–h6 / p with its own
   line-height, letter-spacing, font-family, and color. Without these
   locks our editorial typography silently reverts to Avada defaults
   on sites with the Performance Wizard's "Compiled CSS" feature on. */
.wsk-particle-hero .wsk-particle-hero__heading {
	font-family: var(--wsk-ph-heading-font-family, "Lora", "Playfair Display", Georgia, serif) !important;
	font-size: var(--wsk-ph-heading-font-size, clamp(2.75rem, 7.5vw, 6.5rem)) !important;
	font-weight: var(--wsk-ph-heading-font-weight, 400) !important;
	font-style: var(--wsk-ph-heading-font-style, normal) !important;
	line-height: var(--wsk-ph-heading-line-height, 1.04) !important;
	letter-spacing: var(--wsk-ph-heading-letter-spacing, -0.02em) !important;
	text-transform: var(--wsk-ph-heading-text-transform, none) !important;
	color: var(--wsk-ph-heading-color, #f4efe6) !important;
	text-align: var(--wsk-ph-heading-text-align, center) !important;
	margin-top: var(--wsk-ph-heading-margin-top, 0) !important;
	margin-bottom: var(--wsk-ph-heading-margin-bottom, 32px) !important;
	max-width: 14ch;
	margin-left: auto;
	margin-right: auto;
}

/* Word wrapper keeps letters together on wrap; 3D perspective lives here */
.wsk-particle-hero__heading {
	perspective: 900px;
	perspective-origin: 50% 60%;
}

.wsk-ph-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}

.wsk-ph-space {
	display: inline;
	white-space: normal;
}

/* Character-by-character reveal — 3D descent with subtle hue shift */
.wsk-ph-char {
	display: inline-block;
	opacity: 0;
	transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
	filter: blur(8px);
	transform-origin: center bottom;
	text-shadow:
		0 1px 0 rgba(255,255,255,0.18),
		0 8px 28px rgba(0,0,0,0.45);
	will-change: transform, opacity, filter;
	animation: wsk-ph-char-in 1.25s var(--wsk-ph-ease-out) both;
	animation-delay: calc(0.4s + var(--wsk-ph-i, 0) * 0.04s);
}

/* After reveal settles, a slow parallax breath so letters feel alive */
.wsk-ph-word:hover .wsk-ph-char {
	animation: wsk-ph-char-in 1.25s var(--wsk-ph-ease-out) both,
	           wsk-ph-char-lift 0.6s var(--wsk-ph-ease-out) forwards;
}

@keyframes wsk-ph-char-lift {
	to { transform: translateY(-3px) translateZ(18px); }
}

/* Accent word highlight — italic champagne with silk sweep (applies to any .wsk-ph-word--accent) */
.wsk-ph-word--accent,
.wsk-particle-hero__gradient-text,
.wsk-particle-hero__heading-line2 {
	font-style: italic;
	font-weight: 500;
	color: var(--wsk-ph-accent, #C9A87A);
	background: linear-gradient(
		100deg,
		color-mix(in srgb, var(--wsk-ph-accent, #C9A87A) 50%, #f4efe6) 0%,
		var(--wsk-ph-accent, #C9A87A) 45%,
		color-mix(in srgb, var(--wsk-ph-accent, #C9A87A) 55%, #ffffff) 70%,
		var(--wsk-ph-accent, #C9A87A) 100%
	);
	background-size: 200% 100%;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	animation: wsk-ph-silkSweep 8s ease-in-out infinite;
}

.wsk-particle-hero__heading-line2 {
	display: block;
}

/* Silk sweep — slow, elegant luminous pass across accent text */
@keyframes wsk-ph-silkSweep {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* ────────────────────────────────────────────────────────────────────
   4. SUBTEXT
   ──────────────────────────────────────────────────────────────────── */
.wsk-particle-hero .wsk-particle-hero__subtext {
	font-family: var(--wsk-ph-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif) !important;
	font-size: var(--wsk-ph-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem)) !important;
	font-weight: var(--wsk-ph-subtext-font-weight, 400) !important;
	font-style: var(--wsk-ph-subtext-font-style, normal) !important;
	line-height: var(--wsk-ph-subtext-line-height, 1.65) !important;
	letter-spacing: var(--wsk-ph-subtext-letter-spacing, 0.005em) !important;
	text-transform: var(--wsk-ph-subtext-text-transform, none) !important;
	color: var(--wsk-ph-subtext-color, rgba(244,239,230,0.62)) !important;
	text-align: var(--wsk-ph-subtext-text-align, center) !important;
	max-width: 52ch;
	margin-top: var(--wsk-ph-subtext-margin-top, 0) !important;
	margin-bottom: var(--wsk-ph-subtext-margin-bottom, 52px) !important;
	margin-left: auto;
	margin-right: auto;
	opacity: 0;
	transform: translateY(16px);
	animation: wsk-ph-fade 1.1s var(--wsk-ph-ease-out) calc(0.8s + var(--wsk-ph-chars, 0) * 0.02s) forwards;
}

/* ────────────────────────────────────────────────────────────────────
   5. BUTTONS — slim pill CTAs
   ──────────────────────────────────────────────────────────────────── */
.wsk-particle-hero__buttons {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
	justify-content: center;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-ph-fade 1s var(--wsk-ph-ease-out) calc(1s + var(--wsk-ph-chars, 0) * 0.02s) forwards;
}

.wsk-particle-hero__btn {
	padding: 13px 28px;
	border-radius: 999px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none;
	cursor: pointer;
	transition:
		transform 0.55s var(--wsk-ph-ease-out),
		box-shadow 0.55s var(--wsk-ph-ease-out),
		border-color 0.4s var(--wsk-ph-ease-out),
		color 0.4s var(--wsk-ph-ease-out);
	position: relative;
	overflow: hidden;
	transform: translateZ(0);
}

/* Primary — ink with 3D depth and silk sheen on hover */
.wsk-particle-hero__btn--primary {
	background: var(--wsk-ph-btn1-bg, #f4efe6);
	color: var(--wsk-ph-btn1-color, #0a0a0f);
	border: none;
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.55),
		inset 0 -1px 0 rgba(0,0,0,0.08),
		0 1px 2px rgba(0,0,0,0.18),
		0 10px 24px rgba(0,0,0,0.28);
}

.wsk-particle-hero__btn--primary::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg,
		transparent 0%,
		rgba(255,255,255,0.55) 45%,
		rgba(255,255,255,0.55) 55%,
		transparent 100%);
	transform: translateX(-120%);
	transition: transform 0.9s var(--wsk-ph-ease-out);
	pointer-events: none;
}

.wsk-particle-hero__btn--primary:hover::before {
	transform: translateX(120%);
}

.wsk-particle-hero__btn--primary:hover {
	transform: translateY(-2px);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.6),
		inset 0 -1px 0 rgba(0,0,0,0.1),
		0 2px 4px rgba(0,0,0,0.2),
		0 18px 40px rgba(0,0,0,0.38);
}

/* Outline — subtle glass with accent ring on hover */
.wsk-particle-hero__btn--outline {
	background: rgba(255,255,255,0.02);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: var(--wsk-ph-btn2-color, rgba(244,239,230,0.9));
	border: 1px solid rgba(255,255,255,0.14);
}

.wsk-particle-hero__btn--outline:hover {
	transform: translateY(-2px);
	border-color: var(--wsk-ph-accent, #C9A87A);
	color: var(--wsk-ph-btn2-hover, var(--wsk-ph-accent, #C9A87A));
	box-shadow: 0 8px 24px color-mix(in srgb, var(--wsk-ph-accent, #C9A87A) 12%, transparent);
}

.wsk-particle-hero__btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

/* Nested editor content — sits between heading and subtext as a lead
   block. Inherits the editorial cream tone so paragraphs / inline
   elements / nested shortcodes don't fall back to the page's default
   black on a dark hero. !important locks against Avada compiled CSS
   re-declaring `.fusion-text p { color: ... }`. */
.wsk-particle-hero__inner {
	margin-top: 8px;
	margin-bottom: 28px;
	max-width: 60ch;
	margin-left: auto;
	margin-right: auto;
	color: var(--wsk-ph-inner-color, rgba(244,239,230,0.78)) !important;
	font-family: var(--wsk-ph-inner-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-ph-inner-font-size, clamp(0.95rem, 1.25vw, 1.05rem));
	line-height: var(--wsk-ph-inner-line-height, 1.7);
	text-align: var(--wsk-ph-align, center);
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-ph-fade 1s var(--wsk-ph-ease-out) calc(0.7s + var(--wsk-ph-chars, 0) * 0.02s) forwards;
}

.wsk-particle-hero__inner :where(p, li, span, em, strong, a) {
	color: inherit !important;
}

.wsk-particle-hero__inner a {
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-color: color-mix(in srgb, currentColor 40%, transparent);
	transition: text-decoration-color 0.3s var(--wsk-ph-ease-out);
}

.wsk-particle-hero__inner a:hover {
	text-decoration-color: currentColor;
}

.wsk-particle-hero__inner p:first-child { margin-top: 0; }
.wsk-particle-hero__inner p:last-child  { margin-bottom: 0; }

/* ────────────────────────────────────────────────────────────────────
   6. MOBILE FALLBACK — CSS gradient when WebGL fails
   ──────────────────────────────────────────────────────────────────── */
.wsk-particle-hero--mobile-fallback .wsk-particle-hero__canvas {
	display: none;
}

.wsk-particle-hero--mobile-fallback::before {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse at 30% 40%, rgba(201,168,122,0.12) 0%, transparent 65%),
		radial-gradient(ellipse at 72% 65%, rgba(140,120,200,0.08) 0%, transparent 65%);
	z-index: 0;
}

/* ────────────────────────────────────────────────────────────────────
   7. KEYFRAMES
   ──────────────────────────────────────────────────────────────────── */
@keyframes wsk-ph-fade {
	to { opacity: 1; transform: translateY(0); }
}

@keyframes wsk-ph-char-in {
	0% {
		opacity: 0;
		transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
		filter: blur(8px);
	}
	60% {
		opacity: 1;
		filter: blur(0);
	}
	100% {
		opacity: 1;
		transform: translateY(0) translateZ(0) rotateX(0deg);
		filter: blur(0);
	}
}

@keyframes wsk-ph-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.4; transform: scale(0.85); }
}

/* ────────────────────────────────────────────────────────────────────
   8. TOUCH
   ──────────────────────────────────────────────────────────────────── */
@media (hover: none) {
	.wsk-particle-hero__btn--primary:active {
		transform: translateY(-2px);
	}
	.wsk-particle-hero__btn--outline:active {
		border-color: var(--wsk-ph-accent, #C9A87A);
		color: var(--wsk-ph-btn2-hover, var(--wsk-ph-accent, #C9A87A));
	}
}

/* ────────────────────────────────────────────────────────────────────
   9. RESPONSIVE
   ──────────────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.wsk-particle-hero .wsk-particle-hero__heading {
		font-size: var(--wsk-ph-heading-font-size-md, var(--wsk-ph-heading-font-size, clamp(2.75rem, 7.5vw, 6.5rem)));
	}
	.wsk-particle-hero .wsk-particle-hero__subtext {
		font-size: var(--wsk-ph-subtext-font-size-md, var(--wsk-ph-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem)));
	}
}

@media (max-width: 768px) {
	.wsk-particle-hero {
		min-height: var(--wsk-ph-min-height, 86vh);
	}
	.wsk-particle-hero__content {
		padding: var(--wsk-ph-padding, 96px 20px 72px);
	}
	.wsk-particle-hero .wsk-particle-hero__heading {
		font-size: var(--wsk-ph-heading-font-size-sm, clamp(2.25rem, 9vw, 3.25rem));
		letter-spacing: -0.015em;
		max-width: 100%;
	}
	.wsk-particle-hero .wsk-particle-hero__subtext {
		font-size: var(--wsk-ph-subtext-font-size-sm, 15px);
		max-width: 100%;
		margin-bottom: 40px;
	}
	.wsk-particle-hero__badge {
		font-size: 10px;
		padding: 7px 14px;
		margin-bottom: 28px;
	}
	.wsk-particle-hero__btn {
		font-size: 12px;
		padding: 11px 22px;
		min-height: 44px;
	}
	.wsk-particle-hero__buttons {
		gap: 10px;
	}
}

/* ────────────────────────────────────────────────────────────────────
   10. REDUCED MOTION
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-particle-hero__badge,
	.wsk-particle-hero__subtext,
	.wsk-particle-hero__buttons,
	.wsk-particle-hero__inner,
	.wsk-ph-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-particle-hero__gradient-text,
	.wsk-particle-hero__heading-line2 {
		animation: none !important;
	}
	.wsk-particle-hero__badge-dot {
		animation: none !important;
		opacity: 1 !important;
	}
}
/**
 * WEPRO: Glass Card Grid — Premium Dual-Scheme
 *
 * Futuristic glassmorphism that adapts to light and dark backgrounds.
 * --light: frosted white glass with colored depth shadows
 * --dark:  frosted dark glass with luminous glow accents
 */

/* ========================================================================
   1. COLOR SCHEME TOKENS
   ======================================================================== */

/* Light scheme — frosted white on light backgrounds */
.wsk-glass-cards--light {
	--_gc-bg: var(--wsk-gc-bg, rgba(255,255,255,0.65));
	--_gc-border: var(--wsk-gc-border, rgba(0,0,0,0.06));
	--_gc-hover-border: var(--wsk-gc-hover-border, rgba(108,92,231,0.35));
	--_gc-glow: var(--wsk-gc-glow, rgba(108,92,231,0.08));
	--_gc-title-color: var(--wsk-gc-title-color, #1a1a2e);
	--_gc-desc-color: var(--wsk-gc-description-color, rgba(26,26,46,0.6));
	--_gc-arrow-color: var(--wsk-gc-arrow-color, #6C5CE7);
	--_gc-shadow: 0 4px 32px rgba(108,92,231,0.06), 0 1px 4px rgba(0,0,0,0.04);
	--_gc-hover-shadow: 0 12px 48px rgba(108,92,231,0.12), 0 4px 16px rgba(0,0,0,0.06);
	--_gc-icon-shadow: 0 6px 24px rgba(108,92,231,0.2);
	--_gc-icon-hover-shadow: 0 8px 32px rgba(108,92,231,0.3), 0 0 48px rgba(108,92,231,0.1);
	--_gc-inset: inset 0 1px 0 rgba(255,255,255,0.8);
	--_gc-hover-inset: inset 0 1px 0 rgba(255,255,255,0.9);
	--_gc-blur: blur(20px) saturate(180%);
}

/* Dark scheme — frosted dark on dark backgrounds */
.wsk-glass-cards--dark {
	--_gc-bg: var(--wsk-gc-bg, rgba(255,255,255,0.04));
	--_gc-border: var(--wsk-gc-border, rgba(255,255,255,0.08));
	--_gc-hover-border: var(--wsk-gc-hover-border, rgba(108,92,231,0.4));
	--_gc-glow: var(--wsk-gc-glow, rgba(108,92,231,0.12));
	--_gc-title-color: var(--wsk-gc-title-color, #ffffff);
	--_gc-desc-color: var(--wsk-gc-description-color, rgba(255,255,255,0.55));
	--_gc-arrow-color: var(--wsk-gc-arrow-color, #00F5D4);
	--_gc-shadow: 0 4px 24px rgba(0,0,0,0.2), 0 1px 2px rgba(0,0,0,0.1);
	--_gc-hover-shadow: 0 12px 48px rgba(0,0,0,0.3), 0 0 48px rgba(108,92,231,0.08);
	--_gc-icon-shadow: 0 6px 24px rgba(108,92,231,0.3);
	--_gc-icon-hover-shadow: 0 8px 32px rgba(108,92,231,0.4), 0 0 48px rgba(108,92,231,0.15);
	--_gc-inset: inset 0 1px 0 rgba(255,255,255,0.04);
	--_gc-hover-inset: inset 0 1px 0 rgba(255,255,255,0.06);
	--_gc-blur: blur(16px) saturate(140%);
}

/* ========================================================================
   2. GRID LAYOUT
   ======================================================================== */
.wsk-glass-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(340px, 100%), 1fr));
	gap: var(--wsk-gc-gap, 24px);
}

/* ========================================================================
   3. CARD — True glassmorphism with depth
   ======================================================================== */
.wsk-glass-cards__card {
	padding: var(--wsk-gc-padding, 40px);
	background: var(--_gc-bg);
	backdrop-filter: var(--_gc-blur);
	-webkit-backdrop-filter: var(--_gc-blur);
	border: 1px solid var(--_gc-border);
	border-radius: var(--wsk-gc-radius, 20px);
	box-shadow: var(--_gc-shadow), var(--_gc-inset);
	transition:
		border-color 0.5s cubic-bezier(0.16, 1, 0.3, 1),
		transform 0.5s cubic-bezier(0.16, 1, 0.3, 1),
		box-shadow 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	position: relative;
	overflow: hidden;
	cursor: pointer;
	/* Staggered reveal */
	opacity: 0;
	animation: wsk-gc-reveal 0.9s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Stagger each card */
.wsk-glass-cards__card:nth-child(1) { animation-delay: 0.1s; }
.wsk-glass-cards__card:nth-child(2) { animation-delay: 0.2s; }
.wsk-glass-cards__card:nth-child(3) { animation-delay: 0.3s; }
.wsk-glass-cards__card:nth-child(4) { animation-delay: 0.4s; }
.wsk-glass-cards__card:nth-child(5) { animation-delay: 0.5s; }
.wsk-glass-cards__card:nth-child(6) { animation-delay: 0.6s; }
.wsk-glass-cards__card:nth-child(n+7) { animation-delay: 0.7s; }

/* Top accent line — subtle gradient border */
.wsk-glass-cards__card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 10%;
	right: 10%;
	height: 2px;
	background: linear-gradient(90deg, transparent, rgba(108,92,231,0.4), rgba(0,245,212,0.3), transparent);
	opacity: 0;
	transition: opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.wsk-glass-cards__card:hover::before {
	opacity: 1;
}

/* ========================================================================
   4. MOUSE-TRACKING GLOW
   ======================================================================== */
.wsk-glass-cards__glow {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: radial-gradient(
		600px circle at var(--wsk-gc-mouse-x, 50%) var(--wsk-gc-mouse-y, 50%),
		var(--_gc-glow),
		transparent 40%
	);
	opacity: 0;
	transition: opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	pointer-events: none;
	z-index: 0;
}

.wsk-glass-cards__card:hover .wsk-glass-cards__glow {
	opacity: 1;
}

/* ========================================================================
   5. HOVER — Lift + enhanced shadow + accent border
   ======================================================================== */
.wsk-glass-cards__card:hover {
	border-color: var(--_gc-hover-border);
	transform: translateY(calc(var(--wsk-gc-lift, 6px) * -1));
	box-shadow: var(--_gc-hover-shadow), var(--_gc-hover-inset);
}

/* ========================================================================
   6. ICON — Gradient + depth shadow + hover glow
   ======================================================================== */
.wsk-glass-cards__icon {
	width: var(--wsk-gc-icon-size, 56px);
	height: var(--wsk-gc-icon-size, 56px);
	border-radius: 16px;
	background: var(--wsk-gc-icon-bg, linear-gradient(135deg, #6C5CE7, #00F5D4));
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem;
	color: #ffffff;
	margin-bottom: 24px;
	position: relative;
	z-index: 1;
	box-shadow: var(--_gc-icon-shadow);
	transition:
		box-shadow 0.5s cubic-bezier(0.16, 1, 0.3, 1),
		transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.wsk-glass-cards__card:hover .wsk-glass-cards__icon {
	box-shadow: var(--_gc-icon-hover-shadow);
	transform: translateY(-2px);
}

/* ========================================================================
   7. TITLE — Scheme-adaptive color
   ======================================================================== */
.wsk-glass-cards__title {
	font-family: var(--wsk-gc-title-font-family, inherit);
	font-weight: var(--wsk-gc-title-font-weight, 700);
	font-style: var(--wsk-gc-title-font-style, normal);
	font-size: var(--wsk-gc-title-font-size, 1.3rem);
	line-height: var(--wsk-gc-title-line-height, 1.3);
	letter-spacing: var(--wsk-gc-title-letter-spacing, -0.3px);
	text-transform: var(--wsk-gc-title-text-transform, none);
	text-align: var(--wsk-gc-title-text-align, inherit);
	color: var(--wsk-gc-title-color, var(--_gc-title-color));
	margin-top: var(--wsk-gc-title-margin-top, 0);
	margin-bottom: var(--wsk-gc-title-margin-bottom, 12px);
	position: relative;
	z-index: 1;
}

/* ========================================================================
   8. DESCRIPTION — Better readability both schemes
   ======================================================================== */
.wsk-glass-cards__text {
	font-family: var(--wsk-gc-description-font-family, inherit);
	font-weight: var(--wsk-gc-description-font-weight, 400);
	font-style: var(--wsk-gc-description-font-style, normal);
	font-size: var(--wsk-gc-description-font-size, 0.95rem);
	line-height: var(--wsk-gc-description-line-height, 1.7);
	letter-spacing: var(--wsk-gc-description-letter-spacing, normal);
	text-transform: var(--wsk-gc-description-text-transform, none);
	text-align: var(--wsk-gc-description-text-align, inherit);
	color: var(--wsk-gc-description-color, var(--_gc-desc-color));
	margin-top: var(--wsk-gc-description-margin-top, 0);
	margin-bottom: var(--wsk-gc-description-margin-bottom, 0);
	position: relative;
	z-index: 1;
}

/* ========================================================================
   9. ARROW LINK — Gradient underline reveal
   ======================================================================== */
.wsk-glass-cards .wsk-glass-cards__arrow,
.wsk-glass-cards .wsk-glass-cards__arrow:hover,
.wsk-glass-cards .wsk-glass-cards__arrow:focus {
	color: var(--wsk-gc-arrow-color, var(--_gc-arrow-color)) !important;
}

.wsk-glass-cards__arrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--wsk-gc-arrow-color, var(--_gc-arrow-color));
	font-weight: 600;
	font-size: 0.9rem;
	letter-spacing: 0.3px;
	margin-top: 24px;
	text-decoration: none;
	transition:
		gap 0.4s cubic-bezier(0.16, 1, 0.3, 1),
		color 0.3s ease;
	position: relative;
	z-index: 1;
}

.wsk-glass-cards__arrow::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 0;
	height: 1px;
	background: linear-gradient(90deg, var(--wsk-gc-arrow-color, var(--_gc-arrow-color)), transparent);
	transition: width 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.wsk-glass-cards__card:hover .wsk-glass-cards__arrow {
	gap: 14px;
}

.wsk-glass-cards__card:hover .wsk-glass-cards__arrow::after {
	width: 100%;
}

/* ========================================================================
   10. FOCUS STATES (Accessibility)
   ======================================================================== */
.wsk-glass-cards__arrow:focus-visible {
	outline: 2px solid var(--wsk-gc-arrow-color, var(--_gc-arrow-color));
	outline-offset: 2px;
	border-radius: 4px;
}

.wsk-glass-cards__card:focus-within {
	border-color: var(--_gc-hover-border);
}

/* ========================================================================
   11. KEYFRAMES
   ======================================================================== */
@keyframes wsk-gc-reveal {
	from {
		opacity: 0;
		transform: translateY(36px) scale(0.97);
		filter: blur(6px);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
		filter: blur(0);
	}
}

/* ========================================================================
   12. TOUCH DEVICES
   ======================================================================== */
@media (hover: none) {
	.wsk-glass-cards__card:active .wsk-glass-cards__glow {
		opacity: 1;
	}
	.wsk-glass-cards__card:active {
		border-color: var(--_gc-hover-border);
		transform: translateY(calc(var(--wsk-gc-lift, 6px) * -1));
	}
	.wsk-glass-cards__card:active::before {
		opacity: 1;
	}
	.wsk-glass-cards__card:active .wsk-glass-cards__arrow {
		gap: 14px;
	}
	.wsk-glass-cards__card:active .wsk-glass-cards__arrow::after {
		width: 100%;
	}
	.wsk-glass-cards__card:active .wsk-glass-cards__icon {
		box-shadow: var(--_gc-icon-hover-shadow);
		transform: translateY(-2px);
	}
}

/* ========================================================================
   13. RESPONSIVE
   ======================================================================== */
@media (max-width: 1024px) {
	.wsk-glass-cards__card .wsk-glass-cards__title {
		font-size: var(--wsk-gc-title-font-size-md, var(--wsk-gc-title-font-size, 1.3rem));
		text-align: var(--wsk-gc-title-text-align-md, var(--wsk-gc-title-text-align, inherit)) !important;
	}
	.wsk-glass-cards__card .wsk-glass-cards__text {
		font-size: var(--wsk-gc-description-font-size-md, var(--wsk-gc-description-font-size, 0.95rem));
		text-align: var(--wsk-gc-description-text-align-md, var(--wsk-gc-description-text-align, inherit)) !important;
	}
}

@media (max-width: 768px) {
	.wsk-glass-cards__card .wsk-glass-cards__title {
		font-size: var(--wsk-gc-title-font-size-sm, var(--wsk-gc-title-font-size-md, var(--wsk-gc-title-font-size, 1.3rem)));
		text-align: var(--wsk-gc-title-text-align-sm, var(--wsk-gc-title-text-align-md, var(--wsk-gc-title-text-align, inherit))) !important;
	}
	.wsk-glass-cards__card .wsk-glass-cards__text {
		font-size: var(--wsk-gc-description-font-size-sm, var(--wsk-gc-description-font-size-md, var(--wsk-gc-description-font-size, 0.95rem)));
		text-align: var(--wsk-gc-description-text-align-sm, var(--wsk-gc-description-text-align-md, var(--wsk-gc-description-text-align, inherit))) !important;
	}
	.wsk-glass-cards {
		grid-template-columns: 1fr;
	}
	.wsk-glass-cards__card {
		padding: var(--wsk-gc-padding, 28px);
	}
}

/* ========================================================================
   14. REDUCED MOTION
   ======================================================================== */
@media (prefers-reduced-motion: reduce) {
	.wsk-glass-cards__card {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables non-essential transitions/animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-glass-cards,
	.wsk-glass-cards *,
	.wsk-glass-cards *::before,
	.wsk-glass-cards *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-glass-cards a:focus-visible,
.wsk-glass-cards button:focus-visible,
.wsk-glass-cards [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/**
 * WEPRO: Cognitive Cloud Hero — Editorial / Luxury redesign
 * Champagne palette · serif display · 3D character reveal ·
 * silk-sweep accent · slim pill CTAs · prefers-reduced-motion aware
 */

/* ────────────────────────────────────────────────────────────────────
   1. LAYOUT
   ──────────────────────────────────────────────────────────────────── */
.wsk-cognitive-cloud {
	--wsk-cc-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-cc-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--wsk-cc-accent: #C9A87A;
	position: relative;
	min-height: var(--wsk-cc-min-height, 100vh);
	background: var(--wsk-cc-bg, #0a0a0f);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}

/* Cinematic vignette */
.wsk-cognitive-cloud::after {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 80% 60% at 50% 45%, transparent 0%, rgba(0,0,0,0.55) 100%),
		linear-gradient(to bottom, transparent 60%, rgba(0,0,0,0.35));
	z-index: 1;
	pointer-events: none;
}

.wsk-cognitive-cloud__canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	opacity: 0.85;
}

.wsk-cognitive-cloud__content {
	position: relative;
	z-index: 2;
	padding: var(--wsk-cc-padding, 140px 24px 100px);
	text-align: center;
	max-width: 1080px;
	width: 100%;
}

/* ────────────────────────────────────────────────────────────────────
   2. BADGE — restrained glass
   ──────────────────────────────────────────────────────────────────── */
.wsk-cognitive-cloud__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--wsk-cc-badge-color, var(--wsk-cc-accent, #C9A87A)) 14%, transparent);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid color-mix(in srgb, var(--wsk-cc-badge-color, var(--wsk-cc-accent, #C9A87A)) 45%, transparent);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	color: var(--wsk-cc-badge-color, var(--wsk-cc-accent, rgba(255,255,255,0.78)));
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 40px;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-cc-fade 1s var(--wsk-cc-ease-out) 0.2s forwards;
}

.wsk-cognitive-cloud__badge-dot {
	width: 6px;
	height: 6px;
	background: var(--wsk-cc-badge-color, var(--wsk-cc-accent, #C9A87A));
	border-radius: 50%;
	box-shadow: 0 0 10px var(--wsk-cc-badge-color, var(--wsk-cc-accent, #C9A87A));
	animation: wsk-cc-pulse 2.4s ease-in-out infinite;
}

/* ────────────────────────────────────────────────────────────────────
   3. HEADING — serif display + 3D character reveal
   ──────────────────────────────────────────────────────────────────── */
.wsk-cognitive-cloud .wsk-cognitive-cloud__heading {
	font-family: var(--wsk-cc-heading-font-family, "Lora", "Playfair Display", Georgia, serif);
	font-size: var(--wsk-cc-heading-font-size, clamp(2.75rem, 7.5vw, 6.5rem));
	font-weight: var(--wsk-cc-heading-font-weight, 400);
	font-style: var(--wsk-cc-heading-font-style, normal);
	line-height: var(--wsk-cc-heading-line-height, 1.04);
	letter-spacing: var(--wsk-cc-heading-letter-spacing, -0.02em);
	text-transform: var(--wsk-cc-heading-text-transform, none);
	color: var(--wsk-cc-heading-color, #f4efe6);
	text-align: var(--wsk-cc-heading-text-align, center) !important;
	margin-top: var(--wsk-cc-heading-margin-top, 0);
	margin-bottom: var(--wsk-cc-heading-margin-bottom, 32px);
	max-width: 14ch;
	margin-left: auto;
	margin-right: auto;
	perspective: 900px;
	perspective-origin: 50% 60%;
}

/* Word wrapper keeps letters together on line break */
.wsk-cc-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}

.wsk-cc-space {
	display: inline;
}

/* 3D character descent */
.wsk-cc-char {
	display: inline-block;
	opacity: 0;
	transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
	filter: blur(8px);
	transform-origin: center bottom;
	text-shadow:
		0 1px 0 rgba(255,255,255,0.18),
		0 8px 28px rgba(0,0,0,0.45);
	will-change: transform, opacity, filter;
	animation: wsk-cc-char-in 1.25s var(--wsk-cc-ease-out) both;
	animation-delay: calc(0.4s + var(--wsk-cc-i, 0) * 0.04s);
}

@keyframes wsk-cc-char-in {
	0% {
		opacity: 0;
		transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
		filter: blur(8px);
	}
	60% {
		opacity: 1;
		filter: blur(0);
	}
	100% {
		opacity: 1;
		transform: translateY(0) translateZ(0) rotateX(0deg);
		filter: blur(0);
	}
}

/* Accent word — champagne italic silk sweep */
.wsk-cc-word--accent,
.wsk-cognitive-cloud__gradient-text,
.wsk-cognitive-cloud__heading-line2 {
	font-style: italic;
	font-weight: 500;
}

.wsk-cc-word--accent .wsk-cc-char,
.wsk-cognitive-cloud__gradient-text .wsk-cc-char,
.wsk-cognitive-cloud__heading-line2 .wsk-cc-char {
	background: linear-gradient(
		100deg,
		color-mix(in srgb, var(--wsk-cc-accent) 50%, #f4efe6) 0%,
		var(--wsk-cc-accent) 45%,
		color-mix(in srgb, var(--wsk-cc-accent) 55%, #ffffff) 70%,
		var(--wsk-cc-accent) 100%
	);
	background-size: 200% 100%;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	text-shadow: none;
	animation:
		wsk-cc-char-in 1.25s var(--wsk-cc-ease-out) both,
		wsk-cc-silk 8s ease-in-out 1.4s infinite;
}

@keyframes wsk-cc-silk {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* ────────────────────────────────────────────────────────────────────
   4. SUBTEXT
   ──────────────────────────────────────────────────────────────────── */
.wsk-cognitive-cloud .wsk-cognitive-cloud__subtext {
	font-family: var(--wsk-cc-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-cc-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-cc-subtext-font-weight, 400);
	font-style: var(--wsk-cc-subtext-font-style, normal);
	line-height: var(--wsk-cc-subtext-line-height, 1.65);
	letter-spacing: var(--wsk-cc-subtext-letter-spacing, 0.005em);
	text-transform: var(--wsk-cc-subtext-text-transform, none);
	color: var(--wsk-cc-subtext-color, rgba(244,239,230,0.62));
	text-align: var(--wsk-cc-subtext-text-align, center) !important;
	margin-top: var(--wsk-cc-subtext-margin-top, 0);
	margin-bottom: var(--wsk-cc-subtext-margin-bottom, 52px);
	max-width: 52ch;
	margin-left: auto;
	margin-right: auto;
	opacity: 0;
	transform: translateY(16px);
	animation: wsk-cc-fade 1.1s var(--wsk-cc-ease-out) 1.1s forwards;
}

/* ────────────────────────────────────────────────────────────────────
   5. BUTTONS — slim pill with 3D depth
   ──────────────────────────────────────────────────────────────────── */
.wsk-cognitive-cloud__buttons {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
	justify-content: center;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-cc-fade 1s var(--wsk-cc-ease-out) 1.3s forwards;
}

.wsk-cognitive-cloud__btn {
	padding: 13px 28px;
	border-radius: 999px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none;
	cursor: pointer;
	transition:
		transform 0.55s var(--wsk-cc-ease-out),
		box-shadow 0.55s var(--wsk-cc-ease-out),
		border-color 0.4s var(--wsk-cc-ease-out),
		color 0.4s var(--wsk-cc-ease-out);
	position: relative;
	overflow: hidden;
	transform: translateZ(0);
}

.wsk-cognitive-cloud__btn--primary {
	background: var(--wsk-cc-btn1-bg, #f4efe6);
	color: var(--wsk-cc-btn1-color, #0a0a0f);
	border: none;
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.55),
		inset 0 -1px 0 rgba(0,0,0,0.08),
		0 1px 2px rgba(0,0,0,0.18),
		0 10px 24px rgba(0,0,0,0.28);
}

.wsk-cognitive-cloud__btn--primary::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg,
		transparent 0%,
		rgba(255,255,255,0.55) 45%,
		rgba(255,255,255,0.55) 55%,
		transparent 100%);
	transform: translateX(-120%);
	transition: transform 0.9s var(--wsk-cc-ease-out);
	pointer-events: none;
}

.wsk-cognitive-cloud__btn--primary:hover::before {
	transform: translateX(120%);
}

.wsk-cognitive-cloud__btn--primary:hover {
	transform: translateY(-2px);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.6),
		inset 0 -1px 0 rgba(0,0,0,0.1),
		0 2px 4px rgba(0,0,0,0.2),
		0 18px 40px rgba(0,0,0,0.38);
}

.wsk-cognitive-cloud__btn--outline {
	background: rgba(255,255,255,0.02);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: var(--wsk-cc-btn2-color, rgba(244,239,230,0.9));
	border: 1px solid rgba(255,255,255,0.14);
}

.wsk-cognitive-cloud__btn--outline:hover {
	transform: translateY(-2px);
	border-color: var(--wsk-cc-btn2-hover, var(--wsk-cc-accent));
	color: var(--wsk-cc-btn2-hover, var(--wsk-cc-accent));
	box-shadow: 0 8px 24px color-mix(in srgb, var(--wsk-cc-accent) 12%, transparent);
}

.wsk-cognitive-cloud__btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.wsk-cognitive-cloud .wsk-cognitive-cloud__inner,
.wsk-cognitive-cloud .wsk-cognitive-cloud__inner p,
.wsk-cognitive-cloud .wsk-cognitive-cloud__inner a {
	color: var(--wsk-cc-subtext-color, rgba(244,239,230,0.62)) !important;
}

.wsk-cognitive-cloud__inner {
	margin-top: 12px;
	margin-bottom: 36px;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-cc-fade 1s var(--wsk-cc-ease-out) 1.5s forwards;
}

/* ────────────────────────────────────────────────────────────────────
   6. KEYFRAMES
   ──────────────────────────────────────────────────────────────────── */
@keyframes wsk-cc-fade {
	to { opacity: 1; transform: translateY(0); }
}

@keyframes wsk-cc-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.4; transform: scale(0.85); }
}

/* ────────────────────────────────────────────────────────────────────
   7. TOUCH
   ──────────────────────────────────────────────────────────────────── */
@media (hover: none) {
	.wsk-cognitive-cloud__btn--primary:active {
		transform: translateY(-2px);
	}
	.wsk-cognitive-cloud__btn--outline:active {
		border-color: var(--wsk-cc-btn2-hover, var(--wsk-cc-accent));
		color: var(--wsk-cc-btn2-hover, var(--wsk-cc-accent));
	}
}

/* ────────────────────────────────────────────────────────────────────
   8. RESPONSIVE
   ──────────────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.wsk-cognitive-cloud .wsk-cognitive-cloud__heading {
		font-size: var(--wsk-cc-heading-font-size-md, var(--wsk-cc-heading-font-size, clamp(2.75rem, 7.5vw, 6.5rem)));
	}
	.wsk-cognitive-cloud .wsk-cognitive-cloud__subtext {
		font-size: var(--wsk-cc-subtext-font-size-md, var(--wsk-cc-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem)));
	}
}

@media (max-width: 768px) {
	.wsk-cognitive-cloud {
		min-height: var(--wsk-cc-min-height, 86vh);
	}
	.wsk-cognitive-cloud__content {
		padding: var(--wsk-cc-padding, 96px 20px 72px);
	}
	.wsk-cognitive-cloud .wsk-cognitive-cloud__heading {
		font-size: var(--wsk-cc-heading-font-size-sm, clamp(2.25rem, 9vw, 3.25rem));
		letter-spacing: -0.015em;
		max-width: 100%;
	}
	.wsk-cognitive-cloud .wsk-cognitive-cloud__subtext {
		font-size: var(--wsk-cc-subtext-font-size-sm, 15px);
		max-width: 100%;
		margin-bottom: 40px;
	}
	.wsk-cognitive-cloud__badge {
		font-size: 10px;
		padding: 7px 14px;
		margin-bottom: 28px;
	}
	.wsk-cognitive-cloud__btn {
		font-size: 12px;
		padding: 11px 22px;
		min-height: 44px;
	}
	.wsk-cognitive-cloud__buttons {
		gap: 10px;
	}
}

/* ────────────────────────────────────────────────────────────────────
   9. REDUCED MOTION
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-cognitive-cloud__badge,
	.wsk-cognitive-cloud__subtext,
	.wsk-cognitive-cloud__buttons,
	.wsk-cognitive-cloud__inner,
	.wsk-cc-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-cc-word--accent .wsk-cc-char,
	.wsk-cognitive-cloud__gradient-text .wsk-cc-char,
	.wsk-cognitive-cloud__heading-line2 .wsk-cc-char {
		animation: none !important;
	}
	.wsk-cognitive-cloud__badge-dot {
		animation: none !important;
		opacity: 1 !important;
	}
}
/**
 * WEPRO: Typewriter Hero — Editorial / Luxury redesign
 * Champagne palette · serif display · 3D static-word reveal ·
 * italic silk-sweep on typed phrase · slim pill CTAs · reduced-motion aware
 */

/* ────────────────────────────────────────────────────────────────────
   1. LAYOUT
   ──────────────────────────────────────────────────────────────────── */
.wsk-typewriter-hero {
	--wsk-tw-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-tw-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	/* --wsk-tw-accent is supplied by the inline style emitted from PHP
	   (override-vars chain in render() — falls back through phrase_color
	   default in get_element_defaults). The CSS hardcode that lived here
	   was redundant and would mask any future change to the PHP default. */
	position: relative;
	min-height: var(--wsk-tw-min-height, 100vh);
	background: var(--wsk-tw-bg, #0a0a0f);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}

/* Cinematic vignette */
.wsk-typewriter-hero::after {
	content: '';
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 80% 60% at 50% 45%, transparent 0%, rgba(0,0,0,0.55) 100%),
		linear-gradient(to bottom, transparent 60%, rgba(0,0,0,0.35));
	z-index: 0;
	pointer-events: none;
}

/* Faint champagne aurora sweeping the background */
.wsk-typewriter-hero::before {
	content: '';
	position: absolute;
	inset: -20% -20% auto auto;
	width: 60vmax;
	height: 60vmax;
	background: radial-gradient(circle at 30% 30%,
		color-mix(in srgb, var(--wsk-tw-accent, #C9A87A) 10%, transparent) 0%,
		transparent 55%);
	filter: blur(40px);
	z-index: 0;
	pointer-events: none;
	animation: wsk-tw-aurora 18s ease-in-out infinite alternate;
}

@keyframes wsk-tw-aurora {
	from { transform: translate(0, 0) scale(1); opacity: 0.7; }
	to   { transform: translate(-8%, 8%) scale(1.06); opacity: 1; }
}

.wsk-typewriter-hero__content {
	position: relative;
	z-index: 2;
	padding: var(--wsk-tw-padding, 140px 24px 100px);
	/* Reads the editor's heading-alignment choice (PHP emits --wsk-tw-align
	   from the heading_alignment param); default `center` matches the
	   factory editorial layout when the editor leaves it untouched. */
	text-align: var(--wsk-tw-align, center);
	max-width: 1080px;
	width: 100%;
}

/* ────────────────────────────────────────────────────────────────────
   2. BADGE
   ──────────────────────────────────────────────────────────────────── */
.wsk-typewriter-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	border-radius: 999px;
	background: rgba(255,255,255,0.025);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid rgba(255,255,255,0.08);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	color: rgba(255,255,255,0.78);
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 40px;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-tw-fade 1s var(--wsk-tw-ease-out) 0.15s forwards;
}

.wsk-typewriter-hero__badge-dot {
	width: 6px;
	height: 6px;
	background: var(--wsk-tw-accent, #C9A87A);
	border-radius: 50%;
	box-shadow: 0 0 10px var(--wsk-tw-accent, #C9A87A);
	animation: wsk-tw-pulse 2.4s ease-in-out infinite;
}

/* ────────────────────────────────────────────────────────────────────
   3. HEADING — serif display
   ──────────────────────────────────────────────────────────────────── */
/* Locked-rule pattern: every typography property carries !important to
   beat Avada's compiled CSS, which re-declares h1–h6 / p with its own
   line-height, letter-spacing, font-family, and color. Without these
   locks our editorial typography silently reverts on sites with the
   Performance Wizard's "Compiled CSS" feature on. */
.wsk-typewriter-hero .wsk-typewriter-hero__heading {
	font-family: var(--wsk-tw-heading-font-family, "Lora", "Playfair Display", Georgia, serif) !important;
	font-size: var(--wsk-tw-heading-font-size, clamp(2.75rem, 7.5vw, 6.5rem)) !important;
	font-weight: var(--wsk-tw-heading-font-weight, 400) !important;
	font-style: var(--wsk-tw-heading-font-style, normal) !important;
	line-height: var(--wsk-tw-heading-line-height, 1.08) !important;
	letter-spacing: var(--wsk-tw-heading-letter-spacing, -0.02em) !important;
	text-transform: var(--wsk-tw-heading-text-transform, none) !important;
	color: var(--wsk-tw-heading-color, #f4efe6) !important;
	text-align: var(--wsk-tw-heading-text-align, center) !important;
	margin-top: var(--wsk-tw-heading-margin-top, 0) !important;
	margin-bottom: var(--wsk-tw-heading-margin-bottom, 32px) !important;
	max-width: 18ch;
	margin-left: auto;
	margin-right: auto;
	perspective: 900px;
	perspective-origin: 50% 60%;
}

.wsk-typewriter-hero__static {
	display: inline;
}

.wsk-tw-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}

.wsk-tw-space {
	display: inline;
}

/* 3D character descent on the static heading */
.wsk-tw-char {
	display: inline-block;
	opacity: 0;
	transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
	filter: blur(8px);
	transform-origin: center bottom;
	text-shadow:
		0 1px 0 rgba(255,255,255,0.18),
		0 8px 28px rgba(0,0,0,0.45);
	will-change: transform, opacity, filter;
	animation: wsk-tw-char-in 1.25s var(--wsk-tw-ease-out) both;
	animation-delay: calc(0.35s + var(--wsk-tw-i, 0) * 0.04s);
}

@keyframes wsk-tw-char-in {
	0% {
		opacity: 0;
		transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
		filter: blur(8px);
	}
	60% {
		opacity: 1;
		filter: blur(0);
	}
	100% {
		opacity: 1;
		transform: translateY(0) translateZ(0) rotateX(0deg);
		filter: blur(0);
	}
}

/* Typed phrase + cursor wrapper — stays on same line as static heading */
.wsk-typewriter-hero__typed {
	display: inline;
	white-space: nowrap;
}

/* Typed phrase — italic champagne silk sweep */
.wsk-typewriter-hero__phrase {
	font-style: italic;
	font-weight: 500;
	background: linear-gradient(
		100deg,
		color-mix(in srgb, var(--wsk-tw-phrase-color, var(--wsk-tw-accent, #C9A87A)) 50%, #f4efe6) 0%,
		var(--wsk-tw-phrase-color, var(--wsk-tw-accent, #C9A87A)) 45%,
		color-mix(in srgb, var(--wsk-tw-phrase-color, var(--wsk-tw-accent, #C9A87A)) 55%, #ffffff) 70%,
		var(--wsk-tw-phrase-color, var(--wsk-tw-accent, #C9A87A)) 100%
	);
	background-size: 200% 100%;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	animation: wsk-tw-silk 8s ease-in-out infinite;
}

@keyframes wsk-tw-silk {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* Refined thin cursor */
.wsk-typewriter-hero__cursor {
	display: inline-block;
	color: var(--wsk-tw-cursor-color, var(--wsk-tw-accent, #C9A87A));
	font-weight: 300;
	font-style: normal;
	margin-left: 4px;
	transform: translateY(-0.05em);
	animation: wsk-tw-blink 1.1s steps(2, start) infinite;
}

@keyframes wsk-tw-blink {
	0%, 100% { opacity: 1; }
	50%      { opacity: 0; }
}

/* ────────────────────────────────────────────────────────────────────
   4. SUBTEXT
   ──────────────────────────────────────────────────────────────────── */
.wsk-typewriter-hero .wsk-typewriter-hero__subtext {
	font-family: var(--wsk-tw-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif) !important;
	font-size: var(--wsk-tw-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem)) !important;
	font-weight: var(--wsk-tw-subtext-font-weight, 400) !important;
	font-style: var(--wsk-tw-subtext-font-style, normal) !important;
	line-height: var(--wsk-tw-subtext-line-height, 1.65) !important;
	letter-spacing: var(--wsk-tw-subtext-letter-spacing, 0.005em) !important;
	text-transform: var(--wsk-tw-subtext-text-transform, none) !important;
	color: var(--wsk-tw-subtext-color, rgba(244,239,230,0.62)) !important;
	text-align: var(--wsk-tw-subtext-text-align, center) !important;
	margin-top: var(--wsk-tw-subtext-margin-top, 0) !important;
	margin-bottom: var(--wsk-tw-subtext-margin-bottom, 52px) !important;
	max-width: 52ch;
	margin-left: auto;
	margin-right: auto;
	opacity: 0;
	transform: translateY(16px);
	animation: wsk-tw-fade 1.1s var(--wsk-tw-ease-out) 1.1s forwards;
}

/* ────────────────────────────────────────────────────────────────────
   5. BUTTONS — slim pill with 3D depth
   ──────────────────────────────────────────────────────────────────── */
.wsk-typewriter-hero__buttons {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
	justify-content: center;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-tw-fade 1s var(--wsk-tw-ease-out) 1.3s forwards;
}

.wsk-typewriter-hero__btn {
	padding: 13px 28px;
	border-radius: 999px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none;
	cursor: pointer;
	transition:
		transform 0.55s var(--wsk-tw-ease-out),
		box-shadow 0.55s var(--wsk-tw-ease-out),
		border-color 0.4s var(--wsk-tw-ease-out),
		color 0.4s var(--wsk-tw-ease-out);
	position: relative;
	overflow: hidden;
	transform: translateZ(0);
}

.wsk-typewriter-hero__btn--primary {
	background: var(--wsk-tw-btn1-bg, #f4efe6);
	color: var(--wsk-tw-btn1-color, #0a0a0f);
	border: none;
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.55),
		inset 0 -1px 0 rgba(0,0,0,0.08),
		0 1px 2px rgba(0,0,0,0.18),
		0 10px 24px rgba(0,0,0,0.28);
}

.wsk-typewriter-hero__btn--primary::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg,
		transparent 0%,
		rgba(255,255,255,0.55) 45%,
		rgba(255,255,255,0.55) 55%,
		transparent 100%);
	transform: translateX(-120%);
	transition: transform 0.9s var(--wsk-tw-ease-out);
	pointer-events: none;
}

.wsk-typewriter-hero__btn--primary:hover::before {
	transform: translateX(120%);
}

.wsk-typewriter-hero__btn--primary:hover {
	transform: translateY(-2px);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.6),
		inset 0 -1px 0 rgba(0,0,0,0.1),
		0 2px 4px rgba(0,0,0,0.2),
		0 18px 40px rgba(0,0,0,0.38);
}

.wsk-typewriter-hero__btn--outline {
	background: rgba(255,255,255,0.02);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	color: var(--wsk-tw-btn2-color, rgba(244,239,230,0.9));
	border: 1px solid rgba(255,255,255,0.14);
}

.wsk-typewriter-hero__btn--outline:hover {
	transform: translateY(-2px);
	border-color: var(--wsk-tw-btn2-hover, var(--wsk-tw-accent, #C9A87A));
	color: var(--wsk-tw-btn2-hover, var(--wsk-tw-accent, #C9A87A));
	box-shadow: 0 8px 24px color-mix(in srgb, var(--wsk-tw-accent, #C9A87A) 12%, transparent);
}

.wsk-typewriter-hero__btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

/* Nested editor content — sits between heading and subtext as a lead
   block. Inherits the editorial cream tone so paragraphs / inline
   elements / nested shortcodes don't fall back to the page's default
   black on a dark hero. !important locks against Avada compiled CSS
   re-declaring `.fusion-text p { color: ... }`. */
.wsk-typewriter-hero__inner {
	margin-top: 8px;
	margin-bottom: 28px;
	max-width: 60ch;
	margin-left: auto;
	margin-right: auto;
	color: var(--wsk-tw-inner-color, rgba(244,239,230,0.78)) !important;
	font-family: var(--wsk-tw-inner-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-tw-inner-font-size, clamp(0.95rem, 1.25vw, 1.05rem));
	line-height: var(--wsk-tw-inner-line-height, 1.7);
	text-align: var(--wsk-tw-align, center);
}

.wsk-typewriter-hero__inner :where(p, li, span, em, strong, a) {
	color: inherit !important;
}

.wsk-typewriter-hero__inner a {
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-color: color-mix(in srgb, currentColor 40%, transparent);
	transition: text-decoration-color 0.3s var(--wsk-tw-ease-out);
}

.wsk-typewriter-hero__inner a:hover {
	text-decoration-color: currentColor;
}

.wsk-typewriter-hero__inner p:first-child { margin-top: 0; }
.wsk-typewriter-hero__inner p:last-child  { margin-bottom: 0; }

/* ────────────────────────────────────────────────────────────────────
   6. UTILITIES
   ──────────────────────────────────────────────────────────────────── */
@keyframes wsk-tw-fade {
	to { opacity: 1; transform: translateY(0); }
}

@keyframes wsk-tw-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.4; transform: scale(0.85); }
}

/* ────────────────────────────────────────────────────────────────────
   7. TOUCH
   ──────────────────────────────────────────────────────────────────── */
@media (hover: none) {
	.wsk-typewriter-hero__btn--primary:active {
		transform: translateY(-2px);
	}
	.wsk-typewriter-hero__btn--outline:active {
		border-color: var(--wsk-tw-btn2-hover, var(--wsk-tw-accent, #C9A87A));
		color: var(--wsk-tw-btn2-hover, var(--wsk-tw-accent, #C9A87A));
	}
}

/* ────────────────────────────────────────────────────────────────────
   8. RESPONSIVE
   ──────────────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.wsk-typewriter-hero .wsk-typewriter-hero__heading {
		font-size: var(--wsk-tw-heading-font-size-md, var(--wsk-tw-heading-font-size, clamp(2.75rem, 7.5vw, 6.5rem)));
	}
	.wsk-typewriter-hero .wsk-typewriter-hero__subtext {
		font-size: var(--wsk-tw-subtext-font-size-md, var(--wsk-tw-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem)));
	}
}

@media (max-width: 768px) {
	.wsk-typewriter-hero {
		min-height: var(--wsk-tw-min-height, 86vh);
	}
	.wsk-typewriter-hero__content {
		padding: var(--wsk-tw-padding, 96px 20px 72px);
	}
	.wsk-typewriter-hero .wsk-typewriter-hero__heading {
		font-size: var(--wsk-tw-heading-font-size-sm, clamp(2.25rem, 9vw, 3.25rem));
		letter-spacing: -0.015em;
		max-width: 100%;
	}
	.wsk-typewriter-hero .wsk-typewriter-hero__subtext {
		font-size: var(--wsk-tw-subtext-font-size-sm, 15px);
		max-width: 100%;
		margin-bottom: 40px;
	}
	.wsk-typewriter-hero__badge {
		font-size: 10px;
		padding: 7px 14px;
		margin-bottom: 28px;
	}
	.wsk-typewriter-hero__btn {
		font-size: 12px;
		padding: 11px 22px;
		min-height: 44px;
	}
	.wsk-typewriter-hero__buttons {
		gap: 10px;
	}
}

/* ────────────────────────────────────────────────────────────────────
   9. REDUCED MOTION
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-typewriter-hero::before,
	.wsk-typewriter-hero__badge,
	.wsk-typewriter-hero__subtext,
	.wsk-typewriter-hero__buttons,
	.wsk-typewriter-hero__inner,
	.wsk-tw-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-typewriter-hero__phrase {
		animation: none !important;
	}
	.wsk-typewriter-hero__cursor {
		animation: none !important;
	}
	.wsk-typewriter-hero__badge-dot {
		animation: none !important;
		opacity: 1 !important;
	}
}
/**
 * WEPRO: Video Hero — "Cinema Veil"
 * Mobile-first · film-frame corner marks · subtle grain overlay ·
 * slow 6% zoom · serif display · Play-circle + italic underline CTA.
 * YouTube background iframe or native <video>. Reduced-motion + data-saver aware.
 */

[class*="wsk-video-hero"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	box-sizing: border-box;
}

.wsk-video-hero {
	--wsk-vh-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-vh-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--wsk-vh-ink:    #0a0a0f;
	--wsk-vh-bone:   #f4efe6;
	/* Accent fallback chain: editor pick → champagne default. */
	--wsk-vh-accent-resolved: var(--wsk-vh-accent, #C9A87A);
	position: relative;
	min-height: var(--wsk-vh-min-height, 100vh);
	background: var(--wsk-vh-bg, var(--wsk-vh-ink));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
}

/* ────────────────────────────────────────────────────────────────────
   MEDIA STAGE — video / YouTube iframe / poster
   ──────────────────────────────────────────────────────────────────── */
.wsk-video-hero__stage {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}

/* Poster sits under everything — always present, never shifts layout. */
.wsk-video-hero__poster {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	background-color: var(--wsk-vh-bg, var(--wsk-vh-ink));
	z-index: 0;
}

/* Native video — mobile-safe, cinematic slow zoom. */
.wsk-video-hero__video {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	max-width: none;
	transform: translate(-50%, -50%);
	object-fit: cover;
	object-position: center;
	background: var(--wsk-vh-ink);
	z-index: 1;
	animation: wsk-vh-zoom 28s ease-out both;
}

/* YouTube iframe — full-bleed cover-fit. The iframe's intrinsic 16:9 ratio
   is sized to whichever axis dominates so the player ALWAYS covers the
   viewport with no letterboxing on portrait or ultrawide screens. */
.wsk-video-hero__iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width:  max(100vw, calc(100vh * 16 / 9));
	height: max(100vh, calc(100vw * 9 / 16));
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
	z-index: 1;
	animation: wsk-vh-zoom 28s ease-out both;
}

@keyframes wsk-vh-zoom {
	from { transform: translate(-50%, -50%) scale(1.0); }
	to   { transform: translate(-50%, -50%) scale(1.06); }
}

/* Dark overlay for text legibility */
.wsk-video-hero__overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	background:
		radial-gradient(ellipse 85% 65% at 50% 45%, rgba(0,0,0, calc(var(--wsk-vh-overlay, 0.55) * 0.6)) 0%, rgba(0,0,0, var(--wsk-vh-overlay, 0.55)) 100%),
		linear-gradient(to bottom, rgba(0,0,0,0.25) 0%, transparent 35%, transparent 70%, rgba(0,0,0,0.45) 100%);
}

/* Subtle animated film grain (CSS-only, lightweight) */
.wsk-video-hero__grain {
	position: absolute;
	inset: -20%;
	z-index: 3;
	pointer-events: none;
	opacity: 0.08;
	mix-blend-mode: overlay;
	background-image:
		radial-gradient(rgba(255,255,255,0.55) 1px, transparent 1px),
		radial-gradient(rgba(255,255,255,0.35) 1px, transparent 1px);
	background-size: 3px 3px, 5px 5px;
	background-position: 0 0, 1px 1px;
	animation: wsk-vh-grain 1.1s steps(6) infinite;
}

@keyframes wsk-vh-grain {
	0%   { transform: translate(0, 0); }
	20%  { transform: translate(-2%, 1%); }
	40%  { transform: translate(1%, -2%); }
	60%  { transform: translate(-1%, 2%); }
	80%  { transform: translate(2%, -1%); }
	100% { transform: translate(0, 0); }
}

/* ────────────────────────────────────────────────────────────────────
   CORNER MARKS — cinematic frame
   ──────────────────────────────────────────────────────────────────── */
.wsk-video-hero__mark {
	position: absolute;
	width: 22px;
	height: 22px;
	z-index: 4;
	pointer-events: none;
	opacity: 0.55;
	border-color: var(--wsk-vh-accent, var(--wsk-vh-bone));
	border-style: solid;
}

.wsk-video-hero__mark--tl { top: 20px;    left: 20px;   border-width: 1px 0 0 1px; }
.wsk-video-hero__mark--tr { top: 20px;    right: 20px;  border-width: 1px 1px 0 0; }
.wsk-video-hero__mark--bl { bottom: 20px; left: 20px;   border-width: 0 0 1px 1px; }
.wsk-video-hero__mark--br { bottom: 20px; right: 20px;  border-width: 0 1px 1px 0; }

/* ────────────────────────────────────────────────────────────────────
   CONTENT
   ──────────────────────────────────────────────────────────────────── */
.wsk-video-hero__content {
	position: relative;
	z-index: 5;
	padding: var(--wsk-vh-padding, 160px 32px 120px);
	text-align: center;
	max-width: 1080px;
	width: 100%;
}

/* Eyebrow — centered italic serif flanked by thin accent lines */
.wsk-video-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 13px;
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--wsk-vh-accent, #C9A87A);
	margin: 0 auto 32px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-vh-fade 1s var(--wsk-vh-ease-out) 0.15s forwards;
}

.wsk-video-hero__eyebrow-line {
	flex: 0 0 40px;
	height: 1px;
	background: currentColor;
	opacity: 0.55;
}

/* Heading — serif display, perspective for 3D char drop */
.wsk-video-hero .wsk-video-hero__heading {
	font-family: var(--wsk-vh-heading-font-family, "Lora", "Playfair Display", Georgia, serif);
	font-size: var(--wsk-vh-heading-font-size, clamp(3rem, 8vw, 7.5rem));
	font-weight: var(--wsk-vh-heading-font-weight, 400);
	font-style: var(--wsk-vh-heading-font-style, normal);
	line-height: var(--wsk-vh-heading-line-height, 1.02);
	letter-spacing: var(--wsk-vh-heading-letter-spacing, -0.02em);
	text-transform: var(--wsk-vh-heading-text-transform, none);
	color: var(--wsk-vh-heading-color, var(--wsk-vh-bone));
	text-align: var(--wsk-vh-heading-text-align, center) !important;
	margin-top: var(--wsk-vh-heading-margin-top, 0);
	margin-bottom: var(--wsk-vh-heading-margin-bottom, 40px);
	max-width: 16ch;
	margin-left: auto;
	margin-right: auto;
	perspective: 900px;
	perspective-origin: 50% 60%;
}

.wsk-vh-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}

.wsk-vh-space { display: inline; }

.wsk-vh-char {
	display: inline-block;
	opacity: 0;
	transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
	filter: blur(8px);
	transform-origin: center bottom;
	text-shadow:
		0 1px 0 rgba(255,255,255,0.18),
		0 12px 30px rgba(0,0,0,0.55);
	will-change: transform, opacity, filter;
	animation: wsk-vh-char-in 1.25s var(--wsk-vh-ease-out) both;
	animation-delay: calc(0.35s + var(--wsk-vh-i, 0) * 0.04s);
}

@keyframes wsk-vh-char-in {
	0% {
		opacity: 0;
		transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
		filter: blur(8px);
	}
	60% { opacity: 1; filter: blur(0); }
	100% {
		opacity: 1;
		transform: translateY(0) translateZ(0) rotateX(0deg);
		filter: blur(0);
	}
}

/* Accent word(s) — italic champagne silk sweep */
.wsk-vh-word--accent,
.wsk-video-hero__gradient-text {
	font-style: italic;
	font-weight: 500;
}

.wsk-vh-word--accent .wsk-vh-char,
.wsk-video-hero__gradient-text .wsk-vh-char {
	background: linear-gradient(
		100deg,
		color-mix(in srgb, var(--wsk-vh-accent, #C9A87A) 50%, var(--wsk-vh-bone)) 0%,
		var(--wsk-vh-accent, #C9A87A) 45%,
		color-mix(in srgb, var(--wsk-vh-accent, #C9A87A) 55%, #ffffff) 70%,
		var(--wsk-vh-accent, #C9A87A) 100%
	);
	background-size: 200% 100%;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	text-shadow: none;
	animation:
		wsk-vh-char-in 1.25s var(--wsk-vh-ease-out) both,
		wsk-vh-silk 8s ease-in-out 1.4s infinite;
}

@keyframes wsk-vh-silk {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* Subtext */
.wsk-video-hero .wsk-video-hero__subtext {
	font-family: var(--wsk-vh-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-vh-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-vh-subtext-font-weight, 400);
	font-style: var(--wsk-vh-subtext-font-style, normal);
	line-height: var(--wsk-vh-subtext-line-height, 1.65);
	letter-spacing: var(--wsk-vh-subtext-letter-spacing, 0.005em);
	text-transform: var(--wsk-vh-subtext-text-transform, none);
	color: var(--wsk-vh-subtext-color, rgba(244,239,230,0.68));
	text-align: var(--wsk-vh-subtext-text-align, center) !important;
	margin-top: var(--wsk-vh-subtext-margin-top, 0);
	margin-bottom: var(--wsk-vh-subtext-margin-bottom, 56px);
	max-width: 50ch;
	margin-left: auto;
	margin-right: auto;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-vh-fade 1.1s var(--wsk-vh-ease-out) 1.1s forwards;
}

/* ────────────────────────────────────────────────────────────────────
   CTAs — editorial / film-poster style (different from other heroes)
   ──────────────────────────────────────────────────────────────────── */
.wsk-video-hero__buttons {
	display: inline-flex;
	align-items: center;
	gap: 28px;
	flex-wrap: nowrap;
	justify-content: center;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-vh-fade 1s var(--wsk-vh-ease-out) 1.3s forwards;
}

/* PLAY — outlined circle + italic label, not a pill */
.wsk-video-hero__btn--play {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	padding: 6px 14px 6px 6px;
	border-radius: 999px;
	color: var(--wsk-vh-btn1-color, var(--wsk-vh-bone));
	text-decoration: none;
	border: 1px solid transparent;
	transition:
		border-color 0.5s var(--wsk-vh-ease-out),
		background-color 0.5s var(--wsk-vh-ease-out),
		transform 0.5s var(--wsk-vh-ease-out);
	transform: translateZ(0);
}

.wsk-video-hero__btn--play:hover {
	color: var(--wsk-vh-btn1-color, var(--wsk-vh-bone));
	text-decoration: none;
	border-color: color-mix(in srgb, var(--wsk-vh-btn1-color, var(--wsk-vh-bone)) 22%, transparent);
	background: color-mix(in srgb, var(--wsk-vh-btn1-color, var(--wsk-vh-bone)) 6%, transparent);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	transform: translateY(-2px);
}

.wsk-video-hero__play-ring {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	position: relative;
	color: inherit;
	flex-shrink: 0;
}

.wsk-video-hero__play-ring svg {
	width: 42px;
	height: 42px;
}

/* Pulsing halo rings */
.wsk-video-hero__play-ring::before,
.wsk-video-hero__play-ring::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: 50%;
	border: 1px solid currentColor;
	opacity: 0.35;
	animation: wsk-vh-ping 2.8s var(--wsk-vh-ease) infinite;
}

.wsk-video-hero__play-ring::after { animation-delay: 1.4s; }

@keyframes wsk-vh-ping {
	0%   { transform: scale(1);   opacity: 0.55; }
	100% { transform: scale(1.5); opacity: 0;    }
}

.wsk-video-hero__play-ring svg {
	position: relative;
	z-index: 1;
}

.wsk-video-hero__play-ring svg g {
	transition: transform 0.5s var(--wsk-vh-ease-out);
	transform-origin: center;
}

.wsk-video-hero__btn--play:hover .wsk-video-hero__play-ring svg g {
	transform: translateX(2px);
}

.wsk-video-hero__btn-label {
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 15px;
	font-style: italic;
	font-weight: 500;
	letter-spacing: 0.01em;
	color: inherit;
	white-space: nowrap;
}

/* SECONDARY — italic serif link, no underline. Letter-spacing breathes on
   hover, arrow extends along a thin runway that only appears on hover.
   Cinematic, restrained, luxury. */
.wsk-video-hero__btn--link {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	color: var(--wsk-vh-btn2-color, rgba(244,239,230,0.9));
	text-decoration: none;
	padding: 10px 4px;
	position: relative;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 15px;
	font-style: italic;
	font-weight: 500;
	letter-spacing: 0.06em;
	transition:
		color 0.45s var(--wsk-vh-ease-out),
		letter-spacing 0.6s var(--wsk-vh-ease-out);
}

.wsk-video-hero__btn-text {
	position: relative;
	display: inline-block;
}

/* Arrow rides on a thin runway that only appears on hover. */
.wsk-video-hero__btn-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
	width: 28px;
	height: 1px;
	color: currentColor;
	font-size: 0;
	transition: width 0.5s var(--wsk-vh-ease-out);
	overflow: visible;
}

.wsk-video-hero__btn-arrow::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.55s var(--wsk-vh-ease-out);
}

.wsk-video-hero__btn-arrow::after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	width: 7px;
	height: 7px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: translate(0, -50%) rotate(45deg);
	transition: transform 0.55s var(--wsk-vh-ease-out);
}

.wsk-video-hero__btn--link:hover {
	color: var(--wsk-vh-btn2-hover, var(--wsk-vh-accent, #C9A87A));
	letter-spacing: 0.085em;
}

.wsk-video-hero__btn--link:hover .wsk-video-hero__btn-arrow {
	width: 44px;
}

.wsk-video-hero__btn--link:hover .wsk-video-hero__btn-arrow::before {
	transform: scaleX(1);
}

.wsk-video-hero__btn--link:hover .wsk-video-hero__btn-arrow::after {
	transform: translate(2px, -50%) rotate(45deg);
}

.wsk-video-hero__btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

.wsk-video-hero .wsk-video-hero__inner,
.wsk-video-hero .wsk-video-hero__inner p,
.wsk-video-hero .wsk-video-hero__inner a {
	color: var(--wsk-vh-subtext-color, rgba(244,239,230,0.68)) !important;
}

.wsk-video-hero__inner {
	margin-top: 12px;
	margin-bottom: 32px;
}

@keyframes wsk-vh-fade {
	to { opacity: 1; transform: translateY(0); }
}

/* ────────────────────────────────────────────────────────────────────
   TABLET
   ──────────────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.wsk-video-hero__content {
		padding: clamp(110px, 16vh, 140px) 28px 100px;
	}
	.wsk-video-hero .wsk-video-hero__heading {
		font-size: var(--wsk-vh-heading-font-size-md, clamp(2.5rem, 7vw, 5rem));
	}
	.wsk-video-hero__mark {
		width: 18px;
		height: 18px;
	}
	.wsk-video-hero__mark--tl,
	.wsk-video-hero__mark--tr { top: 16px; }
	.wsk-video-hero__mark--bl,
	.wsk-video-hero__mark--br { bottom: 16px; }
	.wsk-video-hero__mark--tl,
	.wsk-video-hero__mark--bl { left: 16px; }
	.wsk-video-hero__mark--tr,
	.wsk-video-hero__mark--br { right: 16px; }
}

/* ────────────────────────────────────────────────────────────────────
   MOBILE — redesigned from scratch
   ──────────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
	.wsk-video-hero {
		min-height: var(--wsk-vh-min-height, 92vh);
	}

	.wsk-video-hero__content {
		padding: clamp(96px, 14vh, 120px) 22px clamp(80px, 12vh, 110px);
		max-width: 560px;
	}

	/* Stronger overlay on mobile so text stays readable over busy footage */
	.wsk-video-hero__overlay {
		background:
			radial-gradient(ellipse 100% 70% at 50% 45%, rgba(0,0,0,0.35) 0%, rgba(0,0,0,0.72) 100%),
			linear-gradient(to bottom, rgba(0,0,0,0.35) 0%, transparent 30%, transparent 65%, rgba(0,0,0,0.55) 100%);
	}

	.wsk-video-hero__grain { opacity: 0.1; }

	.wsk-video-hero__eyebrow {
		font-size: 11px;
		gap: 10px;
		letter-spacing: 0.2em;
		margin-bottom: 22px;
	}
	.wsk-video-hero__eyebrow-line { flex-basis: 22px; }

	.wsk-video-hero .wsk-video-hero__heading {
		font-size: var(--wsk-vh-heading-font-size-sm, clamp(2.1rem, 9vw, 3rem));
		letter-spacing: -0.015em;
		line-height: 1.08;
		max-width: 100%;
		margin-bottom: 24px;
	}

	/* Shorter 3D travel — crisper and lighter on phones */
	.wsk-vh-char {
		transform: translateY(0.45em) translateZ(-40px) rotateX(-40deg);
		filter: blur(6px);
		text-shadow: 0 1px 0 rgba(255,255,255,0.14), 0 6px 14px rgba(0,0,0,0.5);
	}
	@keyframes wsk-vh-char-in {
		0%   { opacity: 0; transform: translateY(0.45em) translateZ(-40px) rotateX(-40deg); filter: blur(6px); }
		60%  { opacity: 1; filter: blur(0); }
		100% { opacity: 1; transform: translateY(0) translateZ(0) rotateX(0); filter: blur(0); }
	}

	.wsk-video-hero .wsk-video-hero__subtext {
		font-size: 15px;
		line-height: 1.6;
		max-width: 38ch;
		margin-bottom: 36px;
	}

	.wsk-video-hero__buttons {
		flex-direction: row;
		flex-wrap: nowrap;
		gap: 18px;
		width: auto;
	}

	.wsk-video-hero__btn--play {
		padding: 3px 12px 3px 3px;
		gap: 10px;
		border: 1px solid color-mix(in srgb, var(--wsk-vh-btn1-color, var(--wsk-vh-bone)) 18%, transparent);
		background: color-mix(in srgb, var(--wsk-vh-btn1-color, var(--wsk-vh-bone)) 5%, transparent);
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
	}

	.wsk-video-hero__play-ring {
		width: 36px;
		height: 36px;
	}
	.wsk-video-hero__play-ring svg {
		width: 36px;
		height: 36px;
	}

	.wsk-video-hero__btn-label { font-size: 13px; }
	.wsk-video-hero__btn--link { font-size: 12px; letter-spacing: 0.05em; gap: 8px; }
	.wsk-video-hero__btn-arrow { font-size: 14px; }

	.wsk-video-hero__mark {
		width: 14px;
		height: 14px;
		opacity: 0.45;
	}
	.wsk-video-hero__mark--tl,
	.wsk-video-hero__mark--tr { top: 12px; }
	.wsk-video-hero__mark--bl,
	.wsk-video-hero__mark--br { bottom: 12px; }
	.wsk-video-hero__mark--tl,
	.wsk-video-hero__mark--bl { left: 12px; }
	.wsk-video-hero__mark--tr,
	.wsk-video-hero__mark--br { right: 12px; }

	/* YouTube iframe — cover-fit pattern self-adjusts per viewport; no scale override needed. */
}

/* Very small phones */
@media (max-width: 400px) {
	.wsk-video-hero__content {
		padding: 90px 14px 90px;
	}
	.wsk-video-hero .wsk-video-hero__heading {
		font-size: clamp(1.95rem, 10vw, 2.4rem);
	}
	.wsk-video-hero__eyebrow-line { flex-basis: 16px; }

	.wsk-video-hero__buttons { gap: 12px; }

	.wsk-video-hero__btn--play {
		padding: 3px 10px 3px 3px;
		gap: 8px;
	}
	.wsk-video-hero__play-ring,
	.wsk-video-hero__play-ring svg { width: 32px; height: 32px; }

	.wsk-video-hero__btn-label { font-size: 12px; }
	.wsk-video-hero__btn--link { font-size: 11px; }
	.wsk-video-hero__btn-arrow { font-size: 13px; }
}

/* ────────────────────────────────────────────────────────────────────
   SAVE-DATA — skip video, poster only
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-data: reduce) {
	.wsk-video-hero__video,
	.wsk-video-hero__iframe {
		display: none !important;
	}
}

/* ────────────────────────────────────────────────────────────────────
   REDUCED MOTION
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-video-hero__video,
	.wsk-video-hero__iframe {
		animation: none !important;
	}
	.wsk-video-hero__grain,
	.wsk-video-hero__eyebrow,
	.wsk-video-hero__subtext,
	.wsk-video-hero__buttons,
	.wsk-video-hero__inner,
	.wsk-vh-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-vh-word--accent .wsk-vh-char,
	.wsk-video-hero__gradient-text .wsk-vh-char {
		animation: none !important;
	}
	.wsk-video-hero__play-ring::before,
	.wsk-video-hero__play-ring::after {
		animation: none !important;
		opacity: 0.4 !important;
	}
}
/**
 * WEPRO: Voice Waveform Hero — "Adagio"
 * Champagne silk-ribbon waveform · editorial serif display · 3D char reveal ·
 * slim pill + italic underline CTAs on a single row · mobile-first ·
 * reduced-motion aware.
 */

[class*="wsk-waveform-hero"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	box-sizing: border-box;
}

.wsk-waveform-hero {
	--wsk-wf-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-wf-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--wsk-wf-accent-fallback: #C9A87A;
	--wsk-wf-ink:  #0a0a0f;
	--wsk-wf-bone: #f4efe6;
	position: relative;
	min-height: var(--wsk-wf-min-height, 100vh);
	background: var(--wsk-wf-bg, var(--wsk-wf-ink));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
}

/* Cinematic vignette */
.wsk-waveform-hero__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		radial-gradient(ellipse 85% 65% at 50% 45%, transparent 0%, rgba(0,0,0,0.55) 100%),
		linear-gradient(to bottom, transparent 55%, rgba(0,0,0,0.35));
}

/* Champagne glow under the waveform */
.wsk-waveform-hero__glow {
	position: absolute;
	inset: auto 0 0 0;
	height: 70%;
	z-index: 0;
	pointer-events: none;
	background:
		radial-gradient(ellipse 60% 40% at 50% 70%,
			color-mix(in srgb, var(--wsk-wf-accent, var(--wsk-wf-accent-fallback)) 14%, transparent) 0%,
			transparent 70%),
		radial-gradient(ellipse 30% 18% at 50% 72%,
			color-mix(in srgb, var(--wsk-wf-accent, var(--wsk-wf-accent-fallback)) 22%, transparent) 0%,
			transparent 80%);
	filter: blur(30px);
	animation: wsk-wf-breath 9s ease-in-out infinite alternate;
}

@keyframes wsk-wf-breath {
	from { opacity: 0.65; transform: scale(1);    }
	to   { opacity: 1;    transform: scale(1.05); }
}

.wsk-waveform-hero__canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	pointer-events: none;
}

.wsk-waveform-hero__content {
	position: relative;
	z-index: 5;
	padding: var(--wsk-wf-padding, 160px 32px 120px);
	text-align: center;
	max-width: 1080px;
	width: 100%;
}

/* ────────────────────────────────────────────────────────────────────
   BADGE
   ──────────────────────────────────────────────────────────────────── */
.wsk-waveform-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--wsk-wf-badge-color, #C9A87A) 14%, transparent);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid color-mix(in srgb, var(--wsk-wf-badge-color, #C9A87A) 45%, transparent);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	color: var(--wsk-wf-badge-color, rgba(255,255,255,0.78));
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 28px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-wf-fade 1s var(--wsk-wf-ease-out) 0.15s forwards;
}

.wsk-waveform-hero__badge-dot {
	width: 6px;
	height: 6px;
	background: var(--wsk-wf-badge-color, #C9A87A);
	border-radius: 50%;
	box-shadow: 0 0 10px var(--wsk-wf-badge-color, #C9A87A);
	animation: wsk-wf-pulse 2.4s ease-in-out infinite;
}

/* ────────────────────────────────────────────────────────────────────
   EYEBROW
   ──────────────────────────────────────────────────────────────────── */
.wsk-waveform-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 13px;
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--wsk-wf-accent, var(--wsk-wf-accent-fallback));
	margin: 0 auto 28px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-wf-fade 1s var(--wsk-wf-ease-out) 0.25s forwards;
}

.wsk-waveform-hero__eyebrow-line {
	flex: 0 0 36px;
	height: 1px;
	background: currentColor;
	opacity: 0.55;
}

/* ────────────────────────────────────────────────────────────────────
   HEADING — serif display + 3D char reveal
   ──────────────────────────────────────────────────────────────────── */
.wsk-waveform-hero .wsk-waveform-hero__heading {
	font-family: var(--wsk-wf-heading-font-family, "Lora", "Playfair Display", Georgia, serif);
	font-size: var(--wsk-wf-heading-font-size, clamp(3rem, 8vw, 7.25rem));
	font-weight: var(--wsk-wf-heading-font-weight, 400);
	font-style: var(--wsk-wf-heading-font-style, normal);
	line-height: var(--wsk-wf-heading-line-height, 1.03);
	letter-spacing: var(--wsk-wf-heading-letter-spacing, -0.02em);
	text-transform: var(--wsk-wf-heading-text-transform, none);
	color: var(--wsk-wf-heading-color, var(--wsk-wf-bone));
	text-align: var(--wsk-wf-heading-text-align, center) !important;
	margin: 0 auto var(--wsk-wf-heading-margin-bottom, 36px);
	max-width: 16ch;
	perspective: 900px;
	perspective-origin: 50% 60%;
}

.wsk-wf-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}

.wsk-wf-space { display: inline; }

.wsk-wf-char {
	display: inline-block;
	opacity: 0;
	transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
	filter: blur(8px);
	transform-origin: center bottom;
	text-shadow:
		0 1px 0 rgba(255,255,255,0.18),
		0 12px 30px rgba(0,0,0,0.55);
	will-change: transform, opacity, filter;
	animation: wsk-wf-char-in 1.25s var(--wsk-wf-ease-out) both;
	animation-delay: calc(0.35s + var(--wsk-wf-i, 0) * 0.04s);
}

@keyframes wsk-wf-char-in {
	0%   { opacity: 0; transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg); filter: blur(8px); }
	60%  { opacity: 1; filter: blur(0); }
	100% { opacity: 1; transform: translateY(0) translateZ(0) rotateX(0); filter: blur(0); }
}

/* Accent word — italic champagne silk sweep */
.wsk-wf-word--accent,
.wsk-waveform-hero__gradient-text {
	font-style: italic;
	font-weight: 500;
}

.wsk-wf-word--accent .wsk-wf-char,
.wsk-waveform-hero__gradient-text .wsk-wf-char {
	background: linear-gradient(
		100deg,
		color-mix(in srgb, var(--wsk-wf-accent, var(--wsk-wf-accent-fallback)) 50%, var(--wsk-wf-bone)) 0%,
		var(--wsk-wf-accent, var(--wsk-wf-accent-fallback)) 45%,
		color-mix(in srgb, var(--wsk-wf-accent, var(--wsk-wf-accent-fallback)) 55%, #ffffff) 70%,
		var(--wsk-wf-accent, var(--wsk-wf-accent-fallback)) 100%
	);
	background-size: 200% 100%;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	text-shadow: none;
	animation:
		wsk-wf-char-in 1.25s var(--wsk-wf-ease-out) calc(0.35s + var(--wsk-wf-i, 0) * 0.04s) both,
		wsk-wf-silk 8s ease-in-out 1.4s infinite,
		wsk-wf-title-drift 5.6s ease-in-out calc(2.0s + var(--wsk-wf-i, 0) * 70ms) infinite;
}

@keyframes wsk-wf-silk {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* ────────────────────────────────────────────────────────────────────
   SUBTEXT
   ──────────────────────────────────────────────────────────────────── */
.wsk-waveform-hero .wsk-waveform-hero__subtext {
	font-family: var(--wsk-wf-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-wf-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-wf-subtext-font-weight, 400);
	font-style: var(--wsk-wf-subtext-font-style, normal);
	line-height: var(--wsk-wf-subtext-line-height, 1.65);
	letter-spacing: var(--wsk-wf-subtext-letter-spacing, 0.005em);
	text-transform: var(--wsk-wf-subtext-text-transform, none);
	color: var(--wsk-wf-subtext-color, rgba(244,239,230,0.65));
	text-align: var(--wsk-wf-subtext-text-align, center) !important;
	margin: 0 auto var(--wsk-wf-subtext-margin-bottom, 52px);
	max-width: 50ch;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-wf-fade 1.1s var(--wsk-wf-ease-out) 1.1s forwards;
}

/* ────────────────────────────────────────────────────────────────────
   CTAs — champagne pill + italic underline link, ALWAYS inline / no wrap
   ──────────────────────────────────────────────────────────────────── */
.wsk-waveform-hero__buttons {
	display: inline-flex;
	align-items: center;
	gap: 28px;
	flex-wrap: nowrap;
	justify-content: center;
	max-width: 100%;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-wf-fade 1s var(--wsk-wf-ease-out) 1.3s forwards;
}

/* Primary — slim pill, 3D depth, silk sheen sweep */
.wsk-waveform-hero__btn--primary {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 12px 26px;
	border-radius: 999px;
	background: var(--wsk-wf-btn1-bg, var(--wsk-wf-bone));
	color: var(--wsk-wf-btn1-color, var(--wsk-wf-ink));
	border: none;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none;
	overflow: hidden;
	transform: translateZ(0);
	white-space: nowrap;
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.55),
		inset 0 -1px 0 rgba(0,0,0,0.08),
		0 1px 2px rgba(0,0,0,0.18),
		0 10px 24px rgba(0,0,0,0.28);
	transition:
		transform 0.55s var(--wsk-wf-ease-out),
		box-shadow 0.55s var(--wsk-wf-ease-out),
		color 0.4s var(--wsk-wf-ease-out);
}

.wsk-waveform-hero__btn--primary::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg,
		transparent 0%,
		rgba(255,255,255,0.55) 45%,
		rgba(255,255,255,0.55) 55%,
		transparent 100%);
	transform: translateX(-120%);
	transition: transform 0.9s var(--wsk-wf-ease-out);
	pointer-events: none;
}

.wsk-waveform-hero__btn--primary:hover::before {
	transform: translateX(120%);
}

.wsk-waveform-hero__btn--primary:hover {
	color: var(--wsk-wf-btn1-color, var(--wsk-wf-ink));
	text-decoration: none;
	transform: translateY(-2px);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.6),
		inset 0 -1px 0 rgba(0,0,0,0.1),
		0 2px 4px rgba(0,0,0,0.2),
		0 18px 40px rgba(0,0,0,0.38);
}

.wsk-waveform-hero__btn--primary .wsk-waveform-hero__btn-arrow {
	display: inline-flex;
	align-items: center;
	transition: transform 0.5s var(--wsk-wf-ease-out);
}

.wsk-waveform-hero__btn--primary:hover .wsk-waveform-hero__btn-arrow {
	transform: translateX(4px);
}

/* Secondary — inline italic-accented underline link (editorial) */
.wsk-waveform-hero__btn--link {
	position: relative;
	display: inline-flex;
	align-items: baseline;
	gap: 8px;
	padding: 10px 2px;
	color: var(--wsk-wf-btn2-color, rgba(244,239,230,0.9));
	text-decoration: none;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	white-space: nowrap;
	transition: color 0.4s var(--wsk-wf-ease-out);
}

.wsk-waveform-hero__btn-label {
	position: relative;
	display: inline-block;
	padding-bottom: 2px;
}

.wsk-waveform-hero__btn-label::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: currentColor;
	opacity: 0.6;
	transform-origin: right center;
	transform: scaleX(1);
	transition: transform 0.6s var(--wsk-wf-ease-out), opacity 0.3s;
}

.wsk-waveform-hero__btn--link:hover {
	color: var(--wsk-wf-btn2-hover, var(--wsk-wf-accent-fallback));
	text-decoration: none;
}

.wsk-waveform-hero__btn--link:hover .wsk-waveform-hero__btn-label::after {
	opacity: 1;
	animation: wsk-wf-underline 0.9s var(--wsk-wf-ease-out);
}

@keyframes wsk-wf-underline {
	0%   { transform: scaleX(1);  transform-origin: right center; }
	49%  { transform: scaleX(0);  transform-origin: right center; }
	50%  { transform: scaleX(0);  transform-origin: left center; }
	100% { transform: scaleX(1);  transform-origin: left center; }
}

.wsk-waveform-hero__btn-tail {
	font-size: 15px;
	line-height: 1;
	transition: transform 0.5s var(--wsk-wf-ease-out);
}

.wsk-waveform-hero__btn--link:hover .wsk-waveform-hero__btn-tail {
	transform: translateX(6px);
}

.wsk-waveform-hero__btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

.wsk-waveform-hero .wsk-waveform-hero__inner,
.wsk-waveform-hero .wsk-waveform-hero__inner p,
.wsk-waveform-hero .wsk-waveform-hero__inner a {
	color: var(--wsk-wf-subtext-color, rgba(244,239,230,0.65)) !important;
}

/* ────────────────────────────────────────────────────────────────────
   TITLE — sine-wave drift on characters (Adagio breath)
   Wraps each .wsk-wf-char in a sine drift that begins AFTER the entrance
   3D drop completes, then loops infinitely. Staggered by --wsk-wf-i so
   the wave travels left-to-right through the headline.
   ──────────────────────────────────────────────────────────────────── */
.wsk-waveform-hero .wsk-wf-char {
	/* Layer the drift on top of the existing entrance animation.
	   Existing entrance: wsk-wf-char-in 1.25s with delay 0.35s + i*0.04s.
	   Drift starts ~1.8s after entrance, never lines up identically across
	   chars because of the i*70ms phase stagger. */
	animation:
		wsk-wf-char-in 1.25s var(--wsk-wf-ease-out) calc(0.35s + var(--wsk-wf-i, 0) * 0.04s) both,
		wsk-wf-title-drift 5.6s ease-in-out calc(2.0s + var(--wsk-wf-i, 0) * 70ms) infinite;
}

/* Loop drift — slow vertical sine, small amplitude so it reads as a
   breathing wave, never bouncy. Amplitude clamped per-viewport. */
@keyframes wsk-wf-title-drift {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50%      { transform: translate3d(0, clamp(-6px, -0.16em, -3px), 0); }
}

/* Accent words also drift — they share the same character spans, so the
   second animation slot inherits. Just need to make sure the silk-sweep
   doesn't override transform. (Silk uses background-position only — safe.) */

@media (prefers-reduced-motion: reduce) {
	.wsk-waveform-hero .wsk-wf-char {
		animation: none !important;
		transform: none !important;
		opacity: 1 !important;
		filter: none !important;
	}
}

.wsk-waveform-hero__inner {
	margin-top: 12px;
	margin-bottom: 32px;
}

@keyframes wsk-wf-fade {
	to { opacity: 1; transform: translateY(0); }
}

@keyframes wsk-wf-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.4; transform: scale(0.85); }
}

/* ────────────────────────────────────────────────────────────────────
   TABLET
   ──────────────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.wsk-waveform-hero__content {
		padding: clamp(110px, 16vh, 140px) 28px 100px;
	}
	.wsk-waveform-hero .wsk-waveform-hero__heading {
		font-size: var(--wsk-wf-heading-font-size-md, clamp(2.5rem, 7vw, 5rem));
	}
}

/* ────────────────────────────────────────────────────────────────────
   MOBILE — rebuilt, 100% responsive, CTAs inline / nowrap
   ──────────────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
	.wsk-waveform-hero {
		min-height: var(--wsk-wf-min-height, 92vh);
	}
	.wsk-waveform-hero__content {
		padding: clamp(88px, 13vh, 116px) 20px clamp(76px, 12vh, 108px);
		max-width: 560px;
	}
	.wsk-waveform-hero__overlay {
		background:
			radial-gradient(ellipse 100% 70% at 50% 45%, transparent 0%, rgba(0,0,0,0.55) 100%),
			linear-gradient(to bottom, transparent 55%, rgba(0,0,0,0.4));
	}
	.wsk-waveform-hero__glow {
		height: 80%;
		filter: blur(24px);
	}

	.wsk-waveform-hero__badge {
		font-size: 10px;
		padding: 7px 14px;
		margin-bottom: 20px;
	}

	.wsk-waveform-hero__eyebrow {
		font-size: 11px;
		gap: 10px;
		letter-spacing: 0.2em;
		margin-bottom: 22px;
	}
	.wsk-waveform-hero__eyebrow-line { flex-basis: 22px; }

	.wsk-waveform-hero .wsk-waveform-hero__heading {
		font-size: var(--wsk-wf-heading-font-size-sm, clamp(2.1rem, 9vw, 3rem));
		letter-spacing: -0.015em;
		line-height: 1.08;
		max-width: 100%;
		margin-bottom: 24px;
	}

	/* Lighter 3D travel on phones — crisp, not heavy */
	.wsk-wf-char {
		transform: translateY(0.45em) translateZ(-40px) rotateX(-40deg);
		filter: blur(6px);
		text-shadow: 0 1px 0 rgba(255,255,255,0.14), 0 6px 14px rgba(0,0,0,0.5);
	}
	@keyframes wsk-wf-char-in {
		0%   { opacity: 0; transform: translateY(0.45em) translateZ(-40px) rotateX(-40deg); filter: blur(6px); }
		60%  { opacity: 1; filter: blur(0); }
		100% { opacity: 1; transform: translateY(0) translateZ(0) rotateX(0); filter: blur(0); }
	}

	.wsk-waveform-hero .wsk-waveform-hero__subtext {
		font-size: 15px;
		line-height: 1.6;
		max-width: 38ch;
		margin-bottom: 36px;
	}

	/* CTAs — single row, never stack. If primary label is too long, IT wraps internally inside the pill. */
	.wsk-waveform-hero__buttons {
		gap: 16px;
		flex-wrap: nowrap;
		width: auto;
	}

	.wsk-waveform-hero__btn--primary {
		padding: 11px 20px;
		font-size: 12px;
		/* Allow internal wrap if the label is multi-word long; keeps the button from blowing past the link */
		white-space: normal;
		max-width: 56vw;
		text-align: left;
		line-height: 1.25;
	}

	.wsk-waveform-hero__btn--link {
		font-size: 12px;
		padding: 8px 0;
		white-space: nowrap;
	}
	.wsk-waveform-hero__btn-tail { font-size: 14px; }
}

/* Very small phones */
@media (max-width: 400px) {
	.wsk-waveform-hero__content {
		padding: 84px 14px 84px;
	}
	.wsk-waveform-hero .wsk-waveform-hero__heading {
		font-size: clamp(1.9rem, 10vw, 2.4rem);
	}
	.wsk-waveform-hero__buttons { gap: 12px; }
	.wsk-waveform-hero__btn--primary { padding: 10px 16px; font-size: 11.5px; }
	.wsk-waveform-hero__btn--link    { font-size: 11.5px; gap: 6px; }
	.wsk-waveform-hero__btn-tail     { font-size: 13px; }
	.wsk-waveform-hero__eyebrow-line { flex-basis: 14px; }
}

/* ────────────────────────────────────────────────────────────────────
   SAVE-DATA — waveform canvas stays but stops animating (JS gate too)
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-data: reduce) {
	.wsk-waveform-hero__glow { animation: none !important; }
}

/* ────────────────────────────────────────────────────────────────────
   REDUCED MOTION
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-waveform-hero__glow,
	.wsk-waveform-hero__badge,
	.wsk-waveform-hero__eyebrow,
	.wsk-waveform-hero__subtext,
	.wsk-waveform-hero__buttons,
	.wsk-waveform-hero__inner,
	.wsk-wf-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-wf-word--accent .wsk-wf-char,
	.wsk-waveform-hero__gradient-text .wsk-wf-char {
		animation: none !important;
	}
	.wsk-waveform-hero__badge-dot { animation: none !important; opacity: 1 !important; }
}
/**
 * WEPRO: Morph Text Hero — "Cantabile"
 * Champagne palette · serif display · 3D static chars · silk-sweep morphing phrase ·
 * slim pill + italic underline CTAs on a single row · mobile-first · reduced-motion aware.
 */

[class*="wsk-morph-text-hero"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	box-sizing: border-box;
}

.wsk-morph-text-hero {
	--wsk-mt-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-mt-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--wsk-mt-accent-fallback: #C9A87A;
	--wsk-mt-ink: #0a0a0f;
	--wsk-mt-bone: #f4efe6;
	position: relative;
	min-height: var(--wsk-mt-min-height, 100vh);
	background: var(--wsk-mt-bg, var(--wsk-mt-ink));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
}

/* Champagne aurora — slow, drifting */
.wsk-morph-text-hero__aurora {
	position: absolute;
	inset: -20% -20% auto auto;
	width: 60vmax;
	height: 60vmax;
	background: radial-gradient(circle at 30% 30%,
		color-mix(in srgb, var(--wsk-mt-accent, var(--wsk-mt-accent-fallback)) 12%, transparent) 0%,
		transparent 55%);
	filter: blur(44px);
	z-index: 0;
	pointer-events: none;
	animation: wsk-mt-aurora 20s ease-in-out infinite alternate;
}

@keyframes wsk-mt-aurora {
	from { transform: translate(0, 0) scale(1);    opacity: 0.7; }
	to   { transform: translate(-10%, 10%) scale(1.08); opacity: 1; }
}

.wsk-morph-text-hero__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		radial-gradient(ellipse 80% 60% at 50% 45%, transparent 0%, rgba(0,0,0,0.55) 100%),
		linear-gradient(to bottom, transparent 60%, rgba(0,0,0,0.35));
}

.wsk-morph-text-hero__content {
	position: relative;
	z-index: 5;
	padding: var(--wsk-mt-padding, 160px 32px 120px);
	text-align: center;
	max-width: 1080px;
	width: 100%;
}

/* ── BADGE ── */
.wsk-morph-text-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	border-radius: 999px;
	background: rgba(255,255,255,0.025);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid rgba(255,255,255,0.08);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	color: rgba(255,255,255,0.78);
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 28px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-mt-fade 1s var(--wsk-mt-ease-out) 0.15s forwards;
}

.wsk-morph-text-hero__badge-dot {
	width: 6px;
	height: 6px;
	background: var(--wsk-mt-accent, var(--wsk-mt-accent-fallback));
	border-radius: 50%;
	box-shadow: 0 0 10px var(--wsk-mt-accent, var(--wsk-mt-accent-fallback));
	animation: wsk-mt-pulse 2.4s ease-in-out infinite;
}

/* ── EYEBROW ── */
.wsk-morph-text-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 13px;
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--wsk-mt-accent, var(--wsk-mt-accent-fallback));
	margin: 0 auto 28px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-mt-fade 1s var(--wsk-mt-ease-out) 0.25s forwards;
}

.wsk-morph-text-hero__eyebrow-line {
	flex: 0 0 36px;
	height: 1px;
	background: currentColor;
	opacity: 0.55;
}

/* ── HEADING — serif display, 3D char reveal on static text ── */
.wsk-morph-text-hero .wsk-morph-text-hero__heading {
	font-family: var(--wsk-mt-heading-font-family, "Lora", "Playfair Display", Georgia, serif);
	font-size: var(--wsk-mt-heading-font-size, clamp(2.75rem, 7.5vw, 6.75rem));
	font-weight: var(--wsk-mt-heading-font-weight, 400);
	font-style: var(--wsk-mt-heading-font-style, normal);
	line-height: var(--wsk-mt-heading-line-height, 1.08);
	letter-spacing: var(--wsk-mt-heading-letter-spacing, -0.02em);
	text-transform: var(--wsk-mt-heading-text-transform, none);
	color: var(--wsk-mt-heading-color, var(--wsk-mt-bone));
	text-align: var(--wsk-mt-heading-text-align, center) !important;
	margin: 0 auto var(--wsk-mt-heading-margin-bottom, 36px);
	max-width: 20ch;
	perspective: 900px;
	perspective-origin: 50% 60%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: baseline;
	gap: 0;
}

.wsk-morph-text-hero__static {
	display: inline;
}

.wsk-mt-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}

.wsk-mt-space { display: inline; }

.wsk-mt-char {
	display: inline-block;
	opacity: 0;
	transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
	filter: blur(8px);
	transform-origin: center bottom;
	text-shadow:
		0 1px 0 rgba(255,255,255,0.18),
		0 12px 30px rgba(0,0,0,0.55);
	will-change: transform, opacity, filter;
	animation: wsk-mt-char-in 1.25s var(--wsk-mt-ease-out) both;
	animation-delay: calc(0.35s + var(--wsk-mt-i, 0) * 0.04s);
}

@keyframes wsk-mt-char-in {
	0%   { opacity: 0; transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg); filter: blur(8px); }
	60%  { opacity: 1; filter: blur(0); }
	100% { opacity: 1; transform: translateY(0) translateZ(0) rotateX(0); filter: blur(0); }
}

/* ──────────────────────────────────────────────────────────────────────
   MORPHING PHRASE — "Voltige"
   Per-character typographic theatre: outgoing chars rise and dissolve,
   incoming chars are scattered and pulled into place on a stagger.
   No simple opacity fade, no 5-dollar crossfade.
   ────────────────────────────────────────────────────────────────────── */
.wsk-morph-text-hero__morph {
	position: relative;
	display: inline-block;
	vertical-align: baseline;
	white-space: nowrap;
	opacity: 0;
	animation: wsk-mt-fade 1.1s var(--wsk-mt-ease-out) 0.9s forwards;
	font-style: italic;
	font-weight: 500;
	min-height: 1em;
}

.wsk-morph-text-hero__morph-layer {
	position: absolute;
	inset: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	white-space: nowrap;
}

/* The live layer holds the slot in flow so line height is correct. */
.wsk-morph-text-hero__morph-layer.is-live {
	position: relative;
	inset: auto;
}

/* Per-character cells — JS injects these */
.wsk-mt-morph-char {
	display: inline-block;
	position: relative;
	opacity: 0;
	transform:
		translate3d(var(--wsk-mt-dx, 0px), var(--wsk-mt-dy, 0.8em), 0)
		rotate(var(--wsk-mt-dr, 14deg))
		scale(0.82);
	filter: blur(10px);
	transform-origin: 50% 80%;
	background: linear-gradient(
		100deg,
		color-mix(in srgb, var(--wsk-mt-phrase-color, var(--wsk-mt-accent-fallback)) 40%, var(--wsk-mt-bone)) 0%,
		var(--wsk-mt-phrase-color, var(--wsk-mt-accent-fallback)) 38%,
		color-mix(in srgb, var(--wsk-mt-phrase-color, var(--wsk-mt-accent-fallback)) 60%, #ffffff) 52%,
		var(--wsk-mt-phrase-color, var(--wsk-mt-accent-fallback)) 72%,
		color-mix(in srgb, var(--wsk-mt-phrase-color, var(--wsk-mt-accent-fallback)) 45%, #000000) 100%
	);
	background-size: 220% 100%;
	background-position: 0% 50%;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	will-change: transform, opacity, filter;
	transition:
		opacity 0.55s var(--wsk-mt-ease-out),
		transform 0.85s var(--wsk-mt-ease-out),
		filter 0.55s var(--wsk-mt-ease-out),
		background-position 1.4s var(--wsk-mt-ease);
}

.wsk-mt-morph-space { width: 0.28em; display: inline-block; }

/* ENTERING — scatter into position with a conducted stagger */
.wsk-morph-text-hero__morph-layer.is-entering .wsk-mt-morph-char {
	opacity: 1;
	transform: translate3d(0, 0, 0) rotate(0) scale(1);
	filter: blur(0);
	transition-delay: calc(var(--wsk-mt-ci, 0) * 35ms);
	background-position: 100% 50%;
}

/* LIVE — resting state with a slow silk sweep across the phrase */
.wsk-morph-text-hero__morph-layer.is-live .wsk-mt-morph-char {
	opacity: 1;
	transform: translate3d(0, 0, 0) rotate(0) scale(1);
	filter: blur(0);
	animation: wsk-mt-silk-char 9s ease-in-out calc(var(--wsk-mt-ci, 0) * 40ms) infinite;
}

@keyframes wsk-mt-silk-char {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* LEAVING — rise up and dissolve, char-by-char from left, accelerated */
.wsk-morph-text-hero__morph-layer.is-leaving .wsk-mt-morph-char {
	opacity: 0;
	transform:
		translate3d(
			calc(var(--wsk-mt-dx-out, 0px)),
			-0.9em,
			0
		)
		rotate(var(--wsk-mt-dr-out, -8deg))
		scale(1.04);
	filter: blur(14px);
	transition-delay: calc(var(--wsk-mt-ci, 0) * 22ms);
}

/* ── SUBTEXT ── */
.wsk-morph-text-hero .wsk-morph-text-hero__subtext {
	font-family: var(--wsk-mt-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-mt-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-mt-subtext-font-weight, 400);
	font-style: var(--wsk-mt-subtext-font-style, normal);
	line-height: var(--wsk-mt-subtext-line-height, 1.65);
	letter-spacing: var(--wsk-mt-subtext-letter-spacing, 0.005em);
	text-transform: var(--wsk-mt-subtext-text-transform, none);
	color: var(--wsk-mt-subtext-color, rgba(244,239,230,0.65));
	text-align: var(--wsk-mt-subtext-text-align, center) !important;
	margin: 0 auto var(--wsk-mt-subtext-margin-bottom, 52px);
	max-width: 50ch;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-mt-fade 1.1s var(--wsk-mt-ease-out) 1.1s forwards;
}

/* ──────────────────────────────────────────────────────────────────────
   CTAs — "Noblesse" — editorial couture, not web-flat.
   Primary: engraved champagne bevel with serif italic label + ink arrow.
   Secondary: serif small-caps link with a gold hairline that animates on hover.
   Both sit on one row and NEVER wrap to a stacked layout.
   ────────────────────────────────────────────────────────────────────── */
.wsk-morph-text-hero__buttons {
	display: inline-flex;
	align-items: center;
	gap: 36px;
	flex-wrap: nowrap;
	justify-content: center;
	max-width: 100%;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-mt-fade 1s var(--wsk-mt-ease-out) 1.3s forwards;
}

/* Kill any ghost underline from Avada/global link styles. */
.wsk-morph-text-hero__btn,
.wsk-morph-text-hero__btn:hover,
.wsk-morph-text-hero__btn:focus,
.wsk-morph-text-hero__btn:active,
.wsk-morph-text-hero__btn:visited,
.fusion-body .wsk-morph-text-hero__btn,
.fusion-body .wsk-morph-text-hero__btn:hover {
	text-decoration: none !important;
	border-bottom: 0 !important;
	box-shadow: none;
}
.wsk-morph-text-hero__btn * {
	text-decoration: none !important;
}

/* ── Primary: "Noblesse" champagne bevel pill ── */
.wsk-morph-text-hero .wsk-morph-text-hero__btn--primary {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 16px 30px 16px 32px;
	border-radius: 999px;
	background:
		linear-gradient(180deg,
			color-mix(in srgb, var(--wsk-mt-btn1-bg, #f4efe6) 100%, white 8%) 0%,
			var(--wsk-mt-btn1-bg, #f4efe6) 48%,
			color-mix(in srgb, var(--wsk-mt-btn1-bg, #f4efe6) 92%, black) 100%);
	color: var(--wsk-mt-btn1-color, var(--wsk-mt-ink)) !important;
	border: 1px solid color-mix(in srgb, var(--wsk-mt-accent, var(--wsk-mt-accent-fallback)) 45%, transparent);
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 15px;
	font-style: italic;
	font-weight: 500;
	letter-spacing: 0.005em;
	overflow: hidden;
	white-space: nowrap;
	transform: translateZ(0);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.85),
		inset 0 -1px 0 rgba(0,0,0,0.12),
		0 1px 2px rgba(10,10,15,0.25),
		0 18px 46px -8px rgba(10,10,15,0.55),
		0 0 0 0 color-mix(in srgb, var(--wsk-mt-accent, var(--wsk-mt-accent-fallback)) 45%, transparent);
	transition:
		transform 0.6s var(--wsk-mt-ease-out),
		box-shadow 0.6s var(--wsk-mt-ease-out),
		border-color 0.4s var(--wsk-mt-ease-out);
}

/* Inner champagne halo (the "bevel") */
.wsk-morph-text-hero .wsk-morph-text-hero__btn--primary::after {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: inherit;
	pointer-events: none;
	background:
		radial-gradient(120% 160% at 20% 0%, rgba(255,255,255,0.8), transparent 55%),
		radial-gradient(120% 160% at 80% 100%,
			color-mix(in srgb, var(--wsk-mt-accent, var(--wsk-mt-accent-fallback)) 35%, transparent),
			transparent 60%);
	mix-blend-mode: screen;
	opacity: 0.9;
	transition: opacity 0.5s var(--wsk-mt-ease-out);
}

/* Silk sheen sweep */
.wsk-morph-text-hero .wsk-morph-text-hero__btn--primary::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg,
		transparent 0%,
		rgba(255,255,255,0.65) 45%,
		rgba(255,255,255,0.65) 55%,
		transparent 100%);
	transform: translateX(-120%);
	transition: transform 1.1s var(--wsk-mt-ease-out);
	pointer-events: none;
}

.wsk-morph-text-hero .wsk-morph-text-hero__btn--primary:hover {
	transform: translateY(-3px);
	border-color: color-mix(in srgb, var(--wsk-mt-accent, var(--wsk-mt-accent-fallback)) 75%, transparent);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.9),
		inset 0 -1px 0 rgba(0,0,0,0.14),
		0 2px 4px rgba(10,10,15,0.28),
		0 28px 60px -10px rgba(10,10,15,0.7),
		0 0 28px -4px color-mix(in srgb, var(--wsk-mt-accent, var(--wsk-mt-accent-fallback)) 60%, transparent);
}

.wsk-morph-text-hero .wsk-morph-text-hero__btn--primary:hover::before { transform: translateX(120%); }
.wsk-morph-text-hero .wsk-morph-text-hero__btn--primary:hover::after  { opacity: 1; }

/* Label + arrow slot inside the pill — keep above the ::after sheen */
.wsk-morph-text-hero__btn--primary > .wsk-morph-text-hero__btn-text,
.wsk-morph-text-hero__btn--primary > .wsk-morph-text-hero__btn-arrow {
	position: relative;
	z-index: 2;
}

.wsk-morph-text-hero__btn--primary .wsk-morph-text-hero__btn-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--wsk-mt-ink) 92%, transparent);
	color: var(--wsk-mt-bone);
	transition: transform 0.55s var(--wsk-mt-ease-out), background-color 0.4s;
}

.wsk-morph-text-hero__btn--primary .wsk-morph-text-hero__btn-arrow svg {
	width: 12px;
	height: 9px;
}

.wsk-morph-text-hero__btn--primary:hover .wsk-morph-text-hero__btn-arrow {
	transform: translateX(3px) rotate(-8deg);
	background: var(--wsk-mt-ink);
}

/* ── Secondary: editorial small-caps link with gold hairline ── */
.wsk-morph-text-hero .wsk-morph-text-hero__btn--link {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 12px 4px 14px;
	color: var(--wsk-mt-btn2-color, rgba(244,239,230,0.9)) !important;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 13px;
	font-style: italic;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: color 0.4s var(--wsk-mt-ease-out);
}

.wsk-morph-text-hero__btn--link .wsk-morph-text-hero__btn-label {
	position: relative;
	display: inline-block;
}

/* Two stacked hairlines — one fades out to the right, the gold one wipes in from the left */
.wsk-morph-text-hero__btn--link .wsk-morph-text-hero__btn-label::before,
.wsk-morph-text-hero__btn--link .wsk-morph-text-hero__btn-label::after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: -6px;
	height: 1px;
	transform-origin: right center;
	transition: transform 0.6s var(--wsk-mt-ease-out), opacity 0.4s;
}

.wsk-morph-text-hero__btn--link .wsk-morph-text-hero__btn-label::before {
	background: currentColor;
	opacity: 0.4;
}

.wsk-morph-text-hero__btn--link .wsk-morph-text-hero__btn-label::after {
	background: var(--wsk-mt-accent, var(--wsk-mt-accent-fallback));
	opacity: 0;
	transform: scaleX(0);
	transform-origin: left center;
}

.wsk-morph-text-hero__btn--link:hover {
	color: var(--wsk-mt-btn2-hover, var(--wsk-mt-accent-fallback)) !important;
}

.wsk-morph-text-hero__btn--link:hover .wsk-morph-text-hero__btn-label::before {
	transform: scaleX(0);
	opacity: 0;
}

.wsk-morph-text-hero__btn--link:hover .wsk-morph-text-hero__btn-label::after {
	transform: scaleX(1);
	opacity: 0.9;
}

.wsk-morph-text-hero__btn-tail {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: 11px;
	line-height: 1;
	opacity: 0.55;
	transition:
		transform 0.5s var(--wsk-mt-ease-out),
		opacity 0.4s,
		border-color 0.4s,
		background-color 0.4s;
}

.wsk-morph-text-hero__btn--link:hover .wsk-morph-text-hero__btn-tail {
	transform: translateX(6px);
	opacity: 1;
	border-color: var(--wsk-mt-accent, var(--wsk-mt-accent-fallback));
	background: color-mix(in srgb, var(--wsk-mt-accent, var(--wsk-mt-accent-fallback)) 18%, transparent);
}

.wsk-morph-text-hero__btn:focus-visible {
	outline: 2px solid var(--wsk-mt-accent, var(--wsk-mt-accent-fallback));
	outline-offset: 4px;
}

.wsk-morph-text-hero__inner { margin-top: 40px; }

@keyframes wsk-mt-fade {
	to { opacity: 1; transform: translateY(0); }
}

@keyframes wsk-mt-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.4; transform: scale(0.85); }
}

/* ──────────────────────────────────────────────
   TABLET
   ────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.wsk-morph-text-hero__content {
		padding: clamp(110px, 16vh, 140px) 28px 100px;
	}
	.wsk-morph-text-hero .wsk-morph-text-hero__heading {
		font-size: var(--wsk-mt-heading-font-size-md, clamp(2.5rem, 7vw, 5rem));
	}
}

/* ──────────────────────────────────────────────
   MOBILE — 100% responsive, CTAs inline / no wrap
   ────────────────────────────────────────────── */
@media (max-width: 768px) {
	.wsk-morph-text-hero {
		min-height: var(--wsk-mt-min-height, 92vh);
	}
	.wsk-morph-text-hero__content {
		padding: clamp(88px, 13vh, 116px) 20px clamp(76px, 12vh, 108px);
		max-width: 560px;
	}
	.wsk-morph-text-hero__aurora {
		filter: blur(32px);
	}
	.wsk-morph-text-hero__overlay {
		background:
			radial-gradient(ellipse 100% 70% at 50% 45%, transparent 0%, rgba(0,0,0,0.55) 100%),
			linear-gradient(to bottom, transparent 55%, rgba(0,0,0,0.4));
	}

	.wsk-morph-text-hero__badge {
		font-size: 10px;
		padding: 7px 14px;
		margin-bottom: 20px;
	}
	.wsk-morph-text-hero__eyebrow {
		font-size: 11px;
		gap: 10px;
		letter-spacing: 0.2em;
		margin-bottom: 22px;
	}
	.wsk-morph-text-hero__eyebrow-line { flex-basis: 22px; }

	.wsk-morph-text-hero .wsk-morph-text-hero__heading {
		font-size: var(--wsk-mt-heading-font-size-sm, clamp(2.1rem, 9vw, 3rem));
		letter-spacing: -0.015em;
		line-height: 1.12;
		max-width: 100%;
		margin-bottom: 24px;
		gap: 0.18em;
	}

	/* Lighter 3D descent for phones */
	.wsk-mt-char {
		transform: translateY(0.45em) translateZ(-40px) rotateX(-40deg);
		filter: blur(6px);
		text-shadow: 0 1px 0 rgba(255,255,255,0.14), 0 6px 14px rgba(0,0,0,0.5);
	}
	@keyframes wsk-mt-char-in {
		0%   { opacity: 0; transform: translateY(0.45em) translateZ(-40px) rotateX(-40deg); filter: blur(6px); }
		60%  { opacity: 1; filter: blur(0); }
		100% { opacity: 1; transform: translateY(0) translateZ(0) rotateX(0); filter: blur(0); }
	}

	/* Morph phrase can wrap to its own line on mobile — that's intentional */
	.wsk-morph-text-hero__morph {
		display: inline-block;
		white-space: nowrap;
		max-width: 100%;
	}

	.wsk-morph-text-hero .wsk-morph-text-hero__subtext {
		font-size: 15px;
		line-height: 1.6;
		max-width: 38ch;
		margin-bottom: 36px;
	}

	/* CTAs inline, never stack */
	.wsk-morph-text-hero__buttons {
		gap: 16px;
		flex-wrap: nowrap;
		width: auto;
	}
	.wsk-morph-text-hero__btn--primary {
		padding: 11px 20px;
		font-size: 12px;
		/* long labels wrap inside the pill rather than forcing a second row */
		white-space: normal;
		max-width: 56vw;
		text-align: left;
		line-height: 1.25;
	}
	.wsk-morph-text-hero__btn--link {
		font-size: 12px;
		padding: 8px 0;
		white-space: nowrap;
	}
	.wsk-morph-text-hero__btn-tail { font-size: 14px; }
}

/* Very small phones */
@media (max-width: 400px) {
	.wsk-morph-text-hero__content { padding: 84px 14px 84px; }
	.wsk-morph-text-hero .wsk-morph-text-hero__heading {
		font-size: clamp(1.9rem, 10vw, 2.4rem);
	}
	.wsk-morph-text-hero__buttons { gap: 12px; }
	.wsk-morph-text-hero__btn--primary { padding: 10px 16px; font-size: 11.5px; }
	.wsk-morph-text-hero__btn--link    { font-size: 11.5px; gap: 6px; }
	.wsk-morph-text-hero__btn-tail     { font-size: 13px; }
	.wsk-morph-text-hero__eyebrow-line { flex-basis: 14px; }
}

/* ──────────────────────────────────────────────
   REDUCED MOTION
   ────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-morph-text-hero__aurora,
	.wsk-morph-text-hero__badge,
	.wsk-morph-text-hero__eyebrow,
	.wsk-morph-text-hero__subtext,
	.wsk-morph-text-hero__buttons,
	.wsk-morph-text-hero__inner,
	.wsk-morph-text-hero__morph,
	.wsk-mt-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-morph-text-hero__morph-layer--a,
	.wsk-morph-text-hero__morph-layer--b {
		animation: none !important;
		transition: none !important;
	}
	.wsk-morph-text-hero__badge-dot { animation: none !important; opacity: 1 !important; }
}
/**
 * WEPRO: Parallax Image Hero — "Tenuto"
 * Minimalist editorial · champagne palette · serif display · 3D char reveal ·
 * cinematic ken-burns · corner marks · Noblesse CTAs (inline, no-wrap).
 */

[class*="wsk-parallax-hero"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	box-sizing: border-box;
}

.wsk-parallax-hero {
	--wsk-px-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-px-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--wsk-px-accent-fallback: #C9A87A;
	--wsk-px-ink: #0a0a0f;
	--wsk-px-bone: #f4efe6;
	position: relative;
	min-height: var(--wsk-px-min-height, 100vh);
	background: var(--wsk-px-bg, var(--wsk-px-ink));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
}

/* ── MEDIA STAGE ──
 * Parallax Y shift (JS) + slow ken-burns zoom (CSS animation) composed into
 * a single transform using CSS vars so they never fight.
 */
/* Single image layer. Transform composes parallax Y shift + ken-burns zoom. */
.wsk-parallax-hero__bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: var(--wsk-px-ink);
	will-change: transform;
	--wsk-px-shift: 0px;
	transform: translate3d(0, var(--wsk-px-shift), 0) scale(1.08);
	transform-origin: center center;
}

.wsk-parallax-hero--kb .wsk-parallax-hero__bg {
	animation: wsk-px-kb 24s ease-in-out infinite alternate;
}

@keyframes wsk-px-kb {
	from { transform: translate3d(0, var(--wsk-px-shift, 0px), 0) scale(1.08) translate(0, 0); }
	to   { transform: translate3d(0, var(--wsk-px-shift, 0px), 0) scale(1.18) translate(-1.5%, 1%); }
}

/* Cinematic vignette */
.wsk-parallax-hero__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		radial-gradient(ellipse 85% 65% at 50% 45%, transparent 0%, var(--wsk-px-overlay, rgba(10,10,15,0.55)) 100%),
		linear-gradient(to bottom, rgba(0,0,0,0.25) 0%, transparent 35%, transparent 70%, rgba(0,0,0,0.45) 100%);
}

/* Subtle CSS film grain */
.wsk-parallax-hero__grain {
	position: absolute;
	inset: -20%;
	z-index: 2;
	pointer-events: none;
	opacity: 0.06;
	mix-blend-mode: overlay;
	background-image:
		radial-gradient(rgba(255,255,255,0.55) 1px, transparent 1px),
		radial-gradient(rgba(255,255,255,0.35) 1px, transparent 1px);
	background-size: 3px 3px, 5px 5px;
	background-position: 0 0, 1px 1px;
	animation: wsk-px-grain 1.1s steps(6) infinite;
}
@keyframes wsk-px-grain {
	0%   { transform: translate(0, 0); }
	20%  { transform: translate(-2%, 1%); }
	40%  { transform: translate(1%, -2%); }
	60%  { transform: translate(-1%, 2%); }
	80%  { transform: translate(2%, -1%); }
	100% { transform: translate(0, 0); }
}

/* Corner marks — cinematic frame */
.wsk-parallax-hero__mark {
	position: absolute;
	width: 24px;
	height: 24px;
	z-index: 3;
	pointer-events: none;
	opacity: 0.55;
	border-color: var(--wsk-px-bone);
	border-style: solid;
}
.wsk-parallax-hero__mark--tl { top: 22px;    left: 22px;   border-width: 1px 0 0 1px; }
.wsk-parallax-hero__mark--tr { top: 22px;    right: 22px;  border-width: 1px 1px 0 0; }
.wsk-parallax-hero__mark--bl { bottom: 22px; left: 22px;   border-width: 0 0 1px 1px; }
.wsk-parallax-hero__mark--br { bottom: 22px; right: 22px;  border-width: 0 1px 1px 0; }

/* ── CONTENT ── */
.wsk-parallax-hero__content {
	position: relative;
	z-index: 5;
	padding: var(--wsk-px-padding, 180px 32px 140px);
	text-align: center;
	max-width: 1080px;
	width: 100%;
}

/* Badge */
.wsk-parallax-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	border-radius: 999px;
	background: rgba(255,255,255,0.025);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid rgba(255,255,255,0.08);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	color: rgba(255,255,255,0.78);
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 28px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-px-fade 1s var(--wsk-px-ease-out) 0.15s forwards;
}
.wsk-parallax-hero__badge-dot {
	width: 6px;
	height: 6px;
	background: var(--wsk-px-badge-color, var(--wsk-px-accent-fallback));
	border-radius: 50%;
	box-shadow: 0 0 10px var(--wsk-px-badge-color, var(--wsk-px-accent-fallback));
	animation: wsk-px-pulse 2.4s ease-in-out infinite;
}

/* Eyebrow */
.wsk-parallax-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 13px;
	font-style: italic;
	font-weight: 400;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--wsk-px-accent, var(--wsk-px-accent-fallback));
	margin: 0 auto 28px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-px-fade 1s var(--wsk-px-ease-out) 0.25s forwards;
}
.wsk-parallax-hero__eyebrow-line {
	flex: 0 0 36px;
	height: 1px;
	background: currentColor;
	opacity: 0.55;
}

/* Heading — elegant editorial serif. No animation, no 3D, no sweeps. */
.wsk-parallax-hero .wsk-parallax-hero__heading {
	font-family: var(--wsk-px-heading-font-family, "Lora", "Playfair Display", Georgia, serif);
	font-size: var(--wsk-px-heading-font-size, clamp(3rem, 8vw, 7.5rem));
	font-weight: var(--wsk-px-heading-font-weight, 400);
	font-style: var(--wsk-px-heading-font-style, normal);
	line-height: var(--wsk-px-heading-line-height, 1.02);
	letter-spacing: var(--wsk-px-heading-letter-spacing, -0.015em);
	text-transform: var(--wsk-px-heading-text-transform, none);
	color: var(--wsk-px-heading-color, var(--wsk-px-bone));
	text-align: var(--wsk-px-heading-text-align, center) !important;
	margin: 0 auto var(--wsk-px-heading-margin-bottom, 40px);
	max-width: 16ch;

	font-feature-settings: "kern" 1, "liga" 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;

	text-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
}

.wsk-px-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}
.wsk-px-space { display: inline; }

.wsk-parallax-hero__heading .wsk-px-char {
	display: inline-block;
	color: inherit;
	opacity: 1;
	transform: none;
	filter: none;
	-webkit-text-fill-color: currentColor;
	background: none;
	animation: none;
}
@keyframes wsk-px-char-in {
	0%   { opacity: 0; transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg); filter: blur(8px); }
	60%  { opacity: 1; filter: blur(0); }
	100% { opacity: 1; transform: translateY(0) translateZ(0) rotateX(0); filter: blur(0); }
}

/* Accent word(s) — italic champagne silk */
.wsk-px-word--accent,
.wsk-parallax-hero__gradient-text {
	font-style: italic;
	font-weight: 500;
}

.wsk-parallax-hero__heading .wsk-px-word--accent .wsk-px-char,
.wsk-parallax-hero__heading .wsk-parallax-hero__gradient-text .wsk-px-char {
	color: var(--wsk-px-accent, var(--wsk-px-accent-fallback));
	text-shadow:
		0 1px 2px rgba(0, 0, 0, 0.3),
		0 6px 22px color-mix(in srgb, var(--wsk-px-accent, var(--wsk-px-accent-fallback)) 25%, transparent);
}
@keyframes wsk-px-silk {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* Subtext */
.wsk-parallax-hero .wsk-parallax-hero__subtext {
	font-family: var(--wsk-px-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-px-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-px-subtext-font-weight, 400);
	font-style: var(--wsk-px-subtext-font-style, normal);
	line-height: var(--wsk-px-subtext-line-height, 1.65);
	letter-spacing: var(--wsk-px-subtext-letter-spacing, 0.005em);
	text-transform: var(--wsk-px-subtext-text-transform, none);
	color: var(--wsk-px-subtext-color, rgba(244,239,230,0.72));
	text-align: var(--wsk-px-subtext-text-align, center) !important;
	margin: 0 auto var(--wsk-px-subtext-margin-bottom, 56px);
	max-width: 50ch;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-px-fade 1.1s var(--wsk-px-ease-out) 1.1s forwards;
}

/* ──────────────────────────────────────────────────────────────────────
   CTAs — "Noblesse": engraved champagne bevel pill + small-caps link.
   Always inline on every breakpoint, never stack.
   ────────────────────────────────────────────────────────────────────── */
.wsk-parallax-hero__buttons {
	display: inline-flex;
	align-items: center;
	gap: 36px;
	flex-wrap: nowrap;
	justify-content: center;
	max-width: 100%;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-px-fade 1s var(--wsk-px-ease-out) 1.3s forwards;
}

/* Kill global link decoration inside the CTAs */
.wsk-parallax-hero__btn,
.wsk-parallax-hero__btn:hover,
.wsk-parallax-hero__btn:focus,
.wsk-parallax-hero__btn:active,
.wsk-parallax-hero__btn:visited,
.fusion-body .wsk-parallax-hero__btn,
.fusion-body .wsk-parallax-hero__btn:hover {
	text-decoration: none !important;
	border-bottom: 0 !important;
}
.wsk-parallax-hero__btn * { text-decoration: none !important; }

/* Primary — champagne bevel pill with ink arrow capsule */
.wsk-parallax-hero .wsk-parallax-hero__btn--primary {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 16px 30px 16px 32px;
	border-radius: 999px;
	background:
		linear-gradient(180deg,
			color-mix(in srgb, var(--wsk-px-btn1-bg, #f4efe6) 100%, white 8%) 0%,
			var(--wsk-px-btn1-bg, #f4efe6) 48%,
			color-mix(in srgb, var(--wsk-px-btn1-bg, #f4efe6) 92%, black) 100%);
	color: var(--wsk-px-btn1-color, var(--wsk-px-ink)) !important;
	border: 1px solid color-mix(in srgb, var(--wsk-px-accent, var(--wsk-px-accent-fallback)) 45%, transparent);
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 15px;
	font-style: italic;
	font-weight: 500;
	letter-spacing: 0.005em;
	overflow: hidden;
	white-space: nowrap;
	transform: translateZ(0);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.85),
		inset 0 -1px 0 rgba(0,0,0,0.12),
		0 1px 2px rgba(10,10,15,0.25),
		0 18px 46px -8px rgba(10,10,15,0.55);
	transition:
		transform 0.6s var(--wsk-px-ease-out),
		box-shadow 0.6s var(--wsk-px-ease-out),
		border-color 0.4s var(--wsk-px-ease-out);
}

.wsk-parallax-hero .wsk-parallax-hero__btn--primary::after {
	content: "";
	position: absolute;
	inset: 3px;
	border-radius: inherit;
	pointer-events: none;
	background:
		radial-gradient(120% 160% at 20% 0%, rgba(255,255,255,0.8), transparent 55%),
		radial-gradient(120% 160% at 80% 100%,
			color-mix(in srgb, var(--wsk-px-accent, var(--wsk-px-accent-fallback)) 35%, transparent),
			transparent 60%);
	mix-blend-mode: screen;
	opacity: 0.9;
	transition: opacity 0.5s var(--wsk-px-ease-out);
}

.wsk-parallax-hero .wsk-parallax-hero__btn--primary::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(100deg,
		transparent 0%,
		rgba(255,255,255,0.65) 45%,
		rgba(255,255,255,0.65) 55%,
		transparent 100%);
	transform: translateX(-120%);
	transition: transform 1.1s var(--wsk-px-ease-out);
	pointer-events: none;
}

.wsk-parallax-hero .wsk-parallax-hero__btn--primary:hover {
	transform: translateY(-3px);
	border-color: color-mix(in srgb, var(--wsk-px-accent, var(--wsk-px-accent-fallback)) 75%, transparent);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.9),
		inset 0 -1px 0 rgba(0,0,0,0.14),
		0 2px 4px rgba(10,10,15,0.28),
		0 28px 60px -10px rgba(10,10,15,0.7),
		0 0 28px -4px color-mix(in srgb, var(--wsk-px-accent, var(--wsk-px-accent-fallback)) 60%, transparent);
}

.wsk-parallax-hero .wsk-parallax-hero__btn--primary:hover::before { transform: translateX(120%); }
.wsk-parallax-hero .wsk-parallax-hero__btn--primary:hover::after  { opacity: 1; }

.wsk-parallax-hero__btn--primary > .wsk-parallax-hero__btn-text,
.wsk-parallax-hero__btn--primary > .wsk-parallax-hero__btn-arrow {
	position: relative;
	z-index: 2;
}

.wsk-parallax-hero__btn--primary .wsk-parallax-hero__btn-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--wsk-px-ink) 92%, transparent);
	color: var(--wsk-px-bone);
	transition: transform 0.55s var(--wsk-px-ease-out), background-color 0.4s;
}
.wsk-parallax-hero__btn--primary .wsk-parallax-hero__btn-arrow svg {
	width: 12px; height: 9px;
}
.wsk-parallax-hero__btn--primary:hover .wsk-parallax-hero__btn-arrow {
	transform: translateX(3px) rotate(-8deg);
	background: var(--wsk-px-ink);
}

/* Secondary — italic small-caps link with dual hairline animation */
.wsk-parallax-hero .wsk-parallax-hero__btn--link {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 12px 4px 14px;
	color: var(--wsk-px-btn2-color, rgba(244,239,230,0.9)) !important;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 13px;
	font-style: italic;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: color 0.4s var(--wsk-px-ease-out);
}

.wsk-parallax-hero__btn--link .wsk-parallax-hero__btn-label {
	position: relative;
	display: inline-block;
}

.wsk-parallax-hero__btn--link .wsk-parallax-hero__btn-label::before,
.wsk-parallax-hero__btn--link .wsk-parallax-hero__btn-label::after {
	content: "";
	position: absolute;
	left: 0; right: 0; bottom: -6px;
	height: 1px;
	transform-origin: right center;
	transition: transform 0.6s var(--wsk-px-ease-out), opacity 0.4s;
}
.wsk-parallax-hero__btn--link .wsk-parallax-hero__btn-label::before {
	background: currentColor;
	opacity: 0.4;
}
.wsk-parallax-hero__btn--link .wsk-parallax-hero__btn-label::after {
	background: var(--wsk-px-accent, var(--wsk-px-accent-fallback));
	opacity: 0;
	transform: scaleX(0);
	transform-origin: left center;
}

.wsk-parallax-hero__btn--link:hover {
	color: var(--wsk-px-btn2-hover, var(--wsk-px-accent-fallback)) !important;
}
.wsk-parallax-hero__btn--link:hover .wsk-parallax-hero__btn-label::before {
	transform: scaleX(0);
	opacity: 0;
}
.wsk-parallax-hero__btn--link:hover .wsk-parallax-hero__btn-label::after {
	transform: scaleX(1);
	opacity: 0.9;
}

.wsk-parallax-hero__btn-tail {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: 11px;
	line-height: 1;
	opacity: 0.55;
	transition:
		transform 0.5s var(--wsk-px-ease-out),
		opacity 0.4s,
		border-color 0.4s,
		background-color 0.4s;
}
.wsk-parallax-hero__btn--link:hover .wsk-parallax-hero__btn-tail {
	transform: translateX(6px);
	opacity: 1;
	border-color: var(--wsk-px-accent, var(--wsk-px-accent-fallback));
	background: color-mix(in srgb, var(--wsk-px-accent, var(--wsk-px-accent-fallback)) 18%, transparent);
}

.wsk-parallax-hero__btn:focus-visible {
	outline: 2px solid var(--wsk-px-accent, var(--wsk-px-accent-fallback));
	outline-offset: 4px;
}

.wsk-parallax-hero__inner { margin-top: 40px; }

@keyframes wsk-px-fade {
	to { opacity: 1; transform: translateY(0); }
}
@keyframes wsk-px-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.4; transform: scale(0.85); }
}

/* ──────────────────────────────────────────────
   TABLET
   ────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.wsk-parallax-hero__content {
		padding: clamp(130px, 18vh, 160px) 28px 110px;
	}
	.wsk-parallax-hero .wsk-parallax-hero__heading {
		font-size: var(--wsk-px-heading-font-size-md, clamp(2.5rem, 7vw, 5rem));
	}
	.wsk-parallax-hero__mark { width: 20px; height: 20px; }
	.wsk-parallax-hero__mark--tl, .wsk-parallax-hero__mark--tr { top: 18px; }
	.wsk-parallax-hero__mark--bl, .wsk-parallax-hero__mark--br { bottom: 18px; }
	.wsk-parallax-hero__mark--tl, .wsk-parallax-hero__mark--bl { left: 18px; }
	.wsk-parallax-hero__mark--tr, .wsk-parallax-hero__mark--br { right: 18px; }
}

/* ──────────────────────────────────────────────
   MOBILE — 100% responsive; CTAs inline, never stack
   ────────────────────────────────────────────── */
@media (max-width: 768px) {
	.wsk-parallax-hero {
		min-height: var(--wsk-px-min-height, 92vh);
	}
	.wsk-parallax-hero__content {
		padding: clamp(96px, 14vh, 120px) 20px clamp(84px, 12vh, 110px);
		max-width: 560px;
	}
	/* Stronger overlay on phones for readability over any image */
	.wsk-parallax-hero__overlay {
		background:
			radial-gradient(ellipse 100% 70% at 50% 45%, rgba(0,0,0,0.35) 0%, rgba(0,0,0,0.72) 100%),
			linear-gradient(to bottom, rgba(0,0,0,0.35) 0%, transparent 30%, transparent 65%, rgba(0,0,0,0.55) 100%);
	}
	.wsk-parallax-hero__grain { opacity: 0.08; }

	.wsk-parallax-hero__badge {
		font-size: 10px;
		padding: 7px 14px;
		margin-bottom: 20px;
	}
	.wsk-parallax-hero__eyebrow {
		font-size: 11px;
		gap: 10px;
		letter-spacing: 0.2em;
		margin-bottom: 22px;
	}
	.wsk-parallax-hero__eyebrow-line { flex-basis: 22px; }

	.wsk-parallax-hero .wsk-parallax-hero__heading {
		font-size: var(--wsk-px-heading-font-size-sm, clamp(2.1rem, 9vw, 3rem));
		letter-spacing: -0.015em;
		line-height: 1.08;
		max-width: 100%;
		margin-bottom: 24px;
	}

	.wsk-parallax-hero .wsk-parallax-hero__subtext {
		font-size: 15px;
		line-height: 1.6;
		max-width: 38ch;
		margin-bottom: 36px;
	}

	/* CTAs stay inline, primary pill shrinks, long labels wrap INSIDE the pill */
	.wsk-parallax-hero__buttons {
		gap: 18px;
		flex-wrap: nowrap;
		width: auto;
	}
	.wsk-parallax-hero .wsk-parallax-hero__btn--primary {
		padding: 13px 22px 13px 24px;
		font-size: 13px;
		gap: 10px;
		/* long labels wrap inside the pill rather than forcing a second row */
		white-space: normal;
		max-width: 58vw;
		text-align: left;
		line-height: 1.2;
	}
	.wsk-parallax-hero__btn--primary .wsk-parallax-hero__btn-arrow {
		width: 22px; height: 22px;
	}
	.wsk-parallax-hero__btn--primary .wsk-parallax-hero__btn-arrow svg {
		width: 10px; height: 8px;
	}
	.wsk-parallax-hero .wsk-parallax-hero__btn--link {
		font-size: 11.5px;
		letter-spacing: 0.2em;
		gap: 10px;
		padding: 10px 2px 12px;
	}
	.wsk-parallax-hero__btn-tail { width: 18px; height: 18px; font-size: 10px; }

	.wsk-parallax-hero__mark {
		width: 16px;
		height: 16px;
		opacity: 0.45;
	}
	.wsk-parallax-hero__mark--tl, .wsk-parallax-hero__mark--tr { top: 14px; }
	.wsk-parallax-hero__mark--bl, .wsk-parallax-hero__mark--br { bottom: 14px; }
	.wsk-parallax-hero__mark--tl, .wsk-parallax-hero__mark--bl { left: 14px; }
	.wsk-parallax-hero__mark--tr, .wsk-parallax-hero__mark--br { right: 14px; }
}

/* Very small phones */
@media (max-width: 400px) {
	.wsk-parallax-hero__content { padding: 90px 16px 90px; }
	.wsk-parallax-hero .wsk-parallax-hero__heading {
		font-size: clamp(1.95rem, 10vw, 2.4rem);
	}
	.wsk-parallax-hero__buttons { gap: 14px; }
	.wsk-parallax-hero .wsk-parallax-hero__btn--primary {
		padding: 12px 18px 12px 20px;
		font-size: 12px;
		max-width: 60vw;
	}
	.wsk-parallax-hero .wsk-parallax-hero__btn--link { font-size: 10.5px; gap: 8px; }
	.wsk-parallax-hero__btn-tail { width: 16px; height: 16px; font-size: 9px; }
	.wsk-parallax-hero__eyebrow-line { flex-basis: 14px; }
}

/* ──────────────────────────────────────────────
   REDUCED MOTION
   ────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-parallax-hero__bg { animation: none !important; }
	.wsk-parallax-hero__grain,
	.wsk-parallax-hero__badge,
	.wsk-parallax-hero__eyebrow,
	.wsk-parallax-hero__subtext,
	.wsk-parallax-hero__buttons,
	.wsk-parallax-hero__inner,
	.wsk-px-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-px-word--accent .wsk-px-char,
	.wsk-parallax-hero__gradient-text .wsk-px-char {
		animation: none !important;
	}
	.wsk-parallax-hero__badge-dot { animation: none !important; opacity: 1 !important; }
}
/**
 * WEPRO: Gradient Hero — "Aurora" editorial luxury.
 * Champagne aurora mesh · serif display heading · 3D character descent ·
 * Noblesse CTA pair · grain · corner marks · prefers-reduced-motion aware.
 */

/* ────────────────────────────────────────────────────────────────────
   1. LAYOUT
   ──────────────────────────────────────────────────────────────────── */
.wsk-gradient-hero {
	--wsk-gh-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-gh-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--wsk-gh-ink: #14121a;
	--wsk-gh-bone: #f4efe6;
	--wsk-gh-accent-fallback: #C9A87A;
	/* c1 = champagne glow, c2 = warm amber, c3 = dusty rose, c4 = deep plum */
	--wsk-gh-c1: var(--wsk-gh-color-1, #E8C174);
	--wsk-gh-c2: var(--wsk-gh-color-2, #b08a5c);
	--wsk-gh-c3: var(--wsk-gh-color-3, #6b4a5a);
	--wsk-gh-c4: var(--wsk-gh-color-4, #1a1520);
	position: relative;
	min-height: var(--wsk-gh-min-height, 100vh);
	/* Warm smoky backdrop — plum core fading to deep ink */
	background:
		radial-gradient(ellipse 90% 65% at 50% 50%, #2a2030 0%, #1d1825 35%, #14121a 65%, #0a080e 100%);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
}

/* Centre vignette — softly pulls focus to the emerald heart */
.wsk-gradient-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 80% 60% at 50% 45%, transparent 0%, rgba(0,0,0,0.3) 75%, rgba(0,0,0,0.55) 100%),
		linear-gradient(to bottom, rgba(0,0,0,0.2) 0%, transparent 25%, transparent 75%, rgba(0,0,0,0.35) 100%);
	z-index: 3;
	pointer-events: none;
}

/* ────────────────────────────────────────────────────────────────────
   2. GRANITE LUXURY — sculpted overlapping curves with gold hairlines
   Deep emerald body · sculpted shadow ribbons · thin gold edge highlights
   ──────────────────────────────────────────────────────────────────── */
.wsk-gradient-hero__mesh {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	opacity: 1;
}

/* Champagne halo — soft warm light source, drifts slowly like candlelight */
.wsk-gradient-hero__blob--1 {
	position: absolute;
	width: 80%;
	height: 80%;
	top: -15%;
	left: 10%;
	border-radius: 50%;
	background: radial-gradient(circle at center,
		rgba(232, 193, 116, 0.35) 0%,
		rgba(232, 193, 116, 0.12) 30%,
		transparent 60%);
	filter: blur(40px);
	will-change: transform, opacity;
	animation: wsk-gh-drift-1 18s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
}

/* Dusty rose wash — bottom right, deeper warmth */
.wsk-gradient-hero__blob--2 {
	position: absolute;
	width: 70%;
	height: 75%;
	bottom: -15%;
	right: -5%;
	border-radius: 50%;
	background: radial-gradient(circle at center,
		rgba(176, 138, 92, 0.25) 0%,
		rgba(107, 74, 90, 0.15) 40%,
		transparent 65%);
	filter: blur(50px);
	will-change: transform, opacity;
	animation: wsk-gh-drift-2 22s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
}

/* Plum shadow — top right, adds depth pocket */
.wsk-gradient-hero__blob--3 {
	position: absolute;
	width: 55%;
	height: 55%;
	top: -10%;
	right: -10%;
	border-radius: 50%;
	background: radial-gradient(circle at center,
		rgba(107, 74, 90, 0.22) 0%,
		rgba(26, 21, 32, 0.12) 50%,
		transparent 70%);
	filter: blur(60px);
	will-change: transform, opacity;
	animation: wsk-gh-drift-3 16s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
}

/* Subtle bottom-left glow */
.wsk-gradient-hero__blob--4 {
	display: block;
	position: absolute;
	width: 60%;
	height: 60%;
	bottom: -10%;
	left: -10%;
	border-radius: 50%;
	background: radial-gradient(circle at center,
		rgba(232, 193, 116, 0.15) 0%,
		rgba(176, 138, 92, 0.08) 40%,
		transparent 65%);
	filter: blur(55px);
	will-change: transform, opacity;
	animation: wsk-gh-drift-4 20s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite;
}

/* Seamless luxury drift — start = end for infinite smooth loop */
@keyframes wsk-gh-drift-1 {
	0%,100% { transform: translate(0, 0)      scale(1);    opacity: 0.7; }
	25%     { transform: translate(12%, 6%)   scale(1.15); opacity: 1;   }
	50%     { transform: translate(4%, 12%)   scale(1.08); opacity: 0.85;}
	75%     { transform: translate(-8%, 4%)   scale(1.12); opacity: 0.95;}
}
@keyframes wsk-gh-drift-2 {
	0%,100% { transform: translate(0, 0)      scale(1);    opacity: 0.7; }
	25%     { transform: translate(-10%, -8%) scale(1.12); opacity: 0.95;}
	50%     { transform: translate(-14%, 4%)  scale(1.06); opacity: 0.8; }
	75%     { transform: translate(6%, -10%)  scale(1.14); opacity: 1;   }
}
@keyframes wsk-gh-drift-3 {
	0%,100% { transform: translate(0, 0)      scale(1);    opacity: 0.65;}
	33%     { transform: translate(-10%, 10%) scale(1.1);  opacity: 0.9; }
	66%     { transform: translate(8%, 6%)    scale(1.05); opacity: 0.75;}
}
@keyframes wsk-gh-drift-4 {
	0%,100% { transform: translate(0, 0)      scale(1);    opacity: 0.7; }
	33%     { transform: translate(12%, -8%)  scale(1.14); opacity: 1;   }
	66%     { transform: translate(-6%, 8%)   scale(1.07); opacity: 0.85;}
}


/* ────────────────────────────────────────────────────────────────────
   3. GRAIN — subtle film texture
   ──────────────────────────────────────────────────────────────────── */
.wsk-gradient-hero__grain {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	opacity: 0.09;
	mix-blend-mode: overlay;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200' viewBox='0 0 200 200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.6 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
	background-size: 200px 200px;
}

/* ────────────────────────────────────────────────────────────────────
   4. CORNER MARKS — hairline brackets
   ──────────────────────────────────────────────────────────────────── */
.wsk-gradient-hero__mark {
	position: absolute;
	width: 22px;
	height: 22px;
	z-index: 3;
	pointer-events: none;
	opacity: 0.55;
}
.wsk-gradient-hero__mark--tl { top: 24px; left: 24px; border-top: 1px solid color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, transparent); border-left: 1px solid color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, transparent); }
.wsk-gradient-hero__mark--tr { top: 24px; right: 24px; border-top: 1px solid color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, transparent); border-right: 1px solid color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, transparent); }
.wsk-gradient-hero__mark--bl { bottom: 24px; left: 24px; border-bottom: 1px solid color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, transparent); border-left: 1px solid color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, transparent); }
.wsk-gradient-hero__mark--br { bottom: 24px; right: 24px; border-bottom: 1px solid color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, transparent); border-right: 1px solid color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, transparent); }

/* ────────────────────────────────────────────────────────────────────
   5. CONTENT
   ──────────────────────────────────────────────────────────────────── */
.wsk-gradient-hero__content {
	position: relative;
	z-index: 4;
	padding: var(--wsk-gh-padding, 140px 24px 100px);
	text-align: var(--wsk-gh-align, center);
	max-width: 1080px;
	width: 100%;
}

/* ────────────────────────────────────────────────────────────────────
   6. BADGE
   ──────────────────────────────────────────────────────────────────── */
.wsk-gradient-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	border-radius: 999px;
	background: rgba(255,255,255,0.025);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid rgba(255,255,255,0.08);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	color: rgba(244,239,230,0.78);
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 40px;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-gh-fade 1s var(--wsk-gh-ease-out) 0.2s forwards;
}

.wsk-gradient-hero__badge-dot {
	width: 6px;
	height: 6px;
	background: var(--wsk-gh-badge-color, #C9A87A);
	border-radius: 50%;
	box-shadow: 0 0 10px var(--wsk-gh-badge-color, #C9A87A);
	animation: wsk-gh-pulse 2.4s ease-in-out infinite;
}

/* ────────────────────────────────────────────────────────────────────
   7. HEADING — editorial serif with 3D character descent
   ──────────────────────────────────────────────────────────────────── */
.wsk-gradient-hero .wsk-gradient-hero__heading {
	font-family: var(--wsk-gh-heading-font-family, "Playfair Display", "Lora", Georgia, serif);
	font-size: var(--wsk-gh-heading-font-size, clamp(2.75rem, 7.5vw, 6.75rem));
	font-weight: var(--wsk-gh-heading-font-weight, 400);
	font-style: var(--wsk-gh-heading-font-style, normal);
	line-height: var(--wsk-gh-heading-line-height, 1.02);
	letter-spacing: var(--wsk-gh-heading-letter-spacing, -0.025em);
	text-transform: var(--wsk-gh-heading-text-transform, none);
	text-align: var(--wsk-gh-heading-text-align, center) !important;
	margin-top: var(--wsk-gh-heading-margin-top, 0);
	margin-bottom: var(--wsk-gh-heading-margin-bottom, 36px);
	max-width: 16ch;
	margin-left: auto;
	margin-right: auto;
	perspective: 900px;
	perspective-origin: 50% 60%;
	/* Editor-controlled color, clean editorial serif */
	color: var(--wsk-gh-heading-color, var(--wsk-gh-bone));
	text-shadow:
		0 1px 0 rgba(255, 255, 255, 0.05),
		0 2px 24px rgba(0, 0, 0, 0.5);
}

.wsk-gh-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}

.wsk-gh-space {
	display: inline;
	white-space: normal;
}

.wsk-gh-char {
	display: inline-block;
	opacity: 0;
	transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
	filter: blur(8px);
	transform-origin: center bottom;
	will-change: transform, opacity, filter;
	animation: wsk-gh-char-in 1.25s var(--wsk-gh-ease-out) both;
	animation-delay: calc(0.4s + var(--wsk-gh-i, 0) * 0.04s);
}

/* Inherit the heading's color cleanly */
.wsk-gradient-hero__heading .wsk-gh-char {
	color: inherit;
	-webkit-text-fill-color: currentColor;
}

/* Accent word — italic champagne with silk sweep */
.wsk-gh-word--accent {
	font-style: italic;
	font-weight: 500;
	color: var(--wsk-gh-accent, var(--wsk-gh-accent-fallback));
	background: linear-gradient(
		100deg,
		color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 50%, var(--wsk-gh-bone)) 0%,
		var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 45%,
		color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, #ffffff) 70%,
		var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 100%
	);
	background-size: 200% 100%;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	animation: wsk-gh-silkSweep 8s ease-in-out infinite;
}

.wsk-gh-word--accent .wsk-gh-char {
	-webkit-text-fill-color: transparent;
	color: transparent;
}

@keyframes wsk-gh-silkSweep {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* ────────────────────────────────────────────────────────────────────
   8. SUBTEXT
   ──────────────────────────────────────────────────────────────────── */
.wsk-gradient-hero .wsk-gradient-hero__subtext {
	font-family: var(--wsk-gh-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-gh-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-gh-subtext-font-weight, 400);
	font-style: var(--wsk-gh-subtext-font-style, normal);
	line-height: var(--wsk-gh-subtext-line-height, 1.65);
	letter-spacing: var(--wsk-gh-subtext-letter-spacing, 0.005em);
	text-transform: var(--wsk-gh-subtext-text-transform, none);
	color: var(--wsk-gh-subtext-color, rgba(244,239,230,0.62));
	text-align: var(--wsk-gh-subtext-text-align, center) !important;
	max-width: 52ch;
	margin-top: var(--wsk-gh-subtext-margin-top, 0);
	margin-bottom: var(--wsk-gh-subtext-margin-bottom, 52px);
	margin-left: auto;
	margin-right: auto;
	opacity: 0;
	transform: translateY(16px);
	animation: wsk-gh-fade 1.1s var(--wsk-gh-ease-out) 1.1s forwards;
}

/* ────────────────────────────────────────────────────────────────────
   9. CTAs — "Noblesse": engraved champagne bevel pill + small-caps link.
   Always inline on every breakpoint, never stack.
   ──────────────────────────────────────────────────────────────────── */
.wsk-gradient-hero__buttons {
	display: inline-flex;
	align-items: center;
	gap: 36px;
	flex-wrap: nowrap;
	justify-content: center;
	max-width: 100%;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-gh-fade 1s var(--wsk-gh-ease-out) 1.3s forwards;
}

.wsk-gradient-hero__btn,
.wsk-gradient-hero__btn:hover,
.wsk-gradient-hero__btn:focus,
.wsk-gradient-hero__btn:active,
.wsk-gradient-hero__btn:visited,
.fusion-body .wsk-gradient-hero__btn,
.fusion-body .wsk-gradient-hero__btn:hover {
	text-decoration: none !important;
	border-bottom: 0 !important;
}
.wsk-gradient-hero__btn * { text-decoration: none !important; }

/* Primary — 3D glass pill: translucent, heavily blurred, luminous rim */
.wsk-gradient-hero .wsk-gradient-hero__btn--primary,
.fusion-body .wsk-gradient-hero .wsk-gradient-hero__btn--primary,
body .wsk-gradient-hero .wsk-gradient-hero__btn--primary {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 16px 30px 16px 32px;
	border-radius: 999px;
	/* Glass fill — translucent top→bottom fade, never opaque */
	background:
		linear-gradient(180deg,
			rgba(255,255,255,0.35) 0%,
			rgba(255,255,255,0.18) 45%,
			rgba(255,255,255,0.08) 75%,
			rgba(255,255,255,0.14) 100%) !important;
	background-color: rgba(255,255,255,0.12) !important;
	/* Real frosted glass */
	backdrop-filter: blur(18px) saturate(180%);
	-webkit-backdrop-filter: blur(18px) saturate(180%);
	color: var(--wsk-gh-bone) !important;
	border: 1px solid rgba(255,255,255,0.35);
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 15px;
	font-style: italic;
	font-weight: 500;
	letter-spacing: 0.005em;
	overflow: hidden;
	white-space: nowrap;
	transform: translateZ(0);
	/* 3D depth — bright top rim, dark bottom shadow, outer drop */
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.75),
		inset 0 -1px 1px rgba(0,0,0,0.25),
		inset 0 0 0 1px rgba(255,255,255,0.08),
		0 1px 2px rgba(0,0,0,0.2),
		0 14px 32px -6px rgba(0,0,0,0.45),
		0 22px 60px -12px rgba(0,0,0,0.6);
	transition:
		transform 0.6s var(--wsk-gh-ease-out),
		box-shadow 0.6s var(--wsk-gh-ease-out),
		background 0.4s var(--wsk-gh-ease-out),
		border-color 0.4s var(--wsk-gh-ease-out);
}

/* Top highlight streak — the glass "shine" curve across the upper half */
.wsk-gradient-hero .wsk-gradient-hero__btn--primary::after {
	content: "";
	position: absolute;
	top: 1px;
	left: 6%;
	right: 6%;
	height: 48%;
	border-radius: 999px 999px 80% 80% / 999px 999px 100% 100%;
	pointer-events: none;
	background: linear-gradient(180deg,
		rgba(255,255,255,0.55) 0%,
		rgba(255,255,255,0.15) 60%,
		transparent 100%);
	opacity: 0.85;
	z-index: 0;
}

/* Silk sheen — soft luminous band, slow graceful sweep L→R on hover */
.wsk-gradient-hero .wsk-gradient-hero__btn--primary::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 45%;
	border-radius: inherit;
	background: linear-gradient(108deg,
		transparent 0%,
		rgba(255,255,255,0.12) 35%,
		rgba(255,255,255,0.38) 50%,
		rgba(255,255,255,0.12) 65%,
		transparent 100%);
	transform: translateX(-160%) skewX(-16deg);
	transition: transform 1.4s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 1;
}

.wsk-gradient-hero .wsk-gradient-hero__btn--primary:hover::before {
	transform: translateX(260%) skewX(-16deg);
}

/* Hover: lift + deeper shadow + slightly brighter. Sheen keeps running. */
.wsk-gradient-hero .wsk-gradient-hero__btn--primary:hover {
	transform: translateY(-3px);
	background:
		linear-gradient(180deg,
			color-mix(in srgb, var(--wsk-gh-btn1-bg, var(--wsk-gh-bone)) 100%, white 12%) 0%,
			var(--wsk-gh-btn1-bg, var(--wsk-gh-bone)) 50%,
			color-mix(in srgb, var(--wsk-gh-btn1-bg, var(--wsk-gh-bone)) 95%, black) 100%);
	border-color: color-mix(in srgb, var(--wsk-gh-btn1-bg, var(--wsk-gh-bone)) 85%, transparent);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.95),
		inset 0 -1px 0 rgba(0,0,0,0.14),
		0 2px 4px rgba(10,10,15,0.28),
		0 24px 56px -10px rgba(10,10,15,0.62),
		0 0 48px -6px color-mix(in srgb, var(--wsk-gh-btn1-bg, var(--wsk-gh-bone)) 55%, transparent);
}

.wsk-gradient-hero__btn-text {
	position: relative;
	z-index: 2;
}

.wsk-gradient-hero__btn-arrow {
	position: relative;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	/* Dark glass capsule — translucent ink with inner rim, icon color inherits */
	background:
		linear-gradient(180deg,
			rgba(255, 255, 255, 0.08) 0%,
			rgba(0, 0, 0, 0.35) 100%),
		color-mix(in srgb, var(--wsk-gh-ink) 80%, transparent);
	color: var(--wsk-gh-btn1-bg, var(--wsk-gh-bone));
	border: 1px solid rgba(255, 255, 255, 0.18);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.15),
		inset 0 -1px 0 rgba(0, 0, 0, 0.3),
		0 2px 6px rgba(0, 0, 0, 0.3);
	transition: transform 0.6s var(--wsk-gh-ease-out), box-shadow 0.4s var(--wsk-gh-ease-out);
}
.wsk-gradient-hero__btn-arrow svg {
	width: 12px;
	height: 9px;
	display: block;
}
.wsk-gradient-hero__btn--primary:hover .wsk-gradient-hero__btn-arrow {
	transform: translateX(3px);
}

/* Secondary — italic small-caps link with capsule tail */
.wsk-gradient-hero .wsk-gradient-hero__btn--link {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 12px 4px 14px;
	background: transparent;
	border: 0;
	border-radius: 0;
	color: var(--wsk-gh-btn2-color, rgba(244,239,230,0.85)) !important;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	white-space: nowrap;
	transition: color 0.4s var(--wsk-gh-ease-out), transform 0.4s var(--wsk-gh-ease-out);
}

.wsk-gradient-hero__btn--link::after {
	content: "";
	position: absolute;
	left: 4px;
	right: 32px;
	bottom: 6px;
	height: 1px;
	background: color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 55%, transparent);
	transform-origin: left;
	transform: scaleX(0.35);
	transition: transform 0.6s var(--wsk-gh-ease-out), background 0.4s var(--wsk-gh-ease-out);
}

.wsk-gradient-hero__btn-tail {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	/* Softer translucent warm-cream backdrop + bright champagne icon */
	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.22);
	color: color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 100%, white 18%);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	transition: transform 0.5s var(--wsk-gh-ease-out), border-color 0.4s var(--wsk-gh-ease-out), background 0.4s var(--wsk-gh-ease-out), color 0.4s var(--wsk-gh-ease-out);
}

.wsk-gradient-hero__btn--link:hover {
	color: var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) !important;
}
.wsk-gradient-hero__btn--link:hover::after {
	transform: scaleX(1);
	background: var(--wsk-gh-accent, var(--wsk-gh-accent-fallback));
}
.wsk-gradient-hero__btn--link:hover .wsk-gradient-hero__btn-tail {
	transform: translateX(4px);
	border-color: var(--wsk-gh-accent, var(--wsk-gh-accent-fallback));
	background: color-mix(in srgb, var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) 12%, transparent);
}

.wsk-gradient-hero__btn:focus-visible {
	outline: 2px solid var(--wsk-gh-accent, var(--wsk-gh-accent-fallback));
	outline-offset: 4px;
}

.wsk-gradient-hero__inner {
	margin-top: 36px;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-gh-fade 1s var(--wsk-gh-ease-out) 1.5s forwards;
}

/* ────────────────────────────────────────────────────────────────────
   10. KEYFRAMES
   ──────────────────────────────────────────────────────────────────── */
@keyframes wsk-gh-fade {
	to { opacity: 1; transform: translateY(0); }
}

@keyframes wsk-gh-char-in {
	0% {
		opacity: 0;
		transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
		filter: blur(8px);
	}
	60% {
		opacity: 1;
		filter: blur(0);
	}
	100% {
		opacity: 1;
		transform: translateY(0) translateZ(0) rotateX(0deg);
		filter: blur(0);
	}
}

@keyframes wsk-gh-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.4; transform: scale(0.85); }
}

/* ────────────────────────────────────────────────────────────────────
   11. TOUCH
   ──────────────────────────────────────────────────────────────────── */
@media (hover: none) {
	.wsk-gradient-hero__btn--primary:active {
		transform: translateY(-2px);
	}
	.wsk-gradient-hero__btn--link:active {
		color: var(--wsk-gh-accent, var(--wsk-gh-accent-fallback)) !important;
	}
}

/* ────────────────────────────────────────────────────────────────────
   12. RESPONSIVE
   ──────────────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.wsk-gradient-hero .wsk-gradient-hero__heading {
		font-size: var(--wsk-gh-heading-font-size-md, var(--wsk-gh-heading-font-size, clamp(2.75rem, 7.5vw, 6.5rem)));
	}
	.wsk-gradient-hero .wsk-gradient-hero__subtext {
		font-size: var(--wsk-gh-subtext-font-size-md, var(--wsk-gh-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem)));
	}
}

@media (max-width: 768px) {
	.wsk-gradient-hero {
		min-height: var(--wsk-gh-min-height, 86vh);
	}
	.wsk-gradient-hero__content {
		padding: var(--wsk-gh-padding, 96px 20px 72px);
	}
	.wsk-gradient-hero .wsk-gradient-hero__heading {
		font-size: var(--wsk-gh-heading-font-size-sm, clamp(2.25rem, 9vw, 3.25rem));
		letter-spacing: -0.015em;
		max-width: 100%;
		margin-bottom: 24px;
	}
	.wsk-gradient-hero .wsk-gradient-hero__subtext {
		font-size: var(--wsk-gh-subtext-font-size-sm, 15px);
		line-height: 1.6;
		max-width: 38ch;
		margin-bottom: 36px;
	}
	.wsk-gradient-hero__badge {
		font-size: 10px;
		padding: 7px 14px;
		margin-bottom: 28px;
	}

	/* CTAs stay inline; primary pill shrinks; long labels wrap INSIDE the pill */
	.wsk-gradient-hero__buttons {
		gap: 18px;
		flex-wrap: nowrap;
		width: auto;
	}
	.wsk-gradient-hero .wsk-gradient-hero__btn--primary {
		padding: 13px 22px 13px 24px;
		font-size: 13px;
		gap: 10px;
		white-space: normal;
		max-width: 58vw;
		text-align: left;
		line-height: 1.2;
	}
	.wsk-gradient-hero__btn--primary .wsk-gradient-hero__btn-arrow {
		width: 22px; height: 22px;
	}
	.wsk-gradient-hero__btn--primary .wsk-gradient-hero__btn-arrow svg {
		width: 10px; height: 8px;
	}
	.wsk-gradient-hero .wsk-gradient-hero__btn--link {
		font-size: 11.5px;
		letter-spacing: 0.2em;
		gap: 10px;
		padding: 10px 2px 12px;
	}
	.wsk-gradient-hero__btn-tail { width: 18px; height: 18px; font-size: 10px; }

	.wsk-gradient-hero__mark { width: 16px; height: 16px; opacity: 0.45; }
	.wsk-gradient-hero__mark--tl, .wsk-gradient-hero__mark--tr { top: 14px; }
	.wsk-gradient-hero__mark--bl, .wsk-gradient-hero__mark--br { bottom: 14px; }
	.wsk-gradient-hero__mark--tl, .wsk-gradient-hero__mark--bl { left: 14px; }
	.wsk-gradient-hero__mark--tr, .wsk-gradient-hero__mark--br { right: 14px; }

	.wsk-gradient-hero__mesh { filter: blur(70px) saturate(110%); }
}

/* Very small phones */
@media (max-width: 400px) {
	.wsk-gradient-hero__content { padding: 90px 16px 90px; }
	.wsk-gradient-hero .wsk-gradient-hero__heading {
		font-size: clamp(1.95rem, 10vw, 2.4rem);
	}
	.wsk-gradient-hero__buttons { gap: 14px; }
	.wsk-gradient-hero .wsk-gradient-hero__btn--primary {
		padding: 12px 18px 12px 20px;
		font-size: 12.5px;
		max-width: 56vw;
	}
	.wsk-gradient-hero .wsk-gradient-hero__btn--link {
		font-size: 11px;
		letter-spacing: 0.18em;
		gap: 8px;
	}
}

/* ────────────────────────────────────────────────────────────────────
   13. REDUCED MOTION
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-gradient-hero__badge,
	.wsk-gradient-hero__subtext,
	.wsk-gradient-hero__buttons,
	.wsk-gradient-hero__inner,
	.wsk-gh-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-gh-word--accent {
		animation: none !important;
	}
	.wsk-gradient-hero__badge-dot,
	.wsk-gradient-hero__blob,
	.wsk-gradient-hero__blob--1,
	.wsk-gradient-hero__blob--2,
	.wsk-gradient-hero__blob--3,
	.wsk-gradient-hero__blob--4 {
		animation: none !important;
	}
}
/**
 * WEPRO: Spotlight Hero — "Proscenium" edition.
 *
 * Theatre-grade spotlight: vertical tungsten beam from the rig,
 * pooling on the subject below. Trapezoid cone, atmospheric haze,
 * ambient flicker, subtle gimbal tilt. Brushed-gold luxury CTAs.
 *
 * Architecture: pure CSS custom-properties + one conic/linear mask.
 * No images. No JS required for the look — only for optional gimbal.
 *
 * Design principles: monochrome default, serif display type, vertical
 * rhythm by golden ratio, restraint over ornament.
 */

/* ───────────────────────────────────────────────────────────
   Stage
   ─────────────────────────────────────────────────────────── */
.wsk-spotlight-hero {
	position: relative;
	min-height: var(--wsk-sl-min-height, 100vh);
	background: var(--wsk-sl-bg, #0B0B0D);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
	/* Subtle film-grain vignette so the dark never reads as flat #000. */
	background-image:
		radial-gradient(ellipse at 50% 100%, rgba(255, 232, 196, 0.035) 0%, transparent 55%),
		radial-gradient(ellipse at 50% -10%, rgba(0, 0, 0, 0.6) 0%, transparent 45%);
}

/* ───────────────────────────────────────────────────────────
   The Beam — a trapezoid cone from the rig to the stage.
   Built with clip-path so it's perfectly crisp on all DPI.
   ─────────────────────────────────────────────────────────── */
.wsk-spotlight-hero__rig {
	position: absolute;
	top: 0;
	left: 50%;
	width: var(--wsk-sl-beam-width, 45vw);
	height: 100%;
	/* Pan: horizontal follow. Tilt: subtle gimbal toward cursor. */
	transform:
		translateX(calc(-50% + var(--wsk-sl-beam-pan, 0vw)))
		rotate(var(--wsk-sl-beam-tilt, 0deg));
	transform-origin: 50% 0;
	/* Fast transition during tracking; the JS replaces it on pointer-leave for slow glide back. */
	transition: transform 180ms cubic-bezier(0.25, 0.1, 0.25, 1);
	pointer-events: none;
	z-index: 1;
	will-change: transform;
}

/* Slow glide-back state applied by JS on pointer-leave. */
.wsk-spotlight-hero__rig.is-returning {
	transition: transform 900ms cubic-bezier(0.25, 0.1, 0.25, 1);
}

/* Cone body — trapezoid narrows at top (10% width), widens at bottom. */
.wsk-spotlight-hero__beam {
	position: absolute;
	inset: 0;
	/* clip-path trapezoid: narrow at top, wide at bottom. */
	clip-path: polygon(45% 0, 55% 0, 100% 100%, 0 100%);
	background: linear-gradient(
		180deg,
		var(--wsk-sl-color, rgba(255, 232, 196, 0.28)) 0%,
		var(--wsk-sl-color, rgba(255, 232, 196, 0.28)) 30%,
		rgba(255, 232, 196, 0.10) 70%,
		transparent 100%
	);
	filter: blur(var(--wsk-sl-beam-blur, 40px));
	opacity: var(--wsk-sl-beam-opacity, 1);
	animation: wsk-sl-flicker 6s ease-in-out infinite;
}

/* Light pool on the stage floor — follows the rig pan at half the amplitude
   for a subtle parallax (floor is "lower" than the rig so it moves less). */
.wsk-spotlight-hero__pool {
	position: absolute;
	bottom: -10%;
	left: 50%;
	transform: translateX(calc(-50% + (var(--wsk-sl-beam-pan, 0vw) * 0.5)));
	width: 70%;
	height: 40%;
	background: radial-gradient(
		ellipse at 50% 40%,
		var(--wsk-sl-color, rgba(255, 232, 196, 0.18)) 0%,
		transparent 60%
	);
	filter: blur(30px);
	opacity: 0.85;
	pointer-events: none;
	z-index: 1;
	transition: transform 180ms cubic-bezier(0.25, 0.1, 0.25, 1);
}

/* Dust motes — live inside the rig's cone, so they pan with the light. */
.wsk-spotlight-hero__dust {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(calc(-50% + var(--wsk-sl-beam-pan, 0vw)));
	width: var(--wsk-sl-beam-width, 45vw);
	height: 100%;
	pointer-events: none;
	z-index: 2;
	opacity: 0.5;
	transition: transform 180ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
.wsk-spotlight-hero__dust.is-returning {
	transition: transform 900ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
.wsk-spotlight-hero__mote {
	position: absolute;
	width: 2px;
	height: 2px;
	border-radius: 50%;
	background: var(--wsk-sl-color, rgba(255, 232, 196, 0.9));
	box-shadow: 0 0 6px var(--wsk-sl-color, rgba(255, 232, 196, 0.6));
	will-change: transform, opacity;
}

/* ───────────────────────────────────────────────────────────
   Content — sits inside the lit cone.
   ─────────────────────────────────────────────────────────── */
.wsk-spotlight-hero__content {
	position: relative;
	z-index: 3;
	padding: var(--wsk-sl-padding, 120px 24px 80px);
	text-align: center;
	max-width: 960px;
	width: 100%;
	margin: 0 auto;
}

/* ───────────────────────────────────────────────────────────
   Badge — a hairline rule with a dot. No box, no border, no chip.
   Think: playbill credit. "A production of ___"
   ─────────────────────────────────────────────────────────── */
.wsk-spotlight-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	padding: 0;
	background: transparent;
	border: 0;
	font-family: var(--wsk-sh-subtext-font-family, 'Inter', system-ui, sans-serif);
	font-size: 0.7rem;
	letter-spacing: 0.32em; /* generous tracking — like engraved credit */
	text-transform: uppercase;
	color: var(--wsk-sl-badge-color, #D4AF37);
	font-weight: 500;
	margin-bottom: 44px;
	opacity: 0;
	animation: wsk-sl-fadeInUp 900ms cubic-bezier(0.2, 0, 0.2, 1) 200ms forwards;
}

/* Hairline rule to the LEFT of the dot — an editorial ornament, not a chip. */
.wsk-spotlight-hero__badge::before {
	content: '';
	display: inline-block;
	width: 32px;
	height: 1px;
	background: currentColor;
	opacity: 0.45;
}
.wsk-spotlight-hero__badge::after {
	content: '';
	display: inline-block;
	width: 32px;
	height: 1px;
	background: currentColor;
	opacity: 0.45;
}

.wsk-spotlight-hero__badge-dot {
	width: 4px;
	height: 4px;
	background: var(--wsk-sl-badge-color, #D4AF37);
	border-radius: 50%;
	box-shadow: 0 0 6px currentColor;
	animation: wsk-sl-pulse 2.4s ease-in-out infinite;
	flex-shrink: 0;
}

/* ───────────────────────────────────────────────────────────
   Heading — serif display type with mask-wipe reveal.
   ─────────────────────────────────────────────────────────── */
.wsk-spotlight-hero .wsk-spotlight-hero__heading {
	font-family: var(--wsk-sh-heading-font-family, 'Cormorant Garamond', 'Playfair Display', Georgia, serif);
	font-size: var(--wsk-sh-heading-font-size, clamp(2.75rem, 7vw, 6.5rem));
	font-weight: var(--wsk-sh-heading-font-weight, 400);
	font-style: var(--wsk-sh-heading-font-style, normal);
	line-height: var(--wsk-sh-heading-line-height, 1.02);
	letter-spacing: var(--wsk-sh-heading-letter-spacing, -0.015em);
	text-transform: var(--wsk-sh-heading-text-transform, none);
	color: var(--wsk-sh-heading-color, #FFF6E8);
	text-align: var(--wsk-sh-heading-text-align, center) !important;
	margin-top: var(--wsk-sh-heading-margin-top, 0);
	margin-bottom: var(--wsk-sh-heading-margin-bottom, 28px);
	/* Mask-wipe reveal — the beam "warms up" and illuminates the text. */
	clip-path: inset(0 100% 0 0);
	animation: wsk-sl-maskWipe 1100ms cubic-bezier(0.7, 0, 0.3, 1) 600ms forwards;
}

/* Accent word (after {gr}) — italic, gold-tinted, kept monochrome-adjacent. */
.wsk-spotlight-hero__gradient-text {
	font-style: italic;
	color: var(--wsk-sl-accent, #D4AF37);
	/* Subtle specular highlight instead of animated gradient. */
	background: linear-gradient(
		180deg,
		var(--wsk-sl-accent, #F4E4BC) 0%,
		var(--wsk-sl-accent-deep, #AA8C2C) 100%
	);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

/* ───────────────────────────────────────────────────────────
   Subtext — understated, neutral, generous leading.
   ─────────────────────────────────────────────────────────── */
.wsk-spotlight-hero .wsk-spotlight-hero__subtext {
	font-family: var(--wsk-sh-subtext-font-family, 'Inter', system-ui, sans-serif);
	font-size: var(--wsk-sh-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-sh-subtext-font-weight, 300);
	font-style: var(--wsk-sh-subtext-font-style, normal);
	line-height: var(--wsk-sh-subtext-line-height, 1.75);
	letter-spacing: var(--wsk-sh-subtext-letter-spacing, 0.01em);
	text-transform: var(--wsk-sh-subtext-text-transform, none);
	color: var(--wsk-sh-subtext-color, rgba(255, 246, 232, 0.64));
	text-align: var(--wsk-sh-subtext-text-align, center) !important;
	max-width: 560px;
	margin-top: var(--wsk-sh-subtext-margin-top, 0);
	margin-bottom: var(--wsk-sh-subtext-margin-bottom, 52px);
	margin-left: auto;
	margin-right: auto;
	opacity: 0;
	animation: wsk-sl-fadeInUp 900ms cubic-bezier(0.2, 0, 0.2, 1) 1000ms forwards;
}

/* ───────────────────────────────────────────────────────────
   CTA row — luxury button group.
   CORE RULE: shrink before wrap. Never stack at mid-breakpoints.
   Stack only at ≤480px, and only as full-width blocks.
   ─────────────────────────────────────────────────────────── */
.wsk-spotlight-hero__buttons {
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: center;
	gap: 20px;
	max-width: 100%;
	opacity: 0;
	animation: wsk-sl-fadeInUp 900ms cubic-bezier(0.2, 0, 0.2, 1) 1200ms forwards;
}

/* Base button — "Engraved on metal." No pills, no bounce, no underline. */
.wsk-spotlight-hero__btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 56px;
	padding: 0 36px;
	flex: 0 1 auto;
	min-width: 0;

	font-family: var(--wsk-sh-subtext-font-family, 'Inter', system-ui, sans-serif);
	font-size: 0.76rem;
	font-weight: 500;
	letter-spacing: 0.18em;
	text-transform: uppercase;

	/* Kill the <a> default underline completely, every state. */
	text-decoration: none !important;
	text-underline-offset: 0;

	white-space: nowrap;
	overflow: hidden;

	/* Gentle, not hard. Sharper than pill, softer than brick. */
	border-radius: 3px;
	cursor: pointer;
	transition:
		background 450ms cubic-bezier(0.2, 0, 0.2, 1),
		color 450ms cubic-bezier(0.2, 0, 0.2, 1),
		border-color 450ms cubic-bezier(0.2, 0, 0.2, 1),
		box-shadow 450ms cubic-bezier(0.2, 0, 0.2, 1),
		letter-spacing 450ms cubic-bezier(0.2, 0, 0.2, 1);
	-webkit-tap-highlight-color: transparent;
	isolation: isolate;
}

/* Wrap the label in a span so we can control it independently of the link. */
.wsk-spotlight-hero__btn > span {
	position: relative;
	z-index: 2;
	display: inline-block;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	text-decoration: none !important;
}

/* Soft specular sheen — a narrow diagonal highlight that sweeps on hover. */
.wsk-spotlight-hero__btn::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(
		115deg,
		transparent 30%,
		rgba(255, 255, 255, 0.18) 48%,
		rgba(255, 255, 255, 0.05) 52%,
		transparent 70%
	);
	background-size: 220% 100%;
	background-position: 120% 0;
	transition: background-position 800ms cubic-bezier(0.2, 0, 0.2, 1);
	pointer-events: none;
	opacity: 0;
	z-index: 1;
}
.wsk-spotlight-hero__btn:hover::before,
.wsk-spotlight-hero__btn:focus-visible::before {
	background-position: -20% 0;
	opacity: 1;
}

/* Primary — solid fill using user's btn1_bg (or brushed gold default).
   Inner highlight + bottom shade = engraved-on-metal feel. */
.wsk-spotlight-hero__btn--primary {
	background: var(--wsk-sl-btn1-bg, linear-gradient(180deg, #D4AF37 0%, #AA8C2C 100%));
	color: var(--wsk-sl-btn1-color, #0B0B0D);
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.28),
		inset 0 -1px 0 rgba(0, 0, 0, 0.22),
		0 2px 10px rgba(0, 0, 0, 0.35),
		0 14px 28px -12px rgba(0, 0, 0, 0.5);
}

.wsk-spotlight-hero__btn--primary:hover {
	letter-spacing: 0.22em;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.38),
		inset 0 -1px 0 rgba(0, 0, 0, 0.18),
		0 4px 14px rgba(0, 0, 0, 0.4),
		0 20px 36px -14px rgba(0, 0, 0, 0.55);
	filter: brightness(1.08) saturate(1.05);
}

/* Secondary — ghost button: hairline border, fill wipes in from bottom on hover. */
.wsk-spotlight-hero__btn--outline {
	background: transparent;
	color: var(--wsk-sl-btn2-color, #FFF6E8);
	border: 1px solid rgba(255, 246, 232, 0.22);
}

/* The fill reveal overlay — starts invisible, wipes up from 0% to 100% height. */
.wsk-spotlight-hero__btn--outline::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 0;
	background: rgba(255, 246, 232, 0.08);
	transition: height 400ms cubic-bezier(0.2, 0, 0.2, 1);
	pointer-events: none;
	z-index: 0;
}
.wsk-spotlight-hero__btn--outline:hover {
	letter-spacing: 0.22em;
	border-color: var(--wsk-sl-btn2-hover, rgba(255, 246, 232, 0.7));
	color: var(--wsk-sl-btn2-hover, #FFF6E8);
}
.wsk-spotlight-hero__btn--outline:hover::after,
.wsk-spotlight-hero__btn--outline:focus-visible::after {
	height: 100%;
}

.wsk-spotlight-hero__btn:focus-visible {
	outline: 1px solid var(--wsk-sl-accent, #D4AF37);
	outline-offset: 4px;
}

/* Belt-and-braces: kill theme-level link underline on every state/descendant.
   Avada + some starter themes underline section a / a:hover — fight them here. */
.wsk-spotlight-hero a.wsk-spotlight-hero__btn,
.wsk-spotlight-hero a.wsk-spotlight-hero__btn:link,
.wsk-spotlight-hero a.wsk-spotlight-hero__btn:visited,
.wsk-spotlight-hero a.wsk-spotlight-hero__btn:hover,
.wsk-spotlight-hero a.wsk-spotlight-hero__btn:active,
.wsk-spotlight-hero a.wsk-spotlight-hero__btn:focus,
.wsk-spotlight-hero a.wsk-spotlight-hero__btn > span {
	text-decoration: none !important;
	text-decoration-line: none !important;
	border-bottom: 0 !important;
	background-image: none; /* some themes fake underlines with a gradient bg */
}

/* ───────────────────────────────────────────────────────────
   Nested content slot.
   ─────────────────────────────────────────────────────────── */
.wsk-spotlight-hero__inner {
	margin-top: 40px;
	opacity: 0;
	animation: wsk-sl-fadeInUp 900ms cubic-bezier(0.2, 0, 0.2, 1) 1400ms forwards;
}

/* ───────────────────────────────────────────────────────────
   Motion — restrained, theatrical.
   ─────────────────────────────────────────────────────────── */
@keyframes wsk-sl-fadeInUp {
	from { opacity: 0; transform: translateY(12px); }
	to   { opacity: 1; transform: translateY(0); }
}

@keyframes wsk-sl-maskWipe {
	from { clip-path: inset(0 100% 0 0); }
	to   { clip-path: inset(0 0 0 0); }
}

@keyframes wsk-sl-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.35; transform: scale(0.85); }
}

/* Ambient tungsten flicker — 0.3% opacity drift over 6s. */
@keyframes wsk-sl-flicker {
	0%, 100% { opacity: 1; }
	42%      { opacity: 0.985; }
	44%      { opacity: 1; }
	58%      { opacity: 0.99; }
	62%      { opacity: 1; }
}

/* Dust mote drift — upward lazy float, per-mote randomized via inline style. */
@keyframes wsk-sl-mote-drift {
	0%   { transform: translate3d(0, 100%, 0); opacity: 0; }
	10%  { opacity: 0.9; }
	90%  { opacity: 0.9; }
	100% { transform: translate3d(var(--mote-x-end, 0), -10%, 0); opacity: 0; }
}

/* ───────────────────────────────────────────────────────────
   Responsive — shrink before wrap. Stack only at ≤480.
   ─────────────────────────────────────────────────────────── */

/* Tablet landscape ≤1199 */
@media (max-width: 1199px) {
	.wsk-spotlight-hero__rig,
	.wsk-spotlight-hero__dust {
		width: 60vw;
	}
	.wsk-spotlight-hero .wsk-spotlight-hero__heading {
		font-size: var(--wsk-sh-heading-font-size-md, clamp(2.5rem, 6vw, 5rem));
	}
}

/* Tablet portrait ≤1024 — keep CTAs inline, reduce padding. */
@media (max-width: 1024px) {
	.wsk-spotlight-hero .wsk-spotlight-hero__heading {
		font-size: var(--wsk-sh-heading-font-size-md, var(--wsk-sh-heading-font-size, clamp(2.5rem, 6vw, 5rem)));
		text-align: var(--wsk-sh-heading-text-align-md, var(--wsk-sh-heading-text-align, center)) !important;
	}
	.wsk-spotlight-hero .wsk-spotlight-hero__subtext {
		font-size: var(--wsk-sh-subtext-font-size-md, var(--wsk-sh-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem)));
		text-align: var(--wsk-sh-subtext-text-align-md, var(--wsk-sh-subtext-text-align, center)) !important;
	}
	.wsk-spotlight-hero__buttons {
		gap: 16px;
	}
	.wsk-spotlight-hero__btn {
		padding: 0 24px;
	}
}

/* Mobile ≤768 — CTAs stay inline side-by-side.
   Natural wrap: buttons stay on one row until labels genuinely don't fit;
   then each button becomes full-width on its own line. */
@media (max-width: 768px) {
	.wsk-spotlight-hero__rig,
	.wsk-spotlight-hero__dust {
		width: 80vw;
	}
	.wsk-spotlight-hero {
		min-height: var(--wsk-sl-min-height, 85vh);
	}
	.wsk-spotlight-hero__content {
		padding: 96px 20px 64px;
	}
	.wsk-spotlight-hero .wsk-spotlight-hero__heading {
		font-size: var(--wsk-sh-heading-font-size-sm, clamp(2.25rem, 7vw, 3.5rem));
		letter-spacing: -0.01em;
	}
	.wsk-spotlight-hero .wsk-spotlight-hero__subtext {
		font-size: var(--wsk-sh-subtext-font-size-sm, 0.95rem);
		max-width: 100%;
	}
	.wsk-spotlight-hero__buttons {
		/* Flexible display so we can wrap when needed, but default to inline. */
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;       /* wrap only when a button can't fit its content */
		justify-content: center;
		gap: 12px;
		width: 100%;
		max-width: 420px;      /* keeps buttons reasonable width on wider phones */
		margin-left: auto;
		margin-right: auto;
	}
	.wsk-spotlight-hero__btn {
		min-height: 52px;
		padding: 0 20px;
		font-size: 0.72rem;
		letter-spacing: 0.14em;
		/* Each button sizes to its content; when its natural width exceeds
		   available row space, flex-wrap kicks in and it drops to its own line. */
		flex: 1 1 auto;
		/* When a button wraps, fill the row — so a wrapped button reads as
		   a full-width block, not a half-width orphan. */
		min-width: 140px;
	}
	.wsk-spotlight-hero__badge {
		font-size: 0.66rem;
		letter-spacing: 0.28em;
	}
	.wsk-spotlight-hero__badge::before,
	.wsk-spotlight-hero__badge::after {
		width: 24px;
	}
}

/* Very narrow phones ≤380 — shrink chrome a touch more, keep side-by-side
   as long as flex allows; natural wrap still the only trigger for stacking. */
@media (max-width: 380px) {
	.wsk-spotlight-hero__rig,
	.wsk-spotlight-hero__dust {
		width: 100vw;
	}
	.wsk-spotlight-hero__content {
		padding: 80px 18px 56px;
	}
	.wsk-spotlight-hero__buttons {
		gap: 10px;
	}
	.wsk-spotlight-hero__btn {
		padding: 0 16px;
		font-size: 0.68rem;
		letter-spacing: 0.12em;
		min-width: 0;       /* allow ultra-tight shrink before wrap */
	}
}

/* ───────────────────────────────────────────────────────────
   Touch devices — collapse hover-only states to :active.
   ─────────────────────────────────────────────────────────── */
@media (hover: none) {
	.wsk-spotlight-hero__btn--primary:active {
		filter: brightness(1.06);
		box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.35),
			inset 0 -1px 0 rgba(0, 0, 0, 0.1),
			0 8px 24px rgba(212, 175, 55, 0.18);
	}
	.wsk-spotlight-hero__btn--outline:active {
		background: rgba(255, 246, 232, 0.06);
		border-color: var(--wsk-sl-btn2-hover, rgba(255, 246, 232, 0.6));
	}
	.wsk-spotlight-hero__btn::after {
		display: none;
	}
}

/* ───────────────────────────────────────────────────────────
   Reduced motion — keep geometry, kill animation.
   ─────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-spotlight-hero__badge,
	.wsk-spotlight-hero__heading,
	.wsk-spotlight-hero__subtext,
	.wsk-spotlight-hero__buttons,
	.wsk-spotlight-hero__inner,
	.wsk-spotlight-hero__beam {
		animation: none !important;
		opacity: 1 !important;
		clip-path: none !important;
	}
	.wsk-spotlight-hero__badge-dot {
		animation: none !important;
	}
	.wsk-spotlight-hero__mote {
		display: none !important;
	}
	.wsk-spotlight-hero__rig {
		transition: none !important;
	}
}
/**
 * WEPRO: Hero Blur — "Plate" edition.
 *
 * Editorial hero: full-bleed image, inset hairline frame, kicker → serif heading
 * → subtitle → divider → gold/ghost CTAs. Quiet scroll blur + subtle Ken Burns.
 * Outro text becomes an anchored bottom caption (editorial credit line).
 *
 * Shared luxury language with Spotlight Hero: same type family, same button
 * chrome, same hairline divider grammar. The kit reads as one house.
 */

/* ─── Section wrapper ─── */
.wsk-hero-blur {
	position: relative;
	width: 100%;
	background: var(--wsk-hb-bg, #0B0B0D);
	isolation: isolate;
}

/* ─── Viewport ─── */
.wsk-hero-blur__viewport {
	position: relative;
	min-height: var(--wsk-hb-min-height, 100vh);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}

/* ─── Background: sharp <img> layer.
       Ken Burns slow zoom on idle. JS can override scale via --wsk-hb-bg-scale. ─── */
img.wsk-hero-blur__bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	z-index: 0;
	transform: scale(var(--wsk-hb-bg-scale, 1));
	transform-origin: center center;
	transition: transform 120ms linear; /* JS-driven on scroll, smoothed */
	animation: wsk-hb-kenburns 22s ease-in-out infinite alternate;
}

/* ─── Background: blurred copy container — hidden on mobile ─── */
.wsk-hero-blur__bg--blurred {
	display: none;
	z-index: 1;
}
.wsk-hero-blur__bg--blurred img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transform: scale(var(--wsk-hb-bg-scale, 1));
	animation: wsk-hb-kenburns 22s ease-in-out infinite alternate;
}

/* ─── Grain — inline SVG noise overlay for texture. ─── */
.wsk-hero-blur__grain {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	opacity: 0.08;
	mix-blend-mode: overlay;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.35 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
	background-size: 220px 220px;
}

/* ─── Dark overlay (tunable via CSS var) ─── */
.wsk-hero-blur__overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	background:
		/* Vignette at corners — darkens edges, keeps center lit. */
		radial-gradient(ellipse at 50% 50%, transparent 45%, rgba(0, 0, 0, 0.45) 100%),
		var(--wsk-hb-overlay, rgba(0, 0, 0, 0.35));
	pointer-events: none;
}

/* ─── Inset hairline frame — magazine-plate composition.
       Drawn by a pseudo-element so it can animate in on entrance. ─── */
.wsk-hero-blur__frame {
	position: absolute;
	inset: 24px;
	z-index: 4;
	pointer-events: none;
	border: 1px solid rgba(255, 246, 232, 0.22);
	/* Entrance: frame draws from nothing. Starts as clipped rectangle, reveals. */
	clip-path: inset(0 0 0 0);
	opacity: 0;
	animation: wsk-hb-frameIn 900ms cubic-bezier(0.2, 0, 0.2, 1) 200ms forwards;
}

/* ─── Content wrappers ─── */
.wsk-hero-blur__intro,
.wsk-hero-blur__outro {
	position: relative;
	z-index: 5;
	padding: 0 clamp(1.25rem, 4vw, 3rem);
	max-width: var(--wsk-hb-max-width, 880px);
	width: 100%;
	text-align: center;
}

/* ─── Kicker — tiny tracked uppercase credit line above heading.
       Same hairline grammar as Spotlight Hero badge. ─── */
.wsk-hero-blur__kicker {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	font-family: var(--wsk-hb-description-font-family, 'Inter', system-ui, sans-serif);
	font-size: 0.68rem;
	font-weight: 500;
	letter-spacing: 0.32em;
	text-transform: uppercase;
	color: var(--wsk-hb-kicker-color, #D4AF37);
	margin-bottom: 28px;
	opacity: 0;
	animation: wsk-hb-fadeUp 900ms cubic-bezier(0.2, 0, 0.2, 1) 500ms forwards;
}
.wsk-hero-blur__kicker::before,
.wsk-hero-blur__kicker::after {
	content: '';
	display: inline-block;
	width: 28px;
	height: 1px;
	background: currentColor;
	opacity: 0.45;
}

/* ─── Heading — serif display, mask-wipe reveal. ─── */
.wsk-hero-blur .wsk-hero-blur__title {
	font-family: var(--wsk-hb-heading-font-family, 'Cormorant Garamond', 'Playfair Display', Georgia, serif);
	font-weight: var(--wsk-hb-heading-font-weight, 400);
	font-style: var(--wsk-hb-heading-font-style, normal);
	font-size: var(--wsk-hb-heading-font-size, clamp(2.75rem, 6.5vw, 5.5rem));
	line-height: var(--wsk-hb-heading-line-height, 1.04);
	letter-spacing: var(--wsk-hb-heading-letter-spacing, -0.015em);
	text-transform: var(--wsk-hb-heading-text-transform, none);
	text-align: var(--wsk-hb-heading-text-align, center) !important;
	color: var(--wsk-hb-heading-color, #FFF6E8);
	margin-top: var(--wsk-hb-heading-margin-top, 0);
	margin-bottom: var(--wsk-hb-heading-margin-bottom, 22px);
	clip-path: inset(0 100% 0 0);
	animation: wsk-hb-maskWipe 1100ms cubic-bezier(0.7, 0, 0.3, 1) 700ms forwards;
}

/* Accent word after {gr} — italic gold gradient, shared with Spotlight Hero. */
.wsk-hero-blur__title-accent {
	font-style: italic;
	background: linear-gradient(
		180deg,
		var(--wsk-hb-accent, #F4E4BC) 0%,
		var(--wsk-hb-accent-deep, #AA8C2C) 100%
	);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

/* ─── Subtitle ─── */
.wsk-hero-blur .wsk-hero-blur__description {
	font-family: var(--wsk-hb-description-font-family, 'Inter', system-ui, sans-serif);
	font-weight: var(--wsk-hb-description-font-weight, 300);
	font-style: var(--wsk-hb-description-font-style, normal);
	font-size: var(--wsk-hb-description-font-size, clamp(1rem, 1.4vw, 1.15rem));
	line-height: var(--wsk-hb-description-line-height, 1.75);
	letter-spacing: var(--wsk-hb-description-letter-spacing, 0.01em);
	text-transform: var(--wsk-hb-description-text-transform, none);
	text-align: var(--wsk-hb-description-text-align, center) !important;
	color: var(--wsk-hb-description-color, rgba(255, 246, 232, 0.68));
	margin: 0 auto var(--wsk-hb-description-margin-bottom, 36px);
	max-width: 560px;
	opacity: 0;
	animation: wsk-hb-fadeUp 900ms cubic-bezier(0.2, 0, 0.2, 1) 1100ms forwards;
}

/* ─── Divider — hairline horizontal rule, draws center-out. ─── */
.wsk-hero-blur__divider {
	display: block;
	width: 40px;
	height: 1px;
	background: var(--wsk-hb-divider, rgba(255, 246, 232, 0.55));
	margin: 0 auto 36px;
	transform: scaleX(0);
	transform-origin: center;
	animation: wsk-hb-divider 700ms cubic-bezier(0.2, 0, 0.2, 1) 1350ms forwards;
}

/* ─── CTA row — same luxury language as Spotlight Hero.
       Desktop/tablet: inline. Mobile: inline, wrap only when labels can't fit. ─── */
.wsk-hero-blur__buttons {
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: center;
	gap: 20px;
	max-width: 100%;
	opacity: 0;
	animation: wsk-hb-fadeUp 900ms cubic-bezier(0.2, 0, 0.2, 1) 1500ms forwards;
}

.wsk-hero-blur__btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 56px;
	padding: 0 36px;
	flex: 0 1 auto;
	min-width: 0;

	font-family: var(--wsk-hb-description-font-family, 'Inter', system-ui, sans-serif);
	font-size: 0.76rem;
	font-weight: 500;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-decoration: none !important;
	text-underline-offset: 0;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 3px;
	cursor: pointer;
	isolation: isolate;
	transition:
		background 450ms cubic-bezier(0.2, 0, 0.2, 1),
		color 450ms cubic-bezier(0.2, 0, 0.2, 1),
		border-color 450ms cubic-bezier(0.2, 0, 0.2, 1),
		box-shadow 450ms cubic-bezier(0.2, 0, 0.2, 1),
		letter-spacing 450ms cubic-bezier(0.2, 0, 0.2, 1);
	-webkit-tap-highlight-color: transparent;
}

.wsk-hero-blur__btn > span {
	position: relative;
	z-index: 2;
	display: inline-block;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	text-decoration: none !important;
}

/* Specular sheen sweeps on hover. */
.wsk-hero-blur__btn::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(
		115deg,
		transparent 30%,
		rgba(255, 255, 255, 0.18) 48%,
		rgba(255, 255, 255, 0.05) 52%,
		transparent 70%
	);
	background-size: 220% 100%;
	background-position: 120% 0;
	transition: background-position 800ms cubic-bezier(0.2, 0, 0.2, 1);
	pointer-events: none;
	opacity: 0;
	z-index: 1;
}
.wsk-hero-blur__btn:hover::before,
.wsk-hero-blur__btn:focus-visible::before {
	background-position: -20% 0;
	opacity: 1;
}

/* Primary — brushed gold + engraved metal shadow stack. */
.wsk-hero-blur__btn--primary {
	background: var(--wsk-hb-btn1-bg, linear-gradient(180deg, #D4AF37 0%, #AA8C2C 100%));
	color: var(--wsk-hb-btn1-color, #0B0B0D);
	border: 1px solid rgba(255, 255, 255, 0.08);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.28),
		inset 0 -1px 0 rgba(0, 0, 0, 0.22),
		0 2px 10px rgba(0, 0, 0, 0.35),
		0 14px 28px -12px rgba(0, 0, 0, 0.5);
}
.wsk-hero-blur__btn--primary:hover {
	letter-spacing: 0.22em;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.38),
		inset 0 -1px 0 rgba(0, 0, 0, 0.18),
		0 4px 14px rgba(0, 0, 0, 0.4),
		0 20px 36px -14px rgba(0, 0, 0, 0.55);
	filter: brightness(1.08) saturate(1.05);
}

/* Secondary — ghost with fill-wipes-up-from-bottom on hover. */
.wsk-hero-blur__btn--outline {
	background: transparent;
	color: var(--wsk-hb-btn2-color, #FFF6E8);
	border: 1px solid rgba(255, 246, 232, 0.22);
}
.wsk-hero-blur__btn--outline::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 0;
	background: rgba(255, 246, 232, 0.08);
	transition: height 400ms cubic-bezier(0.2, 0, 0.2, 1);
	pointer-events: none;
	z-index: 0;
}
.wsk-hero-blur__btn--outline:hover {
	letter-spacing: 0.22em;
	border-color: var(--wsk-hb-btn2-hover, rgba(255, 246, 232, 0.7));
	color: var(--wsk-hb-btn2-hover, #FFF6E8);
}
.wsk-hero-blur__btn--outline:hover::after,
.wsk-hero-blur__btn--outline:focus-visible::after {
	height: 100%;
}
.wsk-hero-blur__btn:focus-visible {
	outline: 1px solid var(--wsk-hb-accent, #D4AF37);
	outline-offset: 4px;
}

/* Belt-and-braces: fight theme-level link underlines (Avada et al). */
.wsk-hero-blur a.wsk-hero-blur__btn,
.wsk-hero-blur a.wsk-hero-blur__btn:link,
.wsk-hero-blur a.wsk-hero-blur__btn:visited,
.wsk-hero-blur a.wsk-hero-blur__btn:hover,
.wsk-hero-blur a.wsk-hero-blur__btn:active,
.wsk-hero-blur a.wsk-hero-blur__btn:focus,
.wsk-hero-blur a.wsk-hero-blur__btn > span {
	text-decoration: none !important;
	text-decoration-line: none !important;
	border-bottom: 0 !important;
	background-image: none;
}

/* ─── Outro — editorial caption anchored bottom-center. ─── */
.wsk-hero-blur__outro {
	position: absolute;
	left: 50%;
	bottom: clamp(48px, 6vh, 88px);
	transform: translateX(-50%);
	z-index: 5;
	width: calc(100% - 96px);
	max-width: 620px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	opacity: 0;
	pointer-events: none;
}
.wsk-hero-blur__outro::before {
	content: '';
	width: 24px;
	height: 1px;
	background: rgba(255, 246, 232, 0.35);
}
.wsk-hero-blur .wsk-hero-blur__outro-text {
	font-family: var(--wsk-hb-outro-font-family, 'Inter', system-ui, sans-serif);
	font-weight: var(--wsk-hb-outro-font-weight, 400);
	font-style: var(--wsk-hb-outro-font-style, italic);
	font-size: var(--wsk-hb-outro-font-size, 0.8rem);
	line-height: var(--wsk-hb-outro-line-height, 1.55);
	letter-spacing: var(--wsk-hb-outro-letter-spacing, 0.04em);
	text-transform: var(--wsk-hb-outro-text-transform, none);
	text-align: var(--wsk-hb-outro-text-align, center) !important;
	color: var(--wsk-hb-outro-color, rgba(255, 246, 232, 0.6));
	margin: 0;
}

/* ─── Spacer: hidden on mobile, used on desktop for scroll distance. ─── */
.wsk-hero-blur__spacer {
	display: none;
}

/* ═══════════════════════════════════════════════════════════════
   DESKTOP (1025px+): sticky + quiet scroll blur
   ═══════════════════════════════════════════════════════════════ */
@media (min-width: 1025px) {
	.fusion-fullwidth:has(.wsk-hero-blur),
	.fusion-builder-row:has(.wsk-hero-blur),
	.fusion-layout-column:has(.wsk-hero-blur),
	.fusion-column-wrapper:has(.wsk-hero-blur) {
		overflow: visible !important;
	}

	.wsk-hero-blur__viewport {
		position: sticky;
		top: 0;
		height: 100vh;
		min-height: auto;
	}

	/* Show blurred layer (JS clones img into here) */
	.wsk-hero-blur__bg--blurred {
		display: block;
		position: absolute;
		inset: -20px;
		filter: blur(var(--wsk-hb-max-blur, 8px));
		opacity: var(--wsk-hb-blur-opacity, 0);
		will-change: opacity;
		overflow: hidden;
	}

	.wsk-hero-blur__overlay {
		opacity: calc(1 + var(--wsk-hb-blur-opacity, 0) * 0.25);
	}

	/* Intro fades + parallaxes up slowly on scroll. */
	.wsk-hero-blur__intro {
		opacity: var(--wsk-hb-intro-opacity, 1);
		transform: translateY(calc(var(--wsk-hb-intro-translate, 0) * -32px));
		will-change: opacity, transform;
	}

	/* Outro caption fades in at 50% scroll. */
	.wsk-hero-blur__outro {
		opacity: var(--wsk-hb-outro-opacity, 0);
		will-change: opacity;
	}

	.wsk-hero-blur__spacer {
		display: block;
		height: calc(100vh * var(--wsk-hb-scroll-distance, 1.2));
	}
}

/* ═══════════════════════════════════════════════════════════════
   TABLET (640–1024): static plate, all text visible, no scroll blur
   ═══════════════════════════════════════════════════════════════ */
@media (min-width: 640px) and (max-width: 1024px) {
	.wsk-hero-blur__frame {
		inset: 20px;
	}
	.wsk-hero-blur .wsk-hero-blur__title {
		font-size: var(--wsk-hb-heading-font-size-md, var(--wsk-hb-heading-font-size, clamp(2.5rem, 5.5vw, 4.5rem)));
	}
	.wsk-hero-blur .wsk-hero-blur__description {
		font-size: var(--wsk-hb-description-font-size-md, var(--wsk-hb-description-font-size, 1.05rem));
	}
	.wsk-hero-blur__outro {
		opacity: 1; /* static visibility on tablet — no scroll here */
		pointer-events: auto;
	}
}

/* ═══════════════════════════════════════════════════════════════
   MOBILE (≤639): static plate, reduced chrome, inline CTAs
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 639px) {
	.wsk-hero-blur__frame {
		inset: 16px;
	}
	.wsk-hero-blur__viewport {
		min-height: var(--wsk-hb-min-height, 90vh);
		padding: 56px 0;
	}
	.wsk-hero-blur__kicker {
		font-size: 0.62rem;
		letter-spacing: 0.28em;
		margin-bottom: 20px;
	}
	.wsk-hero-blur__kicker::before,
	.wsk-hero-blur__kicker::after {
		width: 20px;
	}
	.wsk-hero-blur .wsk-hero-blur__title {
		font-size: var(--wsk-hb-heading-font-size-sm, clamp(2rem, 8vw, 3rem));
		letter-spacing: -0.01em;
		margin-bottom: 16px;
	}
	.wsk-hero-blur .wsk-hero-blur__description {
		font-size: var(--wsk-hb-description-font-size-sm, 0.95rem);
		margin-bottom: 28px;
	}
	.wsk-hero-blur__divider {
		margin-bottom: 28px;
	}

	/* CTAs: inline side-by-side on mobile, wrap only when labels overflow. */
	.wsk-hero-blur__buttons {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: center;
		gap: 12px;
		width: 100%;
		max-width: 420px;
		margin-left: auto;
		margin-right: auto;
	}
	.wsk-hero-blur__btn {
		min-height: 52px;
		padding: 0 20px;
		font-size: 0.72rem;
		letter-spacing: 0.14em;
		flex: 1 1 auto;
		min-width: 140px;
	}

	/* Outro caption: static bottom, visible always on mobile. */
	.wsk-hero-blur__outro {
		opacity: 1 !important;
		pointer-events: auto;
		bottom: 32px;
		width: calc(100% - 48px);
	}
	.wsk-hero-blur .wsk-hero-blur__outro-text {
		font-size: 0.72rem;
	}
}

/* Very narrow phones ≤380 — tighten further, still inline. */
@media (max-width: 380px) {
	.wsk-hero-blur__frame {
		inset: 12px;
	}
	.wsk-hero-blur__buttons {
		gap: 10px;
	}
	.wsk-hero-blur__btn {
		padding: 0 16px;
		font-size: 0.68rem;
		letter-spacing: 0.12em;
		min-width: 0;
	}
}

/* ─── Touch devices — collapse hover to :active for buttons ─── */
@media (hover: none) {
	.wsk-hero-blur__btn--primary:active {
		filter: brightness(1.08) saturate(1.05);
	}
	.wsk-hero-blur__btn--outline:active {
		border-color: var(--wsk-hb-btn2-hover, rgba(255, 246, 232, 0.7));
	}
	.wsk-hero-blur__btn--outline:active::after {
		height: 100%;
	}
	.wsk-hero-blur__btn::before {
		display: none;
	}
}

/* ─── Motion keyframes ─── */
@keyframes wsk-hb-kenburns {
	from { transform: scale(var(--wsk-hb-bg-scale, 1)); }
	to   { transform: scale(calc(var(--wsk-hb-bg-scale, 1) * 1.04)); }
}
@keyframes wsk-hb-fadeUp {
	from { opacity: 0; transform: translateY(10px); }
	to   { opacity: 1; transform: translateY(0); }
}
@keyframes wsk-hb-maskWipe {
	from { clip-path: inset(0 100% 0 0); }
	to   { clip-path: inset(0 0 0 0); }
}
@keyframes wsk-hb-frameIn {
	from { opacity: 0; clip-path: inset(50% 50% 50% 50%); }
	to   { opacity: 1; clip-path: inset(0 0 0 0); }
}
@keyframes wsk-hb-divider {
	from { transform: scaleX(0); }
	to   { transform: scaleX(1); }
}

/* ─── Reduced motion ─── */
@media (prefers-reduced-motion: reduce) {
	.wsk-hero-blur__bg--blurred,
	.wsk-hero-blur__spacer {
		display: none !important;
	}
	.wsk-hero-blur__viewport {
		position: relative !important;
		height: auto !important;
		min-height: var(--wsk-hb-min-height, 90vh) !important;
	}
	img.wsk-hero-blur__bg,
	.wsk-hero-blur__bg--blurred img,
	.wsk-hero-blur__frame,
	.wsk-hero-blur__kicker,
	.wsk-hero-blur__title,
	.wsk-hero-blur__description,
	.wsk-hero-blur__divider,
	.wsk-hero-blur__buttons {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		clip-path: none !important;
	}
	.wsk-hero-blur__outro {
		opacity: 1 !important;
		pointer-events: auto;
	}
}
/**
 * WEPRO: Logo Showcase — Grid / Ticker / Carousel.
 * Mobile-first. All values via CSS custom properties.
 */

/* ─── Base ─── */
.wsk-logo-showcase {
	background: var(--wsk-ls-bg, transparent);
	position: relative;
	width: 100%;
}

.wsk-logo-showcase__item {
	display: flex;
	flex-direction: column;
	align-items: var(--wsk-ls-align, center);
	justify-content: center;
	padding: var(--wsk-ls-card-padding, 24px);
	background: var(--wsk-ls-card-bg, rgba(255,255,255,0.04));
	border: 1px solid var(--wsk-ls-border, rgba(255,255,255,0.08));
	border-radius: var(--wsk-ls-card-radius, 12px);
	transition: border-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease;
	margin: 0;
}

.wsk-logo-showcase__link {
	display: flex;
	flex-direction: column;
	align-items: inherit;
	justify-content: center;
	text-decoration: none;
	color: inherit;
	width: 100%;
}

a.wsk-logo-showcase__link:hover {
	text-decoration: none;
	color: inherit;
}

/* ─── Image ─── */
.wsk-logo-showcase__img {
	max-height: var(--wsk-ls-height, 60px);
	width: auto;
	max-width: 100%;
	height: auto;
	object-fit: contain;
	display: block;
}

/* ─── Label ─── */
.wsk-logo-showcase__label {
	font-family: var(--wsk-ls-label-font-family, inherit);
	font-weight: var(--wsk-ls-label-font-weight, 400);
	font-style: var(--wsk-ls-label-font-style, normal);
	font-size: var(--wsk-ls-label-font-size, 0.8rem);
	line-height: var(--wsk-ls-label-line-height, 1.4);
	letter-spacing: var(--wsk-ls-label-letter-spacing, normal);
	text-transform: var(--wsk-ls-label-text-transform, none);
	color: var(--wsk-ls-label-color, rgba(255,255,255,0.5));
	text-align: var(--wsk-ls-label-text-align, center);
	margin-top: 10px;
}

/* ─── Hover: Border ─── */
.wsk-logo-showcase__item:hover {
	border-color: var(--wsk-ls-hover-border, rgba(108,92,231,0.3));
}

/* ─── Grayscale effect ─── */
.wsk-logo-showcase--grayscale .wsk-logo-showcase__img {
	filter: grayscale(100%);
	opacity: 0.5;
	transition: filter 0.3s ease, opacity 0.3s ease;
}

.wsk-logo-showcase--grayscale .wsk-logo-showcase__item:hover .wsk-logo-showcase__img {
	filter: grayscale(0%);
	opacity: 1;
}

/* ─── Hover: Scale ─── */
.wsk-logo-showcase--hover-scale .wsk-logo-showcase__item:hover {
	transform: scale(1.05);
}

/* ─── Hover: Lift ─── */
.wsk-logo-showcase--hover-lift .wsk-logo-showcase__item:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 24px rgba(0,0,0,0.15);
}

/* ─── Hover: Glow ─── */
.wsk-logo-showcase--hover-glow .wsk-logo-showcase__item:hover {
	box-shadow: 0 0 24px var(--wsk-ls-hover-border, rgba(108,92,231,0.3));
}

/* ═══════════════════════════════════════════
   GRID MODE
   ═══════════════════════════════════════════ */
.wsk-logo-showcase--grid .wsk-logo-showcase__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--wsk-ls-gap, 32px);
	align-items: stretch;
}

/* ═══════════════════════════════════════════
   MOBILE GRID — compact, clean
   ═══════════════════════════════════════════ */
@media (max-width: 639px) {
	.wsk-logo-showcase--grid .wsk-logo-showcase__grid {
		grid-template-columns: repeat(3, 1fr);
		gap: clamp(8px, 2vw, 14px);
	}

	.wsk-logo-showcase--grid .wsk-logo-showcase__item {
		padding: clamp(10px, 2.5vw, 14px);
		border-radius: var(--wsk-ls-card-radius, 8px);
	}

	.wsk-logo-showcase--grid .wsk-logo-showcase__img {
		max-height: var(--wsk-ls-height, 36px);
	}

	.wsk-logo-showcase--grid .wsk-logo-showcase__label {
		font-size: 0.6rem;
		margin-top: 6px;
	}
}

/* ═══════════════════════════════════════════
   TICKER MOBILE — dual-row marquee (LTR + RTL)
   ═══════════════════════════════════════════ */

/* Desktop: hide mobile marquee */
.wsk-logo-showcase__mobile-marquee {
	display: none;
}

@media (max-width: 767px) {
	/* Hide single-row ticker, show dual marquee */
	.wsk-logo-showcase--ticker .wsk-logo-showcase__track {
		display: none;
	}

	.wsk-logo-showcase--ticker .wsk-logo-showcase__mobile-marquee {
		display: flex;
		flex-direction: column;
		gap: 6px;
		overflow: hidden;
		mask-image: linear-gradient(to right, transparent, black 2%, black 98%, transparent);
		-webkit-mask-image: linear-gradient(to right, transparent, black 2%, black 98%, transparent);
	}

	.wsk-logo-showcase__marquee-row {
		display: flex;
		flex-wrap: nowrap;
		align-items: stretch;
		gap: 8px;
		width: max-content;
		will-change: transform;
	}

	.wsk-logo-showcase__marquee-row--ltr {
		animation: wsk-marquee-ltr var(--wsk-ls-speed, 30s) linear infinite;
	}

	.wsk-logo-showcase__marquee-row--rtl {
		animation: wsk-marquee-rtl var(--wsk-ls-speed, 30s) linear infinite;
	}

	.wsk-logo-showcase__marquee-row .wsk-logo-showcase__item {
		flex: 0 0 auto;
		width: 110px;
		height: 50px;
		padding: 8px 12px;
		border-radius: var(--wsk-ls-card-radius, 8px);
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.wsk-logo-showcase__marquee-row .wsk-logo-showcase__link {
		align-items: center;
		justify-content: center;
	}

	.wsk-logo-showcase__marquee-row .wsk-logo-showcase__img {
		max-height: 28px;
		max-width: 80px;
		width: auto;
		height: auto;
	}

	.wsk-logo-showcase__marquee-row .wsk-logo-showcase__label {
		display: none;
	}
}

@keyframes wsk-marquee-ltr {
	0%   { transform: translateX(0); }
	100% { transform: translateX(-33.333%); }
}

@keyframes wsk-marquee-rtl {
	0%   { transform: translateX(-33.333%); }
	100% { transform: translateX(0); }
}

@media (prefers-reduced-motion: reduce) {
	.wsk-logo-showcase__marquee-row {
		animation: none !important;
	}
}

/* Tablet: 3 columns */
@media (min-width: 640px) {
	.wsk-logo-showcase--grid .wsk-logo-showcase__grid {
		grid-template-columns: repeat(3, 1fr);
	}
}

/* Desktop: use custom column count */
@media (min-width: 1025px) {
	.wsk-logo-showcase--grid .wsk-logo-showcase__grid {
		grid-template-columns: repeat(var(--wsk-ls-columns, 5), 1fr);
	}
}

/* ═══════════════════════════════════════════
   TICKER MODE
   ═══════════════════════════════════════════ */
.wsk-logo-showcase--ticker {
	overflow: hidden;
	mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
	-webkit-mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
}

.wsk-logo-showcase__track {
	display: flex;
	gap: var(--wsk-ls-gap, 32px);
	width: max-content;
	animation: wsk-logo-scroll var(--wsk-ls-speed, 30s) linear infinite;
	will-change: transform;
}

.wsk-logo-showcase--ticker .wsk-logo-showcase__item {
	flex: 0 0 calc((100vw - (var(--wsk-ls-columns, 5) - 1) * var(--wsk-ls-gap, 32px)) / var(--wsk-ls-columns, 5));
	min-width: 100px;
	max-width: 300px;
}

/* Direction */
.wsk-logo-showcase__track {
	animation-direction: var(--wsk-ls-direction, normal);
}

/* Pause on hover */
.wsk-logo-showcase--pause:hover .wsk-logo-showcase__track {
	animation-play-state: paused;
}

@keyframes wsk-logo-scroll {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	.wsk-logo-showcase__track {
		animation: none;
	}
}

/* ═══════════════════════════════════════════
   CAROUSEL MODE
   ═══════════════════════════════════════════ */
.wsk-logo-showcase__scroll {
	display: flex;
	gap: var(--wsk-ls-gap, 32px);
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	padding-bottom: 4px;
}

.wsk-logo-showcase__scroll::-webkit-scrollbar {
	display: none;
}

.wsk-logo-showcase--carousel .wsk-logo-showcase__item {
	scroll-snap-align: start;
	flex: 0 0 calc((100% - (var(--wsk-ls-columns, 5) - 1) * var(--wsk-ls-gap, 32px)) / var(--wsk-ls-columns, 5));
	min-width: 100px;
}

/* ─── Responsive label ─── */
@media (max-width: 639px) {
	.wsk-logo-showcase__label {
		font-size: var(--wsk-ls-label-font-size-sm, var(--wsk-ls-label-font-size, 0.75rem));
	}
}

@media (min-width: 640px) and (max-width: 1024px) {
	.wsk-logo-showcase__label {
		font-size: var(--wsk-ls-label-font-size-md, var(--wsk-ls-label-font-size, 0.8rem));
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-logo-showcase a:focus-visible,
.wsk-logo-showcase button:focus-visible,
.wsk-logo-showcase [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/**
 * WEPRO: Scroll Sections — Premium editorial scroll experience.
 * Mobile-first. Split-screen edge-to-edge. Staggered cinematic reveals.
 * All values via CSS custom properties (--wsk-ss-*).
 */

/* ═══════════════════════════════════════════
   BASE (Mobile: normal flow, no snap)
   ═══════════════════════════════════════════ */
.wsk-scroll-sections {
	position: relative;
	width: 100%;
	outline: none;
	--_ease: cubic-bezier(0.16, 1, 0.3, 1);
	--_ease-out: cubic-bezier(0.33, 1, 0.68, 1);
}

.wsk-scroll-sections__viewport {
	display: flex;
	flex-direction: column;
}

.wsk-scroll-sections__section {
	position: relative;
	display: flex;
	align-items: stretch;
	overflow: hidden;
}

/* ─── Background Layer ─── */
.wsk-scroll-sections__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	background-color: var(--wsk-ss-s-bg, transparent);
	background-image: var(--wsk-ss-s-bg-img, none);
	background-size: cover;
	background-position: center;
	transition: transform 8s ease-out;
}

/* Subtle Ken Burns on background when section is visible */
.wsk-scroll-sections__section.is-visible .wsk-scroll-sections__bg {
	transform: scale(1.03);
}

.wsk-scroll-sections__bg::after {
	content: '';
	position: absolute;
	inset: 0;
	background: var(--wsk-ss-s-overlay, transparent);
}

/* ─── Inner Layout (Mobile: stacked) ─── */
.wsk-scroll-sections__inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	width: 100%;
}

/* ─── Content Block ─── */
.wsk-scroll-sections__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0;
	padding: clamp(3rem, 8vw, 5rem) clamp(1.5rem, 5vw, 3rem);
}

/* ─── Icon ─── */
.wsk-scroll-sections__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--wsk-ss-icon-size, 28px);
	height: var(--wsk-ss-icon-size, 28px);
	margin-bottom: 20px;
	color: var(--wsk-ss-label-color, rgba(255,255,255,0.6));
	opacity: 0.7;
	transition: opacity 0.4s ease;
}

.wsk-scroll-sections__section.is-visible .wsk-scroll-sections__icon {
	opacity: 1;
}

.wsk-scroll-sections__icon svg {
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.wsk-scroll-sections__icon i {
	font-size: var(--wsk-ss-icon-size, 28px);
	line-height: 1;
}

.wsk-scroll-sections__icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* ─── Slogan with decorative accent line ─── */
.wsk-scroll-sections__slogan {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	font-family: var(--wsk-ss-label-font-family, inherit);
	font-size: var(--wsk-ss-label-font-size, 0.75rem);
	font-weight: var(--wsk-ss-label-font-weight, 600);
	font-style: var(--wsk-ss-label-font-style, normal);
	letter-spacing: var(--wsk-ss-label-letter-spacing, 0.15em);
	text-transform: var(--wsk-ss-label-text-transform, uppercase);
	color: var(--wsk-ss-label-color, rgba(255,255,255,0.5));
	text-align: var(--wsk-ss-label-text-align, left);
	margin-bottom: 16px;
}

/* Accent line before slogan */
.wsk-scroll-sections__slogan::before {
	content: '';
	display: block;
	width: 32px;
	height: 1px;
	background: currentColor;
	opacity: 0.5;
	flex-shrink: 0;
	transition: width 0.6s var(--_ease);
}

.wsk-scroll-sections__section.is-visible .wsk-scroll-sections__slogan::before {
	width: 48px;
}

/* ─── Title ─── */
.wsk-scroll-sections__title {
	font-family: var(--wsk-ss-title-font-family, inherit);
	font-size: var(--wsk-ss-title-font-size, clamp(2rem, 5vw, 3.5rem));
	font-weight: var(--wsk-ss-title-font-weight, 700);
	font-style: var(--wsk-ss-title-font-style, normal);
	line-height: var(--wsk-ss-title-line-height, 1.1);
	letter-spacing: var(--wsk-ss-title-letter-spacing, -0.025em);
	text-transform: var(--wsk-ss-title-text-transform, none);
	color: var(--wsk-ss-title-color, #ffffff);
	text-align: var(--wsk-ss-title-text-align, left);
	margin: 0 0 var(--wsk-ss-title-margin-bottom, 20px);
}

/* ─── Description ─── */
.wsk-scroll-sections__desc {
	font-family: var(--wsk-ss-description-font-family, inherit);
	font-size: var(--wsk-ss-description-font-size, clamp(1rem, 1.5vw, 1.125rem));
	font-weight: var(--wsk-ss-description-font-weight, 400);
	font-style: var(--wsk-ss-description-font-style, normal);
	line-height: var(--wsk-ss-description-line-height, 1.75);
	letter-spacing: var(--wsk-ss-description-letter-spacing, normal);
	text-transform: var(--wsk-ss-description-text-transform, none);
	color: var(--wsk-ss-description-color, rgba(255,255,255,0.55));
	text-align: var(--wsk-ss-description-text-align, left);
	margin: 0 0 var(--wsk-ss-description-margin-bottom, 32px);
	max-width: 520px;
}

/* ═══════════════════════════════════════════
   BUTTONS — Premium micro-interactions
   ═══════════════════════════════════════════ */
.wsk-scroll-sections__btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: var(--wsk-ss-btn-padding, 14px 32px);
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	text-decoration: none;
	cursor: pointer;
	min-height: 48px;
	align-self: flex-start;
	position: relative;
	overflow: hidden;
	transition: all 0.4s var(--_ease);
}

a.wsk-scroll-sections__btn:hover,
a.wsk-scroll-sections__btn:focus,
a.wsk-scroll-sections__btn:visited {
	text-decoration: none;
}

/* Filled button — with shimmer on hover */
.wsk-scroll-sections__btn--filled {
	background: var(--wsk-ss-btn-bg, rgba(108,92,231,1));
	color: var(--wsk-ss-btn-color, #fff);
	border: 2px solid var(--wsk-ss-btn-bg, rgba(108,92,231,1));
	border-radius: var(--wsk-ss-btn-radius, 100px);
}

.wsk-scroll-sections__btn--filled::after {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,0.15), transparent);
	transition: left 0.6s ease;
}

.wsk-scroll-sections__btn--filled:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 40px -8px var(--wsk-ss-btn-bg, rgba(108,92,231,0.4));
	color: var(--wsk-ss-btn-color, #fff);
}

.wsk-scroll-sections__btn--filled:hover::after {
	left: 100%;
}

/* Outline button — fill on hover */
.wsk-scroll-sections__btn--outline {
	background: transparent;
	color: var(--wsk-ss-btn-color, #fff);
	border: 1.5px solid currentColor;
	border-radius: var(--wsk-ss-btn-radius, 8px);
}

.wsk-scroll-sections__btn--outline::before {
	content: '';
	position: absolute;
	inset: 0;
	background: var(--wsk-ss-btn-color, #fff);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.4s var(--_ease);
	z-index: -1;
	border-radius: inherit;
}

.wsk-scroll-sections__btn--outline:hover {
	color: var(--wsk-ss-btn-bg, #1a1a2e);
	border-color: var(--wsk-ss-btn-color, #fff);
}

.wsk-scroll-sections__btn--outline:hover::before {
	transform: scaleX(1);
}

/* Ghost button — underline reveal */
.wsk-scroll-sections__btn--ghost {
	background: transparent;
	color: var(--wsk-ss-btn-color, #fff);
	border: none;
	padding-left: 0;
	padding-right: 0;
	border-radius: 0;
}

.wsk-scroll-sections__btn--ghost::after {
	content: '';
	position: absolute;
	bottom: 8px;
	left: 0;
	width: 0;
	height: 1px;
	background: currentColor;
	transition: width 0.4s var(--_ease);
}

.wsk-scroll-sections__btn--ghost:hover {
	color: var(--wsk-ss-btn-color, #fff);
}

.wsk-scroll-sections__btn--ghost:hover::after {
	width: calc(100% - 28px);
}

/* Arrow icon — elastic bounce on hover */
.wsk-scroll-sections__btn-arrow {
	display: inline-flex;
	width: 18px;
	height: 18px;
	transition: transform 0.4s var(--_ease);
}

.wsk-scroll-sections__btn-arrow svg {
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.wsk-scroll-sections__btn:hover .wsk-scroll-sections__btn-arrow {
	transform: translateX(5px);
}

/* ═══════════════════════════════════════════
   BOTTOM BAR — Button + Tags shared row
   ═══════════════════════════════════════════ */
.wsk-scroll-sections__bottom-bar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-top: 4px;
}

/* Reset tags when inside bottom-bar — flatten into row */
.wsk-scroll-sections__bottom-bar .wsk-scroll-sections__tags {
	display: contents;
}

/* First tag pushes itself + siblings to the right */
.wsk-scroll-sections__bottom-bar .wsk-scroll-sections__tag:first-child {
	margin-left: auto;
}

.wsk-scroll-sections__bottom-bar .wsk-scroll-sections__tag {
	margin: 0;
}

/* ═══════════════════════════════════════════
   MEDIA — Image with parallax feel
   ═══════════════════════════════════════════ */
.wsk-scroll-sections__media {
	position: relative;
	overflow: hidden;
	aspect-ratio: 4 / 3;
}

.wsk-scroll-sections__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transform: scale(1.08);
	transition: transform 1.2s var(--_ease-out);
}

/* Image zooms to natural size when visible — creates parallax feel */
.wsk-scroll-sections__section.is-visible .wsk-scroll-sections__img {
	transform: scale(1);
}

/* ═══════════════════════════════════════════
   TEXT COLOR: Dark scheme (light backgrounds)
   ═══════════════════════════════════════════ */
.wsk-scroll-sections__section--dark .wsk-scroll-sections__title {
	color: var(--wsk-ss-title-color, #111827);
}

.wsk-scroll-sections__section--dark .wsk-scroll-sections__desc {
	color: var(--wsk-ss-description-color, rgba(17,24,39,0.6));
}

.wsk-scroll-sections__section--dark .wsk-scroll-sections__slogan {
	color: var(--wsk-ss-label-color, rgba(17,24,39,0.45));
}

.wsk-scroll-sections__section--dark .wsk-scroll-sections__icon {
	color: var(--wsk-ss-label-color, rgba(17,24,39,0.45));
}

.wsk-scroll-sections__section--dark .wsk-scroll-sections__btn--filled {
	background: var(--wsk-ss-btn-bg, #111827);
	border-color: var(--wsk-ss-btn-bg, #111827);
}

.wsk-scroll-sections__section--dark .wsk-scroll-sections__btn--outline {
	color: var(--wsk-ss-btn-bg, #111827);
	border-color: var(--wsk-ss-btn-bg, #111827);
}

.wsk-scroll-sections__section--dark .wsk-scroll-sections__btn--outline:hover {
	color: var(--wsk-ss-btn-color, #fff);
}

.wsk-scroll-sections__section--dark .wsk-scroll-sections__btn--outline::before {
	background: var(--wsk-ss-btn-bg, #111827);
}

.wsk-scroll-sections__section--dark .wsk-scroll-sections__btn--ghost {
	color: var(--wsk-ss-btn-bg, #111827);
}

/* ═══════════════════════════════════════════
   LAYOUT: Centered
   ═══════════════════════════════════════════ */
.wsk-scroll-sections__section--centered .wsk-scroll-sections__inner {
	align-items: center;
}

.wsk-scroll-sections__section--centered .wsk-scroll-sections__content {
	align-items: center;
	text-align: center;
	max-width: 720px;
	margin: 0 auto;
}

.wsk-scroll-sections__section--centered .wsk-scroll-sections__media {
	display: none;
}

.wsk-scroll-sections__section--centered .wsk-scroll-sections__slogan::before {
	display: none;
}

.wsk-scroll-sections__section--centered .wsk-scroll-sections__desc {
	max-width: 600px;
}

.wsk-scroll-sections__section--centered .wsk-scroll-sections__btn {
	align-self: center;
}

/* ═══════════════════════════════════════════
   LAYOUT: Fullwidth Background
   ═══════════════════════════════════════════ */
.wsk-scroll-sections__section--fullwidth-bg .wsk-scroll-sections__inner {
	align-items: center;
}

.wsk-scroll-sections__section--fullwidth-bg .wsk-scroll-sections__content {
	align-items: center;
	text-align: center;
	max-width: 720px;
	margin: 0 auto;
}

.wsk-scroll-sections__section--fullwidth-bg .wsk-scroll-sections__media {
	display: none;
}

.wsk-scroll-sections__section--fullwidth-bg .wsk-scroll-sections__slogan::before {
	display: none;
}

.wsk-scroll-sections__section--fullwidth-bg .wsk-scroll-sections__btn {
	align-self: center;
}

/* ─── Navigation (hidden on mobile) ─── */
.wsk-scroll-sections__nav {
	display: none;
}

/* ═══════════════════════════════════════════
   STAGGERED CONTENT REVEAL: Fade
   Each child element animates independently
   ═══════════════════════════════════════════ */
.wsk-scroll-sections--fade .wsk-scroll-sections__icon,
.wsk-scroll-sections--fade .wsk-scroll-sections__slogan,
.wsk-scroll-sections--fade .wsk-scroll-sections__title,
.wsk-scroll-sections--fade .wsk-scroll-sections__desc,
.wsk-scroll-sections--fade .wsk-scroll-sections__btn {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity var(--wsk-ss-speed, 0.6s) var(--_ease),
	            transform var(--wsk-ss-speed, 0.6s) var(--_ease);
}

.wsk-scroll-sections--fade .wsk-scroll-sections__media {
	opacity: 0;
	transition: opacity calc(var(--wsk-ss-speed, 0.6s) * 1.2) var(--_ease);
}

/* Stagger delays for cinematic sequencing */
.wsk-scroll-sections--fade .wsk-scroll-sections__icon { transition-delay: 0.05s; }
.wsk-scroll-sections--fade .wsk-scroll-sections__slogan { transition-delay: 0.1s; }
.wsk-scroll-sections--fade .wsk-scroll-sections__title { transition-delay: 0.18s; }
.wsk-scroll-sections--fade .wsk-scroll-sections__desc { transition-delay: 0.28s; }
.wsk-scroll-sections--fade .wsk-scroll-sections__btn { transition-delay: 0.38s; }
.wsk-scroll-sections--fade .wsk-scroll-sections__media { transition-delay: 0.15s; }

.wsk-scroll-sections--fade .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__icon,
.wsk-scroll-sections--fade .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__slogan,
.wsk-scroll-sections--fade .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__title,
.wsk-scroll-sections--fade .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__desc,
.wsk-scroll-sections--fade .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__btn,
.wsk-scroll-sections--fade .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__media {
	opacity: 1;
	transform: translateY(0);
}

/* ═══════════════════════════════════════════
   STAGGERED CONTENT REVEAL: Slide
   ═══════════════════════════════════════════ */
.wsk-scroll-sections--slide .wsk-scroll-sections__icon,
.wsk-scroll-sections--slide .wsk-scroll-sections__slogan,
.wsk-scroll-sections--slide .wsk-scroll-sections__title,
.wsk-scroll-sections--slide .wsk-scroll-sections__desc,
.wsk-scroll-sections--slide .wsk-scroll-sections__btn {
	opacity: 0;
	transform: translateX(-30px);
	transition: opacity var(--wsk-ss-speed, 0.6s) var(--_ease),
	            transform var(--wsk-ss-speed, 0.6s) var(--_ease);
}

.wsk-scroll-sections--slide .wsk-scroll-sections__media {
	opacity: 0;
	transform: translateX(30px);
	transition: opacity var(--wsk-ss-speed, 0.6s) var(--_ease),
	            transform var(--wsk-ss-speed, 0.6s) var(--_ease);
}

/* Stagger */
.wsk-scroll-sections--slide .wsk-scroll-sections__icon { transition-delay: 0.05s; }
.wsk-scroll-sections--slide .wsk-scroll-sections__slogan { transition-delay: 0.1s; }
.wsk-scroll-sections--slide .wsk-scroll-sections__title { transition-delay: 0.18s; }
.wsk-scroll-sections--slide .wsk-scroll-sections__desc { transition-delay: 0.28s; }
.wsk-scroll-sections--slide .wsk-scroll-sections__btn { transition-delay: 0.38s; }
.wsk-scroll-sections--slide .wsk-scroll-sections__media { transition-delay: 0.2s; }

/* Reverse direction for text-right */
.wsk-scroll-sections--slide .wsk-scroll-sections__section--text-right .wsk-scroll-sections__icon,
.wsk-scroll-sections--slide .wsk-scroll-sections__section--text-right .wsk-scroll-sections__slogan,
.wsk-scroll-sections--slide .wsk-scroll-sections__section--text-right .wsk-scroll-sections__title,
.wsk-scroll-sections--slide .wsk-scroll-sections__section--text-right .wsk-scroll-sections__desc,
.wsk-scroll-sections--slide .wsk-scroll-sections__section--text-right .wsk-scroll-sections__btn {
	transform: translateX(30px);
}

.wsk-scroll-sections--slide .wsk-scroll-sections__section--text-right .wsk-scroll-sections__media {
	transform: translateX(-30px);
}

.wsk-scroll-sections--slide .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__icon,
.wsk-scroll-sections--slide .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__slogan,
.wsk-scroll-sections--slide .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__title,
.wsk-scroll-sections--slide .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__desc,
.wsk-scroll-sections--slide .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__btn,
.wsk-scroll-sections--slide .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__media {
	opacity: 1;
	transform: translateX(0);
}

/* ═══════════════════════════════════════════
   STAGGERED CONTENT REVEAL: Zoom
   ═══════════════════════════════════════════ */
.wsk-scroll-sections--zoom .wsk-scroll-sections__icon,
.wsk-scroll-sections--zoom .wsk-scroll-sections__slogan,
.wsk-scroll-sections--zoom .wsk-scroll-sections__title,
.wsk-scroll-sections--zoom .wsk-scroll-sections__desc,
.wsk-scroll-sections--zoom .wsk-scroll-sections__btn {
	opacity: 0;
	transform: scale(0.94) translateY(12px);
	transition: opacity var(--wsk-ss-speed, 0.6s) var(--_ease),
	            transform var(--wsk-ss-speed, 0.6s) var(--_ease);
}

.wsk-scroll-sections--zoom .wsk-scroll-sections__media {
	opacity: 0;
	transform: scale(0.92);
	transition: opacity calc(var(--wsk-ss-speed, 0.6s) * 1.2) var(--_ease),
	            transform calc(var(--wsk-ss-speed, 0.6s) * 1.2) var(--_ease);
}

/* Stagger */
.wsk-scroll-sections--zoom .wsk-scroll-sections__icon { transition-delay: 0.05s; }
.wsk-scroll-sections--zoom .wsk-scroll-sections__slogan { transition-delay: 0.1s; }
.wsk-scroll-sections--zoom .wsk-scroll-sections__title { transition-delay: 0.18s; }
.wsk-scroll-sections--zoom .wsk-scroll-sections__desc { transition-delay: 0.28s; }
.wsk-scroll-sections--zoom .wsk-scroll-sections__btn { transition-delay: 0.38s; }
.wsk-scroll-sections--zoom .wsk-scroll-sections__media { transition-delay: 0.2s; }

.wsk-scroll-sections--zoom .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__icon,
.wsk-scroll-sections--zoom .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__slogan,
.wsk-scroll-sections--zoom .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__title,
.wsk-scroll-sections--zoom .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__desc,
.wsk-scroll-sections--zoom .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__btn,
.wsk-scroll-sections--zoom .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__media {
	opacity: 1;
	transform: scale(1) translateY(0);
}

.wsk-scroll-sections--zoom .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__media {
	transform: scale(1);
}

/* ═══════════════════════════════════════════
   RESPONSIVE: Font sizes
   ═══════════════════════════════════════════ */
@media (max-width: 639px) {
	.wsk-scroll-sections__slogan {
		font-size: var(--wsk-ss-label-font-size-sm, var(--wsk-ss-label-font-size, 0.7rem));
		text-align: var(--wsk-ss-label-text-align-sm, var(--wsk-ss-label-text-align, left));
	}

	.wsk-scroll-sections__title {
		font-size: var(--wsk-ss-title-font-size-sm, var(--wsk-ss-title-font-size, clamp(1.75rem, 7vw, 2.5rem)));
		text-align: var(--wsk-ss-title-text-align-sm, var(--wsk-ss-title-text-align, left));
	}

	.wsk-scroll-sections__desc {
		font-size: var(--wsk-ss-description-font-size-sm, var(--wsk-ss-description-font-size, 0.95rem));
		text-align: var(--wsk-ss-description-text-align-sm, var(--wsk-ss-description-text-align, left));
	}
}

@media (min-width: 640px) and (max-width: 1024px) {
	.wsk-scroll-sections__slogan {
		font-size: var(--wsk-ss-label-font-size-md, var(--wsk-ss-label-font-size, 0.75rem));
		text-align: var(--wsk-ss-label-text-align-md, var(--wsk-ss-label-text-align, left));
	}

	.wsk-scroll-sections__title {
		font-size: var(--wsk-ss-title-font-size-md, var(--wsk-ss-title-font-size, clamp(2rem, 5vw, 3rem)));
		text-align: var(--wsk-ss-title-text-align-md, var(--wsk-ss-title-text-align, left));
	}

	.wsk-scroll-sections__desc {
		font-size: var(--wsk-ss-description-font-size-md, var(--wsk-ss-description-font-size, 1rem));
		text-align: var(--wsk-ss-description-text-align-md, var(--wsk-ss-description-text-align, left));
	}
}

/* ═══════════════════════════════════════════
   TABLET+ (768px): Split-screen layouts
   ═══════════════════════════════════════════ */
@media (min-width: 768px) {

	/* Split-screen: edge-to-edge */
	.wsk-scroll-sections__section--text-left .wsk-scroll-sections__inner,
	.wsk-scroll-sections__section--text-right .wsk-scroll-sections__inner {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0;
		max-width: none;
		padding: 0;
		margin: 0;
		height: 100%;
	}

	.wsk-scroll-sections__section--text-left .wsk-scroll-sections__content,
	.wsk-scroll-sections__section--text-right .wsk-scroll-sections__content {
		padding: clamp(3rem, 5vw, 6rem) clamp(2rem, 5vw, 5rem);
	}

	/* Image fills entire half — edge to edge */
	.wsk-scroll-sections__section--text-left .wsk-scroll-sections__media,
	.wsk-scroll-sections__section--text-right .wsk-scroll-sections__media {
		position: relative;
		aspect-ratio: auto;
		min-height: 100%;
	}

	.wsk-scroll-sections__section--text-left .wsk-scroll-sections__img,
	.wsk-scroll-sections__section--text-right .wsk-scroll-sections__img {
		position: absolute;
		inset: 0;
		border-radius: 0;
	}

	/* text-right: swap column order */
	.wsk-scroll-sections__section--text-right .wsk-scroll-sections__content {
		order: 2;
	}

	.wsk-scroll-sections__section--text-right .wsk-scroll-sections__media {
		order: 1;
	}
}

/* ═══════════════════════════════════════════
   DESKTOP (1025px): Scroll-snap + Navigation
   ═══════════════════════════════════════════ */
@media (min-width: 1025px) {

	/* Activate scroll-snap */
	.wsk-scroll-sections--snap .wsk-scroll-sections__viewport {
		height: 100vh;
		overflow-y: auto;
		scroll-snap-type: y mandatory;
		scroll-behavior: smooth;
		scrollbar-width: none;
	}

	.wsk-scroll-sections--snap .wsk-scroll-sections__viewport::-webkit-scrollbar {
		display: none;
	}

	.wsk-scroll-sections--snap .wsk-scroll-sections__section {
		height: var(--wsk-ss-section-height, 100vh);
		min-height: var(--wsk-ss-section-height, 100vh);
		scroll-snap-align: start;
		scroll-snap-stop: always;
	}

	/* Layout: flex parent for nav + viewport */
	.wsk-scroll-sections {
		display: flex;
	}

	.wsk-scroll-sections__viewport {
		flex: 1 1 auto;
	}

	/* Nav positioning */
	.wsk-scroll-sections--nav-right {
		flex-direction: row-reverse;
	}

	.wsk-scroll-sections--nav-right .wsk-scroll-sections__nav {
		padding-right: 28px;
	}

	.wsk-scroll-sections--nav-left .wsk-scroll-sections__nav {
		padding-left: 28px;
	}

	/* ─── Navigation: Premium vertical nav ─── */
	.wsk-scroll-sections__nav {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		position: sticky;
		top: 0;
		height: 100vh;
		z-index: 10;
		pointer-events: none;
	}

	.wsk-scroll-sections__nav-list {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 0;
		pointer-events: auto;
		position: relative;
	}

	/* Vertical connecting line between dots */
	.wsk-scroll-sections__nav--dots .wsk-scroll-sections__nav-list::before,
	.wsk-scroll-sections__nav--dots-labels .wsk-scroll-sections__nav-list::before {
		content: '';
		position: absolute;
		top: 8px;
		bottom: 8px;
		width: 1px;
		background: var(--wsk-ss-nav-color, rgba(255,255,255,0.12));
		z-index: 0;
	}

	.wsk-scroll-sections--nav-right .wsk-scroll-sections__nav-list::before {
		right: 12px;
	}

	.wsk-scroll-sections--nav-left .wsk-scroll-sections__nav-list::before {
		left: 12px;
	}

	.wsk-scroll-sections__nav-item {
		position: relative;
		z-index: 1;
	}

	/* Nav button */
	.wsk-scroll-sections__nav-btn {
		display: flex;
		align-items: center;
		gap: 12px;
		background: none;
		border: none;
		cursor: pointer;
		padding: 10px 4px;
		font-family: inherit;
		outline: none;
	}

	.wsk-scroll-sections--nav-right .wsk-scroll-sections__nav-btn {
		flex-direction: row-reverse;
	}

	/* Dot — refined with ring */
	.wsk-scroll-sections__dot {
		width: 10px;
		height: 10px;
		border-radius: 50%;
		background: var(--wsk-ss-nav-color, rgba(255,255,255,0.3));
		border: none;
		transition: all 0.4s var(--_ease);
		display: block;
		flex-shrink: 0;
		position: relative;
	}

	/* Outer ring on active — expands from center */
	.wsk-scroll-sections__dot::after {
		content: '';
		position: absolute;
		inset: -4px;
		border-radius: 50%;
		border: 1.5px solid transparent;
		transition: all 0.4s var(--_ease);
	}

	.wsk-scroll-sections__nav-item.is-active .wsk-scroll-sections__dot {
		background: var(--wsk-ss-nav-active, #ffffff);
		box-shadow: 0 0 12px rgba(255,255,255,0.2);
	}

	.wsk-scroll-sections__nav-item.is-active .wsk-scroll-sections__dot::after {
		border-color: var(--wsk-ss-nav-active, rgba(255,255,255,0.4));
	}

	.wsk-scroll-sections__nav-btn:hover .wsk-scroll-sections__dot {
		background: var(--wsk-ss-nav-active, #ffffff);
		transform: scale(1.2);
	}

	/* Dot label — slides in from right */
	.wsk-scroll-sections__dot-label {
		font-size: 0.65rem;
		font-weight: 600;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: var(--wsk-ss-nav-color, rgba(255,255,255,0.35));
		white-space: nowrap;
		opacity: 0;
		transform: translateX(8px);
		transition: opacity 0.35s ease, transform 0.35s var(--_ease), color 0.35s ease;
	}

	.wsk-scroll-sections__nav-item.is-active .wsk-scroll-sections__dot-label {
		color: var(--wsk-ss-nav-active, #ffffff);
		opacity: 1;
		transform: translateX(0);
	}

	.wsk-scroll-sections__nav:hover .wsk-scroll-sections__dot-label {
		opacity: 0.6;
		transform: translateX(0);
	}

	.wsk-scroll-sections__nav:hover .wsk-scroll-sections__nav-item.is-active .wsk-scroll-sections__dot-label {
		opacity: 1;
	}

	/* Nav style: dots only */
	.wsk-scroll-sections__nav--dots .wsk-scroll-sections__dot-label {
		display: none;
	}

	/* Nav style: labels only */
	.wsk-scroll-sections__nav--labels .wsk-scroll-sections__nav-list::before {
		display: none;
	}

	.wsk-scroll-sections__nav--labels .wsk-scroll-sections__dot {
		display: none;
	}

	.wsk-scroll-sections__nav--labels .wsk-scroll-sections__dot-label {
		opacity: 0.35;
		transform: none;
		font-size: 0.7rem;
		letter-spacing: 0.06em;
		transition: opacity 0.35s ease, color 0.35s ease;
	}

	.wsk-scroll-sections__nav--labels .wsk-scroll-sections__nav-item.is-active .wsk-scroll-sections__dot-label {
		opacity: 1;
	}

	/* Nav style: progress */
	.wsk-scroll-sections__nav--progress .wsk-scroll-sections__nav-list {
		display: none;
	}

	.wsk-scroll-sections__progress {
		width: 2px;
		height: 180px;
		background: var(--wsk-ss-nav-color, rgba(255,255,255,0.1));
		border-radius: 2px;
		overflow: hidden;
		pointer-events: auto;
	}

	.wsk-scroll-sections__progress-fill {
		width: 100%;
		height: 0%;
		background: var(--wsk-ss-nav-active, #ffffff);
		border-radius: 2px;
		transition: height 0.2s ease-out;
		box-shadow: 0 0 8px var(--wsk-ss-nav-active, rgba(255,255,255,0.3));
	}

	/* Nav style: none */
	.wsk-scroll-sections__nav--none {
		display: none;
	}

	/* Desktop: generous content padding */
	.wsk-scroll-sections__section--text-left .wsk-scroll-sections__content,
	.wsk-scroll-sections__section--text-right .wsk-scroll-sections__content {
		padding: clamp(3rem, 5vw, 6rem) clamp(3rem, 6vw, 8rem);
	}
}

/* ═══════════════════════════════════════════
   MOBILE SNAP MODE (opt-in)
   ═══════════════════════════════════════════ */
@media (max-width: 1024px) {
	.wsk-scroll-sections--mobile-snap .wsk-scroll-sections__viewport {
		height: 100vh;
		height: 100dvh;
		overflow-y: auto;
		scroll-snap-type: y mandatory;
		scrollbar-width: none;
	}

	.wsk-scroll-sections--mobile-snap .wsk-scroll-sections__viewport::-webkit-scrollbar {
		display: none;
	}

	.wsk-scroll-sections--mobile-snap .wsk-scroll-sections__section {
		height: 100vh;
		height: 100dvh;
		min-height: 100dvh;
		scroll-snap-align: start;
		scroll-snap-stop: always;
	}

	.wsk-scroll-sections--mobile-snap .wsk-scroll-sections__media {
		aspect-ratio: auto;
		flex: 1 1 0%;
		min-height: 200px;
	}

	.wsk-scroll-sections--mobile-snap .wsk-scroll-sections__img {
		position: absolute;
		inset: 0;
	}

	.wsk-scroll-sections--mobile-snap .wsk-scroll-sections__media {
		position: relative;
	}
}

/* ═══════════════════════════════════════════
   TAGS — Per-section pill links (joshuas.io)
   ═══════════════════════════════════════════ */
.wsk-scroll-sections__tags {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: flex-end;
	justify-content: flex-end;
	z-index: 2;
	margin-left: auto;
	padding: clamp(2rem, 5vw, 4rem) clamp(1.5rem, 5vw, 3rem);
}

.wsk-scroll-sections__tag {
	display: inline-flex;
	align-items: center;
	padding: 6px 16px;
	font-size: 0.6rem;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	border: 0.5px solid rgba(255,255,255,0.25);
	border-radius: 50px;
	color: rgba(255,255,255,0.55);
	background: transparent;
	transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
	cursor: default;
	white-space: nowrap;
}

a.wsk-scroll-sections__tag {
	cursor: pointer;
}

a.wsk-scroll-sections__tag:hover {
	border-color: rgba(255,255,255,0.5);
	color: rgba(255,255,255,0.85);
	text-decoration: none;
}

.wsk-scroll-sections__section--dark .wsk-scroll-sections__tag {
	color: rgba(17,24,39,0.45);
	border-color: rgba(17,24,39,0.2);
}

.wsk-scroll-sections__section--dark a.wsk-scroll-sections__tag:hover {
	border-color: rgba(17,24,39,0.4);
	color: rgba(17,24,39,0.7);
}

/* Tags reveal animation */
.wsk-scroll-sections--fade .wsk-scroll-sections__tag,
.wsk-scroll-sections--slide .wsk-scroll-sections__tag,
.wsk-scroll-sections--zoom .wsk-scroll-sections__tag {
	opacity: 0;
	transform: translateY(12px);
	transition: opacity var(--wsk-ss-speed, 0.6s) var(--_ease),
	            transform var(--wsk-ss-speed, 0.6s) var(--_ease);
}

.wsk-scroll-sections--fade .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__tag,
.wsk-scroll-sections--slide .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__tag,
.wsk-scroll-sections--zoom .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__tag {
	opacity: 0.65;
	transform: translateY(0);
}

.wsk-scroll-sections--fade .wsk-scroll-sections__tag:nth-child(1) { transition-delay: 0.45s; }
.wsk-scroll-sections--fade .wsk-scroll-sections__tag:nth-child(2) { transition-delay: 0.52s; }
.wsk-scroll-sections--fade .wsk-scroll-sections__tag:nth-child(3) { transition-delay: 0.59s; }
.wsk-scroll-sections--fade .wsk-scroll-sections__tag:nth-child(4) { transition-delay: 0.66s; }

/* ═══════════════════════════════════════════
   STACK MODE — Full-screen editorial scroll.
   Each section = fullscreen bg image + content
   at bottom. Sections slide up & cover previous.
   Uses position:sticky; top:0.
   Inspired by joshuas.io.
   ═══════════════════════════════════════════ */

/* Stack viewport: normal flow, no scroll container */
.wsk-scroll-sections--stack .wsk-scroll-sections__viewport {
	display: flex;
	flex-direction: column;
}

/* Each section: fullscreen (sticky added on desktop via media query) */
.wsk-scroll-sections--stack .wsk-scroll-sections__section {
	height: var(--wsk-ss-section-height, 100vh);
	min-height: var(--wsk-ss-section-height, 100vh);
	overflow: hidden;
}

/* Z-index: later sections on top */
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(1) { z-index: 1; }
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(2) { z-index: 2; }
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(3) { z-index: 3; }
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(4) { z-index: 4; }
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(5) { z-index: 5; }
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(6) { z-index: 6; }
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(7) { z-index: 7; }
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(8) { z-index: 8; }
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(9) { z-index: 9; }
.wsk-scroll-sections--stack .wsk-scroll-sections__section:nth-child(10) { z-index: 10; }

/* ─── Stack: Force fullscreen immersive layout ─── */

/* Background fills entire section — ALWAYS (no split-screen in stack) */
.wsk-scroll-sections--stack .wsk-scroll-sections__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}

/* The content image becomes fullscreen background — positioned to SECTION, not inner */
.wsk-scroll-sections--stack .wsk-scroll-sections__media {
	position: absolute;
	inset: 0;
	z-index: 0;
	aspect-ratio: auto;
	min-height: 100%;
	overflow: hidden;
}

.wsk-scroll-sections--stack .wsk-scroll-sections__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0;
	transform: scale(1.03);
}

.wsk-scroll-sections--stack .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__img {
	transform: scale(1);
}

/* Gradient overlay on image for text readability */
.wsk-scroll-sections--stack .wsk-scroll-sections__media::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(
		to top,
		rgba(0,0,0,0.6) 0%,
		rgba(0,0,0,0.25) 40%,
		transparent 65%
	);
	z-index: 1;
	pointer-events: none;
}

/* Override: no grid/split in stack mode — single column, content at bottom */
.wsk-scroll-sections--stack .wsk-scroll-sections__section--text-left .wsk-scroll-sections__inner,
.wsk-scroll-sections--stack .wsk-scroll-sections__section--text-right .wsk-scroll-sections__inner {
	display: flex;
	flex-direction: column;
	grid-template-columns: none;
	align-items: stretch;
	justify-content: flex-end;
	max-width: none;
	padding: 0;
	margin: 0;
	height: 100%;
}

/* Inner: full height, content stacked at bottom */
.wsk-scroll-sections--stack .wsk-scroll-sections__inner {
	position: static;
	z-index: auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-end;
	width: 100%;
	height: 100%;
	padding: 0;
}

/* Content block: at bottom, full width, above media */
.wsk-scroll-sections--stack .wsk-scroll-sections__content {
	position: relative;
	z-index: 5;
	padding: clamp(2rem, 5vw, 4rem) clamp(1.5rem, 5vw, 4rem);
	padding-bottom: clamp(5rem, 10vw, 7rem);
	max-width: none;
}

/* Text elements: constrain width for readability */
.wsk-scroll-sections--stack .wsk-scroll-sections__title,
.wsk-scroll-sections--stack .wsk-scroll-sections__desc,
.wsk-scroll-sections--stack .wsk-scroll-sections__slogan {
	max-width: 680px;
}

/* Override hidden media in centered/fullwidth-bg — stack always shows image as bg */
.wsk-scroll-sections--stack .wsk-scroll-sections__section--centered .wsk-scroll-sections__media,
.wsk-scroll-sections--stack .wsk-scroll-sections__section--fullwidth-bg .wsk-scroll-sections__media {
	display: flex;
}

/* Override centered/fullwidth-bg text centering — stack is always bottom-left */
.wsk-scroll-sections--stack .wsk-scroll-sections__section--centered .wsk-scroll-sections__content,
.wsk-scroll-sections--stack .wsk-scroll-sections__section--fullwidth-bg .wsk-scroll-sections__content {
	text-align: left;
	align-items: flex-start;
	max-width: 720px;
	margin: 0;
}

/* Tags are inside bottom-bar now via display:contents — no standalone styles needed */

/* In stack mode, title is bigger — editorial feel (desktop only, mobile has own sizes) */
.wsk-scroll-sections--stack .wsk-scroll-sections__title {
	font-weight: var(--wsk-ss-title-font-weight, 300);
	letter-spacing: var(--wsk-ss-title-letter-spacing, -0.03em);
	line-height: var(--wsk-ss-title-line-height, 1.05);
}

/* Slogan: editorial thin uppercase */
.wsk-scroll-sections--stack .wsk-scroll-sections__slogan {
	font-weight: var(--wsk-ss-label-font-weight, 500);
	letter-spacing: var(--wsk-ss-label-letter-spacing, 0.2em);
}

/* Stack mode: force light text (content is always over image/dark bg) */
.wsk-scroll-sections--stack .wsk-scroll-sections__title {
	color: var(--wsk-ss-title-color, #ffffff);
}
.wsk-scroll-sections--stack .wsk-scroll-sections__desc {
	color: var(--wsk-ss-description-color, rgba(255,255,255,0.7));
}
.wsk-scroll-sections--stack .wsk-scroll-sections__slogan {
	color: var(--wsk-ss-label-color, rgba(255,255,255,0.6));
}

/* ─── Stack: Desktop — sticky stacking + side navigation ─── */
@media (min-width: 1025px) {
	.wsk-scroll-sections--stack {
		display: flex;
	}

	.wsk-scroll-sections--stack .wsk-scroll-sections__viewport {
		flex: 1 1 auto;
	}

	/* Activate sticky stacking — desktop only */
	.wsk-scroll-sections--stack .wsk-scroll-sections__section {
		position: sticky;
		top: 0;
		will-change: transform;
	}

	.wsk-scroll-sections--stack .wsk-scroll-sections__nav {
		display: flex;
		z-index: 20;
	}

	.wsk-scroll-sections--stack .wsk-scroll-sections__content {
		padding: clamp(3rem, 5vw, 5rem) clamp(3rem, 6vw, 6rem);
		padding-bottom: clamp(4rem, 8vw, 6rem);
		max-width: none;
	}

	/* Editorial large title — desktop only */
	.wsk-scroll-sections--stack .wsk-scroll-sections__title {
		font-size: var(--wsk-ss-title-font-size, clamp(2.5rem, 6vw, 4.5rem));
	}

	/* Text readability constraint — desktop */
	.wsk-scroll-sections--stack .wsk-scroll-sections__title,
	.wsk-scroll-sections--stack .wsk-scroll-sections__desc,
	.wsk-scroll-sections--stack .wsk-scroll-sections__slogan {
		max-width: 720px;
	}
}

/* ─── Stack: Mobile — Fullscreen editorial with glass card ─── */
@media (max-width: 1024px) {
	.wsk-scroll-sections--stack .wsk-scroll-sections__section {
		position: relative;
		height: 100vh;
		height: 100dvh;
		min-height: 100dvh;
	}

	/* Override ALL layout variants — centered overlay */
	.wsk-scroll-sections--stack .wsk-scroll-sections__inner,
	.wsk-scroll-sections--stack .wsk-scroll-sections__section--text-left .wsk-scroll-sections__inner,
	.wsk-scroll-sections--stack .wsk-scroll-sections__section--text-right .wsk-scroll-sections__inner,
	.wsk-scroll-sections--stack .wsk-scroll-sections__section--centered .wsk-scroll-sections__inner,
	.wsk-scroll-sections--stack .wsk-scroll-sections__section--fullwidth-bg .wsk-scroll-sections__inner {
		position: absolute;
		inset: 0;
		display: flex;
		flex-direction: column;
		grid-template-columns: none;
		justify-content: center;
		align-items: stretch;
		height: auto;
		width: 100%;
		padding: 0;
		margin: 0;
		z-index: 3;
	}

	/* ── Glass content card — centered over fullscreen image ── */
	.wsk-scroll-sections--stack .wsk-scroll-sections__content {
		position: relative;
		z-index: 5;
		width: calc(100% - 2.5rem);
		max-width: none;
		margin: 0 auto;
		padding: 1.75rem 1.5rem 1.5rem;
		background: rgba(0, 0, 0, 0.35);
		backdrop-filter: blur(16px) saturate(1.4);
		-webkit-backdrop-filter: blur(16px) saturate(1.4);
		border: 1px solid rgba(255, 255, 255, 0.08);
		border-radius: 16px;
	}

	/* Dark text sections: invert glass */
	.wsk-scroll-sections--stack .wsk-scroll-sections__section--dark .wsk-scroll-sections__content {
		background: rgba(255, 255, 255, 0.55);
		border-color: rgba(255, 255, 255, 0.3);
	}

	/* ── Typography — elegant, readable ── */
	.wsk-scroll-sections--stack .wsk-scroll-sections__slogan {
		font-size: 0.6rem;
		margin-bottom: 10px;
		letter-spacing: 0.18em;
	}

	.wsk-scroll-sections--stack .wsk-scroll-sections__slogan::before {
		width: 20px;
	}

	.wsk-scroll-sections--stack .wsk-scroll-sections__section.is-visible .wsk-scroll-sections__slogan::before {
		width: 28px;
	}

	.wsk-scroll-sections--stack .wsk-scroll-sections__title {
		font-size: var(--wsk-ss-title-font-size, clamp(1.5rem, 6vw, 2rem));
		line-height: 1.2;
		margin-bottom: 10px;
	}

	.wsk-scroll-sections--stack .wsk-scroll-sections__desc {
		font-size: var(--wsk-ss-description-font-size, 0.85rem);
		line-height: 1.55;
		max-width: none;
		margin-bottom: 16px;
		display: -webkit-box;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	/* ── Button — clean, compact ── */
	.wsk-scroll-sections--stack .wsk-scroll-sections__btn {
		min-height: 40px;
		padding: 9px 22px;
		font-size: 0.8rem;
	}

	/* ── Bottom bar: button + tags — single row, scrollable ── */
	.wsk-scroll-sections--stack .wsk-scroll-sections__bottom-bar {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		gap: 12px;
		margin-top: 20px;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.wsk-scroll-sections--stack .wsk-scroll-sections__bottom-bar::-webkit-scrollbar {
		display: none;
	}

	/* Button: compact, never shrinks */
	.wsk-scroll-sections--stack .wsk-scroll-sections__bottom-bar .wsk-scroll-sections__btn {
		flex-shrink: 0;
		min-height: 36px;
		padding: 8px 20px;
		font-size: 0.8rem;
		margin: 0;
		align-self: center;
	}

	/* Tags container: inline with button, same height */
	.wsk-scroll-sections--stack .wsk-scroll-sections__tags {
		display: contents;
	}

	/* Each tag: refined pill — thin border, compact */
	.wsk-scroll-sections--stack .wsk-scroll-sections__tag {
		padding: 4px 11px;
		font-size: 0.5rem;
		font-weight: 400;
		min-height: auto;
		letter-spacing: 0.08em;
		flex-shrink: 0;
		display: inline-flex;
		align-items: center;
		border: 0.5px solid rgba(255,255,255,0.25);
		border-radius: 50px;
		background: transparent;
		backdrop-filter: none;
		-webkit-backdrop-filter: none;
		color: rgba(255,255,255,0.55);
	}

	/* ── Gradient: softer on mobile — let image breathe ── */
	.wsk-scroll-sections--stack .wsk-scroll-sections__media::after {
		background: linear-gradient(
			to top,
			rgba(0, 0, 0, 0.3) 0%,
			rgba(0, 0, 0, 0.1) 30%,
			transparent 55%
		);
	}
}

/* ═══════════════════════════════════════════
   REDUCED MOTION
   ═══════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-scroll-sections--fade .wsk-scroll-sections__icon,
	.wsk-scroll-sections--fade .wsk-scroll-sections__slogan,
	.wsk-scroll-sections--fade .wsk-scroll-sections__title,
	.wsk-scroll-sections--fade .wsk-scroll-sections__desc,
	.wsk-scroll-sections--fade .wsk-scroll-sections__btn,
	.wsk-scroll-sections--fade .wsk-scroll-sections__media,
	.wsk-scroll-sections--slide .wsk-scroll-sections__icon,
	.wsk-scroll-sections--slide .wsk-scroll-sections__slogan,
	.wsk-scroll-sections--slide .wsk-scroll-sections__title,
	.wsk-scroll-sections--slide .wsk-scroll-sections__desc,
	.wsk-scroll-sections--slide .wsk-scroll-sections__btn,
	.wsk-scroll-sections--slide .wsk-scroll-sections__media,
	.wsk-scroll-sections--zoom .wsk-scroll-sections__icon,
	.wsk-scroll-sections--zoom .wsk-scroll-sections__slogan,
	.wsk-scroll-sections--zoom .wsk-scroll-sections__title,
	.wsk-scroll-sections--zoom .wsk-scroll-sections__desc,
	.wsk-scroll-sections--zoom .wsk-scroll-sections__btn,
	.wsk-scroll-sections--zoom .wsk-scroll-sections__media {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	.wsk-scroll-sections__img {
		transform: none !important;
	}

	.wsk-scroll-sections__bg {
		transition: none !important;
	}

	.wsk-scroll-sections--snap .wsk-scroll-sections__viewport {
		scroll-behavior: auto;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-scroll-sections a:focus-visible,
.wsk-scroll-sections button:focus-visible,
.wsk-scroll-sections [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/**
 * WEPRO: Showcase Scroll — "Atelier" edition.
 *
 * Ivory-on-ink palette. Serif heading with italic {gr} accent word.
 * Odometer-slide counter. Hairline progress rail with sliding bronze tick.
 * Mask-wipe entrance on every image (desktop + mobile). Gold inset hairline
 * frame fades in on the active image, fades out when it leaves.
 *
 * Shares the luxury grammar of Spotlight Hero + Hero Blur + Concierge:
 * Cormorant Garamond serif, Inter sans for small labels, champagne bronze
 * (--wsk-scs-accent: #B89968), warm-ivory (#FFF6E8) over ink (#0B0B0D).
 */

/* ═══════════════════════════════════════════════════════════════
   Avada ancestor override — sticky requires overflow:visible
   (desktop only — wide viewport AND mouse-driven pointer; tablets
   and touch devices skip this so they get the mobile stacked layout)
   ═══════════════════════════════════════════════════════════════ */
@media (min-width: 1367px) and (pointer: fine) {
	.fusion-fullwidth:has(.wsk-showcase-scroll),
	.fusion-builder-row:has(.wsk-showcase-scroll),
	.fusion-layout-column:has(.wsk-showcase-scroll),
	.fusion-column-wrapper:has(.wsk-showcase-scroll),
	.fusion-column-inner-bg:has(.wsk-showcase-scroll) {
		overflow: visible !important;
	}
}

/* ═══════════════════════════════════════════════════════════════
   BASE — house palette fallbacks + section
   ═══════════════════════════════════════════════════════════════ */
.wsk-showcase-scroll {
	--wsk-scs-ivory: #FFF6E8;
	--wsk-scs-ivory-soft: rgba(255, 246, 232, 0.72);
	--wsk-scs-ivory-hairline: rgba(255, 246, 232, 0.22);

	background: var(--wsk-scs-bg, #0B0B0D);
	color: var(--wsk-scs-ivory, #FFF6E8);
	position: relative;
	width: 100%;
	/* Bronze film-grain vignette at corners so the ink never reads as flat black. */
	background-image:
		radial-gradient(ellipse at 20% 10%, rgba(184, 153, 104, 0.06) 0%, transparent 45%),
		radial-gradient(ellipse at 80% 90%, rgba(184, 153, 104, 0.04) 0%, transparent 50%);
}

.wsk-showcase-scroll__inner {
	display: flex;
	flex-direction: column;
	max-width: var(--wsk-scs-max-width, 1400px);
	margin: 0 auto;
	padding: clamp(2rem, 6vw, 4rem) 0;
}

/* ═══════════════════════════════════════════════════════════════
   STICKY PANEL — mobile: compact header stack
   ═══════════════════════════════════════════════════════════════ */
.wsk-showcase-scroll__sticky {
	position: relative;
	padding: 0 clamp(1.25rem, 4vw, 2rem);
	margin-bottom: clamp(1.5rem, 4vw, 2rem);
}

.wsk-showcase-scroll__header {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
}

/* ─── Label — playbill-credit with flanking hairlines ─── */
.wsk-showcase-scroll__label,
.fusion-body .wsk-showcase-scroll__label {
	display: inline-flex !important;
	align-items: center;
	gap: 14px;
	font-family: var(--wsk-scs-label-font-family, 'Inter', system-ui, sans-serif) !important;
	font-size: var(--wsk-scs-label-font-size, 0.68rem) !important;
	font-weight: var(--wsk-scs-label-font-weight, 500) !important;
	font-style: var(--wsk-scs-label-font-style, normal) !important;
	letter-spacing: var(--wsk-scs-label-letter-spacing, 0.32em) !important;
	text-transform: var(--wsk-scs-label-text-transform, uppercase) !important;
	color: var(--wsk-scs-label-color, rgba(255, 246, 232, 0.85)) !important;
	margin: 0 !important;
	text-shadow:
		0 0 1px rgba(255, 246, 232, 0.3),
		0 0 14px rgba(255, 246, 232, 0.08);
}
.wsk-showcase-scroll__label::before,
.wsk-showcase-scroll__label::after {
	content: '';
	display: inline-block;
	width: 28px;
	height: 1px;
	background: linear-gradient(
		90deg,
		rgba(255, 246, 232, 0) 0%,
		var(--wsk-scs-ivory-hairline) 50%,
		rgba(255, 246, 232, 0) 100%
	);
}

/* ─── Title — serif display, supports {gr} italic accent ─── */
.wsk-showcase-scroll__title,
.fusion-body .wsk-showcase-scroll__title {
	font-family: var(--wsk-scs-title-font-family, 'Cormorant Garamond', 'Playfair Display', Georgia, serif) !important;
	font-size: var(--wsk-scs-title-font-size, clamp(2.25rem, 4.5vw, 3.5rem)) !important;
	font-weight: var(--wsk-scs-title-font-weight, 400) !important;
	font-style: var(--wsk-scs-title-font-style, normal) !important;
	line-height: var(--wsk-scs-title-line-height, 1.08) !important;
	letter-spacing: var(--wsk-scs-title-letter-spacing, -0.01em) !important;
	color: var(--wsk-scs-title-color, #FFF6E8) !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wsk-showcase-scroll__title-accent {
	font-style: italic;
	background: linear-gradient(
		180deg,
		var(--wsk-scs-accent, #B89968) 0%,
		var(--wsk-scs-accent-deep, #8A6F45) 100%
	);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

/* ─── Footer (counter + descriptions) — hidden on mobile; uses per-image captions instead ─── */
.wsk-showcase-scroll__footer {
	display: none;
}

/* ─── Progress line — hidden on mobile; handled per figure ─── */
.wsk-showcase-scroll__progress {
	display: none;
}

/* ═══════════════════════════════════════════════════════════════
   GALLERY — figures, media, mask-wipe entrance, active gold frame
   ═══════════════════════════════════════════════════════════════ */
.wsk-showcase-scroll__gallery {
	display: flex;
	flex-direction: column;
	gap: clamp(2rem, 5vw, 3rem);
}

.wsk-showcase-scroll__figure {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

/* Staggered offset — odd lean left, even lean right. Editorial feel. */
.wsk-showcase-scroll__figure:nth-child(odd) {
	padding-left: clamp(1rem, 4vw, 1.5rem);
	padding-right: clamp(3rem, 12vw, 5rem);
}
.wsk-showcase-scroll__figure:nth-child(even) {
	padding-left: clamp(3rem, 12vw, 5rem);
	padding-right: clamp(1rem, 4vw, 1.5rem);
}

/* ─── Media wrapper — hosts mask-wipe + gold frame overlay ─── */
.wsk-showcase-scroll__media {
	position: relative;
	overflow: hidden;
	border-radius: var(--wsk-scs-image-radius, 4px);
	/* Mask-wipe: starts clipped from both sides, opens on scroll-in. */
	clip-path: inset(6% 30% 6% 30%);
	opacity: 0;
	transform: scale(1.02);
	transition:
		clip-path 1100ms cubic-bezier(0.2, 0, 0.2, 1),
		opacity 900ms cubic-bezier(0.2, 0, 0.2, 1),
		transform 1100ms cubic-bezier(0.2, 0, 0.2, 1);
	will-change: clip-path, transform, opacity;
}
.wsk-showcase-scroll__figure.is-revealed .wsk-showcase-scroll__media {
	clip-path: inset(0 0 0 0);
	opacity: 1;
	transform: scale(1);
}

.wsk-showcase-scroll__img {
	width: 100%;
	display: block;
	object-fit: cover;
	aspect-ratio: 3 / 4;
}

/* ─── Gold inset hairline frame — fades in on active image only ─── */
.wsk-showcase-scroll__frame {
	position: absolute;
	inset: 18px;
	pointer-events: none;
	border: 1px solid rgba(184, 153, 104, 0);
	border-radius: 2px;
	transition: border-color 700ms cubic-bezier(0.2, 0, 0.2, 1),
		inset 700ms cubic-bezier(0.2, 0, 0.2, 1);
}
.wsk-showcase-scroll__figure.is-active .wsk-showcase-scroll__frame {
	border-color: rgba(184, 153, 104, 0.62);
}

/* ─── Mobile caption — serif italic, odometer counter with hairline rule ─── */
.wsk-showcase-scroll__mobile-caption {
	padding: 0 2px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	opacity: 0;
	transform: translateY(8px);
	transition: opacity 800ms cubic-bezier(0.2, 0, 0.2, 1) 200ms,
		transform 800ms cubic-bezier(0.2, 0, 0.2, 1) 200ms;
}
.wsk-showcase-scroll__figure.is-revealed .wsk-showcase-scroll__mobile-caption {
	opacity: 1;
	transform: translateY(0);
}

.wsk-showcase-scroll__mobile-counter {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	font-family: var(--wsk-scs-counter-font-family, 'Cormorant Garamond', Georgia, serif);
	font-size: 0.9rem;
	font-weight: 400;
	font-style: italic;
	letter-spacing: 0.08em;
	color: var(--wsk-scs-accent, #B89968);
}
.wsk-showcase-scroll__mobile-counter-rule {
	display: inline-block;
	width: 22px;
	height: 1px;
	background: currentColor;
	opacity: 0.5;
}

.wsk-showcase-scroll__mobile-desc {
	font-family: var(--wsk-scs-description-font-family, 'Cormorant Garamond', Georgia, serif);
	font-size: var(--wsk-scs-description-font-size, clamp(1.05rem, 2.5vw, 1.25rem));
	font-weight: var(--wsk-scs-description-font-weight, 300);
	font-style: italic;
	line-height: var(--wsk-scs-description-line-height, 1.55);
	color: var(--wsk-scs-description-color, rgba(255, 246, 232, 0.7));
	margin: 0;
}

/* ═══════════════════════════════════════════════════════════════
   DESKTOP — sticky left panel with footer, progress rail.
   Fires only on wide viewports AND a fine (mouse) pointer, so
   tablets and touch-first laptops keep the scrollable mobile layout.
   The 100vh sticky trap is the root cause of "cannot scroll on tablet";
   keeping it behind `pointer: fine` guarantees touch devices never hit it.
   ═══════════════════════════════════════════════════════════════ */
@media (min-width: 1367px) and (pointer: fine) {
	.wsk-showcase-scroll__inner {
		flex-direction: row;
		align-items: flex-start;
		gap: 0;
		padding: 0;
	}

	/* ─── Sticky panel on desktop ─── */
	.wsk-showcase-scroll__sticky {
		position: sticky;
		top: 0;
		align-self: flex-start;
		flex: 0 0 var(--wsk-scs-left-width, 45%);
		height: 100vh;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		padding: clamp(3rem, 6vh, 5rem) clamp(2.5rem, 4vw, 4rem);
		margin-bottom: 0;
		box-sizing: border-box;
	}

	.wsk-showcase-scroll__header {
		gap: 22px;
	}

	/* ─── Footer: visible on desktop ─── */
	.wsk-showcase-scroll__footer {
		display: flex;
		flex-direction: column;
		gap: 22px;
		position: relative;
	}

	/* ─── Odometer counter — editorial display numeral ───
	   The parent reads Typography → Counter → Color as its primary color source.
	   All children (current digit, separator, total) inherit from here unless
	   they have their own override. This is THE line that responds when the
	   user changes "Counter Color" in the Typography panel. */
	.wsk-showcase-scroll__counter {
		display: inline-flex;
		align-items: baseline;
		gap: 4px;  /* tight grouping — three slots read as ONE mark */
		font-family: var(--wsk-scs-counter-font-family, 'Cormorant Garamond', 'Playfair Display', Georgia, serif);
		font-weight: 300;
		font-style: normal;
		font-variant-numeric: tabular-nums lining-nums;
		letter-spacing: -0.01em;
		color: var(--wsk-scs-counter-color, var(--wsk-scs-ivory-soft, rgba(255, 246, 232, 0.45)));
		line-height: 1;
	}

	/* Odometer digit slot — the hero of the footer.
	   Reads the ONE counter color set in Typography > Counter > Color.
	   Display size is fixed at an editorial scale; weight is italic 300 serif. */
	.wsk-showcase-scroll__counter-digit {
		position: relative;
		display: inline-block;
		/* Tight fit: two tabular-num digits ≈ 1.1em, no trailing whitespace. */
		min-width: 1.1em;
		height: 1em;
		overflow: hidden;
		color: inherit;  /* inherit from .counter, which reads --wsk-scs-counter-color */
		font-family: var(--wsk-scs-counter-font-family, 'Cormorant Garamond', 'Playfair Display', Georgia, serif);
		font-size: clamp(3.5rem, 6vw, 5.5rem);
		font-weight: 300;
		font-style: italic;
		line-height: 1;
		letter-spacing: -0.02em;
		text-shadow: 0 0 1px rgba(255, 246, 232, 0.3), 0 0 22px rgba(184, 153, 104, 0.14);
	}

	/* Stacked digit spans inherit from .counter-digit which inherits from .counter. */
	.wsk-showcase-scroll__counter-current,
	.wsk-showcase-scroll__counter-incoming {
		color: inherit;
	}
	.wsk-showcase-scroll__counter-current,
	.wsk-showcase-scroll__counter-incoming {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		line-height: 1;
		font-variant-numeric: tabular-nums lining-nums;
		transition: transform 600ms cubic-bezier(0.7, 0, 0.3, 1),
			opacity 450ms cubic-bezier(0.2, 0, 0.2, 1);
	}
	.wsk-showcase-scroll__counter-incoming {
		transform: translateY(100%);
		opacity: 0;
	}
	/* Hairline underscore beneath the slot — uses the same inherited counter color. */
	.wsk-showcase-scroll__counter-digit::after {
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		bottom: -6px;
		height: 1px;
		background: linear-gradient(
			90deg,
			transparent 0%,
			currentColor 40%,
			currentColor 60%,
			transparent 100%
		);
		opacity: 0.4;
	}
	/* During slide: current moves UP + fades, incoming slides IN from below. */
	.wsk-showcase-scroll__counter-digit.is-sliding .wsk-showcase-scroll__counter-current {
		transform: translateY(-100%);
		opacity: 0;
	}
	.wsk-showcase-scroll__counter-digit.is-sliding .wsk-showcase-scroll__counter-incoming {
		transform: translateY(0);
		opacity: 1;
	}

	/* Separator + total — smaller, baseline-aligned with the display digit.
	   All inherit the one counter color set in Typography > Counter > Color. */
	.wsk-showcase-scroll__counter-sep,
	.wsk-showcase-scroll__counter-total {
		font-family: var(--wsk-scs-counter-font-family, 'Cormorant Garamond', Georgia, serif);
		font-size: 0.95rem;
		font-weight: 400;
		font-style: italic;
		letter-spacing: 0.06em;
		color: inherit;  /* the same counter color painting the digit */
		opacity: 0.55;   /* muted subscript effect, keeps hierarchy */
		align-self: flex-end;
		padding-bottom: 0.7em;
	}
	.wsk-showcase-scroll__counter-sep {
		position: relative;
		width: 18px;
		height: 18px;
		/* Hide the "/" character without killing currentColor for the hairline. */
		font-size: 0;
		padding-bottom: 1.2em;
		opacity: 0.55;
	}
	.wsk-showcase-scroll__counter-sep::before {
		content: '';
		position: absolute;
		left: 50%;
		top: 50%;
		width: 22px;
		height: 1px;
		/* currentColor reads the inherited counter color — one control paints everything. */
		background: currentColor;
		transform: translate(-50%, -50%) rotate(-62deg);
	}

	/* ─── Description crossfade — mask-wipe left-to-right (matches hero grammar) ─── */
	.wsk-showcase-scroll__descriptions {
		position: relative;
		min-height: 120px;
	}

	.wsk-showcase-scroll__desc {
		font-family: var(--wsk-scs-description-font-family, 'Cormorant Garamond', Georgia, serif);
		font-size: var(--wsk-scs-description-font-size, clamp(1.05rem, 1.6vw, 1.3rem));
		font-weight: var(--wsk-scs-description-font-weight, 300);
		font-style: var(--wsk-scs-description-font-style, italic);
		line-height: var(--wsk-scs-description-line-height, 1.55);
		color: var(--wsk-scs-description-color, rgba(255, 246, 232, 0.7));
		margin: 0;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		opacity: 0;
		clip-path: inset(0 100% 0 0);
		transition:
			opacity 700ms cubic-bezier(0.2, 0, 0.2, 1),
			clip-path 900ms cubic-bezier(0.7, 0, 0.3, 1);
		pointer-events: none;
	}

	.wsk-showcase-scroll__desc.is-active {
		opacity: 1;
		clip-path: inset(0 0 0 0);
		pointer-events: auto;
		position: relative;
	}

	/* ─── Progress rail — hairline at right edge, bronze tick slides down. ─── */
	.wsk-showcase-scroll__progress {
		display: block;
		position: absolute;
		right: clamp(1rem, 2vw, 1.5rem);
		top: 18%;
		bottom: 18%;
		width: var(--wsk-scs-progress-width, 1px);
	}

	.wsk-showcase-scroll__progress-rail {
		position: absolute;
		inset: 0;
		background: linear-gradient(
			180deg,
			transparent 0%,
			var(--wsk-scs-progress-color, rgba(255, 246, 232, 0.15)) 12%,
			var(--wsk-scs-progress-color, rgba(255, 246, 232, 0.15)) 88%,
			transparent 100%
		);
	}

	.wsk-showcase-scroll__progress-tick {
		position: absolute;
		left: 50%;
		top: 0;
		width: 8px;
		height: 8px;
		margin: -4px 0 0 -4px;
		border-radius: 50%;
		background: var(--wsk-scs-progress-active, #B89968);
		box-shadow: 0 0 10px rgba(184, 153, 104, 0.45);
		transition: top 400ms cubic-bezier(0.2, 0, 0.2, 1);
	}

	/* ─── Right gallery — bleeds toward the edge ─── */
	.wsk-showcase-scroll__gallery {
		flex: 1 1 auto;
		padding: clamp(3rem, 6vh, 5rem) 0;
		padding-left: clamp(1.5rem, 3vw, 3rem);
		padding-right: clamp(1.5rem, 3vw, 3rem);
		gap: var(--wsk-scs-gap, clamp(3rem, 8vh, 6rem));
	}

	.wsk-showcase-scroll__figure {
		padding: 0;
		flex-direction: column;
		gap: 0;
	}
	.wsk-showcase-scroll__figure:nth-child(odd),
	.wsk-showcase-scroll__figure:nth-child(even) {
		padding: 0;
	}

	.wsk-showcase-scroll__img {
		aspect-ratio: auto;
		height: clamp(460px, 68vh, 760px);
	}

	/* Gold frame on desktop: slightly thicker inset so it reads from farther. */
	.wsk-showcase-scroll__frame {
		inset: 24px;
	}

	/* Hide mobile captions on desktop. */
	.wsk-showcase-scroll__mobile-caption {
		display: none;
	}
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE — tablet typography
   Applies in the full mobile-layout viewport band (640–1366) and,
   separately, on any touch-first device regardless of width, so a
   tablet mirrored to a 1920px display still gets tablet-scale type.
   ═══════════════════════════════════════════════════════════════ */
@media (min-width: 640px) and (max-width: 1366px) {
	.wsk-showcase-scroll__label {
		font-size: var(--wsk-scs-label-font-size-md, var(--wsk-scs-label-font-size, 0.7rem)) !important;
	}
	.wsk-showcase-scroll__title {
		font-size: var(--wsk-scs-title-font-size-md, var(--wsk-scs-title-font-size, clamp(2rem, 4vw, 3rem))) !important;
	}
}

@media (pointer: coarse) and (min-width: 640px) {
	.wsk-showcase-scroll__label {
		font-size: var(--wsk-scs-label-font-size-md, var(--wsk-scs-label-font-size, 0.7rem)) !important;
	}
	.wsk-showcase-scroll__title {
		font-size: var(--wsk-scs-title-font-size-md, var(--wsk-scs-title-font-size, clamp(2rem, 4vw, 3rem))) !important;
	}
}

/* ─── Very narrow phones ─── */
@media (max-width: 639px) {
	.wsk-showcase-scroll__label {
		font-size: var(--wsk-scs-label-font-size-sm, 0.62rem) !important;
		letter-spacing: 0.28em !important;
	}
	.wsk-showcase-scroll__label::before,
	.wsk-showcase-scroll__label::after {
		width: 20px;
	}
	.wsk-showcase-scroll__title {
		font-size: var(--wsk-scs-title-font-size-sm, clamp(1.75rem, 7vw, 2.5rem)) !important;
	}
	/* Tighter stagger on phones so images breathe. */
	.wsk-showcase-scroll__figure:nth-child(odd) {
		padding-left: 1rem;
		padding-right: 2rem;
	}
	.wsk-showcase-scroll__figure:nth-child(even) {
		padding-left: 2rem;
		padding-right: 1rem;
	}
}

/* ═══════════════════════════════════════════════════════════════
   REDUCED MOTION — kill transitions, keep final state
   ═══════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-showcase-scroll__media {
		clip-path: inset(0 0 0 0) !important;
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
	.wsk-showcase-scroll__desc {
		transition: none !important;
		clip-path: inset(0 0 0 0) !important;
	}
	.wsk-showcase-scroll__counter-current,
	.wsk-showcase-scroll__counter-incoming {
		transition: none !important;
	}
	.wsk-showcase-scroll__progress-tick {
		transition: none !important;
	}
	.wsk-showcase-scroll__mobile-caption {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
	.wsk-showcase-scroll__frame {
		transition: none !important;
	}
}
/**
 * WEPRO: Cube Services — 3D rotating cube services showcase.
 *
 * CSS var prefix: cs
 * Class prefix:   .wsk-cube-services
 *
 * Architecture: ONE floating sticky cube + content-only sections.
 */

/* ── Wrapper ── */
.wsk-cube-services {
	position: relative;
	background: var(--wsk-cs-bg, #0a0a0f);
	/* overflow must stay visible — any clip/hidden breaks preserve-3d on the cube */
}

/* ── Floating cube (single, sticky) ── */
.wsk-cube-services__cube-float {
	position: sticky;
	top: calc(50vh - var(--wsk-cs-cube-size, 420px) / 2);
	height: var(--wsk-cs-cube-size, 420px);
	margin-bottom: calc(-1 * var(--wsk-cs-cube-size, 420px)); /* collapse so sections don't shift */
	z-index: 2;
	pointer-events: none;
	max-width: var(--wsk-cs-content-max-width, 1400px);
	margin-left: auto;
	margin-right: auto;
	padding: 0 var(--wsk-cs-content-padding, 64px);
	box-sizing: border-box;
}

/* ── Section layout ── */
.wsk-cube-services .wsk-cube-services__section {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: start;
	gap: 48px;
	min-height: var(--wsk-cs-section-min-height, 100vh);
	max-width: var(--wsk-cs-content-max-width, 1400px);
	margin: 0 auto;
	padding: var(--wsk-cs-content-padding, 64px);
	padding-top: 20vh;
	padding-bottom: 20vh;
	box-sizing: border-box;
}

.wsk-cube-services .wsk-cube-services__section + .wsk-cube-services__section {
	margin-top: var(--wsk-cs-section-gap, 0);
}

/* Cube slot — empty grid spacer, maintains 2-column layout */
.wsk-cube-services__cube-slot {
	display: block;
}

/* Layout: text-right — swap column order */
.wsk-cube-services .wsk-cube-services__section--text-right .wsk-cube-services__content {
	order: 1;
}

.wsk-cube-services .wsk-cube-services__section--text-right .wsk-cube-services__cube-slot {
	order: 0;
}

/* ── Mobile card (flat image, hidden on desktop) ── */
.wsk-cube-services__mobile-card {
	display: none;
}

/* ── Content reveal animation ── */
.wsk-cube-services .wsk-cube-services__content {
	opacity: 0;
	transform: translateY(32px);
	transition: opacity 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94),
	            transform 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	position: sticky;
	top: calc(50vh - 200px);
	height: fit-content;
	min-width: 0; /* prevent grid blowout */
	overflow: hidden;
}

.wsk-cube-services .wsk-cube-services__section.is-visible .wsk-cube-services__content {
	opacity: 1;
	transform: translateY(0);
}

/* ── Step area ── */
.wsk-cube-services .wsk-cube-services__step-area {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
}

.wsk-cube-services .wsk-cube-services__accent-line {
	width: 2px;
	height: 40px;
	background: var(--wsk-cs-accent, #e67e22);
	flex-shrink: 0;
}

.wsk-cube-services--no-line .wsk-cube-services__accent-line {
	display: none;
}

.wsk-cube-services .wsk-cube-services__step {
	font-family: var(--wsk-cs-step-font-family, inherit);
	font-size: var(--wsk-cs-step-font-size, clamp(1rem, 2vw, 1.3rem));
	font-weight: var(--wsk-cs-step-font-weight, 600);
	font-style: var(--wsk-cs-step-font-style, italic);
	line-height: var(--wsk-cs-step-line-height, 1.2);
	letter-spacing: var(--wsk-cs-step-letter-spacing, normal);
	text-transform: var(--wsk-cs-step-text-transform, none);
	color: var(--wsk-cs-step-color, var(--wsk-cs-accent, #e67e22));
	margin: 0;
}

/* ── Title ── */
.wsk-cube-services .wsk-cube-services__title {
	font-family: var(--wsk-cs-title-font-family, 'Inter', system-ui, sans-serif);
	font-size: var(--wsk-cs-title-font-size, clamp(2.5rem, 5vw, 4rem));
	font-weight: var(--wsk-cs-title-font-weight, 800);
	font-style: var(--wsk-cs-title-font-style, normal);
	line-height: var(--wsk-cs-title-line-height, 1.1);
	letter-spacing: var(--wsk-cs-title-letter-spacing, 2px);
	text-transform: var(--wsk-cs-title-text-transform, uppercase);
	color: var(--wsk-cs-title-color, #ffffff);
	text-align: var(--wsk-cs-title-text-align, left) !important;
	margin-top: var(--wsk-cs-title-margin-top, 0);
	margin-bottom: var(--wsk-cs-title-margin-bottom, 24px);
	overflow-wrap: break-word;
	word-break: break-word;
}

/* ── Checklist ── */
.wsk-cube-services .wsk-cube-services__checklist {
	list-style: none;
	padding: 0;
	margin: 0;
}

.wsk-cube-services .wsk-cube-services__checklist li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	font-family: var(--wsk-cs-checklist-font-family, inherit);
	font-size: var(--wsk-cs-checklist-font-size, clamp(0.95rem, 1.5vw, 1.1rem));
	font-weight: var(--wsk-cs-checklist-font-weight, inherit);
	font-style: var(--wsk-cs-checklist-font-style, normal);
	line-height: var(--wsk-cs-checklist-line-height, 1.8);
	letter-spacing: var(--wsk-cs-checklist-letter-spacing, normal);
	text-transform: var(--wsk-cs-checklist-text-transform, none);
	color: var(--wsk-cs-checklist-color, rgba(255, 255, 255, 0.8));
}

.wsk-cube-services .wsk-cube-services__bullet {
	width: 10px;
	height: 10px;
	min-width: 10px;
	border-radius: 50%;
	background: var(--wsk-cs-accent, #e67e22);
	flex-shrink: 0;
	margin-top: 0.55em;
}

/* ═══════════════════════════════════════════════════════════════════
   3D CUBE
   ═══════════════════════════════════════════════════════════════════ */

.wsk-cube-services .wsk-cube-services__cube-wrap {
	perspective: var(--wsk-cs-perspective, 1200px);
	/* Absolute inside sticky cube-float. NO transform here — it breaks preserve-3d. */
	position: absolute;
	top: 0;
	left: var(--cs-cube-x, 0px); /* JS sets pixel value: slotCenter - cubeSize/2 */
}

.wsk-cube-services .wsk-cube-services__cube {
	width: var(--wsk-cs-cube-size, 420px);
	height: var(--wsk-cs-cube-size, 420px);
	position: relative;
	transform-style: preserve-3d;
	transform: rotateX(var(--cs-rotation-x, -8deg)) rotateY(var(--cs-rotation, 0deg));
	will-change: transform;
}

.wsk-cube-services .wsk-cube-services__face {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	backface-visibility: hidden;
	overflow: hidden;
	border-radius: 4px;
	background: #1a1a2e;
}

.wsk-cube-services .wsk-cube-services__face img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Face transforms — translateZ = half of cube size */
.wsk-cube-services .wsk-cube-services__face--front {
	transform: rotateY(0deg) translateZ(calc(var(--wsk-cs-cube-size, 420px) / 2));
}

.wsk-cube-services .wsk-cube-services__face--right {
	transform: rotateY(90deg) translateZ(calc(var(--wsk-cs-cube-size, 420px) / 2));
}

.wsk-cube-services .wsk-cube-services__face--back {
	transform: rotateY(180deg) translateZ(calc(var(--wsk-cs-cube-size, 420px) / 2));
}

.wsk-cube-services .wsk-cube-services__face--left {
	transform: rotateY(-90deg) translateZ(calc(var(--wsk-cs-cube-size, 420px) / 2));
}

.wsk-cube-services .wsk-cube-services__face--top {
	transform: rotateX(90deg) translateZ(calc(var(--wsk-cs-cube-size, 420px) / 2));
}

/* ── Sketch overlay (right half) ── */
.wsk-cube-services .wsk-cube-services__sketch-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	clip-path: inset(0 0 0 50%);
	background: rgba(245, 240, 235, 0.15);
	backdrop-filter: grayscale(1) contrast(1.5) brightness(1.2);
	-webkit-backdrop-filter: grayscale(1) contrast(1.5) brightness(1.2);
	pointer-events: none;
}

/* Sketch disabled */
.wsk-cube-services--no-sketch .wsk-cube-services__sketch-overlay {
	display: none;
}

/* ── Brand logo on face ── */
.wsk-cube-services .wsk-cube-services__logo {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 48px;
	height: auto;
	opacity: 0.85;
	object-fit: contain;
	pointer-events: none;
}

/* ═══════════════════════════════════════════════════════════════════
   RESPONSIVE — Tablet (769–1024px): two-column with 3D card
   ═══════════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) and (min-width: 769px) {
	/* Hide the floating 3D cube — flat card takes over */
	.wsk-cube-services__cube-float {
		display: none;
	}

	/* Hide the cube slot spacer — mobile-card replaces it */
	.wsk-cube-services__cube-slot {
		display: none;
	}

	.wsk-cube-services .wsk-cube-services__section {
		grid-template-columns: 1fr 1fr;
		min-height: auto;
		padding: 48px 32px;
		gap: 32px;
		align-items: center;
	}

	/* Show 3D card in grid — replaces cube */
	.wsk-cube-services__mobile-card {
		display: block;
		position: relative;
		width: 100%;
		aspect-ratio: 1;
		border-radius: 6px;
		overflow: hidden;
		/* Base 3D tilt — JS overrides on scroll */
		transform: perspective(600px) rotateX(-3deg) rotateY(-5deg);
		transform-style: preserve-3d;
		will-change: transform, box-shadow;
		box-shadow: 7px 9px 50px rgba(0, 0, 0, 0.5);
	}

	.wsk-cube-services__mobile-card img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
		transform: scale(1.08);
	}

	/* text-left: content left (order 0), card right (order 1) */
	.wsk-cube-services .wsk-cube-services__section--text-left .wsk-cube-services__content {
		order: 0;
	}

	.wsk-cube-services .wsk-cube-services__section--text-left .wsk-cube-services__mobile-card {
		order: 1;
	}

	/* text-right: card left (order 0), content right (order 1) */
	.wsk-cube-services .wsk-cube-services__section--text-right .wsk-cube-services__mobile-card {
		order: 0;
	}

	.wsk-cube-services .wsk-cube-services__section--text-right .wsk-cube-services__content {
		order: 1;
	}

	/* Content: visible, reset sticky */
	.wsk-cube-services .wsk-cube-services__content {
		opacity: 1;
		transform: none;
		transition: none;
		position: relative;
		top: auto;
	}

	/* Title responsive — tablet */
	.wsk-cube-services .wsk-cube-services__title {
		font-size: var(--wsk-cs-title-font-size-md, var(--wsk-cs-title-font-size, clamp(2rem, 4vw, 3rem)));
		text-align: var(--wsk-cs-title-text-align-md, var(--wsk-cs-title-text-align, left)) !important;
	}

	/* Step responsive — tablet */
	.wsk-cube-services .wsk-cube-services__step {
		font-size: var(--wsk-cs-step-font-size-md, var(--wsk-cs-step-font-size, clamp(1rem, 2vw, 1.3rem)));
	}

	/* Checklist responsive — tablet */
	.wsk-cube-services .wsk-cube-services__checklist li {
		font-size: var(--wsk-cs-checklist-font-size-md, var(--wsk-cs-checklist-font-size, clamp(0.85rem, 1.5vw, 1rem)));
	}
}

/* ═══════════════════════════════════════════════════════════════════
   RESPONSIVE — Mobile (≤768px): single column, card + content stacked
   ═══════════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
	/* Hide the floating 3D cube */
	.wsk-cube-services__cube-float {
		display: none;
	}

	/* Hide the cube slot spacer */
	.wsk-cube-services__cube-slot {
		display: none;
	}

	.wsk-cube-services .wsk-cube-services__section {
		grid-template-columns: 1fr;
		min-height: auto;
		padding: 40px 20px;
		gap: 24px;
	}

	/* Show mobile card with 3D tilt */
	.wsk-cube-services__mobile-card {
		display: block;
		position: relative;
		width: 100%;
		max-width: 360px;
		aspect-ratio: 1;
		border-radius: 6px;
		overflow: hidden;
		margin: 0 auto;
		transform: perspective(600px) rotateX(-3deg) rotateY(-5deg);
		transform-style: preserve-3d;
		will-change: transform, box-shadow;
		box-shadow: 7px 9px 50px rgba(0, 0, 0, 0.5);
	}

	.wsk-cube-services__mobile-card img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
		transform: scale(1.08);
	}

	/* Content: visible, reset sticky */
	.wsk-cube-services .wsk-cube-services__content {
		opacity: 1;
		transform: none;
		transition: none;
		position: relative;
		top: auto;
	}

	/* Title responsive — mobile */
	.wsk-cube-services .wsk-cube-services__title {
		font-size: var(--wsk-cs-title-font-size-sm, var(--wsk-cs-title-font-size-md, var(--wsk-cs-title-font-size, clamp(2.5rem, 5vw, 4rem))));
		text-align: var(--wsk-cs-title-text-align-sm, var(--wsk-cs-title-text-align-md, var(--wsk-cs-title-text-align, left))) !important;
	}

	/* Step responsive — mobile */
	.wsk-cube-services .wsk-cube-services__step {
		font-size: var(--wsk-cs-step-font-size-sm, var(--wsk-cs-step-font-size-md, var(--wsk-cs-step-font-size, clamp(1rem, 2vw, 1.3rem))));
	}

	/* Checklist responsive — mobile */
	.wsk-cube-services .wsk-cube-services__checklist li {
		font-size: var(--wsk-cs-checklist-font-size-sm, var(--wsk-cs-checklist-font-size-md, var(--wsk-cs-checklist-font-size, clamp(0.95rem, 1.5vw, 1.1rem))));
	}
}

/* ═══════════════════════════════════════════════════════════════════
   REDUCED MOTION
   ═══════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-cube-services .wsk-cube-services__cube {
		transition: none;
		transform: rotateX(-8deg) rotateY(-25deg);
	}

	.wsk-cube-services .wsk-cube-services__content {
		opacity: 1;
		transform: none;
		transition: none;
		position: relative;
		top: auto;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-cube-services a:focus-visible,
.wsk-cube-services button:focus-visible,
.wsk-cube-services [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/**
 * WEPRO: Gallery Scroll — Horizontal scroll driven by wheel events.
 *
 * Container height = image height. No viewport hacks.
 * JS intercepts wheel events to translate track horizontally.
 */

/* ═══════════════════════════════════════════
   BASE (Mobile: horizontal swipe)
   ═══════════════════════════════════════════ */

.wsk-gallery-scroll {
	background: var(--wsk-gs-bg, transparent);
	position: relative;
	width: 100%;
}

.wsk-gallery-scroll__sticky {
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.wsk-gallery-scroll__sticky::-webkit-scrollbar {
	display: none;
}

/* Track: horizontal row, native swipe on mobile */
.wsk-gallery-scroll__track {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	gap: var(--wsk-gs-gap, 16px);
	padding: clamp(1.5rem, 4vw, 3rem) clamp(1rem, 4vw, 1.5rem);
}

/* ─── Text panel ─── */
.wsk-gallery-scroll__header {
	flex: 0 0 auto;
	width: clamp(200px, 55vw, 280px);
	text-align: var(--wsk-gs-header-align, left);
	margin-bottom: 0;
	margin-right: clamp(0.5rem, 2vw, 1rem);
}

.wsk-gallery-scroll__label,
.fusion-body .wsk-gallery-scroll__label {
	display: block;
	font-family: var(--wsk-gs-label-font-family, inherit) !important;
	font-size: var(--wsk-gs-label-font-size, 0.75rem) !important;
	font-weight: var(--wsk-gs-label-font-weight, 500) !important;
	font-style: var(--wsk-gs-label-font-style, normal) !important;
	letter-spacing: var(--wsk-gs-label-letter-spacing, 0.15em) !important;
	text-transform: var(--wsk-gs-label-text-transform, uppercase) !important;
	color: var(--wsk-gs-label-color, rgba(180,160,140,1)) !important;
	margin-bottom: 8px;
}

.wsk-gallery-scroll__title,
.fusion-body .wsk-gallery-scroll__title {
	font-family: var(--wsk-gs-title-font-family, inherit) !important;
	font-size: var(--wsk-gs-title-font-size, clamp(2rem, 4vw, 3.2rem)) !important;
	font-weight: var(--wsk-gs-title-font-weight, 400) !important;
	font-style: var(--wsk-gs-title-font-style, normal) !important;
	line-height: var(--wsk-gs-title-line-height, 1.2) !important;
	color: var(--wsk-gs-title-color, rgba(0,0,0,0.65)) !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
}

.wsk-gallery-scroll__description,
.fusion-body .wsk-gallery-scroll__description {
	font-family: var(--wsk-gs-description-font-family, inherit) !important;
	font-size: var(--wsk-gs-description-font-size, clamp(1rem, 2vw, 1.25rem)) !important;
	font-weight: var(--wsk-gs-description-font-weight, 400) !important;
	font-style: var(--wsk-gs-description-font-style, normal) !important;
	line-height: var(--wsk-gs-description-line-height, 1.6) !important;
	color: var(--wsk-gs-description-color, rgba(0,0,0,0.6)) !important;
	margin: 0;
	padding: 0 !important;
}

/* ─── Items ─── */
.wsk-gallery-scroll__item {
	flex: 0 0 auto;
	height: var(--wsk-gs-image-height-mobile, 350px);
	margin: 0;
}

.wsk-gallery-scroll__img {
	display: block;
	height: 100%;
	width: auto;
	object-fit: cover;
	border-radius: var(--wsk-gs-image-radius, 8px);
}

/* ─── Responsive font-size ─── */
@media (max-width: 639px) {
	.wsk-gallery-scroll__label { font-size: var(--wsk-gs-label-font-size-sm, var(--wsk-gs-label-font-size, 0.7rem)); }
	.wsk-gallery-scroll__title { font-size: var(--wsk-gs-title-font-size-sm, var(--wsk-gs-title-font-size, clamp(1.5rem, 6vw, 2rem))); }
	.wsk-gallery-scroll__description { font-size: var(--wsk-gs-description-font-size-sm, var(--wsk-gs-description-font-size, 1rem)); }
}

@media (min-width: 640px) and (max-width: 1024px) {
	.wsk-gallery-scroll__label { font-size: var(--wsk-gs-label-font-size-md, var(--wsk-gs-label-font-size, 0.75rem)); }
	.wsk-gallery-scroll__title { font-size: var(--wsk-gs-title-font-size-md, var(--wsk-gs-title-font-size, clamp(2rem, 4vw, 3rem))); }
	.wsk-gallery-scroll__description { font-size: var(--wsk-gs-description-font-size-md, var(--wsk-gs-description-font-size, clamp(1rem, 2vw, 1.15rem))); }
}

/* ═══════════════════════════════════════════
   DESKTOP (1025px+): Horizontal scroll
   ═══════════════════════════════════════════ */

@media (min-width: 1025px) {
	/* Avada overflow fix */
	.fusion-fullwidth:has(.wsk-gallery-scroll),
	.fusion-builder-row:has(.wsk-gallery-scroll),
	.fusion-layout-column:has(.wsk-gallery-scroll),
	.fusion-column-wrapper:has(.wsk-gallery-scroll),
	.fusion-column-inner-bg:has(.wsk-gallery-scroll) {
		overflow: visible !important;
	}

	/* Container: height = content */
	.wsk-gallery-scroll__sticky {
		position: relative;
		overflow: hidden;
		padding: clamp(1.5rem, 3vh, 3rem) clamp(2rem, 3vw, 3rem);
		box-sizing: border-box;
	}

	.wsk-gallery-scroll__track {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		gap: var(--wsk-gs-gap, 24px);
		padding: 0;
		will-change: transform;
		backface-visibility: hidden;
	}

	/* Text panel */
	.wsk-gallery-scroll__header {
		flex: 0 0 auto;
		width: var(--wsk-gs-max-width, 300px);
		display: flex;
		flex-direction: column;
		justify-content: center;
		margin-bottom: 0;
		margin-right: clamp(1rem, 3vw, 3rem);
		padding: 0;
	}

	/* Items: height from param, width auto from aspect ratio */
	.wsk-gallery-scroll__item {
		flex: 0 0 auto;
		height: var(--wsk-gs-image-height, 500px);
		opacity: 1;
		transform: none;
		transition: none;
	}

	.wsk-gallery-scroll__img {
		display: block;
		height: 100%;
		width: auto;
		object-fit: cover;
		border-radius: var(--wsk-gs-image-radius, 12px);
	}
}

/* ─── Navigation arrows (desktop only) ─── */
.wsk-gallery-scroll__arrow {
	display: none;
}

@media (min-width: 1025px) {
	.wsk-gallery-scroll__arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		position: absolute;
		bottom: clamp(1.5rem, 3vh, 2.5rem);
		width: 48px;
		height: 48px;
		border-radius: 50%;
		border: 1px solid rgba(0,0,0,0.15);
		background: rgba(255,255,255,0.85);
		backdrop-filter: blur(8px);
		-webkit-backdrop-filter: blur(8px);
		color: rgba(0,0,0,0.5);
		cursor: pointer;
		transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
		z-index: 10;
		padding: 0;
		outline: none;
	}

	.wsk-gallery-scroll__arrow:focus-visible {
		outline: 2px solid rgba(0,0,0,0.4);
		outline-offset: 2px;
	}

	.wsk-gallery-scroll__arrow:hover {
		border-color: rgba(0,0,0,0.35);
		color: rgba(0,0,0,0.8);
		background: rgba(255,255,255,0.95);
		transform: scale(1.08);
	}

	.wsk-gallery-scroll__arrow:active {
		transform: scale(0.95);
	}

	.wsk-gallery-scroll__arrow--prev {
		right: calc(48px + clamp(2rem, 3vw, 3rem) + 12px);
	}

	.wsk-gallery-scroll__arrow--next {
		right: clamp(2rem, 3vw, 3rem);
	}

	.wsk-gallery-scroll__arrow[disabled] {
		opacity: 0.25;
		cursor: default;
		pointer-events: none;
	}
}

/* ═══════════════════════════════════════════
   LIGHTBOX MODE
   ═══════════════════════════════════════════ */

.wsk-gallery-scroll--lightbox .wsk-gallery-scroll__item {
	cursor: zoom-in;
}

.wsk-gallery-scroll--lightbox .fusion-lightbox {
	display: block;
	height: 100%;
	line-height: 0;
	text-decoration: none;
	color: inherit;
}

/* ═══════════════════════════════════════════
   REDUCED MOTION
   ═══════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-gallery-scroll__track { will-change: auto; }
	.wsk-gallery-scroll__item { opacity: 1; transform: none; transition: none; }
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-gallery-scroll a:focus-visible,
.wsk-gallery-scroll button:focus-visible,
.wsk-gallery-scroll [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/**
 * WEPRO: Post Grid — Dynamic numbered card grid with CTA cell.
 *
 * Auto color palette: pick ONE accent color → cards alternate
 * dark (accent) and light (tinted) automatically.
 * Row heights alternate: tall → short → tall → short.
 */

/* ─── Section ─── */
.wsk-post-grid {
	background: var(--wsk-pg-bg, transparent);
}

/* ─── Grid — mobile-first: 1 column ─── */
.wsk-post-grid__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--wsk-pg-gap, 16px);
}

/* ─── Header cell — soft title intro, NOT a card.
       No background, no border. Inherits the card padding so the
       title column breathes at the same rhythm as its card neighbours
       — content never hugs edges. Vertically centered, left-aligned. ─── */
.wsk-post-grid__header {
	padding: clamp(1.5rem, 2.5vw, 2.25rem) clamp(1.25rem, 2vw, 1.75rem);
	background: transparent;
	min-height: inherit; /* matches the card row height alongside it */
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.wsk-post-grid__header .wsk-post-grid__label {
	font-family: var(--wsk-pg-label-font-family, inherit);
	font-weight: var(--wsk-pg-label-font-weight, 600);
	font-style: var(--wsk-pg-label-font-style, normal);
	font-size: var(--wsk-pg-label-font-size, 0.66rem);
	line-height: var(--wsk-pg-label-line-height, 1);
	letter-spacing: var(--wsk-pg-label-letter-spacing, 0.32em);
	text-transform: var(--wsk-pg-label-text-transform, uppercase);
	text-align: var(--wsk-pg-label-text-align, left);
	color: var(--wsk-pg-label-color, var(--wsk-pg-ink-muted));
	margin-top: var(--wsk-pg-label-margin-top, 0);
	margin-bottom: var(--wsk-pg-label-margin-bottom, 1.5rem);
	display: block;
}

/* Header is a soft page intro — no inner padding needed; it inherits
   the grid gutter. Only vertical breathing room below the description
   so it doesn't collide with the first card row. */
.wsk-post-grid__header > .wsk-post-grid__description {
	padding-bottom: clamp(1rem, 1.8vw, 1.5rem);
}

.wsk-post-grid__header .wsk-post-grid__title {
	font-family: var(--wsk-pg-title-font-family, var(--wsk-pg-serif));
	font-weight: var(--wsk-pg-title-font-weight, 500);
	font-style: var(--wsk-pg-title-font-style, normal);
	font-size: var(--wsk-pg-title-font-size, clamp(2rem, 3.2vw, 2.85rem));
	line-height: var(--wsk-pg-title-line-height, 1.04);
	letter-spacing: var(--wsk-pg-title-letter-spacing, -0.015em);
	text-transform: var(--wsk-pg-title-text-transform, none);
	text-align: var(--wsk-pg-title-text-align, left);
	color: var(--wsk-pg-title-color, var(--wsk-pg-ink));
	margin-top: 0;
	margin-bottom: 0;
}

.wsk-post-grid__header .wsk-post-grid__description {
	font-family: var(--wsk-pg-description-font-family, var(--wsk-pg-serif));
	font-weight: var(--wsk-pg-description-font-weight, 400);
	font-style: var(--wsk-pg-description-font-style, italic);
	font-size: var(--wsk-pg-description-font-size, 1.05rem);
	line-height: var(--wsk-pg-description-line-height, 1.55);
	letter-spacing: var(--wsk-pg-description-letter-spacing, normal);
	text-transform: var(--wsk-pg-description-text-transform, none);
	text-align: var(--wsk-pg-description-text-align, left);
	color: var(--wsk-pg-description-color, var(--wsk-pg-ink-soft));
	margin-top: clamp(1rem, 1.4vw, 1.25rem);
	margin-bottom: 0;
	max-width: 42ch;
}

/* ─── Card link reset ─── */
.wsk-post-grid__card-link,
.wsk-post-grid__card-link:link,
.wsk-post-grid__card-link:visited {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	text-decoration: none !important;
	color: inherit !important;
	height: 100%;
	border-bottom: none !important;
	box-shadow: none !important;
}

.wsk-post-grid__card-link:hover,
.wsk-post-grid__card-link:focus,
.wsk-post-grid__card-link:active {
	text-decoration: none !important;
	color: inherit !important;
	border-bottom: none !important;
	box-shadow: none !important;
}

.wsk-post-grid__card-link .wsk-post-grid__card-title,
.wsk-post-grid__card-link .wsk-post-grid__card-text {
	text-decoration: none !important;
	border-bottom: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   ATELIER CARDS — Lane B typographic architecture.
   Three horizontal zones per card divided by full-bleed hairlines:
   top meta · body composition · footer price.
   Ink chrome (#1a1a1a) regardless of accent; accent lives only in
   the diamond ornament, dot separators, currency mark, and hover.
   Same language across header cell · post cards · CTA cell.
   ═══════════════════════════════════════════════════════════════ */

.wsk-post-grid {
	--wsk-pg-acc:       var(--wsk-pg-accent, #B89968);

	/* Card gradient — merchant picks two colors (card_from / card_to).
	   If not set, we derive a subtle ivory-to-deeper-ivory gradient
	   from the accent so cards still feel tonally connected. */
	--wsk-pg-surface-top:    var(--wsk-pg-card-from, color-mix(in srgb, var(--wsk-pg-acc) 18%, #faf6ef));
	--wsk-pg-surface-bottom: var(--wsk-pg-card-to,   color-mix(in srgb, var(--wsk-pg-acc) 32%, #e9e0cf));
	--wsk-pg-surface-edge:   color-mix(in srgb, var(--wsk-pg-acc) 55%, #c8b998);

	/* Ink chrome — stays near-black for reliable contrast on any accent. */
	--wsk-pg-ink:           #1a1a1a;
	--wsk-pg-ink-soft:      rgba(26, 26, 26, 0.72);
	--wsk-pg-ink-muted:     rgba(26, 26, 26, 0.50);

	/* Hairlines = accent-ink mix so they feel part of the family. */
	--wsk-pg-hairline:        color-mix(in srgb, var(--wsk-pg-acc) 40%, rgba(26, 26, 26, 0.18));
	--wsk-pg-hairline-strong: color-mix(in srgb, var(--wsk-pg-acc) 55%, rgba(26, 26, 26, 0.35));
	--wsk-pg-acc-soft:        color-mix(in srgb, var(--wsk-pg-acc) 65%, transparent);

	--wsk-pg-serif:     "Cormorant Garamond", "Playfair Display", Georgia, serif;
	--wsk-pg-ease:      cubic-bezier(0.22, 1, 0.36, 1);
}

/* ─── Shared surface for the framed post cards.
       Surface is a top-to-bottom gradient between card_from and card_to
       (merchant-picked) or a subtle accent-derived ivory if unset.
       The CTA has its own inverted dark surface rule further down. ─── */
.wsk-post-grid__card {
	position: relative;
	isolation: isolate;
	border-radius: var(--wsk-pg-card-radius, 2px);
	background: linear-gradient(
		180deg,
		var(--wsk-pg-surface-top)    0%,
		var(--wsk-pg-surface-bottom) 100%
	);
	border: 1px solid var(--wsk-pg-hairline);
	transition:
		border-color 0.5s var(--wsk-pg-ease),
		box-shadow 0.5s var(--wsk-pg-ease);
	overflow: hidden;
}

.wsk-post-grid__card:hover {
	border-color: var(--wsk-pg-ink);
}

/* ═══════════════════════════════════════════════════════════════
   POST CARD — three zones split by full-bleed hairlines
   ═══════════════════════════════════════════════════════════════ */
.wsk-post-grid__card {
	min-height: 360px;
}

.wsk-post-grid__card-link {
	display: grid;
	grid-template-rows: auto 1fr auto;
	height: 100%;
	position: relative;
	z-index: 1;
}

/* ── Zone 1: top meta — number+diamond (left) · taxonomy (right).
      Straight 1px hairline divider (bottom edge). ── */
.wsk-post-grid__top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: clamp(1.25rem, 1.8vw, 1.5rem) clamp(1.5rem, 2.4vw, 2rem);
	min-height: 54px;
	border-bottom: 1px solid var(--wsk-pg-hairline);
}

.wsk-post-grid__number {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	font-family: var(--wsk-pg-serif);
	font-size: 1rem;
	font-weight: 500;
	font-style: normal;
	font-variant-numeric: lining-nums;
	line-height: 1;
	letter-spacing: 0.02em;
	color: var(--wsk-pg-ink);
	margin: 0;
}

/* Diamond — rotated 7px square with an accent glow halo. The glow
   is a layered box-shadow: tight inner glow + broad soft halo, both
   derived from the accent color so it matches every merchant palette. */
.wsk-post-grid__diamond {
	display: inline-block;
	width: 7px;
	height: 7px;
	background: var(--wsk-pg-acc);
	color: transparent;
	font-size: 0;
	line-height: 0;
	transform: rotate(45deg) translateY(-1px);
	box-shadow:
		0 0 4px 0 color-mix(in srgb, var(--wsk-pg-acc) 70%, transparent),
		0 0 10px 2px color-mix(in srgb, var(--wsk-pg-acc) 45%, transparent),
		0 0 18px 4px color-mix(in srgb, var(--wsk-pg-acc) 22%, transparent);
	transition:
		transform 0.5s var(--wsk-pg-ease),
		box-shadow 0.5s var(--wsk-pg-ease);
	margin-right: 4px;
}

.wsk-post-grid__card:hover .wsk-post-grid__diamond {
	transform: rotate(135deg) translateX(-1px);
	box-shadow:
		0 0 6px 0 color-mix(in srgb, var(--wsk-pg-acc) 85%, transparent),
		0 0 14px 3px color-mix(in srgb, var(--wsk-pg-acc) 55%, transparent),
		0 0 26px 6px color-mix(in srgb, var(--wsk-pg-acc) 30%, transparent);
}

.wsk-post-grid__number-value {
	font-style: italic;
	font-weight: 400;
	font-size: 1.1rem;
	color: var(--wsk-pg-ink);
	font-variant-numeric: oldstyle-nums;
}

.wsk-post-grid__term {
	display: inline-block;
	font-family: inherit;
	font-size: 0.6rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--wsk-pg-ink-muted);
	margin: 0;
	flex-shrink: 0;
	max-width: 55%;
	text-align: right;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	padding-right: 2px; /* optical balance for tracked caps */
	transition: color 0.5s var(--wsk-pg-ease);
}

.wsk-post-grid__card:hover .wsk-post-grid__term {
	color: var(--wsk-pg-ink);
}

/* ── Legacy divider: hidden (replaced by structural zone borders) ── */
.wsk-post-grid__divider,
.wsk-post-grid__eyebrow,
.wsk-post-grid__rule,
.wsk-post-grid__meta {
	display: none;
}

/* ── Zone 2: body — serif display title + italic serif subtitle.
      Content hugs the top of the zone for editorial hierarchy;
      extra vertical space falls between body and footer. ── */
.wsk-post-grid__body {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	gap: clamp(0.65rem, 1vw, 0.9rem);
	padding: clamp(1.75rem, 2.6vw, 2.25rem) clamp(1.5rem, 2.4vw, 2rem) clamp(1.25rem, 2vw, 1.75rem);
	min-height: 0;
}

.wsk-post-grid .wsk-post-grid__card-title,
h3.wsk-post-grid__card-title {
	font-family: var(--wsk-pg-serif);
	font-size: clamp(1.4rem, 2vw, 1.85rem);
	font-weight: 500;
	font-style: normal;
	line-height: 1.08;
	letter-spacing: -0.01em;
	color: var(--wsk-pg-ink) !important;
	margin: 0;
	/* Hanging-right breathing room for editorial feel. */
	padding-right: 12%;
}

.wsk-post-grid__card-text {
	font-family: var(--wsk-pg-serif);
	font-weight: 400;
	font-style: italic;
	font-size: clamp(0.95rem, 1.05vw, 1.05rem);
	line-height: 1.45;
	letter-spacing: 0;
	color: var(--wsk-pg-ink-soft);
	margin: 0;
	padding-right: 18%;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* ── Zone 3: footer — duration (small caps) · couture price ── */
.wsk-post-grid__foot {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: clamp(1.25rem, 1.8vw, 1.5rem) clamp(1.5rem, 2.4vw, 2rem);
	min-height: 72px;
	min-width: 0;
	border-top: 1px solid var(--wsk-pg-hairline);
}

.wsk-post-grid__foot-left {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	min-width: 0;
	flex: 1 1 auto;
}

.wsk-post-grid__duration {
	font-family: inherit;
	font-size: 0.66rem;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: var(--wsk-pg-ink-muted);
	transition: color 0.5s var(--wsk-pg-ease);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	min-width: 0;
}

.wsk-post-grid__duration--ghost {
	visibility: hidden;
}

.wsk-post-grid__card:hover .wsk-post-grid__duration {
	color: var(--wsk-pg-ink);
}

.wsk-post-grid__price {
	display: inline-flex;
	align-items: baseline;
	flex-wrap: nowrap;
	gap: 6px;
	color: var(--wsk-pg-ink);
	font-family: var(--wsk-pg-serif);
	line-height: 1;
	white-space: nowrap;
	flex-shrink: 0;
}

.wsk-post-grid__price-prefix {
	font-family: inherit;
	font-size: 0.62rem;
	font-weight: 600;
	font-style: normal;
	letter-spacing: 0.32em;
	text-transform: uppercase;
	color: var(--wsk-pg-ink-muted);
	transform: translateY(-8px); /* float it above the big numeral baseline */
}

.wsk-post-grid__price-number {
	font-family: var(--wsk-pg-serif);
	font-size: clamp(1.4rem, 2vw, 1.85rem);
	font-weight: 500;
	font-style: italic;
	font-variant-numeric: oldstyle-nums;
	letter-spacing: -0.01em;
	line-height: 1;
	white-space: nowrap;
}

.wsk-post-grid__price-sym {
	font-family: var(--wsk-pg-serif);
	font-size: 0.9rem;
	font-style: italic;
	font-weight: 500;
	color: var(--wsk-pg-ink);
	transform: translateY(-6px);
}

/* ── "Mehr erfahren" brushstroke CTA — sits inside the footer row
      as the left column, on the same baseline as the right-aligned price.
      Technique: radial gradient masked by a turbulence-displaced SVG rect. ── */
.wsk-post-grid__learn {
	display: inline-block;
	line-height: 1;
	pointer-events: none;
	z-index: 2;
	isolation: isolate;
}

.wsk-post-grid__learn-text {
	position: relative;
	display: inline-block;
	font-family: inherit;
	font-size: 0.66rem;
	font-weight: 600;
	letter-spacing: 0.32em;
	text-transform: uppercase;
	color: var(--wsk-pg-ink);
	padding: 0.5em 0.8em 0.55em 0.7em;
	isolation: isolate;
	white-space: nowrap;
	transition: transform 0.5s var(--wsk-pg-ease);
}

/* The brushstroke — radial gradient painted through a turbulence SVG
   mask so the edges are irregular, textured, hand-painted — not a pill. */
.wsk-post-grid__learn-text::before {
	content: '';
	position: absolute;
	/* Thicker vertical presence — brush extends above and below the text. */
	inset: -0.35em -0.45em -0.3em -0.55em;
	z-index: -1;
	background:
		radial-gradient(
			ellipse 65% 65% at 48% 52%,
			var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 0%,
			var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 45%,
			color-mix(in srgb, var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 80%, #000) 80%,
			transparent 100%
		),
		radial-gradient(
			ellipse 28% 45% at 78% 45%,
			color-mix(in srgb, var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 90%, white) 0%,
			transparent 70%
		);
	filter: blur(0.3px)
		drop-shadow(0 1px 2px color-mix(in srgb, var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 45%, transparent));
	transform: rotate(-1.5deg) skewX(-3deg);
	/* Taller mask rect (y=5 h=30) = thicker brush body with rough edges. */
	-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 40' preserveAspectRatio='none'><defs><filter id='r'><feTurbulence type='fractalNoise' baseFrequency='0.75 1.8' numOctaves='2' seed='11'/><feDisplacementMap in='SourceGraphic' scale='8'/></filter></defs><rect x='2' y='5' width='96' height='30' rx='15' fill='white' filter='url(%23r)'/></svg>");
	        mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 40' preserveAspectRatio='none'><defs><filter id='r'><feTurbulence type='fractalNoise' baseFrequency='0.75 1.8' numOctaves='2' seed='11'/><feDisplacementMap in='SourceGraphic' scale='8'/></filter></defs><rect x='2' y='5' width='96' height='30' rx='15' fill='white' filter='url(%23r)'/></svg>");
	-webkit-mask-size: 100% 100%;
	        mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	opacity: 0.92;
	transition:
		transform 0.6s var(--wsk-pg-ease),
		opacity 0.5s var(--wsk-pg-ease);
}

.wsk-post-grid__card:hover .wsk-post-grid__learn-text::before {
	transform: rotate(-2deg) skewX(-3deg) scale(1.04);
	opacity: 1;
}

/* Focus state (keyboard) — same affordance as hover. */
.wsk-post-grid__card:focus-within {
	border-color: var(--wsk-pg-ink);
	outline: none;
}

.wsk-post-grid__card:focus-within .wsk-post-grid__learn-text::before {
	transform: rotate(-2deg) skewX(-3deg) scale(1.04);
	opacity: 1;
}

/* ═══════════════════════════════════════════════════════════════
   CTA CELL — same Atelier architecture, but with the diamond
   ornament as its only top-row element and an outline CTA button
   in place of the footer price. Image is suppressed (Lane B is
   pure typography).
   ═══════════════════════════════════════════════════════════════ */
/* ═══════════════════════════════════════════════════════════════
   CTA CARD — same Atelier chrome as the post cards.
   Ivory gradient surface, hairline border, three-zone grid split by
   full-bleed hairlines. Reads as "one of the family, but the ask" —
   not an inverted block. Differences vs post card:
     · top zone has the three-diamond ornament (post cards have a
       diamond + number)
     · middle zone centers a larger serif headline
     · foot zone carries a "Mehr erfahren"-style brushstroke CTA
       (identical technique to .wsk-post-grid__learn-text) instead
       of the duration/price pair
   Stays single-column on every breakpoint.
   ═══════════════════════════════════════════════════════════════ */
.wsk-post-grid__cta {
	position: relative;
	isolation: isolate;
	min-height: 360px;
	display: grid;
	grid-template-rows: auto 1fr auto;
	padding: 0;
	min-width: 0;
	width: auto;
	grid-column: auto;
	/* Exactly the post-card surface + border — same family. */
	border-radius: var(--wsk-pg-card-radius, 2px);
	background: linear-gradient(
		180deg,
		var(--wsk-pg-surface-top)    0%,
		var(--wsk-pg-surface-bottom) 100%
	);
	border: 1px solid var(--wsk-pg-hairline);
	overflow: hidden;
	transition:
		border-color 0.5s var(--wsk-pg-ease),
		box-shadow 0.5s var(--wsk-pg-ease),
		transform 0.5s var(--wsk-pg-ease);
}

.wsk-post-grid__cta:hover {
	border-color: var(--wsk-pg-ink);
	transform: translateY(-2px);
	box-shadow:
		0 12px 28px color-mix(in srgb, var(--wsk-pg-acc) 14%, rgba(26, 26, 26, 0.18)),
		0 2px 8px rgba(26, 26, 26, 0.08);
}

/* Editor image is suppressed in the default CTA layout — the cell is
   pure typography, same as the post cards' three-zone geometry.
   (Image is still available for other layout modes.) */
.wsk-post-grid__cta-img {
	display: none;
}

/* Zone 1 — three-diamond ornament row. Same 54px min-height + hairline
   bottom edge as the post card's top zone, so the row heights line up
   across every cell in the grid. */
.wsk-post-grid__cta::before {
	content: "◆ ◆ ◆";
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.55rem;
	letter-spacing: 1.25em;
	padding-left: 1.25em; /* optical re-center after letter-spacing push */
	color: var(--wsk-pg-acc);
	line-height: 1;
	min-height: 54px;
	transition: letter-spacing 0.6s var(--wsk-pg-ease);
}

.wsk-post-grid__cta:hover::before {
	letter-spacing: 1.6em;
}

/* Zone 2 — centered serif title. Uses the post-card title styling tokens
   so typography matches, just one notch larger to read as the "ask". */
.wsk-post-grid__cta-overlay {
	position: static;
	background: none;
	padding: clamp(1.75rem, 3vw, 2.5rem) clamp(1.5rem, 2.4vw, 2rem);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	gap: clamp(0.85rem, 1.2vw, 1.1rem);
	height: auto;
	z-index: 2;
}

.wsk-post-grid .wsk-post-grid__cta .wsk-post-grid__cta-title,
.wsk-post-grid__cta-title {
	font-family: var(--wsk-pg-serif);
	font-size: clamp(1.7rem, 2.5vw, 2.25rem);
	font-weight: 500;
	font-style: normal;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--wsk-pg-ink) !important;
	margin: 0;
	padding: 0;
	text-shadow: none;
	max-width: 22ch;
}

.wsk-post-grid .wsk-post-grid__cta .wsk-post-grid__cta-title::before {
	content: none;
}

/* Zone 3 — footer hairline separator + brushstroke CTA, mirroring the
   post card's "Mehr erfahren" treatment. Row height matches the post
   card foot (72px) so the grid aligns. The entire row is the anchor
   tag, centered on its own baseline with the brush painted behind the
   tracked caps via ::before. */
.wsk-post-grid__cta-btn {
	position: relative;
	grid-row: 3;
	align-self: stretch;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	padding: 0 clamp(1.5rem, 2.4vw, 2rem);
	background: transparent;
	border: none;
	border-radius: 0;
	font-family: inherit;
	font-size: 0.66rem;
	font-weight: 600;
	letter-spacing: 0.32em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--wsk-pg-ink);
	min-height: 72px;
	width: 100%;
	box-shadow: none;
	isolation: isolate;
	white-space: nowrap;
}

/* Suppress the PHP-emitted arrow icon. PHP still renders the <svg>
   for back-compat with other layouts. */
.wsk-post-grid__cta-btn svg {
	display: none;
}

/* Brushstroke affordance — identical radial-gradient-through-SVG-
   turbulence-mask technique as .wsk-post-grid__learn-text. Painted
   behind the label so the CTA reads as hand-painted editorial paint,
   not a pill button. Sized to hug the label's ~ems. */
.wsk-post-grid__cta-btn::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: min(18ch, calc(100% - clamp(2rem, 4vw, 3rem)));
	height: 2.2em;
	transform: translate(-50%, -50%) rotate(-1.5deg) skewX(-3deg);
	z-index: -1;
	background:
		radial-gradient(
			ellipse 65% 65% at 48% 52%,
			var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 0%,
			var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 45%,
			color-mix(in srgb, var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 80%, #000) 80%,
			transparent 100%
		),
		radial-gradient(
			ellipse 28% 45% at 78% 45%,
			color-mix(in srgb, var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 90%, white) 0%,
			transparent 70%
		);
	filter: blur(0.3px)
		drop-shadow(0 1px 2px color-mix(in srgb, var(--wsk-pg-learn-color, var(--wsk-pg-acc)) 45%, transparent));
	-webkit-mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 40' preserveAspectRatio='none'><defs><filter id='r'><feTurbulence type='fractalNoise' baseFrequency='0.75 1.8' numOctaves='2' seed='11'/><feDisplacementMap in='SourceGraphic' scale='8'/></filter></defs><rect x='2' y='5' width='96' height='30' rx='15' fill='white' filter='url(%23r)'/></svg>");
	        mask-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 40' preserveAspectRatio='none'><defs><filter id='r'><feTurbulence type='fractalNoise' baseFrequency='0.75 1.8' numOctaves='2' seed='11'/><feDisplacementMap in='SourceGraphic' scale='8'/></filter></defs><rect x='2' y='5' width='96' height='30' rx='15' fill='white' filter='url(%23r)'/></svg>");
	-webkit-mask-size: 100% 100%;
	        mask-size: 100% 100%;
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	opacity: 0.92;
	pointer-events: none;
	transition:
		transform 0.6s var(--wsk-pg-ease),
		opacity 0.5s var(--wsk-pg-ease);
}

.wsk-post-grid__cta:hover .wsk-post-grid__cta-btn::before {
	transform: translate(-50%, -50%) rotate(-2deg) skewX(-3deg) scale(1.04);
	opacity: 1;
}

/* ─── Focus states ─── */
.wsk-post-grid__card:focus-within {
	box-shadow: 0 0 0 2px var(--wsk-pg-accent, #4a5568);
}

.wsk-post-grid__cta:focus-within {
	border-color: var(--wsk-pg-ink);
	outline: none;
}

.wsk-post-grid__cta:focus-within .wsk-post-grid__cta-btn::before {
	transform: translate(-50%, -50%) rotate(-2deg) skewX(-3deg) scale(1.04);
	opacity: 1;
}

.wsk-post-grid__cta-btn:focus-visible {
	outline: 2px solid var(--wsk-pg-acc);
	outline-offset: 4px;
}

/* ─── Touch devices ─── */
@media (hover: none) {
	.wsk-post-grid__card:active {
		transform: translateY(-2px);
		box-shadow: 0 8px 24px rgba(0,0,0,0.25);
	}
}

/* ═══════════════════════════════════════════
   TABLET: 2 columns (640–1024px).
   Header spans full width (drives row 1). CTA cell spans full width
   too — a single half-width CTA leaves dead space in the last row.
   ═══════════════════════════════════════════ */
@media (min-width: 640px) and (max-width: 1024px) {
	.wsk-post-grid__grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ─── Responsive typography: tablet ─── */
@media (min-width: 640px) and (max-width: 1024px) {
	.wsk-post-grid__header .wsk-post-grid__label {
		font-size: var(--wsk-pg-label-font-size-md, var(--wsk-pg-label-font-size, 0.75rem));
		text-align: var(--wsk-pg-label-text-align-md, var(--wsk-pg-label-text-align, inherit)) !important;
	}
	.wsk-post-grid__header .wsk-post-grid__title {
		font-size: var(--wsk-pg-title-font-size-md, var(--wsk-pg-title-font-size, clamp(1.5rem, 4vw, 2.5rem)));
		text-align: var(--wsk-pg-title-text-align-md, var(--wsk-pg-title-text-align, inherit)) !important;
	}
	.wsk-post-grid__header .wsk-post-grid__description {
		font-size: var(--wsk-pg-description-font-size-md, var(--wsk-pg-description-font-size, 0.95rem));
		text-align: var(--wsk-pg-description-text-align-md, var(--wsk-pg-description-text-align, inherit)) !important;
	}
}

/* ═══════════════════════════════════════════
   DESKTOP: var columns (1025px+)
   ═══════════════════════════════════════════ */
@media (min-width: 1025px) {
	.wsk-post-grid__grid {
		grid-template-columns: repeat(var(--wsk-pg-columns, 3), 1fr);
	}

	/* Header: one grid cell, sits in the first row beside the first cards.
	   Grid's own row height aligns the header with the cards automatically. */
	.wsk-post-grid__header {
		grid-column: auto;
	}


	/* Responsive typography: desktop — inherit the Atelier scale from the
	   base rules (don't override the title back to the old small size). */
	.wsk-post-grid__header .wsk-post-grid__label {
		font-size: var(--wsk-pg-label-font-size, 0.72rem);
		text-align: var(--wsk-pg-label-text-align, inherit);
	}
	.wsk-post-grid__header .wsk-post-grid__title {
		font-size: var(--wsk-pg-title-font-size, clamp(2rem, 3.2vw, 2.85rem));
		text-align: var(--wsk-pg-title-text-align, inherit);
	}
	.wsk-post-grid__header .wsk-post-grid__description {
		font-size: var(--wsk-pg-description-font-size, 1.05rem);
		text-align: var(--wsk-pg-description-text-align, inherit);
	}
}

/* ─── Small screens: typography ─── */
@media (max-width: 639px) {
	.wsk-post-grid__header .wsk-post-grid__label {
		font-size: var(--wsk-pg-label-font-size-sm, var(--wsk-pg-label-font-size-md, var(--wsk-pg-label-font-size, 0.75rem)));
		text-align: var(--wsk-pg-label-text-align-sm, var(--wsk-pg-label-text-align-md, var(--wsk-pg-label-text-align, inherit))) !important;
	}
	.wsk-post-grid__header .wsk-post-grid__title {
		font-size: var(--wsk-pg-title-font-size-sm, var(--wsk-pg-title-font-size-md, var(--wsk-pg-title-font-size, clamp(1.5rem, 4vw, 2.5rem))));
		text-align: var(--wsk-pg-title-text-align-sm, var(--wsk-pg-title-text-align-md, var(--wsk-pg-title-text-align, inherit))) !important;
	}
	.wsk-post-grid__header .wsk-post-grid__description {
		font-size: var(--wsk-pg-description-font-size-sm, var(--wsk-pg-description-font-size-md, var(--wsk-pg-description-font-size, 0.95rem)));
		text-align: var(--wsk-pg-description-text-align-sm, var(--wsk-pg-description-text-align-md, var(--wsk-pg-description-text-align, inherit))) !important;
	}
}

/* ─── Staggered reveal animation ─── */
.wsk-post-grid__card {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1),
	            transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

.wsk-post-grid__card.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* CTA carries its own border-color/box-shadow/transform transitions
   (set in the main CTA rule above) — reveal it with opacity only so
   those don't get nuked. */
.wsk-post-grid__cta {
	opacity: 0;
	transition:
		opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1),
		border-color 0.5s var(--wsk-pg-ease),
		box-shadow 0.5s var(--wsk-pg-ease),
		transform 0.5s var(--wsk-pg-ease);
}

.wsk-post-grid__cta.is-visible {
	opacity: 1;
}

/* ─── Reduced motion ─── */
@media (prefers-reduced-motion: reduce) {
	.wsk-post-grid__card,
	.wsk-post-grid__cta {
		opacity: 1;
		transform: none;
		transition: none;
	}
	.wsk-post-grid__card:hover {
		transform: none;
		box-shadow: none;
	}
	.wsk-post-grid__cta-btn {
		transition: none;
	}
}

/* ═══════════════════════════════════════════════════════════════
   PEARL LAYOUT — embossed typographic poster cards.
   Works with card_from / card_to gradients:
     Graphite scheme: card_from=#2a2a2d, card_to=#1d1d20
     Pearl scheme:    card_from=#f6f1ef, card_to=#eee5e0
   Every chrome element derives from the card surface luminance so
   dark surfaces get light emboss + light text, and vice versa.
   ═══════════════════════════════════════════════════════════════ */

.wsk-post-grid--pearl {
	/* Readable ink — stronger than before so titles anchor the card.
	   Tones stay warm/beige but with real contrast against the surface. */
	--wsk-pl-ink:          #5a4a44;
	--wsk-pl-ink-soft:     #8f7c75;
	--wsk-pl-ink-muted:    #b0a096;
	--wsk-pl-highlight:    rgba(255, 255, 255, 0.75);
	--wsk-pl-shadow:       rgba(90, 74, 68, 0.12);
	/* Frame hairlines — the OUTER frame is pearl-shimmer thin (barely
	   visible), the INNER frame around the CTA button is crisp and thin. */
	--wsk-pl-hairline:     rgba(143, 124, 117, 0.18);
	--wsk-pl-hairline-in:  rgba(255, 255, 255, 0.45);
}

.wsk-post-grid--pearl .wsk-post-grid__grid {
	gap: clamp(18px, 2.2vw, 28px);
}

/* Pearl card surface — textured paper with radial glow. No outer border. */
.wsk-post-grid__pearl {
	position: relative;
	isolation: isolate;
	padding: clamp(2rem, 2.8vw, 2.75rem) clamp(1.75rem, 2.4vw, 2.25rem);
	min-height: 380px;
	background:
		radial-gradient(ellipse 120% 80% at 20% 15%, rgba(255,255,255,0.22), transparent 55%),
		radial-gradient(ellipse 80% 60% at 80% 100%, rgba(255,255,255,0.08), transparent 60%),
		linear-gradient(180deg, var(--wsk-pg-surface-top, #f6f1ef) 0%, var(--wsk-pg-surface-bottom, #efe7e4) 100%);
	color: var(--wsk-pl-ink);
	overflow: hidden;
	border: none;
	box-shadow: none;
	transition: transform 0.6s var(--wsk-pg-ease);
}

/* Subtle printed-dot grain overlay. */
.wsk-post-grid__pearl::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		radial-gradient(circle at center, rgba(255,255,255,0.08) 0 1px, transparent 1.2px);
	background-size: 8px 8px;
	mix-blend-mode: soft-light;
	opacity: 0.5;
	pointer-events: none;
	z-index: 0;
}

/* Light card inner border — debossed effect mirroring the dark card.
   Outer warm shadow below + inset white highlight on the top edge
   creates the same carved-into-paper 3D feel. */
.wsk-post-grid__pearl::after {
	content: "";
	position: absolute;
	top: 18px;
	right: 18px;
	bottom: 18px;
	left: 18px;
	border-width: 1px;
	border-style: solid;
	border-color: #f8f2eb;
	background: transparent;
	box-shadow:
		0 1px 0 rgba(143, 124, 117, 0.22),
		inset 0 1px 0 rgba(255, 255, 255, 0.7);
	pointer-events: none;
	z-index: 0;
}

.wsk-post-grid__pearl-link {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	/* Uniform vertical rhythm — every element-to-element gap is the same. */
	gap: clamp(1rem, 1.5vw, 1.25rem);
	height: 100%;
	z-index: 2;
	color: inherit !important;
	text-decoration: none !important;
	box-shadow: none !important;
	border-bottom: none !important;
}

.wsk-post-grid__pearl-link:hover {
	color: inherit !important;
	text-decoration: none !important;
}

/* ── Hero word — raised-white serif on pearl paper.
      Mirror of the dark card's debossed title: same structure,
      same highlight/shadow pattern, but inverted to light tone. ── */
.wsk-post-grid__pearl-hero {
	font-family: var(--wsk-pg-serif);
	font-size: clamp(2rem, 3.5vw, 2.85rem);
	font-weight: 500;
	font-style: normal;
	line-height: 1;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin: 0;
	color: #c8c0b5 !important;
	text-shadow:
		0 1px 0 rgba(255, 255, 255, 0.9),
		0 -1px 1px rgba(143, 124, 117, 0.35);
	transition: letter-spacing 0.6s var(--wsk-pg-ease);
}

.wsk-post-grid__pearl:hover .wsk-post-grid__pearl-hero {
	letter-spacing: 0.03em;
}

/* ── Italic tagline — quiet supporting voice ── */
.wsk-post-grid__pearl-tagline {
	font-family: var(--wsk-pg-serif);
	font-style: italic;
	font-weight: 400;
	font-size: clamp(0.82rem, 0.95vw, 0.92rem);
	line-height: 1.45;
	color: var(--wsk-pl-ink-soft);
	margin: 0;
	max-width: 30ch;
}

/* ── Divider rule ── */
.wsk-post-grid__pearl-rule {
	display: block;
	width: 56px;
	height: 1px;
	margin: 0 auto;
	background: linear-gradient(
		90deg,
		transparent,
		var(--wsk-pl-hairline) 20%,
		color-mix(in srgb, currentColor 35%, transparent) 50%,
		var(--wsk-pl-hairline) 80%,
		transparent
	);
}

/* ── Tracked-caps eyebrow — raised-white emboss, same tone as title ── */
.wsk-post-grid__pearl-eyebrow {
	font-size: 0.58rem;
	font-weight: 500;
	letter-spacing: 0.34em;
	text-transform: uppercase;
	color: #c8c0b5;
	margin: 0;
	text-shadow:
		0 1px 0 rgba(255, 255, 255, 0.9),
		0 -1px 1px rgba(143, 124, 117, 0.35);
}

/* ── Meta line: price · bullet · service title ── */
.wsk-post-grid__pearl-meta {
	display: inline-flex;
	align-items: baseline;
	gap: 14px;
	margin: 0.6rem 0 0.3rem;
	flex-wrap: wrap;
	justify-content: center;
}

.wsk-post-grid__pearl-price {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	font-family: var(--wsk-pg-serif);
	font-weight: 500;
	font-style: normal;
	color: var(--wsk-pl-ink);
	text-shadow:
		0 1px 0 rgba(255, 255, 255, 0.95),
		0 -1px 1px rgba(143, 124, 117, 0.45);
}

/* Lowercase prefix ("ab", "from") — smaller, quieter. */
.wsk-post-grid__pearl-price-prefix {
	font-size: 0.58rem;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-transform: lowercase;
	color: var(--wsk-pl-ink-muted);
}

/* Price value — big, uppercase numerals. */
.wsk-post-grid__pearl-price-value {
	font-size: clamp(1.25rem, 1.8vw, 1.65rem);
	font-weight: 500;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.wsk-post-grid__pearl-bullet {
	font-family: var(--wsk-pg-serif);
	color: var(--wsk-pl-ink-muted);
	transform: translateY(-2px);
}

.wsk-post-grid__pearl-service {
	font-size: 0.72rem;
	font-weight: 500;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: var(--wsk-pl-ink);
}

/* ── Terms (duration) ── */
.wsk-post-grid__pearl-terms {
	font-size: 0.66rem;
	font-weight: 400;
	letter-spacing: 0.26em;
	text-transform: uppercase;
	color: var(--wsk-pl-ink-muted);
	margin: 0.2rem 0 clamp(1.25rem, 2vw, 1.75rem);
}

/* ── CTA button — raised-white tracked caps with a 1px border that
      matches the card's inner border (same tone, same emboss). ── */
.wsk-post-grid__pearl-cta {
	display: inline-block;
	padding: 10px 22px;
	margin-top: auto;
	font-size: 0.58rem;
	font-weight: 500;
	letter-spacing: 0.34em;
	text-transform: uppercase;
	color: #c8c0b5;
	border: 1px solid #e0d4c3;
	background: transparent;
	box-shadow: none;
	text-shadow:
		0 1px 0 rgba(255, 255, 255, 0.9),
		0 -1px 1px rgba(143, 124, 117, 0.35);
	transition:
		color 0.4s var(--wsk-pg-ease),
		border-color 0.4s var(--wsk-pg-ease);
}

.wsk-post-grid__pearl:hover .wsk-post-grid__pearl-cta {
	color: #a89f92;
}

/* Gentle lift on card hover. */
.wsk-post-grid__pearl:hover {
	transform: translateY(-3px);
}

/* ── Pearl CTA — shares the post-card visual language (pearl paper,
      raised-white serif hero, inset debossed frame, dot-grain overlay),
      then adds a bordered tracked-caps "pearl-foot" button at the bottom
      that matches .wsk-post-grid__pearl-cta. No more graphite square —
      reads as "same family, primary ask" rather than "off-brand block".
      The PHP still emits the --dark suffix for back-compat; we override. ── */
.wsk-post-grid__pearl--dark {
	position: relative;
	isolation: isolate;
	padding: clamp(2rem, 2.8vw, 2.75rem) clamp(1.75rem, 2.4vw, 2.25rem);
	min-height: 380px;
	background:
		radial-gradient(ellipse 120% 80% at 20% 15%, rgba(255,255,255,0.22), transparent 55%),
		radial-gradient(ellipse 80% 60% at 80% 100%, rgba(255,255,255,0.08), transparent 60%),
		linear-gradient(180deg, var(--wsk-pg-surface-top, #f6f1ef) 0%, var(--wsk-pg-surface-bottom, #efe7e4) 100%);
	color: var(--wsk-pl-ink, #5a4a44);
	overflow: hidden;
	border: none;
	box-shadow: none;
	text-decoration: none !important;
	display: flex;
	flex-direction: column;
	transition: transform 0.6s var(--wsk-pg-ease);
}

/* Dot-grain overlay — identical to post cards. */
.wsk-post-grid__pearl--dark::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		radial-gradient(circle at center, rgba(255,255,255,0.08) 0 1px, transparent 1.2px);
	background-size: 8px 8px;
	mix-blend-mode: soft-light;
	opacity: 0.5;
	pointer-events: none;
	z-index: 0;
}

/* Inset debossed frame — identical to post cards. */
.wsk-post-grid__pearl--dark::after {
	content: "";
	position: absolute;
	top: 18px;
	right: 18px;
	bottom: 18px;
	left: 18px;
	border-width: 1px;
	border-style: solid;
	border-color: #f8f2eb;
	background: transparent;
	box-shadow:
		0 1px 0 rgba(143, 124, 117, 0.22),
		inset 0 1px 0 rgba(255, 255, 255, 0.7);
	pointer-events: none;
	z-index: 0;
}

/* Link-wrapper layout — centered column, title auto-tops, foot hugs bottom. */
.wsk-post-grid__pearl--dark .wsk-post-grid__pearl-link {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	height: 100%;
	gap: clamp(1rem, 1.5vw, 1.25rem);
	flex: 1 1 auto;
	color: inherit !important;
	text-decoration: none !important;
	box-shadow: none !important;
	border-bottom: none !important;
}

.wsk-post-grid__pearl--dark .wsk-post-grid__pearl-link:hover {
	color: inherit !important;
	text-decoration: none !important;
}

/* Hero title — pearl post-card's raised-white serif, NOT the graphite
   debossed uppercase. Same styling as .wsk-post-grid__pearl-hero. */
.wsk-post-grid__pearl--dark .wsk-post-grid__pearl-hero,
.wsk-post-grid__pearl--dark .wsk-post-grid__pearl-link .wsk-post-grid__pearl-hero {
	display: block;
	font-family: var(--wsk-pg-serif);
	font-size: clamp(2rem, 3.5vw, 2.85rem);
	font-weight: 500;
	font-style: normal;
	line-height: 1;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin: auto 0 0;
	color: #c8c0b5 !important;
	text-shadow:
		0 1px 0 rgba(255, 255, 255, 0.9),
		0 -1px 1px rgba(143, 124, 117, 0.35);
	transition: letter-spacing 0.6s var(--wsk-pg-ease);
}

.wsk-post-grid__pearl--dark:hover .wsk-post-grid__pearl-hero {
	letter-spacing: 0.03em;
}

/* Footer button — bordered tracked-caps chip identical to .pearl-cta. */
.wsk-post-grid__pearl--dark .wsk-post-grid__pearl-foot,
.wsk-post-grid__pearl--dark .wsk-post-grid__pearl-link .wsk-post-grid__pearl-foot {
	display: inline-block;
	padding: 10px 22px;
	margin-top: auto;
	font-family: "Inter", "Helvetica Neue", sans-serif;
	font-size: 0.58rem;
	font-weight: 500;
	letter-spacing: 0.34em;
	text-transform: uppercase;
	color: #c8c0b5;
	border: 1px solid #e0d4c3;
	background: transparent;
	box-shadow: none;
	text-shadow:
		0 1px 0 rgba(255, 255, 255, 0.9),
		0 -1px 1px rgba(143, 124, 117, 0.35);
	transition:
		color 0.4s var(--wsk-pg-ease),
		border-color 0.4s var(--wsk-pg-ease);
}

.wsk-post-grid__pearl--dark:hover .wsk-post-grid__pearl-foot {
	color: #a89f92;
	border-color: #c8bba5;
}

/* Gentle lift on hover — matches post-card behaviour. */
.wsk-post-grid__pearl--dark:hover {
	transform: translateY(-3px);
}

/* CTA cell specifically (shortcode: pearl layout) — let the flex layout
   handle spacing rather than the grid rows defined on non-pearl CTA. */
.wsk-post-grid__pearl--dark.wsk-post-grid__cta {
	grid-template-rows: none;
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-post-grid a:focus-visible,
.wsk-post-grid button:focus-visible,
.wsk-post-grid [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/**
 * WEPRO: Concierge Hero
 * Mobile-first — luxury hospitality aesthetic.
 * Reference: grandhotelcentral.com
 */

/* ═══════════════════════════════════════════════════════════════
   1. HERO SHELL
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero {
	position: relative;
	min-height: var(--wsk-ch-min-height, 100vh);
	background: var(--wsk-ch-bg, #1a1a2e);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	color: #ffffff;
}

/* Allow dropdowns to overflow the hero bounds */
.wsk-concierge-hero__bottom {
	overflow: visible;
}

.wsk-concierge-hero__booking,
.wsk-concierge-hero__callback {
	overflow: visible;
}

.wsk-concierge-hero__booking-field {
	overflow: visible !important;
}

/* ═══════════════════════════════════════════════════════════════
   2. BACKGROUND PANELS
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero__viewport {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.wsk-concierge-hero__panel {
	position: absolute;
	inset: 0;
	opacity: 0;
	z-index: 0;
	pointer-events: none;
}

.wsk-concierge-hero__panel.is-active {
	opacity: 1;
	z-index: 1;
	pointer-events: auto;
}

.wsk-concierge-hero__bg {
	position: absolute;
	inset: 0;
	background-image: var(--wsk-ch-s-bg-img, none);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.wsk-concierge-hero__bg::after {
	content: '';
	position: absolute;
	inset: 0;
	background: var(--wsk-ch-s-overlay, rgba(0, 0, 0, 0.45));
	pointer-events: none;
}

.wsk-concierge-hero__bg-video {
	display: none;
}

/* ═══════════════════════════════════════════════════════════════
   3. CONTENT LAYER
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero__content-layer {
	position: relative;
	z-index: 2;
	flex: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	/* Bottom padding = menu(~80px) + booking(~90px) to center content above bottom bar */
	padding: 0 24px calc(80px + 90px + 20px);
}

.wsk-concierge-hero__content-panel {
	display: none;
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}

.wsk-concierge-hero__content-panel.is-active {
	display: flex;
	justify-content: center;
}

.wsk-concierge-hero__content-inner {
	width: 100%;
	text-align: center !important;
	display: flex;
	flex-direction: column;
	align-items: center;
}

/* House palette — luminous ivory over ink.
   Warm-white, not cold — feels like candle-light, not fluorescent. */
.wsk-concierge-hero {
	--wsk-ch-ivory: #FFF6E8;
	--wsk-ch-ivory-soft: rgba(255, 246, 232, 0.72);
	--wsk-ch-ivory-hairline: rgba(255, 246, 232, 0.4);
	/* Backwards compat — keep in case any older rules still read these. */
	--wsk-ch-accent: #FFF6E8;
	--wsk-ch-accent-deep: #D9C2A1;
	--wsk-ch-accent-light: #FFFFFF;
}

/* Eyebrow — engraved-on-vellum: tracked ivory with hairline flankers and a
   soft halo so the letters sit IN the image rather than on top of it. */
.wsk-concierge-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	font-family: var(--wsk-ch-description-font-family, 'Inter', system-ui, sans-serif);
	font-size: 0.7rem;
	font-weight: 500;
	letter-spacing: 0.36em;
	text-transform: uppercase;
	color: var(--wsk-ch-ivory, #FFF6E8);
	margin: 0 auto 26px;
	/* Soft double halo — inner crisp, outer diffused. Reads as embossed. */
	text-shadow:
		0 0 1px rgba(255, 246, 232, 0.4),
		0 0 14px rgba(255, 246, 232, 0.15);
}
.wsk-concierge-hero__eyebrow::before,
.wsk-concierge-hero__eyebrow::after {
	content: '';
	display: inline-block;
	width: 32px;
	height: 1px;
	background: linear-gradient(
		90deg,
		rgba(255, 246, 232, 0) 0%,
		var(--wsk-ch-ivory-hairline, rgba(255, 246, 232, 0.4)) 50%,
		rgba(255, 246, 232, 0) 100%
	);
}

/* Heading — serif display, house luxury language.
   {gr} splits the title; the word after becomes an italic gold accent. */
.wsk-concierge-hero .wsk-concierge-hero__heading {
	font-family: var(--wsk-ch-heading-font-family, 'Cormorant Garamond', 'Playfair Display', Georgia, serif);
	font-size: var(--wsk-ch-heading-font-size, clamp(2.5rem, 6vw, 5rem));
	font-weight: var(--wsk-ch-heading-font-weight, 400);
	font-style: var(--wsk-ch-heading-font-style, normal);
	line-height: var(--wsk-ch-heading-line-height, 1.04);
	letter-spacing: var(--wsk-ch-heading-letter-spacing, -0.015em);
	text-transform: var(--wsk-ch-heading-text-transform, none);
	color: var(--wsk-ch-heading-color, #FFF6E8);
	text-align: var(--wsk-ch-heading-text-align, center) !important;
	margin-top: var(--wsk-ch-heading-margin-top, 0);
	margin-bottom: var(--wsk-ch-heading-margin-bottom, 22px);
}

.wsk-concierge-hero__heading-accent {
	font-style: italic;
	background: linear-gradient(
		180deg,
		var(--wsk-ch-accent, #F4E4BC) 0%,
		var(--wsk-ch-accent-deep, #AA8C2C) 100%
	);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}

/* Description */
.wsk-concierge-hero .wsk-concierge-hero__description {
	font-size: var(--wsk-ch-description-font-size, clamp(0.95rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-ch-description-font-weight, 300);
	font-style: var(--wsk-ch-description-font-style, normal);
	line-height: var(--wsk-ch-description-line-height, 1.7);
	letter-spacing: var(--wsk-ch-description-letter-spacing, 0.02em);
	text-transform: var(--wsk-ch-description-text-transform, none);
	color: var(--wsk-ch-description-color, rgba(255, 255, 255, 0.85));
	text-align: var(--wsk-ch-description-text-align, center) !important;
	margin-top: var(--wsk-ch-description-margin-top, 0);
	margin-bottom: var(--wsk-ch-description-margin-bottom, 0);
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}

/* Avada heading/paragraph overrides — force center */
.wsk-concierge-hero .wsk-concierge-hero__heading,
.wsk-concierge-hero .wsk-concierge-hero__description {
	padding: 0;
	border: none;
	box-shadow: none;
	width: 100%;
	text-align: var(--wsk-ch-heading-text-align, center) !important;
}

/* ═══════════════════════════════════════════════════════════════
   Section CTA — borderless typographic system.
   No box, no fill. Pure type + arrow + hairline underline sweep.
   Highest-level luxury grammar: Aman/Rosewood/Bvlgari school.
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero__cta-row {
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap: 36px;
	margin-top: 32px;
	max-width: 100%;
}

.wsk-concierge-hero__cta {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 6px 2px 10px;       /* leaves room beneath for the underline */
	background: transparent;
	border: 0;
	border-radius: 0;
	min-height: 44px;             /* touch-safe without a visible box */
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition:
		color 450ms cubic-bezier(0.2, 0, 0.2, 1),
		letter-spacing 450ms cubic-bezier(0.2, 0, 0.2, 1),
		opacity 450ms cubic-bezier(0.2, 0, 0.2, 1);
	text-decoration: none !important;
	text-underline-offset: 0;
}

.wsk-concierge-hero__cta-label {
	position: relative;
	display: inline-block;
	white-space: nowrap;
	text-decoration: none !important;
}

.wsk-concierge-hero__cta-arrow {
	display: inline-flex;
	align-items: center;
	line-height: 1;
	transform: translateX(0);
	transition: transform 450ms cubic-bezier(0.2, 0, 0.2, 1), opacity 450ms ease;
	opacity: 0.75;
}
.wsk-concierge-hero__cta-arrow svg {
	display: block;
	/* Stroke inherits from currentColor — keeps arrow weight matched to label. */
}

/* Hairline underline — starts short, centered; sweeps to full width on hover. */
.wsk-concierge-hero__cta::after {
	content: '';
	position: absolute;
	left: 42%;
	right: 42%;
	bottom: -1px;
	height: 1px;
	background: currentColor;
	opacity: 0.35;
	transition: left 600ms cubic-bezier(0.2, 0, 0.2, 1),
		right 600ms cubic-bezier(0.2, 0, 0.2, 1),
		opacity 600ms cubic-bezier(0.2, 0, 0.2, 1);
}

/* ─── Primary: luminous ivory on soft frosted glass capsule.
   No hard edges. Pill shape. Edge-light instead of a border line.
   Gentle breathing pulse so the eye is drawn without anything shouting. ─── */
.wsk-concierge-hero__cta--primary {
	color: var(--wsk-ch-ivory, #FFF6E8);
	font-family: var(--wsk-ch-description-font-family, 'Inter', system-ui, sans-serif);
	font-size: 0.74rem;
	font-weight: 500;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	/* Thin soft pill — most forgiving shape over any photograph. */
	padding: 10px 30px 11px;
	border-radius: 999px;
	/* Barely-there veil of warm glass. Picks up photo tint without adding tone. */
	background: rgba(255, 246, 232, 0.035);
	-webkit-backdrop-filter: blur(20px) saturate(115%);
	backdrop-filter: blur(20px) saturate(115%);
	/* NO solid border — edge-light built entirely from inset shadows so the
	   capsule's outline fades softly into the photograph. */
	border: 0;
	box-shadow:
		/* Top edge: whisper-thin highlight */
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		/* Ring edge-light: soft ivory halo, not a hard line */
		inset 0 0 0 1px rgba(255, 246, 232, 0.09),
		/* Faint lower shade for dimension */
		inset 0 -1px 0 rgba(0, 0, 0, 0.08),
		/* Ambient drop — very soft, spread wide, not deep */
		0 2px 8px rgba(0, 0, 0, 0.12),
		0 18px 50px -22px rgba(0, 0, 0, 0.35);
	/* Embossed letter halo — crisp 1px glow + diffused inner warmth. */
	text-shadow:
		0 0 1px rgba(255, 255, 255, 0.3),
		0 0 14px rgba(255, 246, 232, 0.1);
	transition:
		background 600ms cubic-bezier(0.2, 0, 0.2, 1),
		letter-spacing 600ms cubic-bezier(0.2, 0, 0.2, 1),
		box-shadow 600ms cubic-bezier(0.2, 0, 0.2, 1),
		text-shadow 600ms cubic-bezier(0.2, 0, 0.2, 1),
		color 600ms cubic-bezier(0.2, 0, 0.2, 1);
	/* Gentle breathing — ±0.8% scale, synced soft shadow modulation. */
	animation: wsk-ch-cta-pulse 2.6s ease-in-out infinite;
}

/* The glass capsule needs its own underline placement (bottom edge of padding). */
.wsk-concierge-hero__cta--primary::after {
	display: none;
}

/* Specular sweep overlay — a thin band of light glides diagonally on hover. */
.wsk-concierge-hero__cta--primary::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(
		115deg,
		transparent 30%,
		rgba(255, 255, 255, 0.16) 48%,
		rgba(255, 255, 255, 0.05) 52%,
		transparent 70%
	);
	background-size: 220% 100%;
	background-position: 140% 0;
	transition: background-position 900ms cubic-bezier(0.2, 0, 0.2, 1);
	opacity: 0;
	pointer-events: none;
	z-index: 1;
}

.wsk-concierge-hero__cta--primary:hover,
.wsk-concierge-hero__cta--primary:focus-visible {
	color: #FFFFFF;
	letter-spacing: 0.28em;
	background: rgba(255, 246, 232, 0.07);
	text-shadow:
		0 0 2px rgba(255, 255, 255, 0.55),
		0 0 22px rgba(255, 246, 232, 0.22);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.32),
		inset 0 0 0 1px rgba(255, 246, 232, 0.18),
		inset 0 -1px 0 rgba(0, 0, 0, 0.06),
		0 4px 14px rgba(0, 0, 0, 0.18),
		0 26px 60px -22px rgba(0, 0, 0, 0.4);
	/* Pause the breathing pulse on interaction — give the user agency. */
	animation-play-state: paused;
}
.wsk-concierge-hero__cta--primary:hover::before,
.wsk-concierge-hero__cta--primary:focus-visible::before {
	background-position: -40% 0;
	opacity: 1;
}
.wsk-concierge-hero__cta--primary:hover .wsk-concierge-hero__cta-arrow,
.wsk-concierge-hero__cta--primary:focus-visible .wsk-concierge-hero__cta-arrow {
	transform: translateX(10px);
	opacity: 1;
}

/* ─── Ghost: italic serif whisper in soft ivory. No box, no capsule.
   Just type + › ornament + hairline underline that reveals on hover. ─── */
.wsk-concierge-hero__cta--ghost {
	color: var(--wsk-ch-ivory-soft, rgba(255, 246, 232, 0.72));
	font-family: var(--wsk-ch-heading-font-family, 'Cormorant Garamond', Georgia, serif);
	font-size: 1.08rem;
	font-style: italic;
	font-weight: 300;
	letter-spacing: 0.005em;
	text-transform: none;
	padding: 6px 2px 10px;
	text-shadow: 0 0 12px rgba(255, 246, 232, 0.06);
	transition:
		color 500ms cubic-bezier(0.2, 0, 0.2, 1),
		text-shadow 500ms cubic-bezier(0.2, 0, 0.2, 1),
		transform 500ms cubic-bezier(0.2, 0, 0.2, 1);
}
.wsk-concierge-hero__cta--ghost::after {
	opacity: 0;
	left: 50%;
	right: 50%;
}
.wsk-concierge-hero__cta--ghost:hover,
.wsk-concierge-hero__cta--ghost:focus-visible {
	color: #FFFFFF;
	transform: translateY(-1px);
	text-shadow: 0 0 18px rgba(255, 246, 232, 0.2);
}
.wsk-concierge-hero__cta--ghost:hover::after,
.wsk-concierge-hero__cta--ghost:focus-visible::after {
	left: 12%;
	right: 12%;
	opacity: 0.55;
}
.wsk-concierge-hero__cta--ghost:hover .wsk-concierge-hero__cta-arrow,
.wsk-concierge-hero__cta--ghost:focus-visible .wsk-concierge-hero__cta-arrow {
	transform: translateX(6px);
	opacity: 1;
}

/* Focus outline for both — very subtle, ivory hairline. */
.wsk-concierge-hero__cta:focus-visible {
	outline: 1px solid var(--wsk-ch-ivory-hairline, rgba(255, 246, 232, 0.4));
	outline-offset: 4px;
	border-radius: 2px;
}

/* Breathing pulse for the primary CTA — slow, ~0.8% scale with synced luminosity.
   Gentle. Visible but not demanding. Matches tungsten-flicker rhythm of the kit. */
@keyframes wsk-ch-cta-pulse {
	0%, 100% {
		transform: scale(1);
		box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.22),
			inset 0 0 0 1px rgba(255, 246, 232, 0.09),
			inset 0 -1px 0 rgba(0, 0, 0, 0.08),
			0 2px 8px rgba(0, 0, 0, 0.12),
			0 18px 50px -22px rgba(0, 0, 0, 0.35);
	}
	50% {
		transform: scale(1.008);
		box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.28),
			inset 0 0 0 1px rgba(255, 246, 232, 0.14),
			inset 0 -1px 0 rgba(0, 0, 0, 0.06),
			0 3px 10px rgba(0, 0, 0, 0.14),
			0 22px 56px -22px rgba(0, 0, 0, 0.4),
			0 0 22px rgba(255, 246, 232, 0.06);
	}
}

/* Respect reduced-motion: stop the pulse but keep the look. */
@media (prefers-reduced-motion: reduce) {
	.wsk-concierge-hero__cta--primary {
		animation: none !important;
	}
}

/* Belt-and-braces: kill theme-level link underlines on CTA states / descendants. */
.wsk-concierge-hero a.wsk-concierge-hero__cta,
.wsk-concierge-hero a.wsk-concierge-hero__cta:link,
.wsk-concierge-hero a.wsk-concierge-hero__cta:visited,
.wsk-concierge-hero a.wsk-concierge-hero__cta:hover,
.wsk-concierge-hero a.wsk-concierge-hero__cta:active,
.wsk-concierge-hero a.wsk-concierge-hero__cta:focus,
.wsk-concierge-hero a.wsk-concierge-hero__cta > span {
	text-decoration: none !important;
	text-decoration-line: none !important;
	border-bottom: 0 !important;
	background-image: none;
}

/* ═══════════════════════════════════════════════════════════════
   4. BOTTOM BAR (menu + booking separated)
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero__bottom {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 5;
	display: flex;
	flex-direction: column;
	pointer-events: auto;
}

/* ═══════════════════════════════════════════════════════════════
   5. SPECIALITY MENU TABS — Grand Hotel Central style
   Active = rounded pill border with label visible
   Inactive = icon only (label hidden on desktop, visible on mobile)
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero__menu {
	display: flex;
	align-items: center;
	justify-content: center;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	gap: 0;
	padding: 20px 0;
	margin: 0;
	background: transparent;
	position: relative;
}

.wsk-concierge-hero__menu::-webkit-scrollbar {
	display: none;
}

/* Connector line — only between first and last tab, not edge-to-edge */
.wsk-concierge-hero__menu::before {
	display: none;
}

.wsk-concierge-hero__menu-tab {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 8px;
	flex: 0 0 auto;
	min-height: 44px;
	padding: 8px 12px;
	border: none;
	border-radius: 24px;
	background: transparent;
	color: var(--wsk-ch-menu-color, rgba(255, 255, 255, 0.6));
	cursor: pointer;
	transition: all 0.35s ease;
	white-space: nowrap;
	position: relative;
	z-index: auto;
}

/* Line connector between tabs */
.wsk-concierge-hero__menu-line {
	width: 32px;
	height: 1px;
	background: rgba(255, 255, 255, 0.18);
	flex-shrink: 0;
}

.wsk-concierge-hero__menu-tab:hover {
	color: var(--wsk-ch-menu-active, #ffffff);
}

/* Inactive: icon only, NO label */
.wsk-concierge-hero__menu-tab:not(.is-active) .wsk-concierge-hero__menu-label {
	display: none;
}

/* Active: label only, NO icon */
.wsk-concierge-hero__menu-tab.is-active .wsk-concierge-hero__menu-icon {
	display: none;
}

/* Active tab: pill border + label visible */
.wsk-concierge-hero__menu-tab.is-active {
	border: 1px solid rgba(255, 255, 255, 0.35);
	color: var(--wsk-ch-menu-active, #ffffff);
	background: transparent;
	padding: 8px 24px;
}

.wsk-concierge-hero__menu-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	font-size: 20px;
}

.wsk-concierge-hero__menu-icon img {
	width: 26px;
	height: 26px;
	object-fit: contain;
	filter: brightness(0) invert(1);
	opacity: 0.6;
	transition: opacity 0.3s ease;
}

.wsk-concierge-hero__menu-tab.is-active .wsk-concierge-hero__menu-icon img {
	opacity: 1;
}

/* ─── No-icon fallback: inactive tabs without icons show their label ─── */
.wsk-concierge-hero__menu-tab--no-icon:not(.is-active) .wsk-concierge-hero__menu-label {
	display: inline-block;
}

.wsk-concierge-hero__menu-tab--no-icon:not(.is-active) {
	padding: 8px 16px;
	color: var(--wsk-ch-menu-color, rgba(255, 255, 255, 0.55));
}

.wsk-concierge-hero__menu-tab--no-icon:not(.is-active) .wsk-concierge-hero__menu-label {
	font-size: 0.72rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.wsk-concierge-hero__menu-label {
	font-size: 0.72rem;
	font-weight: 500;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

/* ═══════════════════════════════════════════════════════════════
   6. BOOKING BAR (V1) — Bordered field containers like reference
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero__booking {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 14px;
	margin: 0 16px 12px;
	background: rgba(60, 55, 50, 0.55);
	backdrop-filter: blur(20px) saturate(1.2);
	-webkit-backdrop-filter: blur(20px) saturate(1.2);
	color: var(--wsk-ch-booking-color, #ffffff);
	border-radius: 6px;
}

.wsk-concierge-hero .wsk-concierge-hero__booking-field,
section.wsk-concierge-hero .wsk-concierge-hero__booking-field {
	padding: 0 !important;
	border: 1px solid rgba(255, 255, 255, 0.25) !important;
	border-radius: 4px !important;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.04) !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	min-height: 58px;
}

.wsk-concierge-hero .wsk-concierge-hero__booking-label,
section.wsk-concierge-hero .wsk-concierge-hero__booking-label {
	display: block !important;
	font-size: 0.55rem !important;
	font-weight: 500 !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.55) !important;
	padding: 10px 14px 2px !important;
	margin: 0 !important;
	line-height: 1.3 !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: static !important;
	width: auto !important;
	height: auto !important;
	overflow: visible !important;
	clip: auto !important;
}

/* Trigger button — Avada-proof, must be clickable */
.wsk-concierge-hero .wsk-concierge-hero__booking-trigger,
section.wsk-concierge-hero .wsk-concierge-hero__booking-trigger,
section.wsk-concierge-hero button.wsk-concierge-hero__booking-trigger {
	pointer-events: auto !important;
	position: relative !important;
	z-index: 2 !important;
}

.wsk-concierge-hero .wsk-concierge-hero__booking-trigger,
section.wsk-concierge-hero .wsk-concierge-hero__booking-trigger {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	width: 100% !important;
	padding: 4px 14px 10px !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #ffffff !important;
	font-size: 0.9rem !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em;
	cursor: pointer;
	text-align: left !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	line-height: 1.4 !important;
}

.wsk-concierge-hero__booking-value {
	flex: 1;
}

.wsk-concierge-hero__booking-chevron {
	width: 12px;
	height: 8px;
	flex-shrink: 0;
	opacity: 0.5;
	transition: transform 0.25s ease;
}

.wsk-concierge-hero__booking-trigger[aria-expanded="true"] .wsk-concierge-hero__booking-chevron {
	transform: rotate(180deg);
}

/* Dropdown panels — fixed position to escape overflow:hidden */
.wsk-concierge-hero__dropdown {
	position: fixed;
	z-index: 2147483647;
	min-width: min(320px, calc(100vw - 2rem));
	background: #ffffff;
	border-radius: 10px;
	box-shadow: 0 16px 56px rgba(0, 0, 0, 0.35);
	color: #333;
	animation: wsk-ch-dialogIn 0.2s ease both;
	display: none;
}

/* Top pointer arrow — disabled.
   Panel is portaled to <body> and can open above or below the trigger dynamically.
   A fixed-position decorative arrow would never line up reliably with the trigger
   in both cases, so we rely on the hairline shadow + panel position alone. */
.wsk-concierge-hero__dropdown::after {
	content: none;
}

/* Elegant close × — bare hairline glyph, no circle, no border.
   Just a thin 1px SVG cross that softens on hover. Minimal & luxury. */
.wsk-concierge-hero__dropdown-close,
.wsk-concierge-hero__occupancy button.wsk-concierge-hero__dropdown-close,
.wsk-concierge-hero__calendar button.wsk-concierge-hero__dropdown-close {
	position: absolute;
	top: 14px;
	right: 14px;
	width: 24px;
	height: 24px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent !important;
	border: 0 !important;
	border-radius: 50%;
	color: rgba(0, 0, 0, 0.45);
	cursor: pointer;
	box-shadow: none !important;
	transition: color 400ms ease, transform 400ms cubic-bezier(0.2, 0, 0.2, 1), background 400ms ease;
	z-index: 2;
}
.wsk-concierge-hero__dropdown-close svg {
	display: block;
	transition: transform 400ms cubic-bezier(0.2, 0, 0.2, 1);
}
.wsk-concierge-hero__dropdown-close:hover {
	color: rgba(0, 0, 0, 0.9);
	background: rgba(0, 0, 0, 0.04) !important;  /* soft halo disk on hover */
}
.wsk-concierge-hero__dropdown-close:hover svg {
	transform: rotate(90deg);
}
.wsk-concierge-hero__dropdown-close:focus-visible {
	outline: 1px solid var(--wsk-ch-ivory-hairline, rgba(0, 0, 0, 0.3));
	outline-offset: 3px;
}

.wsk-concierge-hero__dropdown.is-hidden {
	display: none;
}

.wsk-concierge-hero__dropdown.is-open {
	display: block !important;
}

/* Booking field needs relative for dropdown positioning */
.wsk-concierge-hero__booking-field {
	position: relative;
}

/* ── Calendar Panel ── */
.wsk-concierge-hero__calendar {
	min-width: min(560px, calc(100vw - 2rem));
	/* Extra top padding so the month nav row clears the close × at top-right. */
	padding: 44px 24px 24px;
}

.wsk-concierge-hero__cal-grid {
	display: flex;
	gap: 24px;
}

.wsk-concierge-hero__cal-month {
	flex: 1;
}

.wsk-concierge-hero__cal-month-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
}

.wsk-concierge-hero__cal-month-title {
	font-size: 1rem;
	font-weight: 600;
	color: #333;
}

.wsk-concierge-hero__cal-nav,
.wsk-concierge-hero__calendar button.wsk-concierge-hero__cal-nav {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 44px !important;
	height: 44px !important;
	border: 1px solid #ddd !important;
	border-radius: 6px !important;
	background: #fff !important;
	color: #333 !important;
	cursor: pointer;
	font-size: 16px !important;
	padding: 0 !important;
	box-shadow: none !important;
	transition: border-color 0.2s ease;
}

.wsk-concierge-hero__cal-nav:hover {
	border-color: #999 !important;
}

.wsk-concierge-hero__cal-weekdays {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 0;
	margin-bottom: 4px;
}

.wsk-concierge-hero__cal-wd {
	text-align: center;
	font-size: 0.7rem;
	font-weight: 600;
	color: #999;
	padding: 4px 0;
	text-transform: uppercase;
}

.wsk-concierge-hero__cal-days {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 2px;
}

.wsk-concierge-hero__cal-day,
.wsk-concierge-hero__calendar button.wsk-concierge-hero__cal-day {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 44px !important;
	height: 44px !important;
	border-radius: 6px !important;
	font-size: 0.85rem !important;
	cursor: pointer;
	transition: background 0.15s ease;
	border: none !important;
	background: transparent !important;
	color: #333 !important;
	margin: 0 auto;
	padding: 0 !important;
	box-shadow: none !important;
}

.wsk-concierge-hero__cal-day:hover {
	background: #f0f0f0 !important;
}

.wsk-concierge-hero__cal-day.is-today {
	font-weight: 700 !important;
	background: #f5f5f5 !important;
}

.wsk-concierge-hero__cal-day.is-selected {
	background: #333 !important;
	color: #fff !important;
}

.wsk-concierge-hero__cal-day.is-range {
	background: #e8e8e8 !important;
}

.wsk-concierge-hero__cal-day.is-disabled {
	opacity: 0.3;
	cursor: default;
	pointer-events: none;
}

.wsk-concierge-hero__cal-day.is-empty {
	visibility: hidden;
}

.wsk-concierge-hero__cal-footer {
	padding: 12px 0 0;
	font-size: 0.85rem;
	color: #666;
	border-top: 1px solid #eee;
	margin-top: 16px;
}

/* ── Occupancy Panel ── */
.wsk-concierge-hero__occupancy {
	min-width: 420px;
	/* Extra top padding so the header row clears the close × at top-right. */
	padding: 44px 32px 28px;
}

.wsk-concierge-hero__occ-header {
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr;
	gap: 12px;
	padding-bottom: 14px;
	border-bottom: 1px solid #eee;
	margin-bottom: 0;
}

.wsk-concierge-hero__occ-col {
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #c9a96e;
}

.wsk-concierge-hero__occ-room {
	position: relative;
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr;
	align-items: center;
	gap: 12px;
	padding: 14px 28px 14px 0;  /* reserve 28px on the right for the remove button */
	border-bottom: 1px solid #f0f0f0;
}

/* Remove-room button — small × on the right edge of extra rooms. */
.wsk-concierge-hero__occ-remove,
.wsk-concierge-hero__occupancy button.wsk-concierge-hero__occ-remove {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 22px;
	height: 22px;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 1px solid #ddd;
	border-radius: 50%;
	color: #999;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
	box-shadow: none;
}
.wsk-concierge-hero__occ-remove:hover,
.wsk-concierge-hero__occupancy button.wsk-concierge-hero__occ-remove:hover {
	background: #f7efef;
	color: #c04040;
	border-color: #d9c0c0;
}
.wsk-concierge-hero__occ-remove:focus-visible {
	outline: 2px solid #c9a96e;
	outline-offset: 2px;
}

.wsk-concierge-hero__occ-room-label {
	font-size: 0.8rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #333;
}

/* Occupancy selects — Avada-proof */
.wsk-concierge-hero__occupancy select.wsk-concierge-hero__occ-select,
.wsk-concierge-hero__occ-select {
	flex: 1;
	padding: 8px 28px 8px 12px !important;
	border: 1px solid #ddd !important;
	border-radius: 4px !important;
	font-size: 0.85rem !important;
	color: #333 !important;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23999' stroke-width='1.5' fill='none'/%3E%3C/svg%3E") no-repeat right 8px center !important;
	cursor: pointer;
	appearance: none !important;
	-webkit-appearance: none !important;
	height: auto !important;
	min-height: 0 !important;
	box-shadow: none !important;
	max-width: 70px;
}

.wsk-concierge-hero__occ-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 20px;
	padding-top: 16px;
	gap: 12px;
}

.wsk-concierge-hero__occ-add,
.wsk-concierge-hero__occupancy button.wsk-concierge-hero__occ-add {
	display: flex !important;
	align-items: center;
	gap: 8px;
	padding: 8px 4px !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	color: #c9a96e !important;
	font-size: 0.75rem !important;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	cursor: pointer;
}

.wsk-concierge-hero__occ-add span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border: 1.5px solid #c9a96e;
	border-radius: 50%;
	font-size: 16px;
	line-height: 1;
}

.wsk-concierge-hero__occ-confirm,
.wsk-concierge-hero__occupancy button.wsk-concierge-hero__occ-confirm {
	padding: 14px 40px !important;
	background: var(--wsk-ch-booking-btn-bg, #c9a96e) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 4px;
	font-size: 0.8rem !important;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	cursor: pointer;
	transition: filter 0.2s ease;
	box-shadow: none !important;
}

.wsk-concierge-hero__occ-confirm:hover {
	filter: brightness(1.08);
}

/* ── Avada nuclear overrides for booking inputs ── */
.wsk-concierge-hero .wsk-concierge-hero__booking-input,
.wsk-concierge-hero .wsk-concierge-hero__booking-select,
.wsk-concierge-hero .wsk-concierge-hero__booking-input[type="date"],
.wsk-concierge-hero .wsk-concierge-hero__booking-input[type="text"],
.wsk-concierge-hero select.wsk-concierge-hero__booking-select,
section.wsk-concierge-hero input::placeholder {
	color: rgba(255, 255, 255, 0.5) !important;
	opacity: 1 !important;
}

section.wsk-concierge-hero input,
section.wsk-concierge-hero select {
	width: 100% !important;
	background-color: transparent !important;
	background-image: none !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #ffffff !important;
	font-size: 0.85rem !important;
	font-weight: 400 !important;
	letter-spacing: 0.03em;
	padding: 4px 14px 10px !important;
	margin: 0 !important;
	outline: none !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	cursor: pointer;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	line-height: 1.4 !important;
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
	position: static !important;
	float: none !important;
}

/* Kill Avada select wrapper completely */
.wsk-concierge-hero .avada-select-parent {
	all: unset !important;
	display: contents !important;
}

.wsk-concierge-hero .select-arrow,
.wsk-concierge-hero .avada-select-parent .select-arrow {
	display: none !important;
}

/* Inside dates wrapper, override padding */
.wsk-concierge-hero .wsk-concierge-hero__booking-dates .wsk-concierge-hero__booking-input {
	padding: 0;
}

.wsk-concierge-hero .wsk-concierge-hero__booking-input:focus,
.wsk-concierge-hero .wsk-concierge-hero__booking-select:focus {
	outline: none;
	box-shadow: none;
}

/* Avada nuclear overrides for callback inputs */
.wsk-concierge-hero .wsk-concierge-hero__callback-input,
.wsk-concierge-hero .wsk-concierge-hero__callback-input[type="text"],
.wsk-concierge-hero .wsk-concierge-hero__callback-input[type="email"],
.wsk-concierge-hero .wsk-concierge-hero__callback-input[type="tel"],
section.wsk-concierge-hero .wsk-concierge-hero__callback input {
	background-color: transparent !important;
	background-image: none !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #ffffff !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	display: block !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.wsk-concierge-hero .wsk-concierge-hero__callback-input:focus {
	outline: none !important;
	box-shadow: none !important;
}

.wsk-concierge-hero__booking-field:focus-within {
	border-color: var(--wsk-ch-booking-accent, #c9a96e);
}

/* Date input — style the browser chrome */
.wsk-concierge-hero__booking-input[type="date"]::-webkit-calendar-picker-indicator {
	filter: invert(1);
	opacity: 0.4;
	cursor: pointer;
}

/* Select chevron — override Avada's background-image */
section.wsk-concierge-hero select.wsk-concierge-hero__booking-select,
.wsk-concierge-hero .wsk-concierge-hero__booking-select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='white' stroke-width='1.5' fill='none' opacity='0.4'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 14px center !important;
	background-color: transparent !important;
	padding-right: 32px !important;
}

/* Book Now button — Avada-proof */
.wsk-concierge-hero a.wsk-concierge-hero__booking-btn,
section.wsk-concierge-hero a.wsk-concierge-hero__booking-btn,
.wsk-concierge-hero__booking-btn {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100%;
	min-height: 52px;
	padding: 14px 32px !important;
	background: var(--wsk-ch-booking-btn-bg, #c9a96e) !important;
	color: var(--wsk-ch-booking-btn-color, #ffffff) !important;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	text-decoration: none !important;
	border: none !important;
	border-radius: 4px;
	cursor: pointer;
	transition: filter 0.3s ease;
	box-shadow: none !important;
	flex-shrink: 0;
}

.wsk-concierge-hero a.wsk-concierge-hero__booking-btn:hover,
section.wsk-concierge-hero a.wsk-concierge-hero__booking-btn:hover,
.wsk-concierge-hero__booking-btn:hover {
	filter: brightness(1.08);
	color: var(--wsk-ch-booking-btn-color, #ffffff) !important;
	text-decoration: none !important;
	background: var(--wsk-ch-booking-btn-bg, #c9a96e) !important;
}

/* ═══════════════════════════════════════════════════════════════
   7. CALLBACK FORM (V2)
   ═══════════════════════════════════════════════════════════════ */
/* Callback form — reuses .wsk-concierge-hero__booking-field + label classes */
.wsk-concierge-hero__callback {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 14px;
	margin: 0 16px 12px;
	background: rgba(60, 55, 50, 0.55);
	backdrop-filter: blur(20px) saturate(1.2);
	-webkit-backdrop-filter: blur(20px) saturate(1.2);
	color: var(--wsk-ch-booking-color, #ffffff);
	position: relative;
	border-radius: 6px;
}

.wsk-concierge-hero__callback-hp {
	position: absolute;
	left: -9999px;
	opacity: 0;
	height: 0;
	overflow: hidden;
}

/* Callback input — Avada-proof, matches booking inputs */
.wsk-concierge-hero .wsk-concierge-hero__callback-input,
section.wsk-concierge-hero .wsk-concierge-hero__callback-input {
	width: 100% !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: #ffffff !important;
	font-size: 0.85rem !important;
	font-weight: 400 !important;
	padding: 4px 14px 10px !important;
	margin: 0 !important;
	outline: none !important;
	height: auto !important;
	min-height: 0 !important;
	display: block !important;
	appearance: none !important;
	-webkit-appearance: none !important;
}

.wsk-concierge-hero__callback-btn:disabled {
	opacity: 0.5 !important;
	cursor: not-allowed;
}

.wsk-concierge-hero__callback-status {
	padding: 0;
	font-size: 0.85rem;
	text-align: center;
	transition: all 0.3s ease;
}

.wsk-concierge-hero__callback-status:not(:empty) {
	padding: 12px 0;
}

.wsk-concierge-hero__callback-status.is-success {
	color: #7dcea0;
}

.wsk-concierge-hero__callback-status.is-error {
	color: #e8a0a0;
}

/* ═══════════════════════════════════════════════════════════════
   8. RECEPTION BUTTON + DIALOG
   ═══════════════════════════════════════════════════════════════ */
/* Desktop: hide floating reception button (it's integrated into booking bar) */
.wsk-concierge-hero__reception-btn {
	display: none;
}

.wsk-concierge-hero__reception-icon {
	width: 22px;
	height: 22px;
}

.wsk-concierge-hero__reception-label {
	display: none;
}

/* Reception bell inside booking bar */
.wsk-concierge-hero__booking-reception,
section.wsk-concierge-hero button.wsk-concierge-hero__booking-reception {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 58px !important;
	flex-shrink: 0;
	background: rgba(255, 255, 255, 0.06) !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	border-radius: 4px !important;
	color: var(--wsk-ch-reception-color, #ffffff) !important;
	cursor: pointer;
	transition: background 0.25s ease;
	padding: 0 !important;
	box-shadow: none !important;
}

.wsk-concierge-hero__booking-reception:hover {
	background: rgba(255, 255, 255, 0.12) !important;
}

.wsk-concierge-hero__booking-reception .wsk-concierge-hero__reception-icon {
	width: 20px;
	height: 20px;
	opacity: 0.7;
}

/* Dialog */
/* ═══════════════════════════════════════════════════════════════
   Reception dialog — "Concierge Card" edition.
   Luxury hotel-room keycard aesthetic: inky panel with frosted-glass
   depth, ivory hairlines, serif title, champagne-warm hover links.
   Matches the CTA language across Spotlight / Hero Blur / Concierge.
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero__reception-dialog {
	display: none;
}

.wsk-concierge-hero__reception-dialog.is-hidden {
	display: none;
}

.wsk-concierge-hero__reception-dialog.is-open {
	display: block !important;
}

.wsk-concierge-hero__reception-dialog {
	/* Positioning handled entirely by JS on open (portaled to <body>, anchored to bell's rect).
	   Leaving only fallback declarations here in case JS fails. */
	position: fixed;
	bottom: 100px;
	right: 24px;
	z-index: 2147483647;
	width: 300px;
	max-width: calc(100vw - 32px);
	/* Ink panel with subtle warm tint; back-drop blur reads as inset glass. */
	background: rgba(11, 11, 13, 0.88);
	-webkit-backdrop-filter: blur(22px) saturate(130%);
	backdrop-filter: blur(22px) saturate(130%);
	border-radius: 14px;
	/* Ring-light edge + soft drop so the card floats. */
	box-shadow:
		inset 0 1px 0 rgba(255, 246, 232, 0.14),
		inset 0 0 0 1px rgba(255, 246, 232, 0.08),
		0 2px 10px rgba(0, 0, 0, 0.3),
		0 28px 68px -24px rgba(0, 0, 0, 0.6);
	overflow: hidden;
	color: var(--wsk-ch-ivory, #FFF6E8);
	animation: wsk-ch-dialogIn 0.3s cubic-bezier(0.2, 0, 0.2, 1) both;
}

/* Header — no opaque gold bar, just hairline-divided from body. */
.wsk-concierge-hero__reception-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 22px 16px;
	background: transparent;
	color: var(--wsk-ch-ivory, #FFF6E8);
	border-bottom: 1px solid rgba(255, 246, 232, 0.1);
}

.wsk-concierge-hero__reception-title {
	font-family: 'Cormorant Garamond', 'Playfair Display', Georgia, serif;
	font-size: 1.25rem;
	font-weight: 400;
	letter-spacing: -0.005em;
	line-height: 1.2;
	margin: 0;
	color: var(--wsk-ch-ivory, #FFF6E8) !important;
	/* Embossed candle-halo — same treatment as eyebrow. */
	text-shadow:
		0 0 1px rgba(255, 255, 255, 0.25),
		0 0 14px rgba(255, 246, 232, 0.08);
}

/* Close × — bare hairline glyph, same grammar as dropdown-close.
   Avada/theme defaults for <button> can reintroduce a border — kill aggressively. */
.wsk-concierge-hero__reception-close,
.wsk-concierge-hero__reception-dialog button.wsk-concierge-hero__reception-close,
section.wsk-concierge-hero .wsk-concierge-hero__reception-close {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 30px !important;
	height: 30px !important;
	padding: 0 !important;
	border: 0 !important;
	outline: 0;
	background: transparent !important;
	border-radius: 50% !important;
	color: rgba(255, 246, 232, 0.5) !important;
	cursor: pointer;
	transition: color 350ms ease, background 350ms ease, transform 400ms cubic-bezier(0.2, 0, 0.2, 1);
	box-shadow: none !important;
	min-height: 0 !important;
	line-height: 1 !important;
}

.wsk-concierge-hero__reception-close:hover {
	background: rgba(255, 246, 232, 0.06) !important;
	color: var(--wsk-ch-ivory, #FFF6E8);
}

.wsk-concierge-hero__reception-close:hover svg {
	transform: rotate(90deg);
}

.wsk-concierge-hero__reception-close svg {
	width: 14px;
	height: 14px;
	stroke-width: 1.2;
	transition: transform 400ms cubic-bezier(0.2, 0, 0.2, 1);
}

.wsk-concierge-hero__reception-close:focus-visible {
	outline: 1px solid var(--wsk-ch-ivory-hairline, rgba(255, 246, 232, 0.4));
	outline-offset: 3px;
}

/* Body — warm ivory text over ink. */
.wsk-concierge-hero__reception-body {
	padding: 18px 22px 22px;
}

.wsk-concierge-hero__reception-text {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.02rem;
	font-style: italic;
	font-weight: 300;
	line-height: 1.55;
	color: var(--wsk-ch-ivory-soft, rgba(255, 246, 232, 0.72));
	margin: 0 0 18px;
}

/* Links — stacked with hairline dividers, no pill boxes.
   Hover warms toward champagne-ivory with subtle arrow slide. */
.wsk-concierge-hero__reception-link {
	position: relative;
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 4px;
	margin: 0;
	background: transparent;
	color: var(--wsk-ch-ivory, #FFF6E8);
	font-family: var(--wsk-ch-description-font-family, 'Inter', system-ui, sans-serif);
	font-size: 0.88rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none !important;
	border-bottom: 1px solid rgba(255, 246, 232, 0.08);
	transition:
		color 400ms cubic-bezier(0.2, 0, 0.2, 1),
		background 400ms cubic-bezier(0.2, 0, 0.2, 1),
		padding-left 400ms cubic-bezier(0.2, 0, 0.2, 1);
	min-height: 52px;
}

.wsk-concierge-hero__reception-link:last-child {
	border-bottom: 0;
}

.wsk-concierge-hero__reception-link:hover,
.wsk-concierge-hero__reception-link:focus-visible {
	color: #FFFFFF;
	padding-left: 10px;
	background: linear-gradient(
		90deg,
		rgba(255, 246, 232, 0.04) 0%,
		rgba(255, 246, 232, 0) 80%
	);
}

/* Left edge accent — champagne hairline bar that reveals on hover. */
.wsk-concierge-hero__reception-link::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 2px;
	height: 0;
	background: var(--wsk-ch-accent-deep, #D9C2A1);
	opacity: 0;
	transition: height 400ms cubic-bezier(0.2, 0, 0.2, 1), opacity 400ms ease;
}

.wsk-concierge-hero__reception-link:hover::before,
.wsk-concierge-hero__reception-link:focus-visible::before {
	height: 60%;
	opacity: 0.9;
}

.wsk-concierge-hero__reception-link svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
	color: var(--wsk-ch-ivory-soft, rgba(255, 246, 232, 0.72));
	transition: color 400ms cubic-bezier(0.2, 0, 0.2, 1), transform 400ms cubic-bezier(0.2, 0, 0.2, 1);
}

.wsk-concierge-hero__reception-link:hover svg,
.wsk-concierge-hero__reception-link:focus-visible svg {
	color: var(--wsk-ch-accent-light, #FFFFFF);
	transform: scale(1.05);
}

/* Focus outline for the whole link. */
.wsk-concierge-hero__reception-link:focus-visible {
	outline: 1px solid var(--wsk-ch-ivory-hairline, rgba(255, 246, 232, 0.4));
	outline-offset: 2px;
}

/* Belt-and-braces: kill theme-level link underlines on reception links. */
.wsk-concierge-hero a.wsk-concierge-hero__reception-link,
.wsk-concierge-hero a.wsk-concierge-hero__reception-link:link,
.wsk-concierge-hero a.wsk-concierge-hero__reception-link:visited,
.wsk-concierge-hero a.wsk-concierge-hero__reception-link:hover,
.wsk-concierge-hero a.wsk-concierge-hero__reception-link:active,
.wsk-concierge-hero a.wsk-concierge-hero__reception-link:focus {
	text-decoration: none !important;
	border-bottom: 1px solid rgba(255, 246, 232, 0.08);
	background-image: none;
}
.wsk-concierge-hero a.wsk-concierge-hero__reception-link:last-child {
	border-bottom: 0 !important;
}

/* ═══════════════════════════════════════════════════════════════
   9. TRANSITIONS — Crossfade
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero--crossfade .wsk-concierge-hero__panel {
	transition: opacity var(--wsk-ch-speed, 0.8s) ease;
}

.wsk-concierge-hero--crossfade .wsk-concierge-hero__content-panel {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 24px calc(80px + 90px + 20px);
	opacity: 0;
	transition: opacity var(--wsk-ch-speed, 0.8s) ease;
	pointer-events: none;
}

.wsk-concierge-hero--crossfade .wsk-concierge-hero__content-panel.is-active {
	opacity: 1;
	pointer-events: auto;
}

.wsk-concierge-hero--crossfade .wsk-concierge-hero__content-layer {
	position: relative;
}

/* Content entrance animations — staggered fade-ups for the whole stack.
   Eyebrow leads, heading, description, then CTAs. Each line 'arrives' in order. */
.wsk-concierge-hero__content-panel.is-active .wsk-concierge-hero__eyebrow {
	animation: wsk-ch-fadeUp 0.7s ease 0.05s both;
}

.wsk-concierge-hero__content-panel.is-active .wsk-concierge-hero__heading {
	animation: wsk-ch-fadeUp 0.7s ease 0.2s both;
}

.wsk-concierge-hero__content-panel.is-active .wsk-concierge-hero__description {
	animation: wsk-ch-fadeUp 0.7s ease 0.4s both;
}

/* Entrance for CTA row — animate the ROW (wrapper) only, so individual
   CTA elements (especially the primary with its breathing pulse) keep
   their own animations untouched. CSS `animation` is not additive. */
.wsk-concierge-hero__content-panel.is-active .wsk-concierge-hero__cta-row {
	animation: wsk-ch-fadeUp 0.7s ease 0.55s both;
}
/* Ghost uses its own short fade — doesn't conflict with row fade, only
   adds gentle settle. Primary is NOT targeted so its pulse survives. */
.wsk-concierge-hero__content-panel.is-active .wsk-concierge-hero__cta--ghost {
	animation: wsk-ch-fadeUp 0.7s ease 0.7s both;
}

/* Ken Burns on active panel background */
.wsk-concierge-hero__panel.is-active .wsk-concierge-hero__bg {
	animation: wsk-ch-kenburns 18s ease-out forwards;
}

/* ═══════════════════════════════════════════════════════════════
   10. TRANSITIONS — Slide
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero--slide .wsk-concierge-hero__panel {
	transform: translateX(100%);
	transition: transform var(--wsk-ch-speed, 0.8s) ease, opacity var(--wsk-ch-speed, 0.8s) ease;
}

.wsk-concierge-hero--slide .wsk-concierge-hero__panel.is-active {
	transform: translateX(0);
}

.wsk-concierge-hero--slide .wsk-concierge-hero__panel.is-leaving {
	transform: translateX(-100%);
}

/* ═══════════════════════════════════════════════════════════════
   11. KEYFRAMES
   ═══════════════════════════════════════════════════════════════ */
@keyframes wsk-ch-fadeUp {
	from { opacity: 0; transform: translateY(24px); }
	to { opacity: 1; transform: translateY(0); }
}

@keyframes wsk-ch-kenburns {
	from { transform: scale(1); }
	to { transform: scale(1.05); }
}

@keyframes wsk-ch-dialogIn {
	from { opacity: 0; transform: translateY(12px) scale(0.96); }
	to { opacity: 1; transform: translateY(0) scale(1); }
}

@keyframes wsk-ch-slideUp {
	from { opacity: 0; transform: translateY(100%); }
	to { opacity: 1; transform: translateY(0); }
}

/* ═══════════════════════════════════════════════════════════════
   12. FOCUS STATES
   ═══════════════════════════════════════════════════════════════ */
.wsk-concierge-hero__menu-tab:focus-visible,
.wsk-concierge-hero__cta:focus-visible,
.wsk-concierge-hero__booking-btn:focus-visible,
.wsk-concierge-hero__callback-btn:focus-visible,
.wsk-concierge-hero__reception-btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

/* ═══════════════════════════════════════════════════════════════
   TABLET (min-width: 768px)
   ═══════════════════════════════════════════════════════════════ */
@media (min-width: 768px) {
	.wsk-concierge-hero__content-layer {
		padding: 120px 48px 220px;
	}

	/* Video visible on tablet+ */
	.wsk-concierge-hero__bg-video {
		display: block;
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
		z-index: 0;
	}

	.wsk-concierge-hero__menu-line {
		width: 48px;
	}

	/* Booking bar: horizontal layout with bordered fields */
	.wsk-concierge-hero .wsk-concierge-hero__booking {
		flex-direction: row !important;
		align-items: stretch !important;
		gap: 12px;
		padding: 16px 24px;
		margin: 0 5% 16px;
	}

	.wsk-concierge-hero .wsk-concierge-hero__booking-field {
		flex: 1 !important;
	}

	.wsk-concierge-hero .wsk-concierge-hero__booking-field--promo {
		flex: 0.8 !important;
	}

	.wsk-concierge-hero .wsk-concierge-hero__booking-btn,
	.wsk-concierge-hero a.wsk-concierge-hero__booking-btn {
		width: auto !important;
		min-width: 180px;
		border-radius: 4px;
	}

	/* Callback form: horizontal — same as booking bar */
	.wsk-concierge-hero .wsk-concierge-hero__callback {
		flex-direction: row !important;
		flex-wrap: wrap;
		align-items: stretch !important;
		gap: 12px;
		padding: 16px 24px;
		margin: 0 5% 16px;
	}

	.wsk-concierge-hero__callback .wsk-concierge-hero__booking-field {
		flex: 1 !important;
		min-width: 120px;
	}

	.wsk-concierge-hero__callback .wsk-concierge-hero__callback-btn {
		width: auto !important;
		min-width: 150px;
		flex-shrink: 0;
	}

	.wsk-concierge-hero__callback-status:not(:empty) {
		flex-basis: 100%;
	}

	/* New chrome on mobile: tighter eyebrow + CTA row.
	   CTAs stay inline side-by-side, wrap only if labels genuinely don't fit. */
	.wsk-concierge-hero__eyebrow {
		font-size: 0.6rem;
		letter-spacing: 0.28em;
		gap: 10px;
		margin-bottom: 18px;
	}
	.wsk-concierge-hero__eyebrow::before,
	.wsk-concierge-hero__eyebrow::after {
		width: 20px;
	}

	.wsk-concierge-hero__cta-row {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 28px;
		margin-top: 24px;
	}

	.wsk-concierge-hero__cta--primary {
		font-size: 0.72rem;
		letter-spacing: 0.2em;
	}
	.wsk-concierge-hero__cta--primary:hover,
	.wsk-concierge-hero__cta--primary:focus-visible {
		letter-spacing: 0.24em;
	}

	.wsk-concierge-hero__cta--ghost {
		font-size: 0.95rem;
	}
}

/* ═══════════════════════════════════════════════════════════════
   DESKTOP (min-width: 1024px)
   ═══════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
	.wsk-concierge-hero__content-layer {
		padding: 140px 8vw 240px;
	}

	.wsk-concierge-hero__content-panel {
		max-width: 1100px;
	}

	.wsk-concierge-hero__menu-line {
		width: 64px;
	}

	.wsk-concierge-hero__menu-tab {
		padding: 10px 22px;
	}

	.wsk-concierge-hero__menu-icon {
		width: 30px;
		height: 30px;
		font-size: 24px;
	}

	.wsk-concierge-hero__menu-icon img {
		width: 30px;
		height: 30px;
	}

	/* Booking bar: full luxury layout */
	.wsk-concierge-hero__booking {
		padding: 18px 32px;
		gap: 14px;
		margin: 0 6% 20px;
		backdrop-filter: blur(16px);
		-webkit-backdrop-filter: blur(16px);
	}

	.wsk-concierge-hero__booking-field--promo {
		flex: 0.7;
		max-width: 200px;
	}

	.wsk-concierge-hero__booking-btn {
		min-width: 200px;
	}

	/* Callback form: full luxury */
	.wsk-concierge-hero .wsk-concierge-hero__callback {
		padding: 18px 32px;
		margin: 0 6% 20px;
	}

	/* Reception: in-bar button handles it on desktop */
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE TYPOGRAPHY CASCADE
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
	.wsk-concierge-hero .wsk-concierge-hero__heading {
		font-size: var(--wsk-ch-heading-font-size-md, var(--wsk-ch-heading-font-size, clamp(2.5rem, 6vw, 5rem)));
		text-align: var(--wsk-ch-heading-text-align-md, var(--wsk-ch-heading-text-align, center)) !important;
	}

	.wsk-concierge-hero .wsk-concierge-hero__description {
		font-size: var(--wsk-ch-description-font-size-md, var(--wsk-ch-description-font-size, clamp(0.95rem, 1.4vw, 1.15rem)));
		text-align: var(--wsk-ch-description-text-align-md, var(--wsk-ch-description-text-align, center)) !important;
	}
}

@media (max-width: 767px) {
	/* Mobile: reduce padding, prevent scroll */
	.wsk-concierge-hero {
		max-height: 100vh;
		max-height: 100svh;
		overflow: hidden !important;
	}

	/* Menu: wrap onto multiple rows rather than horizontal scroll — keeps every tab visible */
	.wsk-concierge-hero__menu {
		flex-wrap: wrap;
		row-gap: 8px;
		overflow-x: visible;
	}

	.wsk-concierge-hero__content-layer {
		padding: 0 20px 140px !important;
	}

	.wsk-concierge-hero--crossfade .wsk-concierge-hero__content-panel {
		padding: 0 20px 140px !important;
	}

	.wsk-concierge-hero .wsk-concierge-hero__heading {
		font-size: var(--wsk-ch-heading-font-size-sm, clamp(1.6rem, 7vw, 2.4rem)) !important;
		text-align: var(--wsk-ch-heading-text-align-sm, var(--wsk-ch-heading-text-align-md, var(--wsk-ch-heading-text-align, center))) !important;
		color: #ffffff !important;
	}

	.wsk-concierge-hero .wsk-concierge-hero__description {
		font-size: var(--wsk-ch-description-font-size-sm, clamp(0.85rem, 3.5vw, 1rem)) !important;
		text-align: var(--wsk-ch-description-text-align-sm, var(--wsk-ch-description-text-align-md, var(--wsk-ch-description-text-align, center))) !important;
		color: rgba(255, 255, 255, 0.85) !important;
	}

	/* Calendar: single column on mobile */
	.wsk-concierge-hero__calendar {
		min-width: 0;
		width: calc(100vw - 32px);
		max-width: 320px;
		padding: 16px;
	}

	.wsk-concierge-hero__cal-grid {
		flex-direction: column;
		gap: 16px;
	}

	.wsk-concierge-hero__occupancy {
		min-width: 0;
		width: calc(100vw - 32px);
		max-width: 340px;
		padding: 16px;
	}

	/* Hide reception floating + in-bar on small screens */
	.wsk-concierge-hero__reception-btn {
		display: none !important;
	}

	.wsk-concierge-hero__booking-reception {
		display: none !important;
	}

	/* Mobile: reception dialog slides from bottom */
	.wsk-concierge-hero__reception-dialog {
		position: fixed !important;
		bottom: 0 !important;
		left: 0 !important;
		right: 0 !important;
		top: auto !important;
		width: 100% !important;
		max-width: 100% !important;
		border-radius: 20px 20px 0 0 !important;
		max-height: 70vh;
		overflow-y: auto;
		animation: wsk-ch-slideUp 0.3s ease both !important;
	}

	.wsk-concierge-hero__reception-dialog .wsk-concierge-hero__reception-header {
		border-radius: 20px 20px 0 0;
		padding: 20px 24px;
	}

	.wsk-concierge-hero__reception-dialog .wsk-concierge-hero__reception-body {
		padding: 24px;
	}

	.wsk-concierge-hero__reception-dialog .wsk-concierge-hero__reception-link {
		border-radius: 12px;
		padding: 16px 20px;
		min-height: 56px;
		font-size: 1rem;
	}
}

/* ═══════════════════════════════════════════════════════════════
   MOBILE BOOKING MODAL
   ═══════════════════════════════════════════════════════════════ */

/* Mobile bar + BOOK button: hidden on tablet+ */
.wsk-concierge-hero__mobile-bar {
	display: none !important;
}

.wsk-concierge-hero__reception-btn--mobile {
	display: none !important;
}

@media (max-width: 767px) {
	/* Mobile glass strip: BOOK + bell */
	.wsk-concierge-hero__mobile-bar {
		display: flex !important;
		align-items: stretch;
		margin: 0 16px 16px;
		background: rgba(60, 55, 50, 0.55);
		backdrop-filter: blur(20px) saturate(1.2);
		-webkit-backdrop-filter: blur(20px) saturate(1.2);
		border-radius: 30px;
		overflow: hidden;
		box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2);
	}

	.wsk-concierge-hero .wsk-concierge-hero__mobile-book-btn,
	section.wsk-concierge-hero .wsk-concierge-hero__mobile-book-btn,
	section.wsk-concierge-hero button.wsk-concierge-hero__mobile-book-btn {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		flex: 1 !important;
		width: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		background: transparent !important;
		background-image: none !important;
		border: none !important;
		border-right: 1px solid rgba(255, 255, 255, 0.12) !important;
		border-radius: 0 !important;
		font-size: 0.8rem !important;
		font-weight: 500 !important;
		letter-spacing: 0.25em;
		text-transform: uppercase;
		min-height: 52px;
		color: #ffffff !important;
		cursor: pointer;
		box-shadow: none !important;
		outline: none !important;
		line-height: 1.4 !important;
	}

	.wsk-concierge-hero .wsk-concierge-hero__reception-btn--mobile,
	section.wsk-concierge-hero .wsk-concierge-hero__reception-btn--mobile,
	section.wsk-concierge-hero button.wsk-concierge-hero__reception-btn--mobile {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;
		position: static !important;
		width: 56px !important;
		height: auto !important;
		flex-shrink: 0;
		border: none !important;
		border-radius: 0 !important;
		background: transparent !important;
		background-image: none !important;
		box-shadow: none !important;
		outline: none !important;
		padding: 0 !important;
		margin: 0 !important;
		color: #ffffff !important;
	}

	.wsk-concierge-hero__reception-btn--mobile .wsk-concierge-hero__reception-icon {
		width: 20px;
		height: 20px;
		opacity: 0.85;
	}

	/* Hide desktop reception elements on mobile (but NOT the mobile bell) */
	.wsk-concierge-hero__reception-btn:not(.wsk-concierge-hero__reception-btn--mobile) {
		display: none !important;
	}
}

.wsk-concierge-hero__booking-modal {
	display: contents !important;
}

.wsk-concierge-hero__booking-modal-inner {
	display: contents;
}

.wsk-concierge-hero__booking-modal-back {
	display: none !important;
}

/* Mobile only: modal popup */
@media (max-width: 767px) {
	/* Modal: full-screen overlay — MUST sit above every third-party fixed widget
	   (accessibility panel, voucher sidebar, GDPR banner, chat bubble, etc.). */
	.wsk-concierge-hero__booking-modal {
		position: fixed !important;
		inset: 0 !important;
		/* z-index max (signed 32-bit int) + isolate to create a new stacking context */
		z-index: 2147483647 !important;
		isolation: isolate;
		background: rgba(0, 0, 0, 0.78) !important;
		display: flex !important;
		/* Center the sheet vertically. If content is tall, flex-start via overflow scroll. */
		align-items: center !important;
		justify-content: center !important;
		padding: 16px !important;
		overflow-y: auto !important;
	}

	.wsk-concierge-hero__booking-modal.is-hidden {
		display: none !important;
	}

	.wsk-concierge-hero__booking-modal.is-open {
		display: flex !important;
	}

	.wsk-concierge-hero__booking-modal-inner {
		display: block !important;
		position: relative;
		z-index: 1;
		background: #ffffff;
		border-radius: 12px;
		width: 100%;
		max-width: 480px;
		/* Generous breathing room on every side — content never touches the frame. */
		padding: 24px 22px 28px !important;
		max-height: calc(100vh - 12vh);
		overflow-y: auto;
		animation: wsk-ch-dialogIn 0.25s ease both;
		/* Stop the iOS safe-area/keyboard from hiding the last button. */
		padding-bottom: calc(28px + env(safe-area-inset-bottom, 0px)) !important;
		box-shadow: 0 24px 80px rgba(0, 0, 0, 0.45);
	}

	.wsk-concierge-hero__booking-modal-back {
		display: flex !important;
		align-items: center;
		gap: 4px;
		padding: 8px 0 20px !important;
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
		color: #333 !important;
		font-size: 0.9rem !important;
		font-weight: 600;
		letter-spacing: 0.05em;
		text-transform: uppercase;
		cursor: pointer;
	}

	/* Modal: vertical booking bar with white bg */
	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking,
	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__callback {
		flex-direction: column !important;
		background: transparent !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
		padding: 0 !important;
		margin: 0 !important;
		border-radius: 0 !important;
		color: #333 !important;
		gap: 20px !important;
	}

	/* All fields visible inside modal — specificity must beat section.wsk-concierge-hero .booking-field base rule */
	section.wsk-concierge-hero .wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-field,
	section.wsk-concierge-hero .wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-field--dates,
	section.wsk-concierge-hero .wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-field--occupancy {
		display: flex !important;
		flex-direction: column !important;
		border: none !important;
		border-bottom: 1px solid #ddd !important;
		background: transparent !important;
		overflow: visible !important;
	}

	section.wsk-concierge-hero .wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-field--promo {
		display: flex !important;
		flex-direction: column !important;
		border: 1px solid #ccc !important;
		border-radius: 6px !important;
		padding: 10px 14px 8px !important;
		background: transparent !important;
		min-height: auto !important;
		margin: 0 !important;
		visibility: visible !important;
		opacity: 1 !important;
		overflow: visible !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-field--promo .wsk-concierge-hero__booking-input,
	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-field--promo input {
		color: #333 !important;
		font-size: 1.1rem !important;
		padding: 4px 0 4px !important;
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
		display: block !important;
		visibility: visible !important;
		height: auto !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-field--promo input::placeholder {
		color: #aaa !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-label,
	.wsk-concierge-hero__booking-modal span.wsk-concierge-hero__booking-label {
		display: block !important;
		color: var(--wsk-ch-booking-accent, #c9a96e) !important;
		opacity: 1 !important;
		font-size: 0.65rem !important;
		font-weight: 600 !important;
		letter-spacing: 0.12em !important;
		text-transform: uppercase !important;
		padding: 0 0 4px !important;
		margin: 0 !important;
		visibility: visible !important;
		position: static !important;
		height: auto !important;
		width: auto !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-trigger,
	.wsk-concierge-hero__booking-modal button.wsk-concierge-hero__booking-trigger {
		display: flex !important;
		color: #333 !important;
		padding: 4px 0 10px !important;
		font-size: 1.1rem !important;
		font-weight: 500 !important;
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-chevron {
		color: #999;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-input,
	.wsk-concierge-hero__booking-modal input:not([type="hidden"]) {
		display: block !important;
		color: #333 !important;
		font-size: 1.1rem !important;
		padding: 4px 0 10px !important;
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	.wsk-concierge-hero__booking-modal input::placeholder {
		color: #999 !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__booking-btn,
	.wsk-concierge-hero__booking-modal a.wsk-concierge-hero__booking-btn,
	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__callback-btn {
		display: flex !important;
		border-radius: 8px !important;
		margin-top: 12px !important;
	}

	section.wsk-concierge-hero .wsk-concierge-hero__booking-modal .wsk-concierge-hero__callback-input,
	section.wsk-concierge-hero .wsk-concierge-hero__booking-modal .wsk-concierge-hero__callback-input[type="text"],
	section.wsk-concierge-hero .wsk-concierge-hero__booking-modal .wsk-concierge-hero__callback-input[type="email"],
	section.wsk-concierge-hero .wsk-concierge-hero__booking-modal .wsk-concierge-hero__callback-input[type="tel"] {
		display: block !important;
		color: #333 !important;
		font-size: 1.1rem !important;
		padding: 4px 0 10px !important;
		background: transparent !important;
		border: none !important;
		box-shadow: none !important;
		visibility: visible !important;
	}

	/* Dropdowns inside modal: inline (not fixed popup) */
	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__dropdown {
		position: static !important;
		z-index: auto !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		box-shadow: none !important;
		border-radius: 0 !important;
		margin: 8px 0 0 !important;
		border-top: 1px solid #eee;
		padding: 16px 0 !important;
		animation: none !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__dropdown::after {
		display: none !important;
	}

	/* Calendar: single column on mobile modal */
	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__calendar {
		padding: 12px 0 !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__cal-grid {
		flex-direction: column;
		gap: 16px;
	}

	/* Calendar buttons inside modal: dark text */
	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__cal-day {
		color: #333 !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__cal-day.is-selected {
		color: #fff !important;
	}

	/* Occupancy panel inside modal */
	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__occupancy {
		min-width: 0 !important;
		padding: 12px 0 !important;
	}

	.wsk-concierge-hero__booking-modal .wsk-concierge-hero__occ-select {
		color: #333 !important;
		background: #fff !important;
	}
}

/* ═══════════════════════════════════════════════════════════════
   STICKY BOOKING BAR
   ═══════════════════════════════════════════════════════════════ */

/* Hero itself gets a top-level stacking context when sticky,
   so its fixed children paint above all other page sections. */
.wsk-concierge-hero.is-sticky,
section.wsk-concierge-hero.is-sticky {
	z-index: 2147483646 !important;
}

/* Desktop/Tablet: booking bar or callback form becomes fixed at top */
.wsk-concierge-hero.is-sticky .wsk-concierge-hero__booking,
section.wsk-concierge-hero.is-sticky .wsk-concierge-hero__booking,
.wsk-concierge-hero.is-sticky .wsk-concierge-hero__callback,
section.wsk-concierge-hero.is-sticky .wsk-concierge-hero__callback {
	position: fixed !important;
	top: 0 !important;
	bottom: auto !important;
	left: 0 !important;
	right: 0 !important;
	z-index: 2147483646 !important;
	margin: 0 !important;
	border-radius: 0 !important;
	background: rgba(30, 28, 26, 0.92) !important;
	backdrop-filter: blur(24px) saturate(1.3);
	-webkit-backdrop-filter: blur(24px) saturate(1.3);
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2);
	animation: wsk-ch-stickyIn 0.35s ease both;
}

/* Mobile: glass strip becomes fixed at top */
@media (max-width: 767px) {
	.wsk-concierge-hero.is-sticky .wsk-concierge-hero__mobile-bar,
	section.wsk-concierge-hero.is-sticky .wsk-concierge-hero__mobile-bar {
		position: fixed !important;
		top: 0 !important;
		bottom: auto !important;
		left: 0 !important;
		right: 0 !important;
		z-index: 2147483646 !important;
		margin: 0 !important;
		border-radius: 0 !important;
		box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2);
		animation: wsk-ch-stickyIn 0.35s ease both;
	}
}

@keyframes wsk-ch-stickyIn {
	from { transform: translateY(-100%); opacity: 0; }
	to { transform: translateY(0); opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
	.wsk-concierge-hero.is-sticky .wsk-concierge-hero__booking,
	.wsk-concierge-hero.is-sticky .wsk-concierge-hero__callback,
	.wsk-concierge-hero.is-sticky .wsk-concierge-hero__mobile-bar {
		animation: none !important;
	}
}

/* ═══════════════════════════════════════════════════════════════
   TOUCH DEVICES
   ═══════════════════════════════════════════════════════════════ */
@media (hover: none) {
	.wsk-concierge-hero__cta:active {
		background: rgba(255, 255, 255, 0.15);
	}

	.wsk-concierge-hero__booking-btn:active,
	.wsk-concierge-hero__callback-btn:active {
		filter: brightness(0.95);
	}

	.wsk-concierge-hero__reception-btn:active {
		transform: scale(1.05);
	}
}

/* ═══════════════════════════════════════════════════════════════
   REDUCED MOTION
   ═══════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-concierge-hero__panel {
		transition: none !important;
	}

	.wsk-concierge-hero__content-panel {
		transition: none !important;
	}

	.wsk-concierge-hero__content-panel * {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
	}

	.wsk-concierge-hero__panel.is-active .wsk-concierge-hero__bg {
		animation: none !important;
	}

	.wsk-concierge-hero__reception-dialog {
		animation: none !important;
	}
}
/**
 * WEPRO: Editorial Showcase — Premium scroll-synchronized portfolio.
 * Mobile-first. All values via CSS custom properties (--wsk-es-*).
 *
 * Mobile: Immersive full-viewport panels with image backdrops + overlaid typography.
 * Desktop: andrearchitecture.com-style sticky left titles + scrolling right gallery.
 */

/* ═══ Avada ancestor override — sticky requires overflow:visible (desktop only) ═══ */
@media (min-width: 1025px) {
	.fusion-fullwidth:has(.wsk-editorial-showcase),
	.fusion-builder-row:has(.wsk-editorial-showcase),
	.fusion-layout-column:has(.wsk-editorial-showcase),
	.fusion-column-wrapper:has(.wsk-editorial-showcase),
	.fusion-column-inner-bg:has(.wsk-editorial-showcase) {
		overflow: visible !important;
	}
}

/* ═══════════════════════════════════════════════════════════
   BASE (Mobile-first: Immersive editorial scroll experience)
   ═══════════════════════════════════════════════════════════ */

.wsk-editorial-showcase {
	position: relative;
	background: var(--wsk-es-bg, transparent);
	width: 100%;
}

.wsk-editorial-showcase__inner {
	display: flex;
	flex-direction: column;
}

/* ─── Link reset ─── */

.wsk-editorial-showcase__link {
	display: block;
	text-decoration: none;
	color: inherit;
	border: none;
	outline: none;
}

.wsk-editorial-showcase__link:hover,
.wsk-editorial-showcase__link:focus {
	text-decoration: none;
	color: inherit;
	border: none;
}

/* ─── Nav panel (mobile: editorial intro page) ─── */

.wsk-editorial-showcase__nav {
	position: relative;
	min-height: 0;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 0;
}

.wsk-editorial-showcase__header {
	margin-bottom: 0;
}

.wsk-editorial-showcase .wsk-editorial-showcase__label {
	display: block;
	font-family: var(--wsk-es-heading-font-family, inherit);
	font-size: var(--wsk-es-heading-font-size, 0.75rem);
	font-weight: var(--wsk-es-heading-font-weight, 500);
	font-style: var(--wsk-es-heading-font-style, normal);
	letter-spacing: var(--wsk-es-heading-letter-spacing, 0.15em);
	text-transform: var(--wsk-es-heading-text-transform, uppercase);
	color: var(--wsk-es-heading-color, rgba(180,160,140,1));
	margin-bottom: 12px;
}

.wsk-editorial-showcase .wsk-editorial-showcase__section-title {
	font-size: clamp(2rem, 8vw, 3.5rem);
	font-weight: 300;
	color: var(--wsk-es-heading-color, rgba(0,0,0,0.45));
	line-height: 1.1;
	margin: 0;
	letter-spacing: -0.02em;
}

/* ─── Title list — hidden on mobile ─── */

.wsk-editorial-showcase__titles {
	display: none;
	list-style: none;
	padding: 0;
	margin: 0;
}

/* ─── Progress bar — hidden on mobile ─── */

.wsk-editorial-showcase__progress {
	display: none;
}

/* ─── Mobile counter (sticky, floating, refined) ─── */

.wsk-editorial-showcase__mobile-counter {
	position: sticky;
	top: 0;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 14px 0;
	font-family: var(--wsk-es-meta-font-family, inherit);
	font-size: 0.7rem;
	font-weight: 400;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(0,0,0,0.3);
	background: rgba(255,255,255,0.9);
	-webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
}

.wsk-editorial-showcase__mobile-counter-current {
	transition: opacity 0.2s ease;
	min-width: 1.2em;
	text-align: center;
}

.wsk-editorial-showcase__mobile-counter-current.is-changing {
	opacity: 0;
}

.wsk-editorial-showcase__mobile-counter-sep {
	margin: 0 0.25em;
	opacity: 0.5;
}

/* ─── Gallery (mobile: immersive viewport panels) ─── */

.wsk-editorial-showcase__gallery {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 0;
}

/* ─── Panel (mobile: full-viewport backdrop experience) ─── */

.wsk-editorial-showcase__panel {
	position: relative;
	min-height: 80vh;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	overflow: hidden;
}

/* ─── Link fills panel on mobile ─── */

.wsk-editorial-showcase__panel .wsk-editorial-showcase__link {
	position: absolute;
	inset: 0;
	z-index: 0;
}

/* ─── Figure (mobile: fills entire panel as backdrop) ─── */

.wsk-editorial-showcase__figure {
	position: absolute;
	inset: 0;
	margin: 0;
	overflow: hidden;
	border-radius: 0;
}

.wsk-editorial-showcase__figure::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 70%;
	background: linear-gradient(
		to top,
		rgba(0,0,0,0.6) 0%,
		rgba(0,0,0,0.2) 45%,
		transparent 100%
	);
	pointer-events: none;
	z-index: 1;
}

.wsk-editorial-showcase__img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	border-radius: 0;
}

/* ─── Meta (mobile: overlaid on image) ─── */

.wsk-editorial-showcase__meta {
	position: relative;
	z-index: 2;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0;
	padding: 0 clamp(1.25rem, 5vw, 2rem);
	margin-bottom: 0.4rem;
}

.wsk-editorial-showcase__meta-left {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0;
}

.wsk-editorial-showcase .wsk-editorial-showcase__meta-title {
	display: none;
}

.wsk-editorial-showcase .wsk-editorial-showcase__meta-term {
	font-family: var(--wsk-es-meta-font-family, inherit);
	font-size: var(--wsk-es-meta-font-size, 0.7rem);
	font-weight: var(--wsk-es-meta-font-weight, 400);
	font-style: var(--wsk-es-meta-font-style, normal);
	letter-spacing: var(--wsk-es-meta-letter-spacing, 0.12em);
	text-transform: var(--wsk-es-meta-text-transform, uppercase);
	color: rgba(255,255,255,0.55);
	line-height: 1;
}

/* ─── Mobile title (large editorial overlay on image) ─── */

.wsk-editorial-showcase__mobile-title {
	position: relative;
	z-index: 2;
	font-family: var(--wsk-es-item_title-font-family, inherit);
	font-size: clamp(1.8rem, 7vw, 3rem);
	font-weight: var(--wsk-es-item_title-font-weight, 300);
	line-height: var(--wsk-es-item_title-line-height, 1.1);
	color: #ffffff !important;
	margin: 0;
	padding: 0 clamp(1.25rem, 5vw, 2rem);
	padding-bottom: clamp(2.5rem, 6vh, 4rem);
	letter-spacing: -0.01em;
}

/* ─── Responsive: small screens (< 640px) ─── */

@media (max-width: 639px) {
	.wsk-editorial-showcase .wsk-editorial-showcase__label {
		font-size: var(--wsk-es-heading-font-size-sm, var(--wsk-es-heading-font-size, 0.7rem));
	}

	.wsk-editorial-showcase .wsk-editorial-showcase__meta-term {
		font-size: var(--wsk-es-meta-font-size-sm, var(--wsk-es-meta-font-size, 0.65rem));
	}
}

/* ─── Responsive: tablets (640 – 1024px) ─── */

@media (min-width: 640px) and (max-width: 1024px) {
	.wsk-editorial-showcase .wsk-editorial-showcase__label {
		font-size: var(--wsk-es-heading-font-size-md, var(--wsk-es-heading-font-size, 0.75rem));
	}

	.wsk-editorial-showcase__panel {
		min-height: 85vh;
	}

	.wsk-editorial-showcase__mobile-title {
		font-size: clamp(2.2rem, 5vw, 3.2rem);
	}
}

/* ═══════════════════════════════════════════════════════════════════
   DESKTOP (1025px+): andrearchitecture.com editorial sticky layout
   ═══════════════════════════════════════════════════════════════════ */

@media (min-width: 1025px) {

	.wsk-editorial-showcase__inner {
		flex-direction: row;
		align-items: flex-start;
		gap: 0;
		padding: 0;
	}

	/* ─── Hide mobile counter on desktop ─── */

	.wsk-editorial-showcase__mobile-counter {
		display: none;
	}

	/* ─── Left: Sticky nav panel — full-height, titles shift to stay centered ─── */

	.wsk-editorial-showcase__nav {
		position: sticky;
		top: 0;
		align-self: flex-start;
		flex: 0 0 var(--wsk-es-left-width, 45%);
		height: 100vh;
		min-height: auto;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		padding: 0 clamp(2.5rem, 4vw, 5rem);
		padding-right: clamp(3rem, 5vw, 6rem);
		margin-bottom: 0;
		box-sizing: border-box;
		overflow: hidden;
	}

	/* ─── Section header: small italic tagline + line — fades out on scroll ─── */

	.wsk-editorial-showcase__header {
		position: absolute;
		top: clamp(2.5rem, 5vh, 4rem);
		left: 0;
		right: 0;
		padding: 0 clamp(2.5rem, 4vw, 5rem);
		padding-bottom: clamp(1rem, 2vh, 1.5rem);
		padding-right: clamp(3rem, 5vw, 6rem);
		border-bottom: 1px solid rgba(0,0,0,0.08);
		z-index: 2;
		transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	}

	.wsk-editorial-showcase__header.is-faded {
		opacity: 0;
	}

	.wsk-editorial-showcase .wsk-editorial-showcase__label {
		font-size: var(--wsk-es-heading-font-size, 0.85rem);
		font-weight: 400;
		font-style: italic;
		letter-spacing: var(--wsk-es-heading-letter-spacing, 0.02em);
		text-transform: var(--wsk-es-heading-text-transform, none);
		color: var(--wsk-es-heading-color, rgba(0,0,0,0.35));
		margin-bottom: 0;
	}

	.wsk-editorial-showcase .wsk-editorial-showcase__section-title {
		display: none;
	}

	/* ─── Title list: massive editorial typography, pure opacity ─── */

	.wsk-editorial-showcase__titles {
		display: flex;
		flex-direction: column;
		gap: 0;
		margin: 0;
		padding-top: 35vh;
		padding-bottom: 35vh;
		transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
		will-change: transform;
	}

	.wsk-editorial-showcase__title-item {
		padding: clamp(0.35rem, 0.7vh, 0.55rem) 0;
		border: none;
		cursor: pointer;
		/* Opacity controlled by JS (distance-based gradient).
		   Slow ease-out creates the dissolving effect. */
		transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
		outline: none;
	}

	.wsk-editorial-showcase__title-item:first-child {
		border: none;
	}

	.wsk-editorial-showcase__title-item:focus-visible {
		outline: 2px solid var(--wsk-es-accent, rgba(180,160,140,1));
		outline-offset: 6px;
		border-radius: 2px;
	}

	.wsk-editorial-showcase__title-item.is-active .wsk-editorial-showcase__title-text {
		color: var(--wsk-es-active-color, var(--wsk-es-item_title-color, rgba(0,0,0,0.85)));
	}

	.wsk-editorial-showcase .wsk-editorial-showcase__title-text {
		font-family: var(--wsk-es-item_title-font-family, inherit);
		font-size: var(--wsk-es-item_title-font-size, clamp(3rem, 5vw, 5.5rem));
		font-weight: var(--wsk-es-item_title-font-weight, 300);
		font-style: var(--wsk-es-item_title-font-style, normal);
		line-height: var(--wsk-es-item_title-line-height, 1.1);
		letter-spacing: -0.02em;
		color: var(--wsk-es-item_title-color, rgba(0,0,0,0.85));
		text-align: var(--wsk-es-item_title-text-align, left) !important;
		margin: 0;
	}

	/* ─── Progress bar — thin vertical accent line, right edge ─── */

	.wsk-editorial-showcase__progress {
		display: block;
		position: absolute;
		right: 0;
		top: 20%;
		bottom: 20%;
		width: var(--wsk-es-progress-width, 1px);
		background: var(--wsk-es-progress-color, rgba(0,0,0,0.06));
	}

	.wsk-editorial-showcase__progress-fill {
		width: 100%;
		height: 0%;
		background: var(--wsk-es-progress-active, var(--wsk-es-accent, rgba(180,160,140,1)));
		transition: height 0.2s ease-out;
	}

	/* ─── Reset mobile immersive panel styles for desktop ─── */

	.wsk-editorial-showcase__panel {
		position: static;
		min-height: auto;
		justify-content: flex-start;
		overflow: visible;
		display: flex;
		flex-direction: column;
		gap: 0;
		/* Panel reveal: images slide up gently on enter */
		opacity: 0;
		transform: translateY(40px);
		transition: opacity 1s cubic-bezier(0.25, 0.46, 0.45, 0.94),
		            transform 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	}

	.wsk-editorial-showcase__panel.is-revealed {
		opacity: 1;
		transform: translateY(0);
	}

	/* ─── Link wraps figure only on desktop ─── */

	.wsk-editorial-showcase__panel .wsk-editorial-showcase__link {
		position: relative;
		inset: auto;
		z-index: auto;
		display: block;
		overflow: hidden;
	}

	.wsk-editorial-showcase__link:hover .wsk-editorial-showcase__img {
		transform: scale(1.015);
	}

	.wsk-editorial-showcase__figure {
		position: relative;
		inset: auto;
		border-radius: 0;
		overflow: hidden;
	}

	.wsk-editorial-showcase__figure::after {
		display: none;
	}

	.wsk-editorial-showcase__img {
		width: 100%;
		height: var(--wsk-es-image-height, clamp(500px, 75vh, 870px));
		max-height: 870px;
		object-fit: cover;
		border-radius: 0;
		aspect-ratio: auto;
		/* Slow, sensual scale + hover — images breathe */
		transition: transform 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	}

	/* ─── Right: Scrolling gallery ─── */

	.wsk-editorial-showcase__gallery {
		flex: 1 1 auto;
		padding: clamp(2rem, 3vh, 3rem) 0;
		padding-left: clamp(0.5rem, 1vw, 1rem);
		padding-right: clamp(1.5rem, 3vw, 4rem);
		padding-bottom: 50vh;
		gap: var(--wsk-es-gap, clamp(3rem, 5vh, 5rem));
	}

	/* ─── Meta: editorial inline — "Post Title  |  Category  |  Term" ─── */

	.wsk-editorial-showcase__meta {
		position: static;
		z-index: auto;
		display: flex;
		flex-wrap: nowrap;
		align-items: baseline;
		justify-content: space-between;
		gap: 0;
		padding: clamp(0.6rem, 1.2vh, 1rem) clamp(0.15rem, 0.3vw, 0.35rem);
		margin-bottom: 0;
	}

	.wsk-editorial-showcase__meta-left {
		display: flex;
		flex-wrap: wrap;
		align-items: baseline;
		gap: 0;
	}

	.wsk-editorial-showcase .wsk-editorial-showcase__meta-title {
		display: inline;
		font-family: var(--wsk-es-meta-font-family, inherit);
		font-size: var(--wsk-es-meta-font-size, 0.8rem);
		font-weight: 400;
		letter-spacing: 0.01em;
		text-transform: none;
		color: var(--wsk-es-meta-color, rgba(0,0,0,0.55));
	}

	/* Pipe after title, before terms */
	.wsk-editorial-showcase .wsk-editorial-showcase__meta-title + .wsk-editorial-showcase__meta-term::before {
		content: '\00a0\00a0\2502\00a0\00a0';
		opacity: 0.25;
	}

	.wsk-editorial-showcase .wsk-editorial-showcase__meta-term {
		color: var(--wsk-es-meta-color, rgba(0,0,0,0.4));
		font-size: var(--wsk-es-meta-font-size, 0.8rem);
		font-weight: 400;
		letter-spacing: var(--wsk-es-meta-letter-spacing, 0.01em);
		text-transform: var(--wsk-es-meta-text-transform, none);
	}

	/* Pipe between terms */
	.wsk-editorial-showcase .wsk-editorial-showcase__meta-term + .wsk-editorial-showcase__meta-term::before {
		content: '\00a0\00a0\2502\00a0\00a0';
		opacity: 0.25;
	}

	/* Hide mobile title on desktop */
	.wsk-editorial-showcase__mobile-title {
		display: none;
	}
}

/* ─── Desktop typography: very large screens ─── */

@media (min-width: 1600px) {
	.wsk-editorial-showcase .wsk-editorial-showcase__title-text {
		font-size: var(--wsk-es-item_title-font-size, 5.5rem);
	}
}

/* ═══════════════════════════════════════════════════════════════
   PROPERTY MODE: images left, titles + desc + button right
   Scoped to .wsk-editorial-showcase--property — zero impact on default.
   ═══════════════════════════════════════════════════════════════ */

/* ─── Desc + button: hidden in default mode (all breakpoints) ─── */

.wsk-editorial-showcase__desc,
.wsk-editorial-showcase__btn {
	display: none;
}

/* ─── Property mode: desktop ─── */

@media (min-width: 1025px) {

	/* Flip columns: image left, content right */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__inner {
		flex-direction: row-reverse;
	}

	/* ─── PROPERTY: Complete nav override ─── */

	.wsk-editorial-showcase--property .wsk-editorial-showcase__nav {
		flex: 0 0 var(--wsk-es-left-width, 50%);
		padding: 0 clamp(2.5rem, 4vw, 5rem);
		justify-content: flex-start;
		overflow: hidden;
		height: 100vh;
		position: sticky;
		top: 0;
		display: flex;
		flex-direction: column;
	}

	/* Header: normal flow, always visible, no border, no fade */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__header {
		flex-shrink: 0;
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		padding: 0;
		padding-top: clamp(8rem, 18vh, 14rem);
		border-bottom: none;
		margin-bottom: clamp(1.5rem, 3vh, 2.5rem);
		opacity: 1 !important;
	}

	/* Titles container: fills remaining space, clips overflow */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__titles {
		flex: 1 1 auto;
		overflow: hidden;
		padding-top: 0;
		padding-bottom: 0;
	}

	.wsk-editorial-showcase--property .wsk-editorial-showcase__header.is-faded {
		opacity: 1 !important;
	}

	/* Label: clean uppercase like reference "UAE PROPERTY" */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__label {
		font-style: normal !important;
		text-transform: uppercase !important;
		letter-spacing: 0.15em !important;
		font-weight: 600 !important;
		font-size: 0.7rem !important;
		color: var(--wsk-es-accent, rgba(55, 80, 100, 1)) !important;
		margin-bottom: clamp(0.75rem, 1.5vh, 1.25rem) !important;
	}

	/* Section title: hidden in property mode (label is enough) */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__section-title {
		display: none !important;
	}

	/* Title items: more breathing room */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__title-item {
		padding: clamp(0.5rem, 1vh, 0.8rem) 0;
	}

	/* Titles: moderate serif size — reference scale */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__title-text {
		font-size: var(--wsk-es-item_title-font-size, clamp(1.8rem, 3vw, 2.8rem)) !important;
		font-weight: var(--wsk-es-item_title-font-weight, 300) !important;
		letter-spacing: 0 !important;
	}

	/* Active title: bold to stand out from faded titles */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__title-item.is-active .wsk-editorial-showcase__title-text {
		font-weight: 600 !important;
	}

	/* Progress bar: flip to LEFT edge */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__progress {
		right: auto;
		left: 0;
	}

	/* Gallery (now LEFT): balanced images, no meta */
	.wsk-editorial-showcase--property .wsk-editorial-showcase__gallery {
		flex: 0 0 50%;
		padding-left: clamp(1.5rem, 3vw, 4rem);
		padding-right: clamp(1rem, 2vw, 2rem);
	}

	.wsk-editorial-showcase--property .wsk-editorial-showcase__img {
		height: var(--wsk-es-image-height, clamp(350px, 55vh, 600px));
		max-height: 600px;
	}

	.wsk-editorial-showcase--property .wsk-editorial-showcase__meta {
		display: none;
	}

	/* ─── Description: slides open for active item only ─── */

	.wsk-editorial-showcase--property .wsk-editorial-showcase__desc {
		display: block;
		max-height: 0;
		overflow: hidden;
		opacity: 0;
		font-family: var(--wsk-es-desc-font-family, inherit);
		font-size: var(--wsk-es-desc-font-size, clamp(0.9rem, 1.3vw, 1rem));
		font-weight: var(--wsk-es-desc-font-weight, 400);
		font-style: var(--wsk-es-desc-font-style, normal);
		line-height: var(--wsk-es-desc-line-height, 1.65);
		color: var(--wsk-es-desc-color, rgba(0,0,0,0.4));
		margin: 0;
		padding: 0;
		transition: max-height 0.8s cubic-bezier(0.16, 1, 0.3, 1),
		            opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1);
	}

	.wsk-editorial-showcase--property .wsk-editorial-showcase__desc.is-active {
		max-height: 250px;
		opacity: 1;
		padding-top: clamp(0.5rem, 1vh, 0.75rem);
		padding-bottom: clamp(0.25rem, 0.5vh, 0.5rem);
	}

	/* ─── Button: appears for active item — underlined, uppercase ─── */

	.wsk-editorial-showcase--property .wsk-editorial-showcase__btn {
		display: block;
		max-height: 0;
		overflow: hidden;
		opacity: 0;
		font-family: var(--wsk-es-button-font-family, inherit);
		font-size: var(--wsk-es-button-font-size, 0.8rem);
		font-weight: var(--wsk-es-button-font-weight, 500);
		color: var(--wsk-es-button-color, rgba(0,0,0,0.85));
		text-decoration: underline;
		text-underline-offset: 5px;
		text-decoration-thickness: 1px;
		transition: max-height 0.8s cubic-bezier(0.16, 1, 0.3, 1),
		            opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1) 0.1s;
	}

	.wsk-editorial-showcase--property .wsk-editorial-showcase__btn:hover {
		opacity: 0.5;
	}

	.wsk-editorial-showcase--property .wsk-editorial-showcase__btn.is-active {
		max-height: 60px;
		opacity: 1;
		padding-top: clamp(0.6rem, 1.2vh, 1rem);
	}
}

/* ─── Property mode: large screens ─── */

@media (min-width: 1600px) {
	.wsk-editorial-showcase--property .wsk-editorial-showcase__title-text {
		font-size: var(--wsk-es-item_title-font-size, 2.8rem) !important;
	}
}

/* ═══ REDUCED MOTION ═══ */

@media (prefers-reduced-motion: reduce) {
	.wsk-editorial-showcase__title-item {
		transition: none !important;
	}

	.wsk-editorial-showcase__progress-fill {
		transition: none !important;
	}

	.wsk-editorial-showcase__mobile-counter-current {
		transition: none !important;
	}

	.wsk-editorial-showcase__img {
		transition: none !important;
	}

	.wsk-editorial-showcase__header {
		transition: none !important;
	}

	.wsk-editorial-showcase__panel {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	.wsk-editorial-showcase__titles {
		transition: none !important;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-editorial-showcase a:focus-visible,
.wsk-editorial-showcase button:focus-visible,
.wsk-editorial-showcase [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/**
 * WEPRO: Cinematic Showcase — Luxury immersive image/video blocks.
 * Mobile-first. All values via CSS custom properties (--wsk-cf-*).
 *
 * Every detail is intentional: the overlay breathes with a gradient,
 * the button line dissolves on hover, panels have vignette depth,
 * transitions are long and cushioned. Nothing snaps. Everything flows.
 */

/* ═══════════════════════════════════════════════
   BASE (Mobile-first: stacked immersive panels)
   ═══════════════════════════════════════════════ */

.wsk-cinematic-showcase {
	position: relative;
	background: var(--wsk-cf-bg, #000);
	width: 100%;
}

/* ─── Row layout ─── */

.wsk-cinematic-showcase__row {
	display: flex;
	flex-direction: column;
}

.wsk-cinematic-showcase__row + .wsk-cinematic-showcase__row {
	margin-top: var(--wsk-cf-gap, 4px);
}

/* ─── Item: immersive panel ─── */

.wsk-cinematic-showcase__item {
	position: relative;
	min-height: var(--wsk-cf-min-height, 85vh);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	cursor: default;
}

/* ─── Media layer ─── */

.wsk-cinematic-showcase__media {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.wsk-cinematic-showcase__img,
.wsk-cinematic-showcase__video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	will-change: transform;
	/* Images start slightly zoomed — JS scales down to 1.0 as you scroll,
	   creating the feeling the image is settling into place. */
	transform: scale(1.08);
}

/* ─── Overlay: gradient vignette — not flat, has depth ─── */

.wsk-cinematic-showcase__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		/* Radial vignette — darkens edges, lighter center */
		radial-gradient(
			ellipse at center,
			transparent 30%,
			rgba(0, 0, 0, calc(var(--wsk-cf-overlay, 0.3) * 0.6)) 100%
		),
		/* Base flat overlay */
		linear-gradient(
			to bottom,
			rgba(0, 0, 0, calc(var(--wsk-cf-overlay, 0.3) * 0.4)) 0%,
			rgba(0, 0, 0, var(--wsk-cf-overlay, 0.3)) 50%,
			rgba(0, 0, 0, calc(var(--wsk-cf-overlay, 0.3) * 0.7)) 100%
		);
}

/* ─── Content layer (title — centered) ─── */

.wsk-cinematic-showcase__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: clamp(2rem, 5vw, 4rem);
	width: 100%;
	will-change: transform, opacity;
	/* Entrance */
	opacity: 0;
	transform: translateY(35px) scale(0.97);
	transition: opacity 1.4s cubic-bezier(0.16, 1, 0.3, 1),
	            transform 1.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.wsk-cinematic-showcase__item.is-visible .wsk-cinematic-showcase__content {
	opacity: 1;
	transform: translateY(0) scale(1);
}

/* ─── Title ─── */

.wsk-cinematic-showcase .wsk-cinematic-showcase__title {
	font-family: var(--wsk-cf-title-font-family, inherit);
	font-size: var(--wsk-cf-title-font-size, clamp(2.5rem, 7vw, 5rem));
	font-weight: var(--wsk-cf-title-font-weight, 300);
	font-style: var(--wsk-cf-title-font-style, normal);
	line-height: var(--wsk-cf-title-line-height, 1.12);
	letter-spacing: var(--wsk-cf-title-letter-spacing, 0.01em);
	text-transform: var(--wsk-cf-title-text-transform, none);
	color: var(--wsk-cf-title-color, #ffffff) !important;
	text-align: center !important;
	text-shadow: 0 2px 40px rgba(0, 0, 0, 0.15);
	margin: 0;
}

/* ─── Button ─── */

.wsk-cinematic-showcase .wsk-cinematic-showcase__button,
.wsk-cinematic-showcase .wsk-cinematic-showcase__button:link,
.wsk-cinematic-showcase .wsk-cinematic-showcase__button:visited {
	position: relative;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 0;
	font-family: var(--wsk-cf-button-font-family, inherit);
	color: var(--wsk-cf-button-color, #ffffff) !important;
	font-size: var(--wsk-cf-button-font-size, 0.68rem);
	font-weight: var(--wsk-cf-button-font-weight, 500);
	font-style: var(--wsk-cf-button-font-style, normal);
	letter-spacing: var(--wsk-cf-button-letter-spacing, 0.25em);
	text-transform: var(--wsk-cf-button-text-transform, uppercase);
	line-height: 1;
	padding: 14px 0;
	margin-top: 1.5rem;
	text-decoration: none !important;
	border: none !important;
	border-bottom: none !important;
	box-shadow: none !important;
	background: none !important;
	background-image: none !important;
	cursor: pointer;
	white-space: nowrap;
	/* Entrance — delayed after title */
	opacity: 0;
	transform: translateY(12px);
}

.wsk-cinematic-showcase__item.is-visible .wsk-cinematic-showcase__button {
	opacity: 1;
	transform: translateY(0);
	transition: opacity 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.5s,
	            transform 1.2s cubic-bezier(0.16, 1, 0.3, 1) 0.5s;
}

/* Animated underline: visible by default, dissolves on hover from right,
   re-draws from left on mouse leave. Pure CSS, no JS needed. */

/* Single underline — dissolves on hover, redraws on leave */
.wsk-cinematic-showcase__button::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	right: 0;
	height: 1px;
	background: var(--wsk-cf-btn-line, rgba(255, 255, 255, 0.7));
	transform-origin: left center;
	transform: scaleX(1);
	transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}

.wsk-cinematic-showcase__button:hover::after {
	transform: scaleX(0);
	transform-origin: right center;
}

.wsk-cinematic-showcase__button:not(:hover)::after {
	transform-origin: left center;
}

.wsk-cinematic-showcase .wsk-cinematic-showcase__button:hover,
.wsk-cinematic-showcase .wsk-cinematic-showcase__button:active {
	color: var(--wsk-cf-button-color, #ffffff) !important;
	opacity: 0.6;
	text-decoration: none !important;
	border: none !important;
	border-bottom: none !important;
	box-shadow: none !important;
	background-image: none !important;
}

.wsk-cinematic-showcase .wsk-cinematic-showcase__button:focus {
	color: var(--wsk-cf-button-color, #ffffff) !important;
	text-decoration: none !important;
	border: none !important;
	border-bottom: none !important;
	box-shadow: none !important;
	background-image: none !important;
}

.wsk-cinematic-showcase__button:focus-visible {
	outline: 1px solid rgba(255, 255, 255, 0.35);
	outline-offset: 8px;
}

/* ─── Responsive: small ─── */

@media (max-width: 639px) {
	.wsk-cinematic-showcase .wsk-cinematic-showcase__title {
		font-size: var(--wsk-cf-title-font-size-sm, var(--wsk-cf-title-font-size, clamp(2rem, 10vw, 3.5rem)));
	}
}

/* ─── Responsive: tablet ─── */

@media (min-width: 640px) and (max-width: 1024px) {
	.wsk-cinematic-showcase .wsk-cinematic-showcase__title {
		font-size: var(--wsk-cf-title-font-size-md, var(--wsk-cf-title-font-size, clamp(2.5rem, 6vw, 4rem)));
	}
}

/* ═══════════════════════════════════════════════════════
   DESKTOP (1025px+): Split rows, parallax, button moves
   ═══════════════════════════════════════════════════════ */

@media (min-width: 1025px) {

	.wsk-cinematic-showcase__item {
		min-height: var(--wsk-cf-min-height, 100vh);
	}

	/* Split rows: two items side by side */
	.wsk-cinematic-showcase__row--split {
		flex-direction: row;
	}

	.wsk-cinematic-showcase__row--split > .wsk-cinematic-showcase__item {
		flex: 1 1 50%;
	}

	.wsk-cinematic-showcase__row--split > .wsk-cinematic-showcase__item + .wsk-cinematic-showcase__item {
		margin-left: var(--wsk-cf-gap, 4px);
	}

	/* Large screen title */
	.wsk-cinematic-showcase .wsk-cinematic-showcase__title {
		font-size: var(--wsk-cf-title-font-size, clamp(3rem, 5.5vw, 6rem));
	}

	/* ─── Button: bottom-left anchor on desktop ─── */

	.wsk-cinematic-showcase .wsk-cinematic-showcase__button,
	.wsk-cinematic-showcase .wsk-cinematic-showcase__button:link,
	.wsk-cinematic-showcase .wsk-cinematic-showcase__button:visited {
		position: absolute;
		bottom: clamp(2rem, 4vh, 3.5rem);
		left: clamp(2rem, 3vw, 3.5rem);
		margin-top: 0;
	}
}

@media (min-width: 1600px) {
	.wsk-cinematic-showcase .wsk-cinematic-showcase__title {
		font-size: var(--wsk-cf-title-font-size, 6.5rem);
	}
}

/* ═══ REDUCED MOTION ═══ */

@media (prefers-reduced-motion: reduce) {
	.wsk-cinematic-showcase__content {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	.wsk-cinematic-showcase__button {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	.wsk-cinematic-showcase__button::after {
		transition: none !important;
	}

	.wsk-cinematic-showcase__img,
	.wsk-cinematic-showcase__video {
		will-change: auto !important;
		transform: none !important;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-cinematic-showcase a:focus-visible,
.wsk-cinematic-showcase button:focus-visible,
.wsk-cinematic-showcase [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/* ─── WEPRO: Section Header ─── */
/* Premium section label + serif heading + pill CTA */
/* Alignment inherited from Avada column text-align — no custom param needed */

/* Antialiasing */
[class*="wsk-sh2"],
[class*="wsk-pill-cta"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ── Stacked layout (default): block flow so text-align inherits naturally ── */

.wsk-sh2 {
	text-align: var(--wsk-sh2-heading-text-align, inherit);
	padding: 0;
	margin: 0;
}

.wsk-sh2__left {
	/* Block flow — badge and heading inherit text-align from Avada column */
}

.wsk-sh2__left > * + * {
	margin-top: 16px;
}

.wsk-sh2__right {
	margin-top: 16px;
}

/* ── Inline layout: heading left, CTA right ── */

.wsk-sh2--inline {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	justify-content: space-between;
	gap: 32px;
}

.wsk-sh2--inline .wsk-sh2__right {
	margin-top: 0;
	flex-shrink: 0;
}

/* ── Badge Pill ── */

.wsk-sh2__badge {
	display: inline-flex;
	align-items: center;
	padding: 6px 16px;
	background: var(--wsk-sh2-badge-bg, var(--wdt-color-text, #254336));
	color: var(--wsk-sh2-badge-clr, var(--wdt-color-surface, #FFFCF5));
	font-family: "Inter", "Inter Display", sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.3px;
	line-height: 1;
	border-radius: var(--wdt-radius-pill, 100px);
	white-space: nowrap;
}

/* ── Heading ── */

.wsk-sh2__heading,
.fusion-body .wsk-sh2__heading {
	font-family: var(--wsk-sh2-heading-font-family, "Lora", serif) !important;
	font-size: var(--wsk-sh2-heading-font-size, clamp(2.5rem, 5vw, 4.5rem)) !important;
	font-weight: var(--wsk-sh2-heading-font-weight, 400) !important;
	font-style: var(--wsk-sh2-heading-font-style, normal) !important;
	line-height: var(--wsk-sh2-heading-line-height, 1.1) !important;
	letter-spacing: var(--wsk-sh2-heading-letter-spacing, -1px) !important;
	color: var(--wsk-sh2-heading-color, var(--wdt-color-text, #254336)) !important;
	text-align: inherit !important;
	margin: 0 !important;
	padding: 0 !important;
	text-transform: none !important;
}

.wsk-sh2__heading em {
	font-style: italic;
	font-weight: inherit;
}

/* ── Pill CTA (shared class — reused by standalone element) ── */

.wsk-pill-cta,
.fusion-body .wsk-pill-cta,
.fusion-body a.wsk-pill-cta {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	text-decoration: none !important;
	transition: border-color 0.3s ease, background 0.3s ease !important;
	flex-shrink: 0;
	border: 1px solid var(--wdt-color-border, #DAD3BE) !important;
	background: transparent !important;
	box-shadow: none !important;
	padding: 5px 18px 5px 5px !important;
	border-radius: 100px !important;
}

.wsk-pill-cta:hover {
	border-color: var(--wdt-color-text, #254336) !important;
}

/* One unified pill — arrow inside on the left, text on the right */
.wsk-pill-cta__arrow,
.fusion-body .wsk-pill-cta__arrow {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 32px !important;
	height: 32px !important;
	border-radius: 50% !important;
	background: var(--wdt-color-surface, #FFFCF5) !important;
	border: 1px solid var(--wdt-color-border, #DAD3BE) !important;
	color: var(--wdt-color-text, #254336) !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 0 !important;
	flex-shrink: 0 !important;
}

.wsk-pill-cta__text,
.fusion-body .wsk-pill-cta__text {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
	font-family: "Inter", sans-serif !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	color: var(--wdt-color-text, #254336) !important;
	white-space: nowrap !important;
	line-height: 1 !important;
	text-transform: none !important;
	text-decoration: none !important;
	background: transparent !important;
	box-sizing: border-box !important;
}

.wsk-pill-cta:hover .wsk-pill-cta__arrow {
	background: var(--wdt-color-surface-alt, #F5F0E8) !important;
	border-color: var(--wdt-color-border, #DAD3BE) !important;
}

.wsk-pill-cta__arrow svg {
	width: 16px;
	height: 12px;
}

/* ── Scroll Reveal ── */

.wsk-sh2[data-wsk-reveal] {
	opacity: 0;
	transform: translateY(30px);
}

.wsk-sh2.wsk-sh2--visible {
	opacity: 1;
	transform: translateY(0);
	transition: opacity 0.7s ease, transform 0.7s ease;
}

/* ── Responsive ── */

@media (max-width: 1024px) {
	.wsk-sh2 {
		text-align: var(--wsk-sh2-heading-text-align-md, var(--wsk-sh2-heading-text-align, inherit));
	}
}

@media (max-width: 768px) {
	.wsk-sh2 {
		text-align: var(--wsk-sh2-heading-text-align-sm, var(--wsk-sh2-heading-text-align, inherit));
	}

	.wsk-sh2--inline {
		flex-direction: column;
		align-items: inherit;
	}

	.wsk-sh2--inline .wsk-sh2__right {
		margin-top: 16px;
	}

	.wsk-sh2__heading,
	.fusion-body .wsk-sh2__heading {
		font-size: var(--wsk-sh2-heading-font-size-sm, clamp(2rem, 8vw, 3rem)) !important;
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables non-essential transitions/animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-sh2,
	.wsk-sh2 *,
	.wsk-sh2 *::before,
	.wsk-sh2 *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-sh2 a:focus-visible,
.wsk-sh2 button:focus-visible,
.wsk-sh2 [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/* ── WEPRO: Luxury Hero ── */

/* Antialiasing */
[class*="wsk-lh"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.wsk-lh {
	position: relative;
	display: flex;
	align-items: var(--wsk-lh-valign, center);
	justify-content: center;
	min-height: var(--wsk-lh-min-h, 100vh);
	overflow: hidden;
	isolation: isolate;
	background: var(--wsk-lh-fallback-bg, #1a2a23);
}

.wsk-lh__bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	will-change: transform;
}

.wsk-lh__overlay {
	position: absolute;
	inset: 0;
	background: var(--wsk-lh-overlay, rgba(0,34,40,0.4));
}

.wsk-lh__content {
	position: relative;
	z-index: 2;
	text-align: var(--wsk-lh-align, center);
	max-width: 900px;
	padding: 48px 24px;
}

.wsk-lh .wsk-lh__heading,
.fusion-body .wsk-lh .wsk-lh__heading {
	font-family: var(--wsk-lh-heading-font-family, "Lora", serif) !important;
	font-size: var(--wsk-lh-heading-font-size, clamp(3rem, 7vw, 6.5rem)) !important;
	font-weight: var(--wsk-lh-heading-font-weight, 400) !important;
	line-height: var(--wsk-lh-heading-line-height, 1.05) !important;
	letter-spacing: var(--wsk-lh-heading-letter-spacing, -2px) !important;
	color: var(--wsk-lh-heading-color, #fff) !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	text-shadow: 0 2px 40px rgba(0,0,0,0.15);
	text-transform: none !important;
}

.wsk-lh__heading em {
	font-style: italic;
	display: block;
}

.wsk-lh .wsk-lh__subtitle,
.fusion-body .wsk-lh .wsk-lh__subtitle {
	font-family: var(--wsk-lh-subtitle-font-family, "Lora", serif) !important;
	font-size: var(--wsk-lh-subtitle-font-size, clamp(1rem, 2vw, 1.3rem)) !important;
	font-style: var(--wsk-lh-subtitle-font-style, italic) !important;
	color: var(--wsk-lh-subtitle-color, rgba(255,255,255,0.85)) !important;
	line-height: var(--wsk-lh-subtitle-line-height, 1.5) !important;
	margin: 0 0 40px !important;
	max-width: 600px;
	margin-left: auto !important;
	margin-right: auto !important;
	text-shadow: 0 1px 20px rgba(0,0,0,0.1);
	text-transform: none !important;
}

/* Hero light CTA — frosted glass pill on the hero image.
   Translucent white fill + backdrop-blur + subtle inner highlight. */
.wsk-lh .wsk-pill-cta--light,
.wsk-lh a.wsk-pill-cta--light,
.fusion-body .wsk-lh .wsk-pill-cta--light,
.fusion-body .wsk-lh a.wsk-pill-cta--light {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	border: 1px solid rgba(255, 255, 255, 0.28) !important;
	background: rgba(255, 255, 255, 0.12) !important;
	-webkit-backdrop-filter: blur(14px) saturate(1.2) !important;
	backdrop-filter: blur(14px) saturate(1.2) !important;
	padding: 5px 18px 5px 5px !important;
	border-radius: 100px !important;
	text-decoration: none !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.35),
		0 2px 12px rgba(0, 0, 0, 0.12) !important;
	transition:
		background 0.35s ease,
		border-color 0.35s ease !important;
}

.wsk-lh .wsk-pill-cta--light .wsk-pill-cta__text {
	color: #fdfaf4 !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	font-size: 0.78rem !important;
	letter-spacing: 0.02em !important;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
}

.wsk-lh .wsk-pill-cta--light .wsk-pill-cta__arrow {
	width: 32px !important;
	height: 32px !important;
	background: rgba(255, 255, 255, 0.10) !important;
	border: 1px solid rgba(255, 255, 255, 0.25) !important;
	-webkit-backdrop-filter: blur(8px) saturate(1.2) !important;
	backdrop-filter: blur(8px) saturate(1.2) !important;
	border-radius: 50% !important;
	color: #fdfaf4 !important;
	margin: 0 !important;
	padding: 0 !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.30) !important;
}

.wsk-lh .wsk-pill-cta--light:hover {
	background: rgba(255, 255, 255, 0.20) !important;
	border-color: rgba(255, 255, 255, 0.45) !important;
}

/* ── Responsive ── */

@media (max-width: 768px) {
	.wsk-lh__heading {
		font-size: var(--wsk-lh-heading-font-size-sm, clamp(2.2rem, 10vw, 3.5rem));
	}
	.wsk-lh__content {
		padding: 32px 20px;
	}
}

/* ═══════════════════════════════════════════════════════════════
   Scroll-down indicator — animated circular arrow.
   Outer hairline ring static; inner ring draws a rotating stroke-dash
   arc; arrow bobs gently. Hover: arrow speeds up, ring brightens.
   ═══════════════════════════════════════════════════════════════ */
.wsk-lh__scroll {
	position: absolute;
	left: 50%;
	bottom: clamp(32px, 4vh, 56px);
	transform: translateX(-50%);
	width: 72px;
	height: 72px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: none;
	padding: 0;
	cursor: pointer;
	color: #f4efe6;
	z-index: 5;
	outline: none;
	isolation: isolate;
}

.wsk-lh__scroll-ring {
	position: absolute;
	inset: 0;
	display: block;
	pointer-events: none;
}

.wsk-lh__scroll-ring svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

/* Animated inner ring — two opposing arcs, rotating together.
   Transform origin MUST be the SVG center (50% 50%) not the group's
   bounding box, otherwise the arcs wobble. */
.wsk-lh__scroll-ring-progress {
	transform-origin: 50% 50%;
	transform-box: fill-box;
	animation: wsk-lh-ring-spin 7s linear infinite;
	opacity: 0.7;
}

.wsk-lh__scroll:hover .wsk-lh__scroll-ring-progress {
	animation-duration: 3s;
	opacity: 1;
}

@keyframes wsk-lh-ring-spin {
	from { transform: rotate(0deg); }
	to   { transform: rotate(360deg); }
}

/* Arrow — soft double-chevron, thin hairline strokes.
   Sits on top of the rings, gentle downward bob. */
.wsk-lh__scroll-arrow {
	position: relative;
	z-index: 2;
	display: inline-flex;
	width: 26px;
	height: 26px;
	animation: wsk-lh-arrow-bob 2.6s cubic-bezier(0.4, 0, 0.2, 1) infinite;
}

.wsk-lh__scroll-arrow svg {
	width: 100%;
	height: 100%;
	stroke: currentColor;
}

@keyframes wsk-lh-arrow-bob {
	0%, 100% { transform: translateY(0);    opacity: 0.7; }
	50%      { transform: translateY(4px);  opacity: 1; }
}

.wsk-lh__scroll:hover .wsk-lh__scroll-arrow {
	animation-duration: 1.2s;
}

@media (prefers-reduced-motion: reduce) {
	.wsk-lh__scroll-ring-progress,
	.wsk-lh__scroll-arrow {
		animation: none;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-lh a:focus-visible,
.wsk-lh button:focus-visible,
.wsk-lh [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/* ─── WEPRO: Service Cards ─── */
/* 3x2 image card grid with title overlay, + icon, hover-reveal description */

/* Antialiasing */
[class*="wsk-sc"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ── Section wrapper ── */

.wsk-sc {
	margin: 0;
	padding: 0;
}

/* ── Section Header (inline badge + heading + CTA) ── */

.wsk-sc__header {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	justify-content: space-between;
	gap: 32px;
	margin-bottom: 40px;
}

.wsk-sc__header-left {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.wsk-sc__heading,
.fusion-body .wsk-sc__heading {
	font-family: var(--wsk-sc-heading-font-family, "Lora", serif) !important;
	font-size: var(--wsk-sc-heading-font-size, clamp(2.5rem, 5vw, 4.5rem)) !important;
	font-weight: var(--wsk-sc-heading-font-weight, 400) !important;
	font-style: var(--wsk-sc-heading-font-style, normal) !important;
	line-height: var(--wsk-sc-heading-line-height, 1.1) !important;
	letter-spacing: var(--wsk-sc-heading-letter-spacing, -1px) !important;
	color: var(--wsk-sc-heading-color, var(--wdt-color-text, #254336)) !important;
	margin: 0 !important;
	padding: 0 !important;
	text-transform: none !important;
}

.wsk-sc__heading em {
	font-style: italic;
	font-weight: inherit;
}

/* ── Card Grid ── */

.wsk-sc__grid {
	display: grid;
	grid-template-columns: repeat(var(--wsk-sc-columns, 3), 1fr);
	gap: var(--wsk-sc-gap, 20px);
}

/* ── Individual Card ── */

.wsk-sc__card {
	position: relative;
	overflow: hidden;
	border-radius: var(--wsk-sc-radius, 15px);
	height: 800px;
	cursor: pointer;
	display: block;
	text-decoration: none;
	color: #fff;
	transition: box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

a.wsk-sc__card:hover {
	text-decoration: none;
	color: #fff;
	box-shadow: 0 20px 60px rgba(0,0,0,0.08);
}

/* ── Plus Icon ── */

.wsk-sc__plus {
	position: absolute;
	top: 16px;
	left: 16px;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.5);
	font-size: 24px;
	font-weight: 300;
	font-family: "Inter", sans-serif;
	line-height: 1;
	z-index: 2;
	transition: color 0.6s ease, transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.wsk-sc__card:hover .wsk-sc__plus {
	color: rgba(255, 255, 255, 0.9);
	transform: rotate(45deg);
}

/* ── Background Image ── */

.wsk-sc__image {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	transition: transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 0;
}

.wsk-sc__image--placeholder {
	background: linear-gradient(135deg, #3a3a3a 0%, #1a1a1a 100%);
}

.wsk-sc__card:hover .wsk-sc__image {
	transform: scale(1.03);
}

/* ── Bottom Gradient Overlay ── */

.wsk-sc__overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0.05) 45%, transparent 65%);
	z-index: 1;
	pointer-events: none;
	transition: background 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.wsk-sc__card:hover .wsk-sc__overlay {
	background: linear-gradient(to top, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.1) 50%, transparent 65%);
}

/* ── Info Block (bottom) ── */

.wsk-sc__info {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 24px;
	z-index: 2;
	color: #fff;
}

/* ── Title ── */

.wsk-sc__title,
.fusion-body .wsk-sc__title {
	font-family: "Lora", serif !important;
	font-size: clamp(1.2rem, 2vw, 1.5rem) !important;
	font-weight: 400 !important;
	line-height: 1.2 !important;
	letter-spacing: normal !important;
	color: #fff !important;
	margin: 0 0 4px 0 !important;
	padding: 0 !important;
	text-transform: none !important;
	transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
	text-shadow: 0 1px 6px rgba(0,0,0,0.2);
}

.wsk-sc__card:hover .wsk-sc__title {
	transform: translateY(-2px);
}

/* ── Description (hover reveal) ── */

.wsk-sc__desc {
	font-family: "Inter", "Inter Display", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.8);
	margin: 0;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	transition: max-height 0.6s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.5s ease 0.1s;
}

.wsk-sc__card:hover .wsk-sc__desc {
	max-height: 80px;
	opacity: 1;
}

/* ── Scroll Reveal — additive animation only ── */

.wsk-sc__card--animate {
	animation: wskScReveal 0.6s cubic-bezier(0.4, 0, 0.2, 1) both;
}

@keyframes wskScReveal {
	from { opacity: 0; transform: translateY(20px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* ── Responsive: Tablet (2 columns) ── */

@media (max-width: 1024px) {
	.wsk-sc__grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.wsk-sc__header {
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
	}

	.wsk-sc__heading,
	.fusion-body .wsk-sc__heading {
		font-size: var(--wsk-sc-heading-font-size-md, clamp(2rem, 6vw, 3.5rem)) !important;
	}
}

/* ── Responsive: Mobile (1 column, tap to expand) ── */

@media (max-width: 640px) {
	.wsk-sc__grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.wsk-sc__card {
		width: 100%;
		height: auto;
		aspect-ratio: 3 / 4;
	}

	.wsk-sc__heading,
	.fusion-body .wsk-sc__heading {
		font-size: var(--wsk-sc-heading-font-size-sm, clamp(1.8rem, 8vw, 2.5rem)) !important;
	}

	.wsk-sc__card {
		height: auto;
		aspect-ratio: 3 / 4;
	}

	.wsk-sc__info {
		padding: 20px;
	}

	.wsk-sc__plus {
		top: 12px;
		left: 12px;
	}

	/* Description hidden by default — tap to show */
	.wsk-sc__desc {
		max-height: 0;
		opacity: 0;
	}

	/* Tap-expanded state */
	.wsk-sc__card--expanded .wsk-sc__desc {
		max-height: 100px;
		opacity: 1;
	}

	.wsk-sc__card--expanded .wsk-sc__plus {
		transform: rotate(45deg);
		color: rgba(255, 255, 255, 1);
	}

	.wsk-sc__card--expanded .wsk-sc__title {
		transform: translateY(-2px);
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables non-essential transitions/animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-sc,
	.wsk-sc *,
	.wsk-sc *::before,
	.wsk-sc *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-sc a:focus-visible,
.wsk-sc button:focus-visible,
.wsk-sc [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/* ─── WEPRO: Numbered Approach ─── */
/* Two-column: heading+CTA left (40%), numbered items right (60%) */

[class*="wsk-na"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.wsk-na {
	display: grid;
	grid-template-columns: 2fr 3fr;
	gap: clamp(40px, 6vw, 80px);
	margin: 0;
	align-items: start;
	padding: 0;
}

/* ── Left Column ── */

.wsk-na__left {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
	position: sticky;
	top: 120px;
}

.wsk-na__heading,
.fusion-body .wsk-na__heading {
	font-family: var(--wsk-na-heading-font-family, "Lora", serif) !important;
	font-size: var(--wsk-na-heading-font-size, clamp(2.8rem, 5vw, 4.5rem)) !important;
	font-weight: var(--wsk-na-heading-font-weight, 400) !important;
	line-height: var(--wsk-na-heading-line-height, 1.1) !important;
	letter-spacing: var(--wsk-na-heading-letter-spacing, -1px) !important;
	color: var(--wsk-na-heading-color, var(--wdt-color-text, #254336)) !important;
	margin: 0 !important;
	padding: 0 !important;
	text-transform: none !important;
}

/* ── Right Column ── */

.wsk-na__right {
	display: flex;
	flex-direction: column;
	gap: 0;
}

/* ── Item ── */

.wsk-na__item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 40px 0;
	border-bottom: 1px solid var(--wsk-na-divider, rgba(0, 0, 0, 0.06));
	position: relative;
}

.wsk-na__item:first-child {
	padding-top: 0;
}

.wsk-na__item:last-child {
	border-bottom: none;
}

/* ── Number ── */

.wsk-na__circle {
	font-family: "Lora", serif;
	font-size: clamp(2.5rem, 3.5vw, 3.5rem);
	font-weight: 400;
	font-style: italic;
	color: var(--wsk-na-number-color, var(--wdt-color-border, #DAD3BE));
	line-height: 1;
	margin-bottom: 16px;
	letter-spacing: -1px;
}

/* ── Item Content ── */

.wsk-na__item-content {
	width: 100%;
}

.wsk-na__item-title,
.fusion-body .wsk-na__item-title {
	font-family: "Lora", serif !important;
	font-size: clamp(1.5rem, 2.5vw, 2.2rem) !important;
	font-weight: 400 !important;
	font-style: italic;
	color: var(--wdt-color-text, #254336) !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	line-height: 1.2 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
}

.wsk-na__item-desc {
	font-family: "Inter", sans-serif;
	font-size: 15px;
	font-weight: 400;
	color: var(--wdt-color-text-secondary, #51483F);
	line-height: 1.65;
	margin: 0;
}

/* ═══════════════════════════════════════════════════════════════════
   Scroll Reveal — applied only via JS class .wsk-na__item--animate
   Items are ALWAYS visible. Animation is additive, not subtractive.
   ═══════════════════════════════════════════════════════════════════ */

/* Number fade in */
.wsk-na__item--animate .wsk-na__circle {
	animation: wskNaNumFade 0.7s cubic-bezier(0.4, 0, 0.2, 1) both;
}

@keyframes wskNaNumFade {
	from { opacity: 0; transform: translateY(8px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* Title slide up */
.wsk-na__item--animate .wsk-na__item-title {
	animation: wskNaSlideUp 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.15s both;
}

/* Desc slide up */
.wsk-na__item--animate .wsk-na__item-desc {
	animation: wskNaSlideUp 0.5s cubic-bezier(0.4, 0, 0.2, 1) 0.25s both;
}

@keyframes wskNaSlideUp {
	from { opacity: 0; transform: translateY(15px); }
	to   { opacity: 1; transform: translateY(0); }
}

/* Divider draw */
.wsk-na__item--animate::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 1px;
	background: var(--wsk-na-divider, rgba(0, 0, 0, 0.06));
	animation: wskNaLineDraw 0.6s cubic-bezier(0.4, 0, 0.2, 1) 0.3s both;
}

.wsk-na__item--animate:last-child::after {
	display: none;
}

/* Hide static border when animated divider is active */
.wsk-na__item--animate {
	border-bottom-color: transparent;
}

@keyframes wskNaLineDraw {
	from { transform: scaleX(0); transform-origin: left; }
	to   { transform: scaleX(1); transform-origin: left; }
}

/* ═══════════════════════════════════════════════════════════════════
   Responsive
   ═══════════════════════════════════════════════════════════════════ */

@media (max-width: 768px) {
	.wsk-na {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.wsk-na__left {
		position: static;
	}

	.wsk-na__heading,
	.fusion-body .wsk-na__heading {
		font-size: var(--wsk-na-heading-font-size-sm, clamp(2rem, 8vw, 3rem)) !important;
	}

	.wsk-na__item {
		padding: 28px 0;
	}

	.wsk-na__circle {
		font-size: 2.2rem;
		margin-bottom: 12px;
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables non-essential transitions/animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-na,
	.wsk-na *,
	.wsk-na *::before,
	.wsk-na *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
/* ─── WEPRO: Premium FAQ ─── */
/* Elegant accordion with hairline dividers and circle toggle */

/* Antialiasing */
[class*="wsk-pf2"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.wsk-pf2 {
	margin: 0;
	padding: 0;
}

/* ── List ── */

.wsk-pf2__list {
	display: flex;
	flex-direction: column;
}

/* ── Item ── */

.wsk-pf2__item {
	border-bottom: 1px solid var(--wsk-pf2-divider, var(--wdt-color-border, #DAD3BE));
}

/* ── Trigger Button ── */

.wsk-pf2__trigger {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	width: 100%;
	padding: 28px 0;
	border: none;
	background: none;
	cursor: pointer;
	text-align: left;
	font-family: "Inter", sans-serif;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	outline: none;
}

.wsk-pf2__trigger:focus-visible {
	outline: 2px solid var(--wdt-color-primary, #254336);
	outline-offset: 4px;
	border-radius: 4px;
}

.wsk-pf2__trigger:hover {
	opacity: 0.7;
}

.wsk-pf2__trigger:hover .wsk-pf2__question {
	opacity: 0.7;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.wsk-pf2__question,
.fusion-body .wsk-pf2__question {
	font-family: var(--wsk-pf2-question-font-family, "Lora", serif) !important;
	font-size: var(--wsk-pf2-question-font-size, clamp(1rem, 1.5vw, 1.2rem)) !important;
	font-weight: var(--wsk-pf2-question-font-weight, 400) !important;
	font-style: var(--wsk-pf2-question-font-style, normal) !important;
	color: var(--wsk-pf2-question-color, var(--wdt-color-text, #254336)) !important;
	line-height: var(--wsk-pf2-question-line-height, 1.4) !important;
	letter-spacing: var(--wsk-pf2-question-letter-spacing, normal) !important;
	text-transform: var(--wsk-pf2-question-text-transform, none) !important;
	text-align: var(--wsk-pf2-question-text-align, inherit) !important;
	margin-top: var(--wsk-pf2-question-margin-top, 0) !important;
	margin-bottom: var(--wsk-pf2-question-margin-bottom, 0) !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding: 0 !important;
}

/* ── Toggle Circle ── */

.wsk-pf2__toggle {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 36px !important;
	height: 36px !important;
	min-width: 36px !important;
	min-height: 36px !important;
	border-radius: 50% !important;
	border: 1px solid var(--wsk-pf2-toggle, var(--wdt-color-border, #DAD3BE)) !important;
	color: var(--wdt-color-text-secondary, #51483F);
	flex-shrink: 0;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	overflow: hidden;
	box-sizing: border-box !important;
	background: transparent !important;
	padding: 0 !important;
}

.wsk-pf2__toggle svg {
	width: 14px !important;
	height: 14px !important;
	display: block !important;
	flex-shrink: 0;
}

.wsk-pf2__item--open .wsk-pf2__toggle {
	transform: rotate(45deg);
	border-color: var(--wdt-color-text, #254336);
}

/* ── Answer Panel ── */

.wsk-pf2__answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.wsk-pf2__answer-inner,
.fusion-body .wsk-pf2__answer-inner {
	padding: 0 0 28px !important;
	font-family: var(--wsk-pf2-answer-font-family, "Inter", sans-serif) !important;
	font-size: var(--wsk-pf2-answer-font-size, 15px) !important;
	font-weight: var(--wsk-pf2-answer-font-weight, 400) !important;
	font-style: var(--wsk-pf2-answer-font-style, normal) !important;
	color: var(--wsk-pf2-answer-color, var(--wdt-color-text-secondary, #51483F)) !important;
	line-height: var(--wsk-pf2-answer-line-height, 1.7) !important;
	letter-spacing: var(--wsk-pf2-answer-letter-spacing, normal) !important;
	text-transform: var(--wsk-pf2-answer-text-transform, none) !important;
	text-align: var(--wsk-pf2-answer-text-align, inherit) !important;
	margin-top: var(--wsk-pf2-answer-margin-top, 0) !important;
	margin-bottom: var(--wsk-pf2-answer-margin-bottom, 0) !important;
	max-width: 80%;
}

.wsk-pf2__item--open .wsk-pf2__answer {
	max-height: 500px;
}

/* ── Responsive ── */

@media (max-width: 768px) {
	.wsk-pf2__trigger {
		padding: 22px 0;
	}

	.wsk-pf2__answer-inner {
		max-width: 100%;
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables non-essential transitions/animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-pf2,
	.wsk-pf2 *,
	.wsk-pf2 *::before,
	.wsk-pf2 *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
/* ───────────────────────────────────────────────────────────────────
   WEPRO: Process Steps — Luxury / Editorial redesign
   Vertical progressive timeline · cinematic step entrance ·
   serif display · 8pt grid · prefers-reduced-motion aware
   ─────────────────────────────────────────────────────────────────── */

[class*="wsk-ps"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

.wsk-ps {
	margin: 0;
	padding: 0;
	--wsk-ps-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-ps-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--wsk-ps-ink: var(--wdt-color-text, #1f1b16);
	--wsk-ps-muted: color-mix(in srgb, var(--wsk-ps-ink, #1f1b16) 62%, transparent);
	--wsk-ps-surface: var(--wdt-color-surface-alt, #F4F1EB);
}

/* ── Section Header ── */
.wsk-ps__header {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 24px;
	margin-bottom: 96px;
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}

.wsk-ps__header .wsk-sh2__badge {
	align-self: inherit;
}

.wsk-ps--align-left .wsk-ps__header {
	align-items: flex-start;
	text-align: left;
	margin-left: 0;
	margin-right: 0;
}

.wsk-ps--align-left .wsk-ps__heading,
.fusion-body .wsk-ps--align-left .wsk-ps__heading {
	text-align: left !important;
}

.wsk-ps__heading,
.fusion-body .wsk-ps__heading {
	font-family: var(--wsk-ps-heading-font-family, "Lora", "Playfair Display", Georgia, serif) !important;
	font-size: var(--wsk-ps-heading-font-size, clamp(2.5rem, 5vw, 4.25rem)) !important;
	font-weight: var(--wsk-ps-heading-font-weight, 500) !important;
	font-style: var(--wsk-ps-heading-font-style, normal) !important;
	line-height: var(--wsk-ps-heading-line-height, 1.05) !important;
	letter-spacing: var(--wsk-ps-heading-letter-spacing, -0.02em) !important;
	color: var(--wsk-ps-heading-color, var(--wsk-ps-ink)) !important;
	text-align: var(--wsk-ps-heading-text-align, center);
	margin: 0 !important;
	padding: 0 !important;
	text-transform: none !important;
	max-width: 760px;
}

.wsk-ps__heading em {
	font-style: italic;
	font-weight: inherit;
	color: color-mix(in srgb, var(--wsk-ps-ink) 78%, var(--wsk-ps-circle, #3BBFAD) 22%);
}

/* ── Timeline ── */
.wsk-ps__timeline {
	position: relative;
	max-width: 1100px;
	margin: 0 auto;
}

/* Base (inactive) line — hairline */
.wsk-ps__timeline::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	background: color-mix(in srgb, var(--wsk-ps-ink) 12%, transparent);
	z-index: 0;
}

/* Progress (active) line — fills as user scrolls */
.wsk-ps__timeline::after {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 2px;
	height: var(--wsk-ps-progress, 0%);
	background: linear-gradient(
		to bottom,
		var(--wsk-ps-circle, #1f1b16) 0%,
		var(--wsk-ps-circle, #1f1b16) 85%,
		color-mix(in srgb, var(--wsk-ps-circle, #1f1b16) 0%, transparent) 100%
	);
	z-index: 1;
	transition: height 0.1s linear;
	border-radius: 999px;
	box-shadow: 0 0 12px color-mix(in srgb, var(--wsk-ps-circle, #1f1b16) 35%, transparent);
}

/* ── Step row ── */
.wsk-ps__step {
	display: grid;
	grid-template-columns: 1fr 72px 1fr;
	gap: 56px;
	align-items: center;
	padding: 60px 0;
	position: relative;
}

.wsk-ps__step:first-child { padding-top: 24px; }
.wsk-ps__step:last-child  { padding-bottom: 24px; }

/* Alternating — even rows swap columns */
.wsk-ps__step:nth-child(even) .wsk-ps__step-image   { order: 3; }
.wsk-ps__step:nth-child(even) .wsk-ps__step-line    { order: 2; }
.wsk-ps__step:nth-child(even) .wsk-ps__step-content { order: 1; text-align: right; }

/* ── Step Image ── */
.wsk-ps__step-image {
	aspect-ratio: 4 / 3;
	background-size: cover;
	background-position: center;
	background-color: var(--wsk-ps-surface);
	border-radius: 20px;
	overflow: hidden;
	position: relative;
	box-shadow:
		0 2px 4px rgba(0,0,0,0.04),
		0 24px 48px rgba(31, 27, 22, 0.12);
	transition: transform 0.9s var(--wsk-ps-ease-out), box-shadow 0.9s var(--wsk-ps-ease-out);
	will-change: transform;
}

.wsk-ps__step-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(135deg, transparent 55%, rgba(31,27,22,0.18));
	opacity: 0.8;
	transition: opacity 0.6s var(--wsk-ps-ease-out);
}

.wsk-ps__step:hover .wsk-ps__step-image {
	transform: translateY(-4px);
	box-shadow:
		0 4px 8px rgba(0,0,0,0.05),
		0 32px 64px rgba(31, 27, 22, 0.18);
}

.wsk-ps__step:hover .wsk-ps__step-image::after {
	opacity: 0.5;
}

/* ── Step Line + Orb ── */
.wsk-ps__step-line {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	height: 100%;
	min-height: 72px;
}

/* Orb — double-ring serif numeral */
.wsk-ps__step-circle {
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: var(--wsk-ps-circle, #1f1b16);
	color: var(--wsk-ps-circle-clr, #ffffff);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 17px;
	font-weight: 500;
	font-style: italic;
	letter-spacing: 0.02em;
	z-index: 3;
	position: relative;
	flex-shrink: 0;
	box-shadow:
		0 2px 6px rgba(0,0,0,0.12),
		0 12px 32px color-mix(in srgb, var(--wsk-ps-circle, #1f1b16) 28%, transparent);
	transition: transform 0.5s var(--wsk-ps-ease-out);
}

/* Outer halo ring */
.wsk-ps__step-circle::before {
	content: "";
	position: absolute;
	inset: -10px;
	border-radius: 50%;
	border: 1px solid color-mix(in srgb, var(--wsk-ps-circle, #1f1b16) 22%, transparent);
	opacity: 0;
	transform: scale(0.8);
	transition: opacity 0.6s var(--wsk-ps-ease-out), transform 0.6s var(--wsk-ps-ease-out);
}

/* Inner dot */
.wsk-ps__step-circle::after {
	content: "";
	position: absolute;
	inset: -20px;
	border-radius: 50%;
	border: 1px solid color-mix(in srgb, var(--wsk-ps-circle, #1f1b16) 10%, transparent);
	opacity: 0;
	transform: scale(0.7);
	transition: opacity 0.8s var(--wsk-ps-ease-out), transform 0.8s var(--wsk-ps-ease-out);
}

.wsk-ps__step.is-active .wsk-ps__step-circle {
	transform: scale(1.05);
}

.wsk-ps__step.is-active .wsk-ps__step-circle::before {
	opacity: 1;
	transform: scale(1);
}

.wsk-ps__step.is-active .wsk-ps__step-circle::after {
	opacity: 0.6;
	transform: scale(1);
	animation: wskPsHalo 3.4s var(--wsk-ps-ease) infinite;
}

@keyframes wskPsHalo {
	0%, 100% { transform: scale(1);    opacity: 0.55; }
	50%      { transform: scale(1.18); opacity: 0;    }
}

/* ── Step Content ── */
.wsk-ps__step-content {
	display: flex;
	flex-direction: column;
}

.wsk-ps__step-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wsk-ps-muted);
	margin: 0 0 16px;
	line-height: 1;
}

.wsk-ps__step:nth-child(even) .wsk-ps__step-eyebrow {
	align-self: flex-end;
}

.wsk-ps__step-eyebrow::before {
	content: "";
	width: 20px;
	height: 1px;
	background: currentColor;
	opacity: 0.5;
	flex-shrink: 0;
}

.wsk-ps__step:nth-child(even) .wsk-ps__step-eyebrow {
	flex-direction: row-reverse;
}

.wsk-ps__step-title,
.fusion-body .wsk-ps__step-title {
	font-family: "Lora", "Playfair Display", Georgia, serif !important;
	font-size: clamp(1.6rem, 2.6vw, 2.25rem) !important;
	font-weight: 500 !important;
	color: var(--wsk-ps-ink) !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.015em !important;
	text-transform: none !important;
}

.wsk-ps__step-desc {
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 16px;
	font-weight: 400;
	color: var(--wsk-ps-muted);
	line-height: 1.65;
	margin: 0 0 24px;
	max-width: 460px;
}

.wsk-ps__step:nth-child(even) .wsk-ps__step-desc {
	margin-left: auto;
}

/* ── Step Link — luxury arrow pill ── */
.wsk-ps__step-link {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.02em;
	color: var(--wsk-ps-ink);
	text-decoration: none;
	padding: 10px 0;
	border-bottom: 1px solid color-mix(in srgb, var(--wsk-ps-ink) 18%, transparent);
	align-self: flex-start;
	transition: border-color 0.4s var(--wsk-ps-ease-out), color 0.4s var(--wsk-ps-ease-out);
}

.wsk-ps__step:nth-child(even) .wsk-ps__step-link {
	align-self: flex-end;
	flex-direction: row-reverse;
}

.wsk-ps__step-link:hover {
	color: var(--wsk-ps-circle, var(--wsk-ps-ink));
	border-color: currentColor;
	text-decoration: none;
}

.wsk-ps__step-link span {
	font-size: 16px;
	transition: transform 0.5s var(--wsk-ps-ease-out);
	display: inline-block;
}

.wsk-ps__step-link:hover span {
	transform: translateX(6px);
}

.wsk-ps__step:nth-child(even) .wsk-ps__step-link:hover span {
	transform: translateX(-6px);
}

/* ── Entrance animation — cinematic lateral drift ── */
.wsk-ps__step {
	opacity: 0;
	transform: translateY(40px);
	transition:
		opacity 1s var(--wsk-ps-ease-out),
		transform 1s var(--wsk-ps-ease-out);
	will-change: opacity, transform;
}

.wsk-ps__step.is-visible {
	opacity: 1;
	transform: translateY(0);
}

/* Odd rows drift from left, even from right */
.wsk-ps__step:nth-child(odd):not(.is-visible) {
	transform: translate(-30px, 40px);
}

.wsk-ps__step:nth-child(even):not(.is-visible) {
	transform: translate(30px, 40px);
}

/* Staggered children within step */
.wsk-ps__step .wsk-ps__step-image,
.wsk-ps__step .wsk-ps__step-content > * {
	opacity: 0;
	transform: translateY(20px);
	transition:
		opacity 0.9s var(--wsk-ps-ease-out),
		transform 0.9s var(--wsk-ps-ease-out);
}

.wsk-ps__step.is-visible .wsk-ps__step-image,
.wsk-ps__step.is-visible .wsk-ps__step-content > * {
	opacity: 1;
	transform: translateY(0);
}

.wsk-ps__step.is-visible .wsk-ps__step-image                      { transition-delay: 0.15s; }
.wsk-ps__step.is-visible .wsk-ps__step-content > *:nth-child(1)   { transition-delay: 0.25s; }
.wsk-ps__step.is-visible .wsk-ps__step-content > *:nth-child(2)   { transition-delay: 0.35s; }
.wsk-ps__step.is-visible .wsk-ps__step-content > *:nth-child(3)   { transition-delay: 0.45s; }
.wsk-ps__step.is-visible .wsk-ps__step-content > *:nth-child(4)   { transition-delay: 0.55s; }

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
	.wsk-ps__step,
	.wsk-ps__step:nth-child(odd):not(.is-visible),
	.wsk-ps__step:nth-child(even):not(.is-visible),
	.wsk-ps__step .wsk-ps__step-image,
	.wsk-ps__step .wsk-ps__step-content > * {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
	.wsk-ps__timeline::after {
		height: 100% !important;
		transition: none !important;
	}
	.wsk-ps__step-circle::after,
	.wsk-ps__step.is-active .wsk-ps__step-circle::after {
		animation: none !important;
	}
}

/* ── Tablet ── */
@media (max-width: 1024px) {
	.wsk-ps__step {
		gap: 40px;
		padding: 48px 0;
	}
}

/* ── Mobile ── */
@media (max-width: 768px) {
	.wsk-ps__header {
		margin-bottom: 56px;
	}

	.wsk-ps__heading,
	.fusion-body .wsk-ps__heading {
		font-size: var(--wsk-ps-heading-font-size-sm, clamp(2rem, 8vw, 2.8rem)) !important;
	}

	.wsk-ps__timeline::before,
	.wsk-ps__timeline::after {
		left: 28px;
		transform: none;
	}

	.wsk-ps__step {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 36px 0 36px 72px;
	}

	.wsk-ps__step:nth-child(even) .wsk-ps__step-image,
	.wsk-ps__step:nth-child(even) .wsk-ps__step-line,
	.wsk-ps__step:nth-child(even) .wsk-ps__step-content {
		order: unset;
	}

	.wsk-ps__step:nth-child(even) .wsk-ps__step-content,
	.wsk-ps__step:nth-child(even) .wsk-ps__step-eyebrow,
	.wsk-ps__step:nth-child(even) .wsk-ps__step-desc,
	.wsk-ps__step:nth-child(even) .wsk-ps__step-link {
		text-align: left;
		align-self: flex-start;
		margin-left: 0;
		flex-direction: row;
	}

	.wsk-ps__step:nth-child(even) .wsk-ps__step-eyebrow {
		flex-direction: row;
	}

	.wsk-ps__step:nth-child(even) .wsk-ps__step-link:hover span {
		transform: translateX(6px);
	}

	.wsk-ps__step-image {
		margin-bottom: 4px;
		border-radius: 16px;
	}

	.wsk-ps__step-line {
		position: absolute;
		top: 36px;
		left: 0;
		width: 56px;
		min-height: 56px;
		padding: 0;
		height: auto;
	}

	.wsk-ps__step-circle {
		width: 48px;
		height: 48px;
		font-size: 14px;
	}

	/* Reduce drift amount on mobile */
	.wsk-ps__step:nth-child(odd):not(.is-visible),
	.wsk-ps__step:nth-child(even):not(.is-visible) {
		transform: translateY(30px);
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-ps a:focus-visible,
.wsk-ps button:focus-visible,
.wsk-ps [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/* ─── WEPRO: Portrait Card ─── */
/* Column-respecting card: portrait + italic heading + description */

/* Antialiasing */
[class*="wsk-pc3"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.wsk-pc3 {
	position: relative;
	width: 100%;
	padding: 0;
	margin: 0;
}

/* ── Card ── */

.wsk-pc3__card {
	background: var(--wsk-pc3-card-bg, var(--wdt-color-surface, #FFFCF5));
	border-radius: 15px;
	width: 100%;
	overflow: hidden;
	text-align: center;
	padding-bottom: 48px;
	box-shadow: 0 24px 80px rgba(0,0,0,0.12);
}

/* ── Portrait ── */

.wsk-pc3__portrait img {
	width: 100%;
	max-height: 400px;
	object-fit: cover;
	display: block;
	transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.wsk-pc3__card:hover .wsk-pc3__portrait img {
	transform: scale(1.03);
}

/* ── Text ── */

.wsk-pc3__text {
	padding: 0 24px;
}

.wsk-pc3__heading,
.fusion-body .wsk-pc3__heading {
	font-family: var(--wsk-pc3-heading-font-family, "Lora", serif) !important;
	font-style: var(--wsk-pc3-heading-font-style, italic);
	font-size: var(--wsk-pc3-heading-font-size, clamp(1.3rem, 2.5vw, 1.8rem)) !important;
	font-weight: var(--wsk-pc3-heading-font-weight, 400) !important;
	color: var(--wsk-pc3-heading-color, var(--wdt-color-text-secondary, #51483F)) !important;
	line-height: var(--wsk-pc3-heading-line-height, 1.4) !important;
	letter-spacing: var(--wsk-pc3-heading-letter-spacing, 0) !important;
	text-align: var(--wsk-pc3-heading-text-align, center);
	margin: 32px 24px 16px !important;
	padding: 0 !important;
	text-transform: none !important;
}

.wsk-pc3__desc {
	font-family: "Inter", sans-serif;
	font-size: 15px;
	font-weight: 400;
	color: var(--wdt-color-text-secondary, #51483F);
	line-height: 1.6;
	margin: 0 24px;
	max-width: 480px;
	margin-left: auto;
	margin-right: auto;
}

/* ── Responsive ── */

@media (max-width: 768px) {
	.wsk-pc3__card {
		padding-bottom: 32px;
	}

	.wsk-pc3__portrait img {
		max-height: 320px;
	}

	.wsk-pc3__heading,
	.fusion-body .wsk-pc3__heading {
		font-size: var(--wsk-pc3-heading-font-size-sm, clamp(1.1rem, 4vw, 1.5rem)) !important;
		margin: 24px 16px 12px !important;
	}

	.wsk-pc3__desc {
		margin: 0 16px;
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables non-essential transitions/animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-pc3,
	.wsk-pc3 *,
	.wsk-pc3 *::before,
	.wsk-pc3 *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
/* ── WEPRO: Split Text Hero ── */
/* Full-bleed bg with framed portrait card overlay + text below */

[class*="wsk-st"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.wsk-st {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: var(--wsk-st-min-h, 100vh);
	overflow: hidden;
	padding: 40px 24px;
}

/* ── Background ── */

.wsk-st__bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
}

.wsk-st__overlay {
	position: absolute;
	inset: 0;
	background: var(--wsk-st-overlay, rgba(0, 0, 0, 0.15));
}

/* ── Card — floats over the background ── */

.wsk-st__card {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 680px;
	background: var(--wsk-st-card-bg, var(--wdt-color-surface, #FFFCF5));
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 30px 80px rgba(0, 0, 0, 0.2);
}

/* ── Frame — portrait window with border ── */

.wsk-st__frame {
	position: relative;
	margin: 16px;
	border-radius: 10px;
	overflow: hidden;
	border: 3px solid var(--wsk-st-frame, rgba(255, 255, 255, 0.6));
	aspect-ratio: 4 / 3;
}

.wsk-st__frame img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* ── Text content ── */

.wsk-st__text {
	padding: 32px 40px 48px;
	text-align: center;
}

.wsk-st__heading,
.fusion-body .wsk-st__heading {
	font-family: var(--wsk-st-heading-font-family, "Lora", serif) !important;
	font-size: var(--wsk-st-heading-font-size, clamp(1.8rem, 3.5vw, 2.8rem)) !important;
	font-weight: var(--wsk-st-heading-font-weight, 400) !important;
	font-style: var(--wsk-st-heading-font-style, italic) !important;
	line-height: var(--wsk-st-heading-line-height, 1.3) !important;
	letter-spacing: var(--wsk-st-heading-letter-spacing, 0) !important;
	color: var(--wsk-st-heading-color, var(--wdt-color-text, #254336)) !important;
	text-align: var(--wsk-st-heading-text-align, center);
	margin: 0 0 16px !important;
	padding: 0 !important;
	text-transform: none !important;
}

.wsk-st__desc {
	font-family: "Inter", sans-serif;
	font-size: 15px;
	font-weight: 400;
	color: var(--wsk-st-desc-color, var(--wdt-color-text-secondary, #51483F));
	line-height: 1.65;
	margin: 0;
	max-width: 520px;
	margin-left: auto;
	margin-right: auto;
}

/* ── Responsive: Tablet ── */

@media (max-width: 1024px) {
	.wsk-st__card {
		max-width: 580px;
	}

	.wsk-st__text {
		padding: 28px 32px 40px;
	}
}

/* ── Responsive: Mobile ── */

@media (max-width: 768px) {
	.wsk-st {
		padding: 24px 16px;
	}

	.wsk-st__card {
		max-width: 100%;
	}

	.wsk-st__frame {
		margin: 12px;
		aspect-ratio: 1 / 1;
	}

	.wsk-st__text {
		padding: 24px 20px 36px;
	}

	.wsk-st__heading,
	.fusion-body .wsk-st__heading {
		font-size: var(--wsk-st-heading-font-size-sm, clamp(1.4rem, 5vw, 2rem)) !important;
	}

	.wsk-st__desc {
		font-size: 14px;
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables card slide/scale animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-st,
	.wsk-st *,
	.wsk-st *::before,
	.wsk-st *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
	.wsk-st__card {
		transform: none !important;
		opacity: 1 !important;
	}
}
/* ═══════════════════════════════════════════════════════════════════
   WEPRO: Perspective Carousel
   3D card stack with frosted inactive cards and overlay text.
   ═══════════════════════════════════════════════════════════════════ */

[class*="wsk-pc2"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ─── Section ─── */
.wsk-pc2 {
	padding: 0;
	overflow: hidden;
}

/* ─── Header ─── */
.wsk-pc2__header {
	text-align: center;
	max-width: 800px;
	margin: 0 auto 60px;
}

.wsk-pc2__heading,
.fusion-body .wsk-pc2__heading {
	font-family: "Lora", serif !important;
	font-size: var(--wsk-pc2-heading-font-size, clamp(2.5rem, 5vw, 4.5rem)) !important;
	font-weight: var(--wsk-pc2-heading-font-weight, 400) !important;
	font-style: var(--wsk-pc2-heading-font-style, normal) !important;
	line-height: var(--wsk-pc2-heading-line-height, 1.1) !important;
	letter-spacing: var(--wsk-pc2-heading-letter-spacing, -1px) !important;
	text-transform: var(--wsk-pc2-heading-text-transform, none) !important;
	color: var(--wsk-pc2-heading-color, var(--wdt-color-text, #254336)) !important;
	text-align: var(--wsk-pc2-heading-text-align, center);
	margin-top: var(--wsk-pc2-heading-margin-top, 0) !important;
	margin-bottom: var(--wsk-pc2-heading-margin-bottom, 0) !important;
	padding: 0 !important;
}

.wsk-pc2__heading em {
	font-style: italic;
}

/* ─── Viewport ─── */
.wsk-pc2__viewport {
	position: relative;
	overflow: visible;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0;
}

/* ─── Track ─── */
.wsk-pc2__track {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	height: var(--wsk-pc2-height, 600px);
	perspective: 2000px;
	perspective-origin: 50% 50%;
}

/* ─── Card ─── */
.wsk-pc2__card {
	position: absolute;
	display: block !important;
	width: 48%;
	height: 100%;
	border-radius: var(--wsk-pc2-radius, 20px);
	overflow: hidden;
	background: var(--wdt-color-border, #e0ddd5);
	transition:
		transform 0.7s cubic-bezier(0.4, 0, 0.2, 1),
		opacity 0.7s ease,
		box-shadow 0.7s ease;
	will-change: transform, opacity;
	backface-visibility: hidden;
	transform-style: preserve-3d;
}

/* Frost overlay — white wash on inactive cards */
.wsk-pc2__card::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(255, 255, 255, 0.55);
	z-index: 5;
	pointer-events: none;
	transition: opacity 0.7s ease;
	border-radius: inherit;
}

/* Active card — no frost */
.wsk-pc2__card--active::after {
	opacity: 0;
}

/* ─── Card image — full bleed ─── */
.wsk-pc2__card-image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.wsk-pc2__card-image--placeholder {
	background: linear-gradient(
		145deg,
		rgba(245, 242, 237, 0.95) 0%,
		rgba(230, 226, 220, 0.8) 50%,
		rgba(220, 216, 210, 0.9) 100%
	);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border: 1px solid rgba(255, 255, 255, 0.5);
}

/* ─── Card content — overlaid at bottom ─── */
.wsk-pc2__card-content,
.fusion-body .wsk-pc2__card-content {
	position: absolute !important;
	bottom: 0 !important;
	left: 0 !important;
	right: 0 !important;
	top: auto !important;
	padding: 20px 24px !important;
	margin: 0 !important;
	background: linear-gradient(
		0deg,
		rgba(0, 0, 0, 0.7) 0%,
		rgba(0, 0, 0, 0.3) 70%,
		transparent 100%
	);
	z-index: 3;
	transition: opacity 0.7s ease;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
}

/* Hide text on inactive cards — prevent grey band */
.wsk-pc2__card--prev .wsk-pc2__card-content,
.wsk-pc2__card--next .wsk-pc2__card-content,
.wsk-pc2__card--far-prev .wsk-pc2__card-content,
.wsk-pc2__card--far-next .wsk-pc2__card-content,
.wsk-pc2__card--hidden .wsk-pc2__card-content {
	opacity: 0;
}

.wsk-pc2__card-title,
.fusion-body .wsk-pc2__card-title {
	font-family: "Lora", serif !important;
	font-size: clamp(1.2rem, 1.6vw, 1.6rem) !important;
	font-weight: 500 !important;
	color: #fff !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	line-height: 1.3 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
}

.wsk-pc2__card-desc {
	font-family: "Inter", sans-serif;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.88);
	margin: 0;
	line-height: 1.55;
}

/* ─── No-image card: same position, just swap colors ─── */
.wsk-pc2__card--no-image .wsk-pc2__card-content {
	background: none;
	z-index: 6;
}

.wsk-pc2__card--no-image .wsk-pc2__card-title,
.fusion-body .wsk-pc2__card--no-image .wsk-pc2__card-title {
	color: var(--wdt-color-text, #254336) !important;
}

.wsk-pc2__card--no-image .wsk-pc2__card-desc {
	color: var(--wdt-color-text-secondary, #51483F);
}

.wsk-pc2__card--no-image.wsk-pc2__card--active::after {
	opacity: 0;
}

/* ═══════════════════════════════════════════════════════════════════
   Card states
   ═══════════════════════════════════════════════════════════════════ */

/* Active (center) */
.wsk-pc2__card--active {
	transform: translateX(0) translateZ(0) scale(1);
	opacity: 1;
	z-index: 4;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.18);
}

/* Previous (left) — 425/600 ≈ 0.71 */
.wsk-pc2__card--prev {
	transform: translateX(-58%) translateZ(-100px) rotateY(4deg) scale(0.71);
	opacity: 1;
	z-index: 3;
	box-shadow: 0 10px 36px rgba(0, 0, 0, 0.08);
	cursor: pointer;
}

/* Next (right) */
.wsk-pc2__card--next {
	transform: translateX(58%) translateZ(-100px) rotateY(-4deg) scale(0.71);
	opacity: 1;
	z-index: 3;
	box-shadow: 0 10px 36px rgba(0, 0, 0, 0.08);
	cursor: pointer;
}

/* Far left — bleeds off viewport */
.wsk-pc2__card--far-prev {
	transform: translateX(-108%) translateZ(-200px) rotateY(6deg) scale(0.58);
	opacity: 0.5;
	z-index: 2;
	pointer-events: none;
}
.wsk-pc2__card--far-prev::after {
	background: rgba(255, 255, 255, 0.75);
}

/* Far right */
.wsk-pc2__card--far-next {
	transform: translateX(108%) translateZ(-200px) rotateY(-6deg) scale(0.58);
	opacity: 0.5;
	z-index: 2;
	pointer-events: none;
}
.wsk-pc2__card--far-next::after {
	background: rgba(255, 255, 255, 0.75);
}

/* Hidden */
.wsk-pc2__card--hidden {
	opacity: 0;
	transform: translateZ(-300px) scale(0.7);
	z-index: 0;
	pointer-events: none;
}

/* ─── Navigation buttons ─── */
.wsk-pc2__nav {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto 0;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--wsk-pc2-nav-color, var(--wdt-color-text, #254336));
	color: #fff;
	border: none;
	cursor: pointer;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	outline: none;
}

/* Half on card edge, half outside — matches reference */
.wsk-pc2__nav--prev {
	left: calc(26% - 24px);
}

.wsk-pc2__nav--next {
	right: calc(26% - 24px);
}

.wsk-pc2__nav:hover {
	opacity: 0.85;
}

.wsk-pc2__nav:focus-visible {
	outline: 2px solid var(--wdt-color-primary, #6C5CE7);
	outline-offset: 2px;
}

.wsk-pc2__nav svg {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

/* ═══════════════════════════════════════════════════════════════════
   Responsive
   ═══════════════════════════════════════════════════════════════════ */

/* Tablet — same 3D, tighter */
@media (max-width: 1024px) {
	.wsk-pc2__card {
		width: 54%;
	}

	.wsk-pc2__card--prev {
		transform: translateX(-56%) translateZ(-80px) rotateY(4deg) scale(0.71);
	}

	.wsk-pc2__card--next {
		transform: translateX(56%) translateZ(-80px) rotateY(-4deg) scale(0.71);
	}

	.wsk-pc2__nav--prev {
		left: calc(23% - 24px);
	}

	.wsk-pc2__nav--next {
		right: calc(23% - 24px);
	}

	.wsk-pc2__heading,
	.fusion-body .wsk-pc2__heading {
		font-size: var(--wsk-pc2-heading-font-size-md, clamp(2rem, 4vw, 3rem)) !important;
	}
}

/* Mobile — same 3D perspective, padded */
@media (max-width: 767px) {
	.wsk-pc2__header {
		margin-bottom: 32px;
		padding: 0 16px;
	}

	.wsk-pc2__heading,
	.fusion-body .wsk-pc2__heading {
		font-size: var(--wsk-pc2-heading-font-size-sm, clamp(1.75rem, 6vw, 2.5rem)) !important;
	}

	.wsk-pc2__viewport {
		padding: 0;
	}

	.wsk-pc2 {
		padding: 0 12px;
	}

	.wsk-pc2__track {
		height: 440px;
		perspective: 1200px;
	}

	.wsk-pc2__card {
		width: 88%;
	}

	.wsk-pc2__card--prev {
		transform: translateX(-48%) translateZ(-60px) rotateY(3deg) scale(0.75);
	}

	.wsk-pc2__card--next {
		transform: translateX(48%) translateZ(-60px) rotateY(-3deg) scale(0.75);
	}

	.wsk-pc2__card--far-prev {
		transform: translateX(-90%) translateZ(-120px) rotateY(5deg) scale(0.6);
	}

	.wsk-pc2__card--far-next {
		transform: translateX(90%) translateZ(-120px) rotateY(-5deg) scale(0.6);
	}

	.wsk-pc2__card-content {
		padding: 20px 18px 18px;
	}

	.wsk-pc2__card-title,
	.fusion-body .wsk-pc2__card-title {
		font-size: 1.1rem !important;
	}

	.wsk-pc2__card-desc {
		font-size: 13px;
	}

	/* Same style as desktop — 48px, half on card edge half outside */
	.wsk-pc2__nav {
		width: 48px;
		height: 48px;
	}

	.wsk-pc2__nav svg {
		width: 20px;
		height: 20px;
	}

	/* Card is 88% → edge at 6%. Arrow half on, half off. */
	.wsk-pc2__nav--prev {
		left: calc(6% - 24px);
	}

	.wsk-pc2__nav--next {
		right: calc(6% - 24px);
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables non-essential transitions/animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-pc2,
	.wsk-pc2 *,
	.wsk-pc2 *::before,
	.wsk-pc2 *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
/* ─── WEPRO: Team Editorial ─── */
/* Compact team cards with premium flip reveal on hover/tap */

[class*="wsk-te"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ── Section ── */
.wsk-te {
	position: relative;
	margin: 0;
	padding: 0;
}

/* ── Card wrapper ── */
.wsk-te__card {
	background: var(--wsk-te-card-bg, #C8D1C4);
	border-radius: var(--wsk-te-card-radius, 15px);
	padding: clamp(28px, 3.5vw, 48px);
}

.wsk-te__brand {
	font-family: "Lora", serif;
	font-size: 1rem;
	font-style: italic;
	color: var(--wsk-te-brand-color, var(--wdt-color-text, #254336));
	margin-bottom: 12px;
	display: block;
}

.wsk-te__heading,
.fusion-body .wsk-te__heading {
	font-family: var(--wsk-te-heading-font-family, "Lora", serif) !important;
	font-size: var(--wsk-te-heading-font-size, clamp(2rem, 4vw, 3.5rem)) !important;
	font-weight: var(--wsk-te-heading-font-weight, 400) !important;
	font-style: var(--wsk-te-heading-font-style, normal) !important;
	color: var(--wsk-te-heading-color, var(--wdt-color-text, #254336)) !important;
	line-height: var(--wsk-te-heading-line-height, 1.15) !important;
	letter-spacing: var(--wsk-te-heading-letter-spacing, 0) !important;
	text-transform: var(--wsk-te-heading-text-transform, none) !important;
	text-align: var(--wsk-te-heading-text-align, left);
	margin: 0 0 32px !important;
	padding: 0 !important;
	max-width: 500px;
}

/* ── Members grid ── */
.wsk-te__members {
	display: grid;
	grid-template-columns: repeat(var(--wsk-te-columns, 3), 1fr);
	gap: 16px;
}

/* ── Member card — flip container ── */
.wsk-te__member {
	position: relative;
	border-radius: 10px;
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.5s ease, transform 0.5s ease;
}

.wsk-te__member--visible {
	opacity: 1;
	transform: translateY(0);
}

.wsk-te__member-inner {
	position: relative;
	width: 100%;
	height: 100%;
	transform-style: flat;
}

/* Front fades out, back fades in — no 3D rotation */
/* Crossfade: front out, back in */
.wsk-te__member--flippable:hover > .wsk-te__member-inner > .wsk-te__member-front,
.wsk-te__member--flipped > .wsk-te__member-inner > .wsk-te__member-front {
	opacity: 0;
}

.wsk-te__member--flippable:hover > .wsk-te__member-inner > .wsk-te__member-back,
.wsk-te__member--flipped > .wsk-te__member-inner > .wsk-te__member-back {
	opacity: 1;
}

/* ── Front face ── */
.wsk-te__member-front {
	position: relative;
	border-radius: 10px;
	overflow: hidden;
	opacity: 1;
	transition: opacity 0.5s ease;
}

.wsk-te__member-photo {
	aspect-ratio: 3 / 4;
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.wsk-te__member--flippable:hover .wsk-te__member-photo {
	transform: scale(1.03);
}

.wsk-te__member-info {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 48px 20px 16px;
	background: linear-gradient(0deg, rgba(0,0,0,0.6) 0%, rgba(0,0,0,0.2) 70%, transparent 100%);
}

.wsk-te__member-name,
.fusion-body .wsk-te__member-name {
	font-family: "Lora", serif !important;
	font-size: 1.25rem !important;
	font-weight: 600 !important;
	color: #fff !important;
	line-height: 1.2 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	margin: 0 !important;
	padding: 0 !important;
	text-shadow: 0 1px 8px rgba(0,0,0,0.4);
}

.wsk-te__member-title {
	font-family: "Inter", sans-serif;
	font-size: 0.8rem;
	font-weight: 400;
	color: rgba(255, 255, 255, 0.85);
	display: block;
	margin-top: 2px;
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
}

/* ── Back face — dark glassmorphic ── */
.wsk-te__member-back {
	position: absolute;
	inset: 0;
	border-radius: 10px;
	opacity: 0;
	transition: opacity 0.5s ease;
	z-index: 2;
	background: rgba(20, 16, 14, 0.92);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
	padding: 28px 24px;
	display: flex;
	flex-direction: column;
	gap: 0;
	overflow: hidden;
}

/* Noise texture overlay */
.wsk-te__member-back::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.08'/%3E%3C/svg%3E");
	mix-blend-mode: overlay;
	pointer-events: none;
	border-radius: inherit;
}

/* Color splash glow */
.wsk-te__member-back::after {
	content: '';
	position: absolute;
	top: -40px;
	right: -40px;
	width: 140px;
	height: 140px;
	background: radial-gradient(circle at 30% 30%, var(--wsk-te-card-bg, #C8D1C4), transparent 70%);
	opacity: 0.2;
	filter: blur(40px);
	pointer-events: none;
	mix-blend-mode: screen;
}

.wsk-te__back-name,
.fusion-body .wsk-te__back-name {
	font-family: "Lora", serif !important;
	font-size: 1.4rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	text-transform: none !important;
	letter-spacing: -0.5px !important;
	background: linear-gradient(120deg, #fff2cc, #ffd699, #fff2cc);
	-webkit-background-clip: text !important;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	position: relative;
	z-index: 1;
}

.wsk-te__back-title {
	font-family: "Inter", sans-serif;
	font-size: 0.68rem;
	font-weight: 400;
	color: rgba(255, 230, 210, 0.6);
	text-transform: uppercase;
	letter-spacing: 3px;
	display: block;
	margin-bottom: 0;
	position: relative;
	z-index: 1;
}

/* Divider */
.wsk-te__back-speciality {
	font-family: "Inter", sans-serif;
	font-size: 0.68rem;
	font-weight: 500;
	color: rgba(255, 230, 210, 0.7);
	text-transform: none;
	letter-spacing: 0.3px;
	display: block;
	margin-top: 14px;
	padding-top: 14px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	margin-bottom: 12px;
	position: relative;
	z-index: 1;
}

.wsk-te__back-exp {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin-bottom: 14px;
	position: relative;
	z-index: 1;
}

.wsk-te__back-exp-label {
	font-family: "Inter", sans-serif;
	font-size: 0.6rem;
	font-weight: 400;
	color: rgba(255, 230, 210, 0.4);
	text-transform: uppercase;
	letter-spacing: 1px;
	white-space: nowrap;
}

.wsk-te__back-exp-value {
	font-family: "Lora", serif;
	font-size: 0.9rem;
	font-weight: 600;
	color: rgba(255, 245, 230, 0.95);
}

.wsk-te__back-bio {
	font-family: "Inter", sans-serif;
	font-size: 0.78rem;
	font-weight: 400;
	color: rgba(255, 230, 210, 0.6);
	line-height: 1.6;
	margin: auto 0 0;
	padding-top: 12px;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	position: relative;
	z-index: 1;
}

/* ── Responsive: Tablet ── */
@media (max-width: 1024px) {
	.wsk-te__members {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ── Responsive: Mobile ── */
@media (max-width: 768px) {
	.wsk-te__card {
		padding: clamp(20px, 4vw, 32px);
	}

	.wsk-te__heading,
	.fusion-body .wsk-te__heading {
		font-size: var(--wsk-te-heading-font-size-sm, clamp(1.5rem, 6vw, 2.2rem)) !important;
		margin-bottom: 20px !important;
		max-width: 100%;
	}

	.wsk-te__members {
		grid-template-columns: 1fr;
		gap: 14px;
	}

	/* Front — horizontal card: photo left, text right */
	.wsk-te__member-front {
		display: grid;
		grid-template-columns: 120px 1fr;
		border-radius: 10px;
		overflow: hidden;
		min-height: 140px;
	}

	.wsk-te__member-photo {
		aspect-ratio: auto;
		height: 100%;
		border-radius: 0;
	}

	.wsk-te__member-info {
		position: relative;
		background: var(--wdt-color-surface, #FFFCF5);
		padding: 18px 16px;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

	.wsk-te__member-name,
	.fusion-body .wsk-te__member-name {
		font-size: 1.15rem !important;
		color: var(--wdt-color-text, #254336) !important;
		text-shadow: none !important;
		margin-bottom: 4px !important;
	}

	.wsk-te__member-title {
		color: var(--wdt-color-text-secondary, #51483F);
		text-shadow: none;
		font-size: 0.78rem;
		opacity: 0.7;
	}

	/* Back — full card, clean layout */
	.wsk-te__member-back {
		padding: 22px 20px;
	}

	.wsk-te__back-name,
	.fusion-body .wsk-te__back-name {
		font-size: 1.15rem !important;
	}

	.wsk-te__back-title {
		font-size: 0.65rem;
		letter-spacing: 2px;
		margin-bottom: 0;
	}

	.wsk-te__back-speciality {
		font-size: 0.62rem;
		margin-top: 12px;
		padding-top: 12px;
		margin-bottom: 10px;
	}

	.wsk-te__back-exp {
		margin-bottom: 10px;
	}

	.wsk-te__back-exp-label {
		font-size: 0.58rem;
	}

	.wsk-te__back-exp-value {
		font-size: 0.82rem;
	}

	.wsk-te__back-bio {
		font-size: 0.75rem;
		line-height: 1.55;
		padding-top: 10px;
	}
}

/* === Reduced-motion (audit check #36) ===
   Disables non-essential transitions/animations when the user prefers less motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-te,
	.wsk-te *,
	.wsk-te *::before,
	.wsk-te *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-te a:focus-visible,
.wsk-te button:focus-visible,
.wsk-te [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/* ───────────────────────────────────────────────────────────────────
   WEPRO: Location Map CTA — Luxury / Editorial redesign
   Design system: generous whitespace · display typography ·
   restrained motion · 8pt grid · prefers-reduced-motion aware
   ─────────────────────────────────────────────────────────────────── */

[class*="wsk-lmc"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

.wsk-lmc {
	padding: 0;
	margin: 0;
	--wsk-lmc-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--wsk-lmc-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ── Card shell ── */
.wsk-lmc__card {
	position: relative;
	background: var(--wsk-lmc-card-bg, #F4F1EB);
	border-radius: var(--wsk-lmc-card-r, 28px);
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	align-items: center;
	overflow: hidden;
	padding: clamp(40px, 6vw, 96px);
	gap: clamp(32px, 5vw, 80px);
	isolation: isolate;
}

/* Subtle editorial grain layer */
.wsk-lmc__card::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background:
		radial-gradient(ellipse 90% 60% at 85% 20%, rgba(255,255,255,0.6), transparent 70%),
		radial-gradient(ellipse 70% 50% at 10% 90%, color-mix(in srgb, var(--wsk-lmc-accent, #3BBFAD) 8%, transparent), transparent 70%);
	pointer-events: none;
}

.wsk-lmc__card > * {
	position: relative;
	z-index: 1;
}

/* ── Text column ── */
.wsk-lmc__text {
	display: flex;
	flex-direction: column;
	max-width: 520px;
}

/* Eyebrow subtitle — editorial caps with accent line */
.wsk-lmc__subtitle {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: color-mix(in srgb, var(--wdt-color-text, #1f1b16) 62%, transparent);
	margin: 0 0 24px;
	line-height: 1;
}

.wsk-lmc__subtitle::before {
	content: "";
	width: 28px;
	height: 1px;
	background: currentColor;
	opacity: 0.5;
	flex-shrink: 0;
}

/* Display heading */
.wsk-lmc__heading,
.fusion-body .wsk-lmc__heading {
	font-family: var(--wsk-lmc-heading-font-family, "Lora", "Playfair Display", Georgia, serif) !important;
	font-size: var(--wsk-lmc-heading-font-size, clamp(2.5rem, 5vw, 4.25rem)) !important;
	font-weight: var(--wsk-lmc-heading-font-weight, 500) !important;
	font-style: var(--wsk-lmc-heading-font-style, normal) !important;
	line-height: var(--wsk-lmc-heading-line-height, 1.04) !important;
	letter-spacing: var(--wsk-lmc-heading-letter-spacing, -0.02em) !important;
	text-transform: var(--wsk-lmc-heading-text-transform, none) !important;
	color: var(--wsk-lmc-heading-color, var(--wdt-color-text, #1f1b16)) !important;
	margin: 0 0 28px !important;
	padding: 0 !important;
}

.wsk-lmc__desc {
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 17px;
	font-weight: 400;
	color: color-mix(in srgb, var(--wdt-color-text, #1f1b16) 72%, transparent);
	line-height: 1.65;
	margin: 0 0 40px;
	max-width: 440px;
}

/* ── CTA — elegant 3D pill ── */
.wsk-lmc__cta {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 12px 22px 12px 20px;
	background: var(--wsk-lmc-cta-bg, var(--wsk-lmc-accent, #1f1b16));
	color: var(--wsk-lmc-cta-color, #fff);
	border-radius: 999px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.02em;
	text-decoration: none;
	align-self: flex-start;
	overflow: hidden;
	transform: translateZ(0);
	transition:
		transform 0.5s var(--wsk-lmc-ease-out),
		box-shadow 0.5s var(--wsk-lmc-ease-out),
		background-color 0.4s var(--wsk-lmc-ease-out);
	/* Subtle 3D depth: inner highlight + outer soft + tight ground shadow */
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.18),
		inset 0 -1px 0 rgba(0,0,0,0.22),
		0 1px 2px rgba(0,0,0,0.08),
		0 6px 14px rgba(0,0,0,0.10);
}

.wsk-lmc__cta::after {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at var(--wsk-mx, 50%) var(--wsk-my, 50%),
		rgba(255,255,255,0.18), transparent 60%);
	opacity: 0;
	transition: opacity 0.4s var(--wsk-lmc-ease-out);
	pointer-events: none;
}

.wsk-lmc__cta:hover {
	transform: translateY(-2px);
	color: var(--wsk-lmc-cta-color, #fff);
	text-decoration: none;
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.22),
		inset 0 -1px 0 rgba(0,0,0,0.24),
		0 2px 4px rgba(0,0,0,0.08),
		0 18px 38px rgba(0,0,0,0.18);
}

.wsk-lmc__cta:hover::after {
	opacity: 1;
}

.wsk-lmc__cta:active {
	transform: translateY(0);
	transition-duration: 0.15s;
}

.wsk-lmc__cta-icon {
	width: 14px;
	height: 14px;
	flex-shrink: 0;
	transition: transform 0.5s var(--wsk-lmc-ease-out);
}

.wsk-lmc__cta:hover .wsk-lmc__cta-icon {
	transform: translateX(3px);
}

/* ── Map column ── */
.wsk-lmc__map {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.wsk-lmc__svg {
	width: 100%;
	max-width: 480px;
	height: auto;
	filter: drop-shadow(0 20px 40px rgba(31, 27, 22, 0.08));
}

/* ── SVG elements ── */
.wsk-lmc__rings circle {
	fill: none;
	stroke: color-mix(in srgb, var(--wsk-lmc-accent, #3BBFAD) 18%, transparent);
	stroke-width: 1;
}

.wsk-lmc__ring-1 { animation: wskLmcRing 4s var(--wsk-lmc-ease) infinite; }
.wsk-lmc__ring-2 { animation: wskLmcRing 4s var(--wsk-lmc-ease) 0.8s infinite; }
.wsk-lmc__ring-3 { animation: wskLmcRing 4s var(--wsk-lmc-ease) 1.6s infinite; }

@keyframes wskLmcRing {
	0%   { transform: scale(0.6); opacity: 0; transform-origin: 250px 260px; }
	25%  { opacity: 1; }
	100% { transform: scale(1.4); opacity: 0; transform-origin: 250px 260px; }
}

.wsk-lmc__grid path {
	stroke: color-mix(in srgb, var(--wdt-color-text, #1f1b16) 8%, transparent);
	stroke-width: 0.6;
	fill: none;
}

.wsk-lmc__compass {
	transform-origin: 420px 90px;
	animation: wskLmcCompass 24s linear infinite;
}

@keyframes wskLmcCompass {
	to { transform: rotate(360deg); }
}

.wsk-lmc__pin-group {
	transform-origin: 250px 220px;
	animation: wskLmcPinDrop 1.4s var(--wsk-lmc-ease-out) both;
}

@keyframes wskLmcPinDrop {
	0%   { transform: translateY(-60px); opacity: 0; }
	60%  { transform: translateY(6px); opacity: 1; }
	80%  { transform: translateY(-2px); }
	100% { transform: translateY(0); }
}

.wsk-lmc__pin-shadow {
	animation: wskLmcShadow 2.4s ease-in-out infinite;
	transform-origin: 250px 268px;
}

@keyframes wskLmcShadow {
	0%, 100% { transform: scaleX(1); opacity: 0.18; }
	50%      { transform: scaleX(0.75); opacity: 0.28; }
}

.wsk-lmc__sparkle {
	animation: wskLmcSparkle 3.2s ease-in-out infinite;
	transform-origin: center;
}

.wsk-lmc__sparkle:nth-child(2) { animation-delay: 0.8s; }
.wsk-lmc__sparkle:nth-child(3) { animation-delay: 1.6s; }
.wsk-lmc__sparkle:nth-child(4) { animation-delay: 2.2s; }

@keyframes wskLmcSparkle {
	0%, 100% { opacity: 0; transform: scale(0.6); }
	50%      { opacity: 0.85; transform: scale(1); }
}

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
	.wsk-lmc__ring-1,
	.wsk-lmc__ring-2,
	.wsk-lmc__ring-3,
	.wsk-lmc__compass,
	.wsk-lmc__pin-group,
	.wsk-lmc__pin-shadow,
	.wsk-lmc__sparkle {
		animation: none !important;
	}
	.wsk-lmc__cta { transition: none; }
}

/* ── Tablet ── */
@media (max-width: 1024px) {
	.wsk-lmc__card {
		gap: 40px;
		padding: clamp(32px, 5vw, 56px);
	}

	.wsk-lmc__svg {
		max-width: 380px;
	}
}

/* ── Mobile — stacked ── */
@media (max-width: 768px) {
	.wsk-lmc__card {
		grid-template-columns: 1fr;
		text-align: left;
		padding: clamp(28px, 6vw, 44px);
		border-radius: 22px;
	}

	.wsk-lmc__text {
		align-items: flex-start;
		max-width: 100%;
	}

	.wsk-lmc__desc {
		max-width: 100%;
		font-size: 15px;
		margin-bottom: 32px;
	}

	.wsk-lmc__map {
		order: -1;
		margin-bottom: 8px;
	}

	.wsk-lmc__svg {
		max-width: 320px;
	}

	.wsk-lmc__heading,
	.fusion-body .wsk-lmc__heading {
		font-size: var(--wsk-lmc-heading-font-size-sm, clamp(1.9rem, 8vw, 2.6rem)) !important;
	}

	.wsk-lmc__cta {
		font-size: 12px;
		padding: 10px 18px 10px 16px;
		gap: 8px;
	}

	.wsk-lmc__cta-icon {
		width: 13px;
		height: 13px;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-lmc a:focus-visible,
.wsk-lmc button:focus-visible,
.wsk-lmc [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/* ─── WEPRO: Page Title Bar ─── */

.wsk-ptb {
	position: relative;
	overflow: hidden;
	padding: var(--wsk-ptb-padding, clamp(24px, 4vw, 56px)) clamp(20px, 4vw, 60px);
	background: var(--wsk-ptb-bg, transparent);
}

/* Alignment via data attribute — no flex override on container */
.wsk-ptb[data-wsk-align="center"] { text-align: center !important; }
.wsk-ptb[data-wsk-align="left"]   { text-align: left !important; }
.wsk-ptb[data-wsk-align="right"]  { text-align: right !important; }

/* ── Decorative line ── */
.wsk-ptb__line {
	display: block;
	width: 48px;
	height: 1px;
	background: var(--wsk-ptb-accent, var(--wdt-color-primary, #b08d57));
	margin: 0 auto 24px;
	transform-origin: center;
}

.wsk-ptb[data-wsk-align="left"] .wsk-ptb__line  { margin-left: 0; margin-right: auto; transform-origin: left; }
.wsk-ptb[data-wsk-align="right"] .wsk-ptb__line { margin-left: auto; margin-right: 0; transform-origin: right; }

/* ── Title (H1) ── */
.wsk-ptb__title,
.fusion-body .wsk-ptb .wsk-ptb__title {
	font-family: var(--wsk-ptb-heading-font-family, "Lora", serif) !important;
	font-size: var(--wsk-ptb-heading-font-size, clamp(2.4rem, 5.5vw, 4.8rem)) !important;
	font-weight: var(--wsk-ptb-heading-font-weight, 300) !important;
	font-style: var(--wsk-ptb-heading-font-style, normal) !important;
	line-height: var(--wsk-ptb-heading-line-height, 1.08) !important;
	letter-spacing: var(--wsk-ptb-heading-letter-spacing, -0.02em) !important;
	color: var(--wsk-ptb-heading-color, var(--wdt-color-text, #1a1a1a)) !important;
	text-transform: var(--wsk-ptb-heading-text-transform, none) !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Title alignment — Typography override wins, then falls back to element alignment */
.wsk-ptb[data-wsk-align="center"] .wsk-ptb__title { text-align: var(--wsk-ptb-heading-text-align, center) !important; }
.wsk-ptb[data-wsk-align="left"] .wsk-ptb__title   { text-align: var(--wsk-ptb-heading-text-align, left) !important; }
.wsk-ptb[data-wsk-align="right"] .wsk-ptb__title  { text-align: var(--wsk-ptb-heading-text-align, right) !important; }

/* ── Subtitle ── */
.wsk-ptb__subtitle,
.fusion-body .wsk-ptb .wsk-ptb__subtitle {
	font-family: var(--wsk-ptb-subtitle-font-family, inherit) !important;
	font-size: var(--wsk-ptb-subtitle-font-size, clamp(0.95rem, 1.4vw, 1.15rem)) !important;
	font-weight: var(--wsk-ptb-subtitle-font-weight, 400) !important;
	font-style: var(--wsk-ptb-subtitle-font-style, normal) !important;
	line-height: var(--wsk-ptb-subtitle-line-height, 1.5) !important;
	letter-spacing: var(--wsk-ptb-subtitle-letter-spacing, 0.04em) !important;
	color: var(--wsk-ptb-subtitle-color, rgba(0,0,0,0.45)) !important;
	text-transform: var(--wsk-ptb-subtitle-text-transform, uppercase) !important;
	margin: 16px 0 0 !important;
	padding: 0 !important;
	max-width: 640px;
}

.wsk-ptb[data-wsk-align="center"] .wsk-ptb__subtitle { margin-left: auto !important; margin-right: auto !important; text-align: center !important; }
.wsk-ptb[data-wsk-align="left"] .wsk-ptb__subtitle   { text-align: left !important; }
.wsk-ptb[data-wsk-align="right"] .wsk-ptb__subtitle  { margin-left: auto !important; text-align: right !important; }

/* ── Breadcrumb ── */
.wsk-ptb__breadcrumb {
	margin-top: 20px;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(0,0,0,0.35);
}

.wsk-ptb__breadcrumb a {
	color: var(--wsk-ptb-accent, var(--wdt-color-primary, #b08d57));
	text-decoration: none;
	transition: color 0.3s ease;
}

.wsk-ptb__breadcrumb a:hover { color: var(--wsk-ptb-heading-color, #1a1a1a); }
.wsk-ptb__breadcrumb span.sep { margin: 0 8px; opacity: 0.4; }

/* ── JS adds wsk-ptb--ready to hide, then wsk-ptb--revealed to animate in ── */
.wsk-ptb--ready .wsk-ptb__line       { transform: scaleX(0); transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1) 0.1s; }
.wsk-ptb--ready .wsk-ptb__title      { opacity: 0; transform: translateY(20px); transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1) 0.2s, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1) 0.2s; }
.wsk-ptb--ready .wsk-ptb__subtitle   { opacity: 0; transform: translateY(14px); transition: opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.4s, transform 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.4s; }
.wsk-ptb--ready .wsk-ptb__breadcrumb { opacity: 0; transform: translateY(10px); transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.55s, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1) 0.55s; }

.wsk-ptb--revealed .wsk-ptb__line       { transform: scaleX(1); }
.wsk-ptb--revealed .wsk-ptb__title      { opacity: 1; transform: translateY(0); }
.wsk-ptb--revealed .wsk-ptb__subtitle   { opacity: 1; transform: translateY(0); }
.wsk-ptb--revealed .wsk-ptb__breadcrumb { opacity: 1; transform: translateY(0); }

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
	.wsk-ptb__title,
	.wsk-ptb__subtitle,
	.wsk-ptb__breadcrumb { opacity: 1 !important; transform: none !important; transition: none !important; }
	.wsk-ptb__line { transform: scaleX(1) !important; transition: none !important; }
}

/* ── Tablet ── */
@media (max-width: 1024px) {
	.wsk-ptb { padding: var(--wsk-ptb-padding-md, clamp(20px, 3vw, 40px)) clamp(20px, 4vw, 40px); }
	.wsk-ptb__title,
	.fusion-body .wsk-ptb .wsk-ptb__title {
		font-size: var(--wsk-ptb-heading-font-size-md, clamp(2rem, 6vw, 3.2rem)) !important;
	}
}

/* ── Mobile ── */
@media (max-width: 768px) {
	.wsk-ptb { padding: var(--wsk-ptb-padding-sm, clamp(16px, 3vw, 32px)) 20px; }
	.wsk-ptb__title,
	.fusion-body .wsk-ptb .wsk-ptb__title {
		font-size: var(--wsk-ptb-heading-font-size-sm, clamp(1.8rem, 8vw, 2.6rem)) !important;
	}
	.wsk-ptb__line { width: 36px; margin-bottom: 18px; }
}
/**
 * WEPRO: Constellation — editorial gravity-well surface.
 *
 * States the element cycles through (driven by constellation.js + GSAP):
 *   .is-idle       — fragments orbit the centre (first-paint default)
 *   .is-collapsed  — fragments converged toward centre, headline visible
 *   .is-dispersed  — fragments scattered outward (after hold zone)
 *   .is-reversed   — hover-center explodes fragments (state overlay)
 *   .is-a11y       — orbit paused, static grid revealed (keyboard nav)
 *
 * Every chrome token falls back through two levels:
 *   editor override → element default (hardcoded hex in var() fallback)
 * So editors who leave fields empty get the champagne-editorial factory
 * look; editors who pick an accent color see it flow through immediately.
 */

.wsk-cn {
	/* ─── Tokens ─── */
	--wsk-cn-bg:          #faf6ef;
	--wsk-cn-ink:         #1f1b16;
	--wsk-cn-ink-soft:    rgba(31, 27, 22, 0.72);
	--wsk-cn-ink-muted:   rgba(31, 27, 22, 0.42);
	--wsk-cn-accent:      #b89968;
	--wsk-cn-hairline:    rgba(31, 27, 22, 0.14);
	--wsk-cn-hairline-in: rgba(255, 255, 255, 0.5);
	--wsk-cn-serif:       "Lora", "Playfair Display", Georgia, serif;
	--wsk-cn-sans:        "Inter", ui-sans-serif, system-ui, sans-serif;
	--wsk-cn-ease:        cubic-bezier(0.22, 1, 0.36, 1);

	/* Section surface. Use var() with fallback so editor overrides win. */
	position: relative;
	isolation: isolate;
	min-height: var(--wsk-cn-min-height, 100vh);
	padding: var(--wsk-cn-padding, 120px 24px);
	background: var(--wsk-cn-bg, #faf6ef);
	color: var(--wsk-cn-ink, #1f1b16);
	overflow: hidden;
	font-family: var(--wsk-cn-sans);
}

/* Subtle champagne radial wash so the centre feels "denser". */
.wsk-cn::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			circle at 50% 48%,
			color-mix(in srgb, var(--wsk-cn-accent, #b89968) 8%, transparent) 0%,
			transparent 55%
		);
	pointer-events: none;
	z-index: 0;
}

/* ═══════════════════════════════════════════════════════════════
   STAGE — the orbiting fragments layer.
   ═══════════════════════════════════════════════════════════════ */
.wsk-cn__stage {
	position: absolute;
	inset: 0;
	display: block;
	z-index: 1;
	pointer-events: none; /* fragment links re-enable per-fragment */
}

/* ── Fragment — generic ── */
.wsk-cn__fragment {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 260px;
	padding: 18px 22px;
	background: rgba(255, 255, 255, 0.85);
	color: var(--wsk-cn-ink);
	border: 1px solid var(--wsk-cn-hairline);
	border-radius: 2px;
	box-shadow:
		0 1px 0 var(--wsk-cn-hairline-in) inset,
		0 2px 8px rgba(31, 27, 22, 0.06);
	/* Starting transform — JS rewrites this on init. */
	transform: translate(-50%, -50%);
	opacity: 0;
	will-change: transform, opacity;
	pointer-events: auto;
}

.wsk-cn__fragment-link {
	display: block;
	color: inherit;
	text-decoration: none;
}

/* ── Fragment: quote ── */
.wsk-cn__fragment--quote {
	font-family: var(--wsk-cn-serif);
}

.wsk-cn__fragment-quote {
	font-family: var(--wsk-cn-serif);
	font-style: italic;
	font-size: 0.95rem;
	line-height: 1.45;
	margin: 0 0 8px;
	color: var(--wsk-cn-ink);
	quotes: "“" "”";
}
.wsk-cn__fragment-quote::before { content: open-quote; }
.wsk-cn__fragment-quote::after  { content: close-quote; }

.wsk-cn__fragment-cite {
	display: block;
	font-family: var(--wsk-cn-sans);
	font-size: 0.66rem;
	font-style: normal;
	font-weight: 600;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: var(--wsk-cn-ink-muted);
}

/* ── Fragment: service (diamond + name + meta) ── */
.wsk-cn__fragment--service {
	text-align: center;
	padding: 22px 26px;
}

.wsk-cn__fragment-mark {
	display: inline-block;
	width: 7px;
	height: 7px;
	background: var(--wsk-cn-accent);
	transform: rotate(45deg);
	margin: 0 0 10px;
	box-shadow:
		0 0 4px 0 color-mix(in srgb, var(--wsk-cn-accent, #b89968) 60%, transparent),
		0 0 12px 2px color-mix(in srgb, var(--wsk-cn-accent, #b89968) 28%, transparent);
}

.wsk-cn__fragment-label {
	font-family: var(--wsk-cn-serif);
	font-size: 0.9rem;
	font-weight: 500;
	letter-spacing: -0.005em;
	color: var(--wsk-cn-ink);
	margin: 0;
}

.wsk-cn__fragment-meta {
	display: block;
	margin-top: 6px;
	font-family: var(--wsk-cn-sans);
	font-size: 0.64rem;
	font-weight: 500;
	letter-spacing: 0.28em;
	text-transform: uppercase;
	color: var(--wsk-cn-ink-muted);
}

/* ── Fragment: image / logo ── */
.wsk-cn__fragment--image,
.wsk-cn__fragment--logo {
	padding: 0;
	background: transparent;
	border: none;
	box-shadow: none;
	overflow: hidden;
	max-width: 180px;
}

.wsk-cn__fragment--image .wsk-cn__fragment-media,
.wsk-cn__fragment--logo  .wsk-cn__fragment-media {
	display: block;
	width: 100%;
	border-radius: 2px;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.5);
}

.wsk-cn__fragment--image .wsk-cn__fragment-media img,
.wsk-cn__fragment--logo  .wsk-cn__fragment-media img {
	display: block;
	width: 100%;
	height: auto;
}

.wsk-cn__fragment--logo {
	max-width: 140px;
}

.wsk-cn__fragment--logo .wsk-cn__fragment-media {
	aspect-ratio: 3 / 2;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 14px 18px;
	background: rgba(255, 255, 255, 0.85);
	border: 1px solid var(--wsk-cn-hairline);
}

.wsk-cn__fragment--logo .wsk-cn__fragment-media img {
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 100%;
	filter: grayscale(1) contrast(0.9);
	opacity: 0.68;
	transition: filter 0.4s var(--wsk-cn-ease), opacity 0.4s var(--wsk-cn-ease);
}

.wsk-cn__fragment--logo:hover .wsk-cn__fragment-media img {
	filter: grayscale(0) contrast(1);
	opacity: 1;
}

/* ═══════════════════════════════════════════════════════════════
   CENTRE AFFORDANCE
   ═══════════════════════════════════════════════════════════════ */
.wsk-cn__center {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 168px;
	height: 168px;
	padding: 0;
	background: transparent;
	border: none;
	cursor: pointer;
	z-index: 3;
	color: inherit;
	font-family: inherit;
}

.wsk-cn__center-ring {
	position: absolute;
	inset: 0;
	border: 1px dashed color-mix(in srgb, var(--wsk-cn-accent, #b89968) 65%, transparent);
	border-radius: 50%;
	opacity: 0.7;
	transition:
		transform 0.6s var(--wsk-cn-ease),
		opacity 0.6s var(--wsk-cn-ease),
		border-color 0.6s var(--wsk-cn-ease);
	animation: wsk-cn-pulse 6s ease-in-out infinite;
	pointer-events: none;
}

@keyframes wsk-cn-pulse {
	0%, 100% { transform: scale(1);   opacity: 0.55; }
	50%      { transform: scale(1.05); opacity: 0.85; }
}

.wsk-cn__center:hover .wsk-cn__center-ring {
	transform: scale(1.12);
	border-color: var(--wsk-cn-accent);
	opacity: 1;
}

.wsk-cn__center-label {
	position: relative;
	z-index: 1;
	font-family: var(--wsk-cn-center-font-family, var(--wsk-cn-sans));
	font-size: var(--wsk-cn-center-font-size, clamp(0.85rem, 1vw, 1rem));
	font-weight: var(--wsk-cn-center-font-weight, 500);
	font-style: var(--wsk-cn-center-font-style, normal);
	line-height: var(--wsk-cn-center-line-height, 1.2);
	letter-spacing: var(--wsk-cn-center-letter-spacing, 0.35em);
	text-transform: var(--wsk-cn-center-text-transform, uppercase);
	color: var(--wsk-cn-center-color, var(--wsk-cn-accent, #b89968));
	text-align: var(--wsk-cn-center-text-align, center);
	white-space: nowrap;
}

.wsk-cn__center-sublabel {
	position: relative;
	z-index: 1;
	font-family: var(--wsk-cn-serif);
	font-style: italic;
	font-size: 0.78rem;
	color: var(--wsk-cn-ink-soft);
	max-width: 160px;
	text-align: center;
}

.wsk-cn__center:focus-visible {
	outline: 2px solid var(--wsk-cn-accent);
	outline-offset: 8px;
	border-radius: 50%;
}

/* ═══════════════════════════════════════════════════════════════
   HEADLINE (collapse-phase content)
   Starts hidden; JS fades it in as the stage collapses (progress 0.5).
   ═══════════════════════════════════════════════════════════════ */
.wsk-cn__headline-wrap {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: clamp(1rem, 1.4vw, 1.4rem);
	max-width: min(720px, 88vw);
	text-align: center;
	z-index: 4;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.5s var(--wsk-cn-ease);
}

.wsk-cn.is-collapsed .wsk-cn__headline-wrap {
	opacity: 1;
	pointer-events: auto;
}

/* Reduced motion / no-GSAP fallback: show headline + fragments as a
   static composition so the section still reads without any JS. */
.wsk-cn.is-a11y .wsk-cn__headline-wrap,
.wsk-cn[data-wsk-cn-no-gsap="1"] .wsk-cn__headline-wrap,
@media (prefers-reduced-motion: reduce) {
	.wsk-cn__headline-wrap { opacity: 1; pointer-events: auto; }
}

.wsk-cn__rule {
	display: block;
	width: 56px;
	height: 1px;
	background: linear-gradient(
		90deg,
		transparent,
		var(--wsk-cn-accent, #b89968) 50%,
		transparent
	);
	opacity: 0.85;
}

.wsk-cn__headline {
	font-family: var(--wsk-cn-headline-font-family, var(--wsk-cn-serif));
	font-size: var(--wsk-cn-headline-font-size, clamp(2.5rem, 6vw, 5rem));
	font-weight: var(--wsk-cn-headline-font-weight, 400);
	font-style: var(--wsk-cn-headline-font-style, normal);
	line-height: var(--wsk-cn-headline-line-height, 1.06);
	letter-spacing: var(--wsk-cn-headline-letter-spacing, -0.02em);
	text-transform: var(--wsk-cn-headline-text-transform, none);
	color: var(--wsk-cn-headline-color, var(--wsk-cn-ink, #1f1b16));
	text-align: var(--wsk-cn-headline-text-align, center) !important;
	margin: 0;
	padding: 0;
}

.wsk-cn__headline em {
	font-style: italic;
	color: var(--wsk-cn-accent, #b89968);
	font-weight: inherit;
}

.wsk-cn__cta {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 14px 28px;
	font-family: var(--wsk-cn-sans);
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--wsk-cn-ink);
	background: transparent;
	border: 1px solid var(--wsk-cn-accent, #b89968);
	border-radius: 999px;
	text-decoration: none;
	transition:
		background 0.4s var(--wsk-cn-ease),
		color 0.4s var(--wsk-cn-ease),
		letter-spacing 0.4s var(--wsk-cn-ease);
}

.wsk-cn__cta:hover {
	background: var(--wsk-cn-accent, #b89968);
	color: #ffffff;
	letter-spacing: 0.34em;
}

.wsk-cn__cta:focus-visible {
	outline: 2px solid var(--wsk-cn-accent);
	outline-offset: 4px;
}

/* ═══════════════════════════════════════════════════════════════
   A11Y GRID FALLBACK
   Hidden visually during orbit, revealed on keyboard focus or when
   reduced-motion is active. Same content, static composition.
   ═══════════════════════════════════════════════════════════════ */
.wsk-cn__grid {
	position: relative;
	z-index: 2;
	list-style: none;
	margin: 0;
	padding: 0;
	display: none;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: clamp(14px, 2vw, 22px);
	max-width: min(1100px, 92vw);
	margin-inline: auto;
}

.wsk-cn.is-a11y .wsk-cn__grid,
.wsk-cn[data-wsk-cn-no-gsap="1"] .wsk-cn__grid,
.wsk-cn.is-a11y .wsk-cn__stage ~ .wsk-cn__grid {
	display: grid;
}

.wsk-cn__grid-item {
	padding: 20px 22px;
	background: rgba(255, 255, 255, 0.85);
	border: 1px solid var(--wsk-cn-hairline);
	border-radius: 2px;
	font-family: var(--wsk-cn-serif);
}

.wsk-cn__grid-item .wsk-cn__fragment-quote {
	font-size: 0.95rem;
}

/* When a11y grid is on, hide the orbit stage and centre. */
.wsk-cn.is-a11y .wsk-cn__stage,
.wsk-cn.is-a11y .wsk-cn__center,
.wsk-cn[data-wsk-cn-no-gsap="1"] .wsk-cn__stage,
.wsk-cn[data-wsk-cn-no-gsap="1"] .wsk-cn__center {
	display: none;
}

/* ═══════════════════════════════════════════════════════════════
   REDUCED MOTION — hard fallback to the a11y grid.
   Works even when JS never runs (no .is-a11y class added).
   ═══════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-cn__stage,
	.wsk-cn__center,
	.wsk-cn::before {
		display: none;
	}
	.wsk-cn__grid {
		display: grid;
	}
	.wsk-cn__fragment {
		animation: none !important;
		transition: none !important;
	}
	.wsk-cn__center-ring {
		animation: none;
	}
}

/* ═══════════════════════════════════════════════════════════════
   MOBILE — tighter orbit radius, smaller fragments, disable the
   centre hover (touch can't reach reverse-gravity cleanly).
   JS also halves fragment count on narrow screens.
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
	.wsk-cn {
		padding: var(--wsk-cn-padding-sm, 80px 16px);
	}
	.wsk-cn__center {
		width: 132px;
		height: 132px;
	}
	.wsk-cn__fragment {
		max-width: 180px;
		padding: 14px 16px;
	}
	.wsk-cn__fragment-quote {
		font-size: 0.85rem;
	}
	.wsk-cn__fragment-label {
		font-size: 0.82rem;
	}
	.wsk-cn__headline {
		font-size: var(--wsk-cn-headline-font-size-sm, var(--wsk-cn-headline-font-size, clamp(2rem, 7vw, 3.5rem)));
	}
}

/* Responsive typography chain — md / sm for the headline & centre. */
@media (max-width: 1024px) {
	.wsk-cn__headline {
		font-size: var(--wsk-cn-headline-font-size-md, var(--wsk-cn-headline-font-size, clamp(2.25rem, 5vw, 4rem)));
		text-align: var(--wsk-cn-headline-text-align-md, var(--wsk-cn-headline-text-align, center)) !important;
	}
	.wsk-cn__center-label {
		font-size: var(--wsk-cn-center-font-size-md, var(--wsk-cn-center-font-size, clamp(0.8rem, 1.1vw, 0.95rem)));
	}
}

@media (max-width: 640px) {
	.wsk-cn__headline {
		text-align: var(--wsk-cn-headline-text-align-sm, var(--wsk-cn-headline-text-align-md, var(--wsk-cn-headline-text-align, center))) !important;
	}
	.wsk-cn__center-label {
		font-size: var(--wsk-cn-center-font-size-sm, var(--wsk-cn-center-font-size-md, var(--wsk-cn-center-font-size, 0.78rem)));
	}
}
/*! WEPRO Header Menu — glass sticky bar + fullscreen overlay. */

.wsk-hm {
	--wsk-hm-header-bg: rgba(255,255,255,.08);
	--wsk-hm-header-blur: 20px;
	--wsk-hm-header-text: #fff;
	--wsk-hm-overlay-bg: #031024;
	--wsk-hm-overlay-text: #fff;
	--wsk-hm-marker-from: #996B55;
	--wsk-hm-marker-to: #E5AB8E;
	--wsk-hm-accent: #E5AB8E;
	--wsk-hm-border: rgba(255,255,255,.25);
	--wsk-hm-divider: #524649;
	--wsk-hm-logo-bg: #06162E;
	--wsk-hm-hover-fill: #06162E;
	--wsk-hm-cta-icon-hover: #ffffff;
	--wsk-hm-ease: cubic-bezier(.22,1,.36,1);
	--wsk-hm-logo-h: 40px;
	--wsk-hm-logo-h-pc: 48px;
	--wsk-hm-logo-max-w: 280px;
	--wsk-hm-overlay-logo-h: 96px;

	color: var(--wsk-hm-header-text);
	font-family: Outfit, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	/* Reserve flow space so page content starts below the visible header. */
	height: 64px;
	margin: 0;
	padding: 0;
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
}

@media (min-width: 767px) {
	.wsk-hm { height: 91px; }
}

.wsk-hm--static { height: auto; }

/* Portal copy of .wsk-hm appended to <body> by JS to escape Avada column
   transforms — its children (header + overlay) are position:fixed and don't
   need flow-space reservation. Zero its height so it doesn't add an empty
   strip at body end (visible as a gray band between the footer and the
   bottom of the page when the body / parent bg differs from the footer). */
.wsk-hm[data-wsk-hm-portal-root="1"] { height: 0; min-height: 0; }
@media (min-width: 767px) {
	.wsk-hm[data-wsk-hm-portal-root="1"] { height: 0; }
}

/* Body scroll lock when overlay is open (class toggled by JS). */
.wsk-hm-lock, .wsk-hm-lock body { overflow: hidden !important; }

/* Accessible hidden heading. */
.wsk-hm__sr-only {
	position: absolute;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

/* Gradient brand ramp — reused on markers, divider, hover fills. */
.wsk-hm .marker,
.wsk-hm .header__menu-line,
.wsk-hm .header__container .header__menu::before,
.wsk-hm .header__container .header__ct::before {
	--_g: linear-gradient(91deg, var(--wsk-hm-marker-from) 25%, var(--wsk-hm-marker-to) 42%, var(--wsk-hm-marker-to) 58%, var(--wsk-hm-marker-from) 75%);
}

/* ─── Sticky header ─────────────────────────────────────────── */

.wsk-hm .header {
	position: fixed;
	inset: 0 0 auto 0;
	padding: 0 20px;
	width: 100%;
	z-index: 9999;
	background: var(--wsk-hm-header-bg);
	border-bottom: 1px solid var(--wsk-hm-border);
	backdrop-filter: blur(var(--wsk-hm-header-blur)) saturate(140%);
	-webkit-backdrop-filter: blur(var(--wsk-hm-header-blur)) saturate(140%);
	transition: transform .5s cubic-bezier(0,.37,.215,.985);
	will-change: transform;
}

/* Fallback: if browser cannot frost the backdrop, give the bar a solid tint. */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.wsk-hm .header { background: rgba(3,16,36,.85); }
}

.wsk-hm--static .header { position: relative; }
.wsk-hm .header.down.not-top { transform: translateY(-100%); }
/* When the bar hides on scroll-down, fully hide the taller logo box too
   (the box overflows below the bar so a -100% translate on .header alone
   leaves its lower portion visible). */
.wsk-hm .header.down.not-top .header__logo-wrap,
.wsk-hm .header.down.not-top .header__logo-frame { opacity: 0; visibility: hidden; }
.wsk-hm .header .header__logo-wrap,
.wsk-hm .header .header__logo-frame {
	transition: opacity .3s linear, visibility 0s linear .3s;
}
.wsk-hm .header:not(.down) .header__logo-wrap,
.wsk-hm .header:not(.down) .header__logo-frame {
	transition: opacity .3s linear, visibility 0s linear 0s;
}

/* After 1.5.4 portal-wrapper fix, the fixed header lives in a body-level
   .wsk-hm portal — NOT inside .fusion-tb-header anymore. The empty .wsk-hm
   left behind in the original location is just a flow-space spacer. The old
   `z-index: 10001` lift here is now counterproductive: it raises the empty
   .fusion-tb-header above the fixed header (z-index 9999), so clicks at
   viewport y=0 land on the empty wrapper instead of the burger. Scrolling
   moves the static wrapper off-screen and clicks start working again —
   that was the "mobile MENU only works after scroll" bug in 1.5.7.
   The lift only matters when the header is NOT portaled (no-JS fallback);
   gate it via `:has(.header-menu)` so it activates ONLY when the wsk-hm
   still contains its overlay (pre-portal / portal-failure state). */
.fusion-tb-header:has(.wsk-hm:has(.header-menu)) { position: relative; z-index: 10001; }

.wsk-hm .header__container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 56px;
	width: 100%;
	z-index: 100;
}

/* Logo: fluid, never cropped, hidden label for screen readers. */
.wsk-hm .header__container a.header__logo {
	display: inline-flex;
	align-items: center;
	max-width: 50%;
	height: var(--wsk-hm-logo-h);
	text-decoration: none;
}
.wsk-hm .header__container a.header__logo img {
	display: block;
	height: var(--wsk-hm-logo-h);
	max-height: var(--wsk-hm-logo-h);
	width: auto;
	max-width: 100%;
	object-fit: contain;
}
.wsk-hm .header__container a.header__logo span {
	position: absolute;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	clip-path: inset(50%);
}

/* Logo frame (banner over the bar) — mobile base.
   The wrap is centered over the header bar; the frame overflows above and below
   the thin nav strip; flourish lines extend sideways from the frame edges. */
.wsk-hm .header__container .header__logo-wrap {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	z-index: 3;
}
.wsk-hm .header__container .header__logo-wrap .header__logo,
.wsk-hm .header__container .header__logo-wrap a.header__logo {
	position: static;
	transform: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 100%;
	height: auto;
	pointer-events: auto;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	text-decoration: none !important;
}
.wsk-hm .header__container .header__logo-wrap .header__logo img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 100%;
	object-fit: contain;
	margin-top: 20px;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
}
.wsk-hm .header__container .header__logo-frame {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 128px;
	padding: 16px 16px 4px;
	background: var(--wsk-hm-logo-bg, #06162E);
	border: 1px solid var(--wsk-hm-border);
	flex: 0 0 auto;
	z-index: 2;
	overflow: hidden;
}

/* Moving light sweep — wide soft highlight drifts left → right across the logo
   box on an 8s loop, like a slow-panning spotlight. Subtle (~18% peak alpha). */
.wsk-hm .header__container .header__logo-frame::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		105deg,
		transparent 0%,
		rgba(255, 255, 255, 0) 35%,
		rgba(255, 255, 255, 0.22) 50%,
		rgba(255, 255, 255, 0) 65%,
		transparent 100%
	);
	background-size: 220% 100%;
	background-repeat: no-repeat;
	pointer-events: none;
	z-index: 1;
	animation: wsk-logo-light-sweep 8s linear infinite;
}
.wsk-hm .header__container .header__logo-frame > * { position: relative; z-index: 2; }

@keyframes wsk-logo-light-sweep {
	0%   { background-position: 120% 0; }
	100% { background-position: -120% 0; }
}

@media (prefers-reduced-motion: reduce) {
	.wsk-hm .header__container .header__logo-frame::before { animation: none; }
}
/* Burger */
.wsk-hm .header__container .header__menu {
	order: 3;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	color: inherit;
	font: 600 11px/1.1 inherit;
	letter-spacing: 1.1px;
	text-transform: uppercase;
	background: transparent;
	border: 0;
	padding: 0;
	cursor: pointer;
}
.wsk-hm .header__container .header__rbts,
.wsk-hm .header__container .header__ct { display: none; }
.wsk-hm .header__container .header__mcta { display: none; }

/* Screen-reader-only helper (used by icon-mode mobile CTA). */
.wsk-hm .wsk-sr-only {
	position: absolute;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	clip-path: inset(50%);
	white-space: nowrap;
}

/* Mobile: show the dedicated mobile CTA (not the desktop CTAs). */
@media (max-width: 766px) {
	.wsk-hm .header__container .header__rbts {
		display: inline-flex;
		align-items: center;
		order: 2;
	}
	.wsk-hm .header__container .header__mcta {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		color: inherit;
		font: 600 13px/1 inherit;
		letter-spacing: 1.2px;
		text-transform: uppercase;
		text-decoration: none;
		padding: 0 10px;
		height: 56px;
	}
	.wsk-hm .header__container .header__mcta--icon { padding: 0 10px; }
	/* Default bell SVG + admin-picked Avada icon (rendered as <i class="fa fa-…">)
	   both get the same sizing/color treatment. svg sizes via width/height,
	   icon-font <i> sizes via font-size. Color chain: Mobile CTA Icon Color (per-
	   instance) → Accent (per-instance) → hardcoded fallback. */
	.wsk-hm .header__container .header__mcta svg,
	.wsk-hm .header__container .header__mcta i {
		display: block;
		color: var(--wsk-hm-mcta-icon-color, var(--wsk-hm-accent, #E5AB8E));
		filter: drop-shadow(0 1px 2px rgba(0,0,0,.35));
		transform-origin: 50% 80%;
	}
	.wsk-hm .header__container .header__mcta svg {
		width: 30px;
		height: 30px;
	}
	.wsk-hm .header__container .header__mcta i {
		font-size: 30px;
		line-height: 1;
	}
	.wsk-hm .header__container .header__mcta:hover svg,
	.wsk-hm .header__container .header__mcta:hover i { color: var(--wsk-hm-cta-icon-hover, #ffffff); }

	/* Idle animation: gentle tilt every 6s so the icon "rings" periodically to
	   hint at tap-for-reception. Applies to both the default bell SVG AND a
	   picked iconpicker icon (<i class="fa fa-…">). The inner ring-pulse is
	   bell-specific (animates an internal SVG path that only the bell has).
	   2.5s initial delay so the first cycle doesn't jitter during page load.
	   Honors prefers-reduced-motion. */
	.wsk-hm .header__container .header__mcta--icon svg,
	.wsk-hm .header__container .header__mcta--icon i {
		animation: wsk-bell-tilt 6s ease-in-out 2.5s infinite;
		will-change: transform;
	}
	.wsk-hm .header__container .header__mcta--icon svg .wsk-bell__ring {
		transform-origin: 13px 5px;
		animation: wsk-bell-ring 6s ease-out 2.5s infinite;
		opacity: 0;
	}
	.wsk-hm .header__container .header__mcta--icon:hover svg,
	.wsk-hm .header__container .header__mcta--icon:hover i {
		animation-duration: 1.2s;
	}

	@keyframes wsk-bell-tilt {
		0%, 70%, 100% { transform: rotate(0); }
		76%            { transform: rotate(-8deg); }
		82%            { transform: rotate(7deg); }
		88%            { transform: rotate(-4deg); }
		94%            { transform: rotate(2deg); }
	}
	@keyframes wsk-bell-ring {
		0%, 70%, 100% { opacity: 0; transform: scale(.6); }
		76%            { opacity: 1; transform: scale(1); }
		92%            { opacity: 0; transform: scale(1.6); }
	}

	@media (prefers-reduced-motion: reduce) {
		.wsk-hm .header__container .header__mcta--icon svg,
		.wsk-hm .header__container .header__mcta--icon i,
		.wsk-hm .header__container .header__mcta--icon svg .wsk-bell__ring {
			animation: none;
		}
		.wsk-hm .header__container .header__mcta--icon svg .wsk-bell__ring { opacity: 1; }
	}
}

/* Focus rings — visible for keyboard, invisible for mouse. */
.wsk-hm :focus-visible {
	outline: 2px solid var(--wsk-hm-accent);
	outline-offset: 3px;
	border-radius: 2px;
}

@media (min-width: 767px) {
	.wsk-hm .header { padding: 0; }
	.wsk-hm .header__container { height: 80px; }

	.wsk-hm .header__container .header__logo-wrap {
		width: auto;
	}
	.wsk-hm .header__container .header__logo-frame {
		width: 140px;
		height: 180px;
		padding: 22px 22px 6px;
	}
	.wsk-hm .header__container .header__logo {
		position: static;
		transform: none;
		height: var(--wsk-hm-logo-h-pc);
		max-width: min(40%, var(--wsk-hm-logo-max-w));
		width: auto;
		justify-content: center;
	}
	.wsk-hm .header__container .header__logo img {
		height: var(--wsk-hm-logo-h-pc);
		max-height: var(--wsk-hm-logo-h-pc);
		width: auto;
		max-width: 100%;
		object-fit: contain;
		object-position: center;
	}

	.wsk-hm .header__container .header__menu {
		order: 0;
		height: 80px;
		font-size: 14px;
		border-right: 1px solid var(--wsk-hm-border);
		padding: 0 clamp(30px, calc(60 * var(--size-txt, 1px)), 60px);
		position: relative;
		transition: color .15s linear;
		overflow: hidden;
	}
	.wsk-hm .header__container .header__menu span,
	.wsk-hm .header__container .header__menu svg { position: relative; z-index: 2; }
	.wsk-hm .header__container .header__menu::before {
		content: "";
		position: absolute; inset: 0;
		background: var(--_g);
		opacity: 0;
		transform: scaleX(1);
		transition: opacity .2s linear, transform .6s var(--wsk-hm-ease);
		z-index: 1;
	}
	.wsk-hm .header__container .header__menu:hover { color: var(--wsk-hm-hover-fill, #06162E); }
	.wsk-hm .header__container .header__menu:hover::before { opacity: 1; }

	.wsk-hm .header__container .header__rbts {
		border-left: 1px solid var(--wsk-hm-border);
		display: flex;
	}
	.wsk-hm .header__container .header__ct {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		color: inherit;
		font: 600 14px/1 inherit;
		letter-spacing: 1.4px;
		text-transform: uppercase;
		text-decoration: none;
		height: 80px;
		padding: 0 clamp(15px, calc(15 * var(--size-txt, 1px)), 32px);
		position: relative;
		overflow: hidden;
		transition: color .15s linear;
	}
	.wsk-hm .header__container .header__ct:first-of-type { padding-left: clamp(24px, calc(30 * var(--size-txt, 1px)), 40px); }
	.wsk-hm .header__container .header__ct:last-of-type  { padding-right: clamp(24px, calc(30 * var(--size-txt, 1px)), 40px); }
	.wsk-hm .header__container .header__ct span,
	.wsk-hm .header__container .header__ct svg,
	.wsk-hm .header__container .header__ct i { position: relative; z-index: 2; }
	.wsk-hm .header__container .header__ct::before {
		content: "";
		position: absolute; inset: 0;
		background: var(--_g);
		opacity: 0;
		transition: opacity .2s linear;
		z-index: 1;
	}
	.wsk-hm .header__container .header__ct:hover { color: var(--wsk-hm-hover-fill, #06162E); }
	.wsk-hm .header__container .header__ct:hover::before { opacity: 1; }
	.wsk-hm .header__container .header__ct--passive { opacity: .55; }
	.wsk-hm .header__container .header__ct--passive:hover { opacity: 1; }
}

@media (min-width: 767px) and (max-width: 1024px) {
	.wsk-hm .header__container .header__ct:first-of-type { display: none; }
}

/* ─── Overlay ──────────────────────────────────────────────── */

.wsk-hm .header-menu {
	position: fixed;
	inset: 0;
	z-index: 10000;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	color: var(--wsk-hm-overlay-text);
	transition: opacity .4s var(--wsk-hm-ease), visibility 0s linear .4s;
}
.wsk-hm .header-menu.is-open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transition: opacity .4s var(--wsk-hm-ease), visibility 0s linear 0s;
}
.wsk-hm .header-menu.is-open .header-menu__container { transform: translateX(0); }
.wsk-hm .header-menu.is-open .header-menu__bg { opacity: 1; }

.wsk-hm .header-menu__bg {
	position: absolute;
	inset: 0;
	background: rgba(3,16,36,.25);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	opacity: 0;
	cursor: pointer;
	transition: opacity .4s linear;
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.wsk-hm .header-menu__bg { background: rgba(3,16,36,.75); }
}

.wsk-hm .header-menu__container {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	height: 100%;
	background: var(--wsk-hm-overlay-bg);
	transform: translateX(-100%);
	transition: transform .6s var(--wsk-hm-ease);
	will-change: transform;
	box-shadow: 20px 0 60px -20px rgba(0,0,0,.45);
}

.wsk-hm .header-menu__top {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	height: 56px;
	padding: 0 20px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	background: var(--wsk-hm-overlay-bg);
	border-bottom: 1px solid var(--wsk-hm-divider);
	z-index: 10;
}
.wsk-hm .header__menubt {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	color: inherit;
	font: 600 11px/1.1 inherit;
	letter-spacing: 1.1px;
	text-transform: uppercase;
	background: transparent;
	border: 0;
	padding: 20px 0;
	cursor: pointer;
	transition: color .15s linear;
}
.wsk-hm .header__menubt .pc { display: none; }
.wsk-hm .header__menubt:hover { color: var(--wsk-hm-accent); }

.wsk-hm .header__menu-line {
	position: absolute;
	left: 0; bottom: 0;
	width: 100%;
	height: 3px;
	background: var(--_g);
	z-index: 3;
}

.wsk-hm .header-menu__in {
	position: relative;
	z-index: 2;
	flex: 1;
	padding: 0 20px 60px;
	border-top: 56px solid transparent;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}
.wsk-hm .header-menu__in::-webkit-scrollbar { width: 8px; }
.wsk-hm .header-menu__in::-webkit-scrollbar-thumb {
	background: rgba(255,255,255,.25);
	border-radius: 4px;
}
.wsk-hm .header-menu__in::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,.5); }

.wsk-hm .mainmenu {
	list-style: none;
	margin: 0;
	padding: 16px 0;
	font: 400 22px/1.15 "Libre Caslon Display", Georgia, serif;
}
.wsk-hm .mainmenu li {
	display: flex;
	align-items: baseline;
	gap: 14px;
}
.wsk-hm .mainmenu li .marker {
	flex: 0 0 36px;
	width: 36px;
	padding: 10px 0;
	font: 700 18px/1 inherit;
	letter-spacing: .5px;
	background: var(--_g);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
}
.wsk-hm .mainmenu li a {
	padding: 14px 0;
	color: var(--wsk-hm-overlay-text);
	font: 400 22px/1.15 inherit;
	text-decoration: none;
	transition: color .2s ease-out, transform .2s ease-out;
}

.wsk-hm .footer__row-1 {
	padding: 14px 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
	border-top: 1px solid var(--wsk-hm-divider);
}
.wsk-hm .footer__row-1 ul,
.wsk-hm .footer__row-2 ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}
.wsk-hm .footer__row-2 {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 8px 0 24px;
}
.wsk-hm .footer__row-2 ul {
	flex-direction: column;
	gap: 14px;
}

.wsk-hm a.footer__logo {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
	height: var(--wsk-hm-overlay-logo-h);
}
.wsk-hm a.footer__logo img {
	position: static;
	display: block;
	height: 100%;
	width: auto;
	max-width: 100%;
	object-fit: contain;
	object-position: left center;
}
.wsk-hm a.footer__logo span {
	position: absolute;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	clip-path: inset(50%);
}

/* Social pills */
.wsk-hm .button__footer {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 6px 14px;
	min-height: 30px;
	font: 600 11px/1 inherit;
	letter-spacing: .5px;
	color: var(--wsk-hm-overlay-text);
	text-decoration: none;
	white-space: nowrap;
	border-radius: 100px;
	border: 1px solid var(--wsk-hm-marker-from);
	background: linear-gradient(93deg, rgba(153,107,85,.2) 5%, rgba(229,171,142,.2) 37%, rgba(229,171,142,.2) 63%, rgba(153,107,85,.2) 96%);
	transition: color .3s linear, background .3s linear, transform .25s var(--wsk-hm-ease);
}
.wsk-hm .button__footer:hover {
	color: #422F26;
	background: var(--_g);
	transform: translateY(-1px);
}
.wsk-hm .button__footer .glow { display: none; }

/* Contact rows (phone / email / address) */
.wsk-hm .button__phone,
.wsk-hm .button__email,
.wsk-hm .button__addr {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 6px 0;
	min-height: 44px;
	color: var(--wsk-hm-overlay-text);
	font-size: 16px;
	text-decoration: none;
	transition: color .2s ease-out;
}
.wsk-hm .button__phone:hover,
.wsk-hm .button__email:hover,
.wsk-hm .button__addr:hover { color: var(--wsk-hm-accent); }
.wsk-hm .button__phone svg,
.wsk-hm .button__email svg,
.wsk-hm .button__addr svg {
	flex: 0 0 auto;
	color: var(--wsk-hm-accent);
}

/* Defeat third-party email-obfuscation spans (class="wes") that replace our anchor. */
.wsk-hm .wes {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: var(--wsk-hm-overlay-text);
	font-size: 16px;
}
.wsk-hm .wes::before {
	content: "✉";
	color: var(--wsk-hm-accent);
	font-size: 24px;
	line-height: 1;
}

/* ─── Desktop overlay layout ───────────────────────────────── */

@media (min-width: 768px) {
	.wsk-hm .header-menu__container {
		width: calc(100% - 80px);
		max-width: 1400px;
	}
	.wsk-hm .header__menu-line {
		left: auto;
		right: 0;
		top: 0;
		height: 100%;
		width: 3px;
		background: linear-gradient(180deg, var(--wsk-hm-marker-from) 7%, var(--wsk-hm-marker-to) 38%, var(--wsk-hm-marker-to) 64%, var(--wsk-hm-marker-from) 97%);
		z-index: 12;
	}
	.wsk-hm .header-menu__top { height: 80px; }
	.wsk-hm .header__menubt .pc { display: inline-block; }
	.wsk-hm .header__menubt .mt { display: none; }

	.wsk-hm .header-menu__in {
		display: flex;
		align-items: center;
		border-top: 110px solid transparent;
		border-bottom: 30px solid transparent;
		padding: 0;
		overflow: hidden;
	}
	.wsk-hm .header-menu__col {
		flex: 0 0 50%;
		width: 50%;
		max-height: 100%;
		padding: 0 30px;
		overflow-y: auto;
	}
	.wsk-hm .header-menu__col:nth-child(1) { border-right: 2px solid var(--wsk-hm-divider); }
	.wsk-hm .header-menu__col:nth-child(2) {
		border-left: 2px solid var(--wsk-hm-divider);
		margin-left: -2px;
		flex: 0 0 calc(50% + 2px);
		width: calc(50% + 2px);
	}
	.wsk-hm .header-menu__col::-webkit-scrollbar { width: 8px; }
	.wsk-hm .header-menu__col::-webkit-scrollbar-thumb {
		background: rgba(255,255,255,.25);
		border-radius: 4px;
	}
	.wsk-hm .header-menu__col::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,.5); }

	.wsk-hm .mainmenu { padding: 0; }
	.wsk-hm .mainmenu li a:hover,
	.wsk-hm .mainmenu li a.active-hover {
		color: var(--wsk-hm-accent);
		transform: translateX(5px);
	}

	.wsk-hm .header-menu__col .footer__row-1 {
		border: 0;
		padding-top: 0;
		flex-direction: column;
		align-items: flex-start;
	}
	.wsk-hm .header-menu__col .footer__row-1 ul {
		flex-direction: row;
		flex-wrap: wrap;
		gap: 10px;
		margin-top: 40px;
	}
	.wsk-hm .header-menu__col .footer__row-2 ul {
		flex-direction: column;
		gap: 14px;
	}
}

@media (min-width: 1024px) {
	.wsk-hm .header-menu__col { padding: 0 80px; }
}

@media (min-width: 1024px) and (min-height: 720px) {
	.wsk-hm .mainmenu { font-size: clamp(28px, calc(var(--size-txt-h, 1px) * 32), 32px); }
	.wsk-hm .mainmenu li { display: flex; align-items: center; }
	.wsk-hm .mainmenu li .marker {
		width: clamp(44px, calc(var(--size-txt-h, 1px) * 95), 95px);
		flex: 0 0 clamp(44px, calc(var(--size-txt-h, 1px) * 95), 95px);
		font-size: clamp(24px, calc(var(--size-txt-h, 1px) * 38), 38px);
	}
	.wsk-hm .mainmenu li a {
		flex: 1;
		font-size: clamp(28px, calc(var(--size-txt-h, 1px) * 54), 54px);
	}
}

/* Overlay logo visibility — driven by modifier classes on .wsk-hm. */
@media (max-width: 766px) {
	.wsk-hm--no-overlay-logo-m a.footer__logo { display: none; }
	/* Collapse row-1 entirely when its only child (the logo) is hidden. */
	.wsk-hm--no-overlay-logo-m .footer__row-1 {
		padding: 10px 0;
		gap: 0;
	}
}
@media (min-width: 767px) {
	.wsk-hm--no-overlay-logo-d a.footer__logo { display: none; }
}

/* Respect reduced-motion preference. */
@media (prefers-reduced-motion: reduce) {
	.wsk-hm *, .wsk-hm *::before, .wsk-hm *::after {
		transition: none !important;
		animation: none !important;
	}
	.wsk-hm .header-menu__container { transform: translateX(0); }
}

/* ──────────────────────────────────────────────────────────────────────
   Editor-tunable typography per text block.
   Each block exposes the standard wsk_text_* CSS-var family. Empty vars
   (the default — admin made no selection) fall back to the upstream
   element styling defined above. Avada-cascade beat via !important on
   every var-driven property.
   ────────────────────────────────────────────────────────────────────── */

/* Burger / menu trigger label + overlay nav-item labels. */
.wsk-hm .header__menu span,
.wsk-hm .mainmenu li a,
.fusion-body .wsk-hm .header__menu span,
.fusion-body .wsk-hm .mainmenu li a {
	font-family: var(--wsk-hm-nav_label-font-family, inherit) !important;
	font-size: var(--wsk-hm-nav_label-font-size, inherit) !important;
	font-weight: var(--wsk-hm-nav_label-font-weight, inherit) !important;
	font-style: var(--wsk-hm-nav_label-font-style, inherit) !important;
	line-height: var(--wsk-hm-nav_label-line-height, inherit) !important;
	letter-spacing: var(--wsk-hm-nav_label-letter-spacing, inherit) !important;
	text-transform: var(--wsk-hm-nav_label-text-transform, inherit) !important;
	color: var(--wsk-hm-nav_label-color, currentColor) !important;
}

/* Close button label (desktop + mobile short variant). */
.wsk-hm .header__menubt span,
.fusion-body .wsk-hm .header__menubt span {
	font-family: var(--wsk-hm-close_text-font-family, inherit) !important;
	font-size: var(--wsk-hm-close_text-font-size, inherit) !important;
	font-weight: var(--wsk-hm-close_text-font-weight, inherit) !important;
	font-style: var(--wsk-hm-close_text-font-style, inherit) !important;
	line-height: var(--wsk-hm-close_text-line-height, inherit) !important;
	letter-spacing: var(--wsk-hm-close_text-letter-spacing, inherit) !important;
	text-transform: var(--wsk-hm-close_text-text-transform, inherit) !important;
	color: var(--wsk-hm-close_text-color, currentColor) !important;
}

/* CTA1 / CTA2 / mobile CTA labels. */
.wsk-hm .header__ct span,
.wsk-hm .header__mcta span,
.fusion-body .wsk-hm .header__ct span,
.fusion-body .wsk-hm .header__mcta span {
	font-family: var(--wsk-hm-cta_label-font-family, inherit) !important;
	font-size: var(--wsk-hm-cta_label-font-size, inherit) !important;
	font-weight: var(--wsk-hm-cta_label-font-weight, inherit) !important;
	font-style: var(--wsk-hm-cta_label-font-style, inherit) !important;
	line-height: var(--wsk-hm-cta_label-line-height, inherit) !important;
	letter-spacing: var(--wsk-hm-cta_label-letter-spacing, inherit) !important;
	text-transform: var(--wsk-hm-cta_label-text-transform, inherit) !important;
	color: var(--wsk-hm-cta_label-color, currentColor) !important;
}

/* Overlay contact column — phone, email text, address. */
.wsk-hm .button__phone,
.wsk-hm .wsk-hm__mail-text,
.wsk-hm .button__addr,
.fusion-body .wsk-hm .button__phone,
.fusion-body .wsk-hm .wsk-hm__mail-text,
.fusion-body .wsk-hm .button__addr {
	font-family: var(--wsk-hm-contact_text-font-family, inherit) !important;
	font-size: var(--wsk-hm-contact_text-font-size, inherit) !important;
	font-weight: var(--wsk-hm-contact_text-font-weight, inherit) !important;
	font-style: var(--wsk-hm-contact_text-font-style, inherit) !important;
	line-height: var(--wsk-hm-contact_text-line-height, inherit) !important;
	letter-spacing: var(--wsk-hm-contact_text-letter-spacing, inherit) !important;
	text-transform: var(--wsk-hm-contact_text-text-transform, inherit) !important;
	color: var(--wsk-hm-contact_text-color, currentColor) !important;
}
/**
 * WEPRO: Luxury Footer — element stylesheet.
 *
 * Every hardcoded color/size is exposed as a CSS custom property with
 * a sensible default fallback — so a zero-config drop-in renders with
 * a polished look, and any value can be overridden per-instance by
 * the PHP render setting inline style on the `.wsk-lf-shell` root.
 *
 * Tokens (with fallback defaults):
 *   --wsk-lf-bg              #0A1A33   footer background (navy)
 *   --wsk-lf-band-bg         #FFFFFF   monument band background
 *   --wsk-lf-band-text       #0A1A33   monument wordmark color
 *   --wsk-lf-on-dark         #FFFFFF   primary text on footer
 *   --wsk-lf-on-dark-soft    rgba(255,255,255,0.55)   secondary text
 *   --wsk-lf-on-dark-hush    rgba(255,255,255,0.32)   tertiary text
 *   --wsk-lf-divider         rgba(255,255,255,0.18)   hairlines
 *   --wsk-lf-marker-from     #996B55   bronze gradient start
 *   --wsk-lf-marker-to       #E5AB8E   bronze gradient end / hover
 *   --wsk-lf-accent          #E5AB8E   accent links / sweep dot
 *   --wsk-lf-inner-max       1400px    max-width of inner grid
 *   --wsk-lf-inner-padding   clamp(1.25rem, 4vw, 3rem)   side padding
 *   --wsk-lf-top-padding     clamp(5rem, 10vw, 10rem)    top padding
 *   --wsk-lf-main-size-d     35px      main-nav font size desktop
 *   --wsk-lf-main-size-m     28px      main-nav font size mobile
 *   --wsk-lf-main-weight     700       main-nav weight
 *   --wsk-lf-main-gap        5px       main-nav item gap
 *   --wsk-lf-sub-size        11px      secondary nav font size
 *   --wsk-lf-logo-maxh       100px     max logo height
 *   --wsk-lf-band-size       10cqi     monument band font size (cqi)
 *   --wsk-lf-band-weight     900       monument band weight
 *   --wsk-lf-band-padding-v  clamp(6px, 1.5vw, 14px)   band vertical padding
 *   --wsk-lf-band-stagger    120ms     letter-in stagger
 *   --wsk-lf-socials-gap     16px      social links gap
 *   --wsk-lf-legal-gap       16px      legal links gap
 */

/* ══════════════════════════════════════════════════════════════════════
 * Shell — full-bleed container (escapes Avada fusion-builder width cap).
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf-shell {
	position: relative;
	width: 100vw;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	/* Reserve headroom equal to the band's height so the fixed band doesn't
	   clip the footer's bottom row. Band font-size is 10cqi (~10vw text)
	   so this padding scales with viewport width to match. */
	padding-bottom: clamp(5rem, 10vw, 14rem);
}

.wsk-lf {
	position: relative;
	z-index: 2;
	isolation: isolate;
	width: 100%;
	padding: var(--wsk-lf-top-padding, clamp(5rem, 10vw, 10rem)) 0 0;
	background: var(--wsk-lf-bg, #0A1A33);
	color: var(--wsk-lf-on-dark, #ffffff);
	font-family: 'Inter', 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* ══════════════════════════════════════════════════════════════════════
 * Theme-override guard — Avada forces :hover color on footer anchors
 * via .fusion-row. Scope the on-dark palette here.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf a,
.fusion-row .wsk-lf a,
.fusion-row .wsk-lf a:link,
.fusion-row .wsk-lf a:visited {
	color: var(--wsk-lf-on-dark, #ffffff) !important;
	text-decoration: none !important;
}
.wsk-lf a:hover,
.wsk-lf a:focus,
.wsk-lf a:active,
.fusion-row .wsk-lf a:hover,
.fusion-row .wsk-lf a:focus {
	color: var(--wsk-lf-accent, #E5AB8E) !important;
	text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════════════════════
 * Top-rule sweep + laser dot (bronze signature).
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf__top-rule {
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 1px;
	z-index: 2;
	background: linear-gradient(90deg,
		transparent,
		color-mix(in srgb, var(--wsk-lf-marker-to, #E5AB8E) 30%, transparent) 20%,
		var(--wsk-lf-marker-to, #E5AB8E) 50%,
		color-mix(in srgb, var(--wsk-lf-marker-to, #E5AB8E) 30%, transparent) 80%,
		transparent);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 1.1s cubic-bezier(.2, .8, .2, 1);
}
.wsk-lf.is-revealed .wsk-lf__top-rule { transform: scaleX(1); }
.wsk-lf__top-rule::after {
	content: '';
	position: absolute;
	top: -3px; left: 0;
	width: 7px; height: 7px;
	border-radius: 50%;
	background: radial-gradient(circle, #fff 0%, var(--wsk-lf-marker-to, #E5AB8E) 45%, transparent 75%);
	box-shadow: 0 0 16px 4px color-mix(in srgb, var(--wsk-lf-marker-to, #E5AB8E) 60%, transparent);
	opacity: 0;
}
.wsk-lf.is-revealed .wsk-lf__top-rule::after {
	animation: wsk-lf-laser 1.2s cubic-bezier(.3, .1, .2, 1) .3s forwards;
}
@keyframes wsk-lf-laser {
	0%   { left: 0;    opacity: 0;   transform: scale(.6); }
	10%  {             opacity: 1;                         }
	85%  { left: 100%; opacity: 1;   transform: scale(1);  }
	95%  {             opacity: 1;   transform: scale(2.2);}
	100% { left: 100%; opacity: 0;   transform: scale(.8); }
}

/* ══════════════════════════════════════════════════════════════════════
 * Ambient WebGL particle layer (optional).
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf__ambient {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}
.wsk-lf__particles {
	position: absolute;
	inset: 0;
	pointer-events: none;
}
.wsk-lf__particles-canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	pointer-events: none;
	opacity: .55;
}

/* ══════════════════════════════════════════════════════════════════════
 * Inner wrapper — max-width + side padding.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf__inner {
	position: relative;
	z-index: 1;
	max-width: var(--wsk-lf-inner-max, 1400px);
	margin-left: auto !important;
	margin-right: auto !important;
	width: 100%;
	box-sizing: border-box;
	padding: 0 var(--wsk-lf-inner-padding, clamp(1.25rem, 4vw, 3rem));
}

/* ══════════════════════════════════════════════════════════════════════
 * TOP ZONE layout — mobile: single stack; desktop: 12-col grid.
 *   LEFT   = brand logo (cols 1–4, desktop only if enabled)
 *   CENTER = main-nav (big) row 1 + offices row 2 (cols 6–9)
 *   RIGHT  = secondary nav (cols 11–12)
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf__top {
	display: grid;
	grid-template-columns: 1fr;
	gap: 40px;
	padding-bottom: clamp(2.5rem, 4vw, 3.75rem);
}

.wsk-lf__brand { display: none; }
.wsk-lf__brand-link {
	display: inline-block;
	line-height: 0;
}
.wsk-lf__brand-logo {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: var(--wsk-lf-logo-maxh, 100px);
	object-fit: contain;
	opacity: .95;
	transition: opacity .3s cubic-bezier(.645,.045,.355,1);
}
.wsk-lf__brand-link:hover .wsk-lf__brand-logo,
.wsk-lf__brand-link:focus-visible .wsk-lf__brand-logo {
	opacity: 1;
}

@media (min-width: 900px) {
	.wsk-lf__top {
		grid-template-columns: repeat(12, minmax(0, 1fr));
		column-gap: 20px;
		row-gap: 90px;
		align-items: start;
	}
	.wsk-lf--has-logo .wsk-lf__brand    { display: block; grid-column: 1 / span 4; grid-row: 1; }
	.wsk-lf__main-nav { grid-column: 6 / span 2; grid-row: 1; }
	.wsk-lf__offices  { grid-column: 6 / span 4; grid-row: 2; }
	.wsk-lf__sub-nav  { grid-column: 11 / span 2; grid-row: 1; }
}

/* ══════════════════════════════════════════════════════════════════════
 * Main nav — big uppercase links.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf__main-nav {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--wsk-lf-main-gap, 5px);
}
.wsk-lf__main-nav a {
	font-family: inherit;
	font-style: normal;
	font-weight: var(--wsk-lf-main-weight, 700);
	line-height: 90%;
	letter-spacing: -.4px;
	text-transform: uppercase;
	font-size: var(--wsk-lf-main-size-m, 28px);
	color: var(--wsk-lf-on-dark, #ffffff);
	text-decoration: none;
	transition: color .3s cubic-bezier(.645,.045,.355,1);
}
@media (min-width: 900px) {
	.wsk-lf__main-nav a { font-size: var(--wsk-lf-main-size-d, 35px); }
}
.wsk-lf__main-nav a:hover,
.wsk-lf__main-nav a:focus-visible {
	color: var(--wsk-lf-marker-to, #E5AB8E);
}

/* ══════════════════════════════════════════════════════════════════════
 * Secondary nav — small uppercase links.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf__sub-nav {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
}
.wsk-lf__sub-nav a {
	font-family: inherit;
	font-weight: 600;
	font-size: var(--wsk-lf-sub-size, 11px);
	line-height: 90%;
	letter-spacing: .2px;
	text-transform: uppercase;
	color: var(--wsk-lf-on-dark, #ffffff);
	text-decoration: none;
	transition: color .3s cubic-bezier(.645,.045,.355,1);
}
.wsk-lf__sub-nav a:hover,
.wsk-lf__sub-nav a:focus-visible { color: var(--wsk-lf-marker-to, #E5AB8E); }

/* ══════════════════════════════════════════════════════════════════════
 * Offices — two side-by-side 11px blocks.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf__offices {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--wsk-lf-divider, rgba(255,255,255,0.18));
	margin-top: 30px;
}
.wsk-lf__offices .wsk-lf__office { flex: 0 0 auto; min-width: 0; }
@media (min-width: 900px) {
	.wsk-lf__offices {
		padding-top: 0;
		border-top: none;
		margin-top: 0;
	}
}
.wsk-lf__office {
	font-family: inherit;
	font-weight: 600;
	font-size: var(--wsk-lf-sub-size, 11px);
	line-height: 90%;
	letter-spacing: .2px;
	text-transform: uppercase;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.wsk-lf__office-title {
	margin: 0;
	color: var(--wsk-lf-on-dark, #ffffff);
	display: inline-flex;
	align-items: center;
	gap: 1px;
}
.wsk-lf__office-quote {
	position: relative;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	gap: 0;
}
.wsk-lf__office-quote::before,
.wsk-lf__office-quote::after {
	display: inline-block;
	font-family: inherit;
	transform: translateY(-7%);
	transition: .25s ease-out transform;
	font-weight: 600;
}
.wsk-lf__office-quote::before { content: '\3010'; }
.wsk-lf__office-quote::after  { content: '\3011'; }

.wsk-lf__office-addr {
	margin: 0;
	font-style: normal;
	font-weight: 500;
	line-height: 1.7;
	color: var(--wsk-lf-on-dark-soft, rgba(255,255,255,0.55));
	text-transform: none;
	letter-spacing: .01em;
}
.wsk-lf .wsk-lf__office-addr a,
.wsk-lf .wsk-lf__office-addr a:link,
.wsk-lf .wsk-lf__office-addr a:visited,
.fusion-row .wsk-lf .wsk-lf__office-addr a {
	color: var(--wsk-lf-on-dark-soft, rgba(255,255,255,0.55)) !important;
	text-decoration: none !important;
	font-weight: inherit;
	transition: color .25s ease;
}
.wsk-lf .wsk-lf__office-addr a:hover,
.wsk-lf .wsk-lf__office-addr a:focus,
.fusion-row .wsk-lf .wsk-lf__office-addr a:hover {
	color: var(--wsk-lf-on-dark, #ffffff) !important;
}

/* ══════════════════════════════════════════════════════════════════════
 * Bottom zone — copyright / socials / legal.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf__bottom {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	column-gap: 20px;
	row-gap: 15px;
	padding: 30px 0 20px;
	border-top: 1px solid var(--wsk-lf-divider, rgba(255,255,255,0.18));
	font-family: inherit;
	font-weight: 600;
	font-size: var(--wsk-lf-sub-size, 11px);
	letter-spacing: .2px;
	text-transform: uppercase;
	line-height: 90%;
}
.wsk-lf__copyright { grid-column: 1 / -1; grid-row: 3; margin-top: 50px; padding-top: 20px; border-top: 1px solid var(--wsk-lf-divider, rgba(255,255,255,0.18)); }
.wsk-lf__socials   { grid-column: 1 / -1; grid-row: 2; display: flex; align-items: flex-start; flex-wrap: wrap; gap: 10px; margin-top: 15px; }

/* Mobile (<900px): keep socials on a single row even with many accounts.
   Auto-shrinks font + gap so 7+ labels fit; container scrolls horizontally
   if even the smallest size overflows. Desktop layout is unchanged. */
@media (max-width: 899px) {
	.wsk-lf__socials {
		flex-wrap: nowrap !important;
		gap: clamp( 6px, 1.6vw, 14px ) !important;
		font-size: clamp( 8px, 2.2vw, 10px ) !important;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.wsk-lf__socials::-webkit-scrollbar { display: none; }
	.wsk-lf__socials a {
		flex: 0 0 auto;
		white-space: nowrap;
	}
}
.wsk-lf__legal     { grid-column: 1 / -1; grid-row: 1; display: flex; align-items: flex-start; flex-wrap: wrap; gap: 10px; }

@media (min-width: 900px) {
	.wsk-lf__copyright { grid-column: 1 / span 3; grid-row: 1; margin-top: 0; padding-top: 0; border-top: none; }
	.wsk-lf__socials   { grid-column: 5 / span 4; grid-row: 1; gap: var(--wsk-lf-socials-gap, 16px); margin-top: 0; }
	.wsk-lf__legal     { grid-column: 10 / span 3; grid-row: 1; justify-content: flex-end; gap: var(--wsk-lf-legal-gap, 16px); }
}

/* Copyright text — softer than the bottom-zone default. */
.wsk-lf__copyright {
	font-weight: 500;
	color: var(--wsk-lf-on-dark-soft, rgba(255,255,255,0.55));
	text-transform: none;
	letter-spacing: .01em;
	line-height: 1.7;
}
.wsk-lf__copyright p { margin: 0; font-weight: inherit; }
.wsk-lf__copyright p > span {
	display: block;
	color: var(--wsk-lf-on-dark-hush, rgba(255,255,255,0.32));
	margin-top: 3px;
}
/* Socials: uppercase (inherited from bottom zone), lighter weight, 1px smaller. */
.wsk-lf__socials { font-weight: 400; font-size: 10px; }
.wsk-lf__socials a {
	color: var(--wsk-lf-on-dark, #ffffff);
	text-decoration: none;
	font-weight: inherit;
	transition: color .3s cubic-bezier(.645,.045,.355,1);
}
.wsk-lf__socials a:hover { color: var(--wsk-lf-marker-to, #E5AB8E); }

.wsk-lf__legal a {
	color: var(--wsk-lf-on-dark, #ffffff);
	text-decoration: none;
	transition: color .3s cubic-bezier(.645,.045,.355,1);
}
.wsk-lf__legal a:hover { color: var(--wsk-lf-marker-to, #E5AB8E); }

/* ══════════════════════════════════════════════════════════════════════
 * MONUMENT BAND — fixed to viewport bottom, revealed near page end.
 * JS toggles `.is-band-visible` when user is within N px of page bottom
 * (N is configurable via the `band-reveal-distance` data attribute read
 * in luxury-footer.js).
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf__band {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 0;
	display: flex;
	width: 100%;
	padding: var(--wsk-lf-band-padding-v, clamp(6px, 1.5vw, 14px)) clamp(12px, 3vw, 3rem);
	background: var(--wsk-lf-band-bg, #FFFFFF);
	overflow: hidden;
	align-items: center;
	justify-content: flex-start;
	box-sizing: border-box;
	container-type: inline-size;
	pointer-events: none;
	transform: translate3d(0, 100%, 0);
	transition: transform .5s cubic-bezier(.2, .8, .2, 1);
	will-change: transform;
}
.wsk-lf__band.is-band-visible {
	transform: translate3d(0, 0, 0);
}
.wsk-lf__band-text {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	width: 100%;
	font-family: 'Inter', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: var(--wsk-lf-band-weight, 900);
	font-size: var(--wsk-lf-band-size, 10cqi);
	line-height: .85;
	letter-spacing: -.03em;
	text-transform: uppercase;
	white-space: nowrap;
	color: var(--wsk-lf-band-text, #0A1A33);
}
.wsk-lf__band-text > span {
	display: inline-block;
	flex: 0 0 auto;
	opacity: 0;
	transform: translate3d(0, 40%, 0);
}
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span {
	animation: wsk-lf-letter-in .7s cubic-bezier(.2, .8, .2, 1) forwards;
}
@keyframes wsk-lf-letter-in {
	from { opacity: 0; transform: translate3d(0, 40%, 0); }
	to   { opacity: 1; transform: translate3d(0, 0, 0); }
}
/* Per-letter stagger — the stagger step is set via custom property, but
   individual delays use nth-child so they compose correctly across the
   wordmark regardless of length (up to 20 glyphs). The JS reads the
   `--wsk-lf-band-stagger` value if the admin changes it. */
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(1)  { animation-delay: calc(0  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(2)  { animation-delay: calc(1  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(3)  { animation-delay: calc(2  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(4)  { animation-delay: calc(3  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(5)  { animation-delay: calc(4  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(6)  { animation-delay: calc(5  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(7)  { animation-delay: calc(6  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(8)  { animation-delay: calc(7  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(9)  { animation-delay: calc(8  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(10) { animation-delay: calc(9  * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(11) { animation-delay: calc(10 * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(12) { animation-delay: calc(11 * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(13) { animation-delay: calc(12 * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(14) { animation-delay: calc(13 * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(15) { animation-delay: calc(14 * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(16) { animation-delay: calc(15 * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(17) { animation-delay: calc(16 * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(18) { animation-delay: calc(17 * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(19) { animation-delay: calc(18 * var(--wsk-lf-band-stagger, 120ms)); }
.wsk-lf__band.is-band-visible .wsk-lf__band-text > span:nth-child(20) { animation-delay: calc(19 * var(--wsk-lf-band-stagger, 120ms)); }

/* ══════════════════════════════════════════════════════════════════════
 * Entrance reveals.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-lf [data-wsk-lf-reveal] {
	opacity: 0;
	transform: translateY(16px);
	transition: opacity .7s cubic-bezier(.2, .8, .2, 1),
		transform .7s cubic-bezier(.2, .8, .2, 1);
}
.wsk-lf.is-revealed [data-wsk-lf-reveal="1"] { transition-delay: 200ms; opacity: 1; transform: none; }
.wsk-lf.is-revealed [data-wsk-lf-reveal="2"] { transition-delay: 450ms; opacity: 1; transform: none; }

/* ══════════════════════════════════════════════════════════════════════
 * Mobile polish.
 * ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 720px) {
	.wsk-lf { padding-top: 3.5rem; }
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-lf *,
	.wsk-lf *::before,
	.wsk-lf *::after,
	.wsk-lf__band *,
	.wsk-lf__band *::before,
	.wsk-lf__band *::after {
		animation: none !important;
		transition: none !important;
	}
	.wsk-lf__top-rule { transform: scaleX(1); }
	.wsk-lf [data-wsk-lf-reveal] { opacity: 1; transform: none; }
	.wsk-lf__band-text { transform: none !important; }
	.wsk-lf__band-text > span { opacity: 1; transform: none; }
}

/* ──────────────────────────────────────────────────────────────────────
   Editor-tunable typography per text block.
   Each block exposes the standard wsk_text_* CSS-var family. Empty vars
   (admin made no selection) inherit upstream styling. Avada-cascade beat
   via !important on every var-driven property.
   ────────────────────────────────────────────────────────────────────── */

/* Main nav links. */
.wsk-lf .wsk-lf__main-nav a,
.fusion-body .wsk-lf .wsk-lf__main-nav a {
	font-family: var(--wsk-lf-nav-font-family, inherit) !important;
	font-size: var(--wsk-lf-nav-font-size, inherit) !important;
	font-weight: var(--wsk-lf-nav-font-weight, inherit) !important;
	font-style: var(--wsk-lf-nav-font-style, inherit) !important;
	line-height: var(--wsk-lf-nav-line-height, inherit) !important;
	letter-spacing: var(--wsk-lf-nav-letter-spacing, inherit) !important;
	text-transform: var(--wsk-lf-nav-text-transform, inherit) !important;
	color: var(--wsk-lf-nav-color, currentColor) !important;
}

/* Secondary nav + legal links. */
.wsk-lf .wsk-lf__sec-nav a,
.wsk-lf .wsk-lf__legal a,
.fusion-body .wsk-lf .wsk-lf__sec-nav a,
.fusion-body .wsk-lf .wsk-lf__legal a {
	font-family: var(--wsk-lf-sec-font-family, inherit) !important;
	font-size: var(--wsk-lf-sec-font-size, inherit) !important;
	font-weight: var(--wsk-lf-sec-font-weight, inherit) !important;
	font-style: var(--wsk-lf-sec-font-style, inherit) !important;
	line-height: var(--wsk-lf-sec-line-height, inherit) !important;
	letter-spacing: var(--wsk-lf-sec-letter-spacing, inherit) !important;
	text-transform: var(--wsk-lf-sec-text-transform, inherit) !important;
	color: var(--wsk-lf-sec-color, currentColor) !important;
}

/* Copyright + social labels + office body type. */
.wsk-lf .wsk-lf__copyright,
.wsk-lf .wsk-lf__copyright p,
.wsk-lf .wsk-lf__socials a,
.wsk-lf .wsk-lf__office,
.wsk-lf .wsk-lf__office-addr,
.fusion-body .wsk-lf .wsk-lf__copyright p,
.fusion-body .wsk-lf .wsk-lf__socials a,
.fusion-body .wsk-lf .wsk-lf__office-addr {
	font-family: var(--wsk-lf-copy-font-family, inherit) !important;
	font-size: var(--wsk-lf-copy-font-size, inherit) !important;
	font-weight: var(--wsk-lf-copy-font-weight, inherit) !important;
	font-style: var(--wsk-lf-copy-font-style, inherit) !important;
	line-height: var(--wsk-lf-copy-line-height, inherit) !important;
	letter-spacing: var(--wsk-lf-copy-letter-spacing, inherit) !important;
	text-transform: var(--wsk-lf-copy-text-transform, inherit) !important;
	color: var(--wsk-lf-copy-color, currentColor) !important;
}

/* Monument band display text. */
.wsk-lf .wsk-lf__band-text,
.fusion-body .wsk-lf .wsk-lf__band-text {
	font-family: var(--wsk-lf-band-font-family, inherit) !important;
	font-size: var(--wsk-lf-band-font-size, inherit) !important;
	font-weight: var(--wsk-lf-band-font-weight, inherit) !important;
	font-style: var(--wsk-lf-band-font-style, inherit) !important;
	line-height: var(--wsk-lf-band-line-height, inherit) !important;
	letter-spacing: var(--wsk-lf-band-letter-spacing, inherit) !important;
	text-transform: var(--wsk-lf-band-text-transform, inherit) !important;
	/* Color cascade: Typography-tab band_color (if set) → Colors-tab
	   color_band_text (--wsk-lf-band-text) → hardcoded fallback. The
	   Typography-tab var was previously the only one read, so admin's
	   Colors-tab "Band Text Color" picker had no effect. */
	color: var(--wsk-lf-band-color, var(--wsk-lf-band-text, #0A1A33)) !important;
}
/*! WEPRO Services Accordion — editorial hospitality accordion.
    Aman / Soho House / Le Bristol reference. Serif display type, Roman marker,
    asymmetric hero+rail gallery, hairline dividers, ghost CTA. */

.wsk-sa {
	/* Tokens with --wdt-* fallback — respects wepro-design-tokens when active. */
	--wsk-sa-ink:       var(--wdt-color-heading, #0B1320);
	--wsk-sa-ink-soft:  color-mix(in srgb, var(--wdt-color-heading, #0B1320) 62%, transparent);
	--wsk-sa-body:      var(--wdt-color-text, #2A2F3A);
	--wsk-sa-muted:     var(--wdt-color-text-muted, #7A7F8A);
	--wsk-sa-hair:      var(--wdt-color-border, rgba(11,19,32,0.12));
	--wsk-sa-accent:    var(--wdt-color-brand, #C9A96E);           /* champagne */
	--wsk-sa-accent-ink: color-mix(in srgb, var(--wdt-color-brand, #C9A96E) 72%, #000 28%);
	--wsk-sa-bg:        transparent;
	--wsk-sa-serif:     "Lora", "Cormorant Garamond", "Playfair Display", Georgia, serif;
	--wsk-sa-sans:      "Inter", "Outfit", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;

	display: block;
	margin: 0;
	padding: 0;
	color: var(--wsk-sa-body);
	font-family: var(--wsk-sa-sans);
	font-feature-settings: "ss01", "cv11";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.wsk-sa__list {
	display: flex;
	flex-direction: column;
	border-top: 1px solid var(--wsk-sa-hair);
}

/* ─── Item ─────────────────────────────────────────────────────── */
.wsk-sa__item {
	position: relative;
	display: block;
	border-bottom: 1px solid var(--wsk-sa-hair);
	transition: background-color .4s ease-out;
}

/* ─── Trigger (editorial masthead) ─────────────────────────────── */
.wsk-sa__trigger {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 10px 20px;
	width: 100%;
	min-height: 80px;
	padding: 22px 4px;
	margin: 0;
	background: transparent;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	text-align: left;
	color: inherit;
	font: inherit;
	transition: color .3s ease-out;
}

.wsk-sa__trigger:focus-visible {
	outline: 2px solid var(--wsk-sa-accent);
	outline-offset: 4px;
}

/* Left cluster: Roman marker + eyebrow/title stack. */
.wsk-sa__head {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: baseline;
	column-gap: 18px;
	min-width: 0;
}
.wsk-sa__marker {
	font-family: var(--wsk-sa-serif);
	font-style: italic;
	font-weight: 400;
	font-size: 0.95rem;
	color: var(--wsk-sa-accent);
	letter-spacing: 0.4px;
	line-height: 1;
	padding-top: 6px;
	min-width: 28px;
	transition: color .3s ease-out, transform .5s cubic-bezier(.22, 1, .36, 1);
}
.wsk-sa__head-text {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}
.wsk-sa__eyebrow,
.fusion-body .wsk-sa__eyebrow {
	font-family: var(--wsk-sa-eyebrow-font-family, var(--wsk-sa-sans)) !important;
	font-size: var(--wsk-sa-eyebrow-font-size, 0.68rem) !important;
	font-weight: var(--wsk-sa-eyebrow-font-weight, 600) !important;
	font-style: var(--wsk-sa-eyebrow-font-style, normal) !important;
	text-transform: var(--wsk-sa-eyebrow-text-transform, uppercase) !important;
	letter-spacing: var(--wsk-sa-eyebrow-letter-spacing, 1.6px) !important;
	color: var(--wsk-sa-eyebrow-color, var(--wsk-sa-muted)) !important;
	line-height: var(--wsk-sa-eyebrow-line-height, 1) !important;
	text-align: var(--wsk-sa-eyebrow-text-align, inherit) !important;
}
.wsk-sa__title,
.fusion-body .wsk-sa__title {
	font-family: var(--wsk-sa-title-font-family, var(--wsk-sa-serif)) !important;
	font-weight: var(--wsk-sa-title-font-weight, 500) !important;
	font-style: var(--wsk-sa-title-font-style, normal) !important;
	font-size: var(--wsk-sa-title-font-size, clamp(1.35rem, 2.4vw, 1.85rem)) !important;
	line-height: var(--wsk-sa-title-line-height, 1.15) !important;
	color: var(--wsk-sa-title-color, var(--wsk-sa-ink)) !important;
	letter-spacing: var(--wsk-sa-title-letter-spacing, -0.4px) !important;
	text-transform: var(--wsk-sa-title-text-transform, none) !important;
	text-align: var(--wsk-sa-title-text-align, inherit) !important;
	margin: 0 !important;
	transition: color .3s ease-out;
}

/* Right cluster: hours (tablet+ only) + circular toggle. */
.wsk-sa__meta {
	display: flex;
	align-items: center;
	gap: 18px;
	flex: 0 0 auto;
}
/* Base hours type — shared by mobile and desktop variants. */
.wsk-sa__hours,
.fusion-body .wsk-sa__hours {
	font-family: var(--wsk-sa-hours-font-family, var(--wsk-sa-sans)) !important;
	font-size: var(--wsk-sa-hours-font-size, 0.78rem) !important;
	font-weight: var(--wsk-sa-hours-font-weight, 400) !important;
	font-style: var(--wsk-sa-hours-font-style, normal) !important;
	letter-spacing: var(--wsk-sa-hours-letter-spacing, 0.3px) !important;
	text-transform: var(--wsk-sa-hours-text-transform, none) !important;
	color: var(--wsk-sa-hours-color, var(--wsk-sa-muted)) !important;
	line-height: var(--wsk-sa-hours-line-height, 1.4) !important;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

/* Mobile variant — pill under the title, hairline border. */
.wsk-sa__hours--mobile {
	display: inline-block;
	margin-top: 10px;
	padding: 5px 12px;
	font-size: 0.7rem;
	letter-spacing: 0.2px;
	border: 1px solid var(--wsk-sa-hair);
	border-radius: 999px;
	color: var(--wsk-sa-ink);
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Desktop variant — hidden until ≥640px; shown inline next to toggle. */
.wsk-sa__hours--desktop { display: none; }

.wsk-sa__toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1px solid var(--wsk-sa-hair);
	color: var(--wsk-sa-ink);
	background: transparent;
	flex: 0 0 auto;
	transition:
		transform .5s cubic-bezier(.22, 1, .36, 1),
		background-color .35s cubic-bezier(.22, 1, .36, 1),
		border-color .35s cubic-bezier(.22, 1, .36, 1),
		color .35s cubic-bezier(.22, 1, .36, 1),
		box-shadow .35s cubic-bezier(.22, 1, .36, 1);
}

.wsk-sa__trigger:hover .wsk-sa__title { color: var(--wsk-sa-accent-ink); }
.wsk-sa__trigger:hover .wsk-sa__toggle {
	border-color: var(--wsk-sa-accent);
	color: var(--wsk-sa-accent-ink);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

/* Open state — tactile, not flat. Soft shadow + slight ink lift instead of
   solid pure-black so it reads as an interactive element, not a modal close. */
.wsk-sa__item--open .wsk-sa__toggle {
	transform: rotate(135deg);
	background: rgba(0, 0, 0, 0.88);
	border-color: rgba(0, 0, 0, 0.88);
	color: #fff;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
}
.wsk-sa__item--open .wsk-sa__marker { color: var(--wsk-sa-accent-ink); }
.wsk-sa__item--open .wsk-sa__title { color: var(--wsk-sa-accent-ink); }

/* ─── Panel (collapsible) ──────────────────────────────────────── */
.wsk-sa__panel {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows .55s cubic-bezier(.22, 1, .36, 1);
}
.wsk-sa__panel-inner {
	overflow: hidden;
	min-height: 0;
	padding: 0 0 40px;
	opacity: 0;
	transform: translateY(6px);
	transition: opacity .5s ease-out .12s, transform .55s cubic-bezier(.22, 1, .36, 1) .12s;
}
.wsk-sa__item--open .wsk-sa__panel { grid-template-rows: 1fr; }
.wsk-sa__item--open .wsk-sa__panel-inner {
	opacity: 1;
	transform: translateY(0);
}

/* Max-height fallback for browsers without grid-rows-animation support. */
@supports not (grid-template-rows: 0fr) {
	.wsk-sa__panel {
		display: block;
		overflow: hidden;
		max-height: 0;
		transition: max-height .55s cubic-bezier(.22, 1, .36, 1);
	}
	.wsk-sa__item--open .wsk-sa__panel { max-height: 3000px; }
}

/* ─── Panel layout — mobile: stacked (prose → slider). Desktop: side-by-side. ─── */
.wsk-sa__panel-inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
}

/* Prose column — constrained reading measure, aligned to title column. */
.wsk-sa__prose {
	margin-left: 46px;                       /* aligns with title (past Roman-marker column) */
	max-width: 58ch;
}
.wsk-sa__description,
.fusion-body .wsk-sa__description {
	font-family: var(--wsk-sa-description-font-family, var(--wsk-sa-sans)) !important;
	font-size: var(--wsk-sa-description-font-size, 1rem) !important;
	font-weight: var(--wsk-sa-description-font-weight, 400) !important;
	font-style: var(--wsk-sa-description-font-style, normal) !important;
	line-height: var(--wsk-sa-description-line-height, 1.72) !important;
	letter-spacing: var(--wsk-sa-description-letter-spacing, normal) !important;
	text-transform: var(--wsk-sa-description-text-transform, none) !important;
	text-align: var(--wsk-sa-description-text-align, inherit) !important;
	color: var(--wsk-sa-description-color, var(--wsk-sa-body)) !important;
}
.wsk-sa__description p { margin: 0 0 1.1em; }
.wsk-sa__description p:last-child { margin-bottom: 0; }
.wsk-sa__description a {
	color: var(--wsk-sa-accent-ink);
	text-decoration: none;
	border-bottom: 1px solid var(--wsk-sa-accent);
	padding-bottom: 1px;
	transition: border-color .25s ease-out, color .25s ease-out;
}
.wsk-sa__description a:hover { color: var(--wsk-sa-ink); border-color: var(--wsk-sa-ink); }

/* CTA — ghost link with arrow. */
.wsk-sa__cta {
	display: inline-flex;
	align-items: baseline;
	gap: 12px;
	margin-top: 26px;
	padding-bottom: 8px;
	color: var(--wsk-sa-ink);
	font-family: var(--wsk-sa-sans);
	font-size: 0.78rem;
	font-weight: 600;
	letter-spacing: 2.2px;
	text-transform: uppercase;
	text-decoration: none !important;
	border-bottom: 1px solid var(--wsk-sa-ink);
	transition: color .3s ease-out, border-color .3s ease-out, gap .3s cubic-bezier(.22, 1, .36, 1);
}
.wsk-sa__cta-arrow {
	display: inline-block;
	font-size: 1rem;
	line-height: 1;
	transition: transform .35s cubic-bezier(.22, 1, .36, 1);
}
.wsk-sa__cta:hover {
	color: var(--wsk-sa-accent-ink);
	border-color: var(--wsk-sa-accent);
	gap: 16px;
}
.wsk-sa__cta:hover .wsk-sa__cta-arrow { transform: translateX(4px); }
.wsk-sa__cta:focus-visible {
	outline: 2px solid var(--wsk-sa-accent);
	outline-offset: 4px;
	border-bottom-color: transparent;
}

/* ─── Gallery: editorial peek-slider (Marmara / Aman reference) ──── */
.wsk-sa__gallery {
	position: relative;
	display: block;
}

/* Full-bleed the slider out of the grid column so the next slide peeks
   naturally beyond the right edge of the prose column. */
.wsk-sa__swiper {
	position: relative;
	width: 100%;
	overflow: hidden;
	background: transparent;
}
.wsk-sa__swiper .swiper-wrapper { display: flex; }

/* slidesPerView: 'auto' → each slide sizes itself via this max-width.
   Next slide's left edge peeks in beyond the active slide's right edge. */
.wsk-sa__swiper .swiper-slide {
	flex-shrink: 0;
	width: 100%;
	max-width: 640px;   /* mobile cap — tuned by breakpoint below */
	height: auto;
}

/* Aspect-ratio landscape (Marmara 100/73). Mobile has a sensible height cap;
   desktop cap lives in the ≥960px breakpoint. */
.wsk-sa__slide-img-wrap {
	position: relative;
	width: 100%;
	aspect-ratio: 100 / 73;
	max-height: 400px;
	overflow: hidden;
	background: transparent;
}
.wsk-sa__slide-img-wrap img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	border: 0 !important;
	box-shadow: none !important;
}

/* ─── Slider controls — overlay counter + paired arrows ─────────
   Counter is anchored to the bottom-right of the active image as a
   hairline white-on-glass badge (luxury hospitality pattern). Arrows
   sit tight below the gallery, no wasted vertical space. */
.wsk-sa__swiper {
	position: relative;
}
.wsk-sa__slider-counter {
	position: absolute;
	right: 16px;
	bottom: 16px;
	z-index: 4;
	pointer-events: none;
	display: inline-flex;
	align-items: center;
	padding: 8px 14px;
	font-family: "Cormorant Garamond", Georgia, serif;
	font-style: italic;
	font-weight: 400;
	font-size: 14px;
	letter-spacing: 0.04em;
	line-height: 1;
	color: #fff;
	background: rgba(0, 0, 0, 0.32);
	-webkit-backdrop-filter: blur(8px) saturate(140%);
	backdrop-filter: blur(8px) saturate(140%);
	border: 1px solid rgba(255, 255, 255, 0.18);
	font-variant-numeric: tabular-nums;
}
.wsk-sa__slider-counter-current,
.wsk-sa__slider-counter-total {
	display: inline-block;
}
.wsk-sa__slider-counter-sep {
	margin: 0 4px;
	opacity: 0.65;
}
@media (min-width: 768px) {
	.wsk-sa__slider-counter {
		right: 22px;
		bottom: 22px;
		padding: 9px 16px;
		font-size: 15px;
	}
}

.wsk-sa__slider-arrows {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	margin-top: 24px;
}
.wsk-sa__slider-btn {
	appearance: none;
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	border: 1px solid var(--wsk-sa-hair);
	background: transparent;
	color: var(--wsk-sa-ink);
	cursor: pointer;
	padding: 0;
	overflow: hidden;
	transition:
		background-color .35s cubic-bezier(.22, 1, .36, 1),
		border-color .35s cubic-bezier(.22, 1, .36, 1),
		color .35s cubic-bezier(.22, 1, .36, 1),
		box-shadow .35s cubic-bezier(.22, 1, .36, 1);
}
.wsk-sa__slider-btn:hover {
	background: var(--wsk-sa-ink);
	border-color: var(--wsk-sa-ink);
	color: #fff;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
}
.wsk-sa__slider-btn:focus-visible {
	outline: 2px solid var(--wsk-sa-accent);
	outline-offset: 3px;
}
.wsk-sa__slider-btn[aria-disabled="true"],
.wsk-sa__slider-btn.swiper-button-disabled {
	opacity: .25;
	pointer-events: none;
	cursor: default;
}
.wsk-sa__slider-btn svg {
	width: 22px;
	height: 14px;
	display: block;
	overflow: visible;
}
/* Line-extension on hover: the shaft slides outward toward the head,
   then the head pulses in. Pure CSS, GPU-friendly, 280ms total. */
.wsk-sa__arrow-shaft,
.wsk-sa__arrow-head {
	transition:
		transform .35s cubic-bezier(.22, 1, .36, 1),
		opacity .25s ease-out;
	transform-origin: center;
}
.wsk-sa__slider-btn--prev .wsk-sa__arrow-shaft { transform-origin: right center; }
.wsk-sa__slider-btn--next .wsk-sa__arrow-shaft { transform-origin: left center; }
.wsk-sa__slider-btn:hover .wsk-sa__arrow-shaft  { transform: scaleX(1.18); }
.wsk-sa__slider-btn--prev:hover .wsk-sa__arrow-head { transform: translateX(-2px); }
.wsk-sa__slider-btn--next:hover .wsk-sa__arrow-head { transform: translateX(2px); }

/* ─── Tablet (≥640px) ──────────────────────────────────────────── */
@media (min-width: 640px) {
	/* Switch from mobile pill (under title) to inline text hours (right, next to toggle). */
	.wsk-sa__hours--mobile  { display: none; }
	.wsk-sa__hours--desktop { display: inline-block; }
	.wsk-sa__prose          { max-width: 64ch; }
}

/* ─── Tablet (≥768px) — wider slide peek, bigger type ──────────── */
@media (min-width: 768px) {
	.wsk-sa__swiper .swiper-slide { max-width: 860px; }
}

/* ─── Desktop (≥960px) — editorial masthead, wider slider ──────── */
@media (min-width: 960px) {
	.wsk-sa__trigger {
		min-height: 72px;
		padding: 18px 4px;
		gap: 12px 32px;
	}
	.wsk-sa__marker { font-size: 0.95rem; min-width: 30px; padding-top: 6px; }
	.wsk-sa__title  { font-size: 1.65rem; }
	.wsk-sa__hours  { font-size: 0.82rem; letter-spacing: 0.4px; }
	.wsk-sa__toggle { width: 40px; height: 40px; }

	/* Desktop split: prose left, slider right — slider naturally shrinks
	   to share horizontal space with prose. */
	.wsk-sa__panel-inner {
		grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
		gap: 40px 56px;
		padding-bottom: 64px;
		align-items: start;
	}
	.wsk-sa__prose {
		margin-left: 52px;
		max-width: 60ch;
	}
	.wsk-sa__description { font-size: 1.05rem; line-height: 1.78; }
	.wsk-sa__slider-arrows { margin-top: 28px; }

	/* Slider lives in right column — max-width becomes the column width,
	   height cap stops anything too tall. */
	.wsk-sa__swiper .swiper-slide { max-width: 640px; }
	.wsk-sa__slide-img-wrap { max-height: 560px; }
}

/* ─── Wide desktop (≥1200px) — tiny slider tuning ──────────── */
@media (min-width: 1200px) {
	.wsk-sa__swiper .swiper-slide { max-width: 720px; }
	.wsk-sa__slide-img-wrap { max-height: 620px; }
}

/* ─── Reduced motion ───────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-sa__panel,
	.wsk-sa__panel-inner,
	.wsk-sa__toggle,
	.wsk-sa__title,
	.wsk-sa__marker,
	.wsk-sa__slide-img-wrap img,
	.wsk-sa__slider-btn,
	.wsk-sa__cta,
	.wsk-sa__cta-arrow,
	.wsk-sa__item {
		transition: none !important;
		animation: none !important;
	}
	.wsk-sa__swiper .swiper-slide-active .wsk-sa__slide-img-wrap img {
		transform: none;
	}
}

/* === Avada cascade lockdown (audit check #28b) ===
   Avada's compiled fusion-styles/*.min.css re-declares .swiper-* rules
   that can override these. Locking them with !important so the cascade
   can't beat us, even on sites with "Compile CSS Files" enabled. */
.wsk-sa__swiper .swiper-slide {
	flex-shrink: 0 !important;
	height: auto !important;
}
.wsk-sa__swiper .swiper-pagination {
	position: relative !important;
	bottom: auto !important;
	top: auto !important;
}
.wsk-sa__swiper .swiper-pagination-bullet {
	transform: none !important;
}
.wsk-sa__slider-btn.swiper-button-disabled {
	opacity: 0.4 !important;
	pointer-events: none !important;
}
/**
 * WEPRO: Rooms Tabs
 *
 * Port of vstt-property-hub rooms-tabs.css with wsk-* namespace and
 * --wsk-rt-* CSS custom-property tokenisation. Breakpoints and hardcoded
 * values mirror the original for zero visual regression (R5). Future pass:
 * invert max-width queries to mobile-first min-width (see element docs).
 */

.wsk-rooms-tabs {
	background: var(--wsk-rt-bg, #06162E);
	color: #fff;
	position: relative;
	overflow: hidden;
}

.wsk-rooms-tabs::before {
	content: '';
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image:
		radial-gradient(1px 1px at 10% 20%,  rgba(255,255,255,.4) 50%, transparent 100%),
		radial-gradient(1px 1px at 30% 65%,  rgba(255,255,255,.3) 50%, transparent 100%),
		radial-gradient(1px 1px at 55% 15%,  rgba(255,255,255,.25) 50%, transparent 100%),
		radial-gradient(1px 1px at 70% 80%,  rgba(255,255,255,.35) 50%, transparent 100%),
		radial-gradient(1px 1px at 85% 35%,  rgba(255,255,255,.3) 50%, transparent 100%),
		radial-gradient(1px 1px at 45% 50%,  rgba(255,255,255,.2) 50%, transparent 100%),
		radial-gradient(1px 1px at 90% 60%,  rgba(255,255,255,.3) 50%, transparent 100%);
	background-size: 250px 250px;
	z-index: 0;
}

.wsk-rooms-tabs > * { position: relative; z-index: 1; }

.wsk-rooms-tabs * { box-sizing: border-box; }

.wsk-rooms-tabs__contain {
	margin: 0 auto;
	max-width: var(--wsk-rt-max-width, 1440px);
	padding: 72px 64px 86px;
	position: relative;
}

.wsk-rooms-tabs__cover {
	background: var(--wsk-rt-bg, #06162E);
	height: 100%;
	margin-right: -64px;
	position: absolute;
	right: 100%;
	top: 0;
	width: 100%;
	z-index: 3;
}

/* Section title — Avada h2 defaults a 1.33em top/bottom margin that blows out the
   layout; !important on size/color/margin matches the hub reference strategy. All
   typography is editable via the Section Title Typography block. */
.wsk-rooms-tabs .wsk-rooms-tabs__header,
.wsk-rooms-tabs h1.wsk-rooms-tabs__header,
.wsk-rooms-tabs h2.wsk-rooms-tabs__header,
.wsk-rooms-tabs h3.wsk-rooms-tabs__header,
.wsk-rooms-tabs h4.wsk-rooms-tabs__header,
.wsk-rooms-tabs h5.wsk-rooms-tabs__header,
.wsk-rooms-tabs h6.wsk-rooms-tabs__header {
	font-family: var(--wsk-rt-heading-font-family, inherit);
	font-size: var(--wsk-rt-heading-font-size, clamp(2rem, 3.5vw, 56px)) !important;
	font-weight: var(--wsk-rt-heading-font-weight, 300);
	font-style: var(--wsk-rt-heading-font-style, normal);
	line-height: var(--wsk-rt-heading-line-height, 1.1);
	letter-spacing: var(--wsk-rt-heading-letter-spacing, -1px);
	text-transform: var(--wsk-rt-heading-text-transform, none);
	color: var(--wsk-rt-heading-color, #ffffff) !important;
	text-align: var(--wsk-rt-heading-text-align, left) !important;
	margin: var(--wsk-rt-heading-margin-top, 0) 0 var(--wsk-rt-heading-margin-bottom, 48px) !important;
	padding: 0 !important;
}

/* Tablist */
.wsk-rooms-tabs__tabs {
	position: relative;
}

.wsk-rooms-tabs__tablist {
	display: flex;
	gap: 40px;
	justify-content: flex-start;
	padding: 0 0 12px;
	position: relative;
}

.wsk-rooms-tabs__tablist::after {
	border-bottom: 0.5px solid rgba(255,255,255,0.2);
	bottom: 0;
	content: "";
	height: 0.5px;
	left: 0;
	position: absolute;
	width: 100%;
}

/* Tab button — `!important` on padding + line-height defends against any theme
   or plugin that targets generic <button>. The ::before pseudo (24px inflation
   on all sides) provides touch-safe hit area without altering visible text. */
.wsk-rooms-tabs button.wsk-rooms-tabs__tab,
.wsk-rooms-tabs .wsk-rooms-tabs__tab {
	background: transparent;
	border: 0 !important;
	color: #fff;
	cursor: pointer;
	font-family: inherit;
	font-size: 12px;
	font-weight: 400;
	height: auto !important;
	letter-spacing: 0.5px;
	line-height: 1 !important;
	margin: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	position: relative;
	text-transform: uppercase;
}

.wsk-rooms-tabs__tab::before {
	bottom: -12px;
	content: "";
	display: block;
	height: calc(100% + 24px);
	left: -12px;
	position: absolute;
	right: -12px;
	top: -12px;
	width: calc(100% + 24px);
}

.wsk-rooms-tabs__tab::after {
	border-bottom: 1px solid #fff;
	bottom: -12px;
	content: "";
	height: 1px;
	left: 0;
	opacity: 0;
	position: absolute;
	transition: opacity 0.3s ease;
	width: 100%;
}

.wsk-rooms-tabs__tab:hover::after,
.wsk-rooms-tabs__tab:focus-visible::after,
.wsk-rooms-tabs__tab[aria-selected="true"]::after {
	opacity: 1;
}

.wsk-rooms-tabs__tab:focus-visible { outline: none; }

/* Panels */
.wsk-rooms-tabs__tabpanels {
	margin-top: 56px;
	position: relative;
}

.wsk-rooms-tabs__tabpanel[aria-hidden="true"] {
	display: none;
}

/* Swiper overrides — higher specificity than Swiper's own .swiper rule (0,1,0).
   The `.swiper.wsk-rooms-tabs__swiper` selector is (0,2,0), with the outer
   `.wsk-rooms-tabs` ancestor giving (0,3,0) total — beats Swiper's stylesheet
   regardless of load order. Also enqueued with wsk-swiper as dep, so we load
   second by default. */
.wsk-rooms-tabs .swiper.wsk-rooms-tabs__swiper {
	margin-right: -64px;
	overflow: visible;
	padding-right: 60%;
}

.wsk-rooms-tabs__swiper .swiper-slide {
	margin: auto;
	transform: scale(0.9, 0.8);
	transition: transform 0.6s ease;
}

.wsk-rooms-tabs__swiper .swiper-slide.swiper-slide-active {
	transform: scale(1);
}

/* Slide details */
.wsk-rooms-tabs__details {
	margin-right: -5.5%;
	position: relative;
}

.wsk-rooms-tabs__details::before {
	background: linear-gradient(180deg, transparent, rgba(0,0,0,0.5));
	content: "";
	display: block;
	opacity: 0;
	padding-top: 69.8795%;
	width: 100%;
}

.wsk-rooms-tabs__details img {
	bottom: 0;
	height: 100%;
	left: 0;
	object-fit: cover;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: -1;
}

.wsk-rooms-tabs__details_contain {
	align-items: flex-end;
	bottom: 0;
	display: flex;
	gap: 24px;
	height: 100%;
	justify-content: space-between;
	left: 0;
	opacity: 0;
	padding: 24px 15px 24px 24px;
	position: absolute;
	transition: opacity 0.6s ease, visibility 0.6s ease;
	visibility: hidden;
	width: 100%;
	z-index: 3;
}

.wsk-rooms-tabs__swiper .swiper-slide.swiper-slide-active .wsk-rooms-tabs__details { margin-right: 0; }
.wsk-rooms-tabs__swiper .swiper-slide.swiper-slide-active .wsk-rooms-tabs__details::before { opacity: 1; }
.wsk-rooms-tabs__swiper .swiper-slide.swiper-slide-active .wsk-rooms-tabs__details_contain {
	opacity: 1;
	visibility: visible;
}

.wsk-rooms-tabs__details_content {
	display: flex;
	flex-flow: column nowrap;
	gap: 12px;
}

/* Slide title — Avada styles h4 globally (color, margin 1.33em, line-height).
   !important on size + margin + color matches the hub reference strategy and
   beats Avada cleanly. All typography is editable via the Slide Title Typography
   block on the element; CSS var fallbacks preserve the hub defaults. */
.wsk-rooms-tabs .wsk-rooms-tabs__details_title,
.wsk-rooms-tabs h1.wsk-rooms-tabs__details_title,
.wsk-rooms-tabs h2.wsk-rooms-tabs__details_title,
.wsk-rooms-tabs h3.wsk-rooms-tabs__details_title,
.wsk-rooms-tabs h4.wsk-rooms-tabs__details_title,
.wsk-rooms-tabs h5.wsk-rooms-tabs__details_title,
.wsk-rooms-tabs h6.wsk-rooms-tabs__details_title {
	font-family: var(--wsk-rt-slide_title-font-family, inherit);
	font-size: var(--wsk-rt-slide_title-font-size, 32px) !important;
	font-weight: var(--wsk-rt-slide_title-font-weight, 400);
	font-style: var(--wsk-rt-slide_title-font-style, normal);
	line-height: var(--wsk-rt-slide_title-line-height, 1.2);
	letter-spacing: var(--wsk-rt-slide_title-letter-spacing, normal);
	text-transform: var(--wsk-rt-slide_title-text-transform, none);
	color: var(--wsk-rt-slide_title-color, #ffffff) !important;
	text-align: var(--wsk-rt-slide_title-text-align, left) !important;
	margin: 0 !important;
}

.wsk-rooms-tabs__details_buttons {
	display: flex;
	flex-direction: row;   /* R11 — never stack buttons into a column on desktop */
	flex-wrap: wrap;
	gap: 12px;
}

/* CTA button — Avada styles anchor tags globally (color, border, padding, line-height).
   The three !important declarations below match the hub reference exactly; without them
   Avada's theme CSS wins on selector specificity. Other properties use parent-child
   selector + higher specificity (0,2,0) to avoid further !important. */
.wsk-rooms-tabs a.wsk-rooms-tabs__btn {
	background: transparent;
	border: 1px solid #fff !important;
	box-sizing: border-box;
	color: #fff !important;
	cursor: pointer;
	display: inline-block;
	font-family: inherit;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.06em;
	line-height: 12px;
	margin: 0;
	padding: 9px 13px;     /* matches hub reference — ~30px computed height */
	text-decoration: none !important;
	text-transform: uppercase;
	transition: background 0.3s ease, color 0.3s ease;
}

.wsk-rooms-tabs a.wsk-rooms-tabs__btn:hover,
.wsk-rooms-tabs a.wsk-rooms-tabs__btn:focus-visible {
	background: #fff;
	color: var(--wsk-rt-bg, #06162E) !important;
	outline: none;
}

/* Function row (pagination + nav) */
.wsk-rooms-tabs__function {
	align-items: center;
	display: flex;
	gap: 32px;
	justify-content: space-between;
	margin-top: 48px;
	position: relative;
}

.wsk-rooms-tabs__pagination {
	align-items: center;
	color: rgba(255,255,255,0.8);
	display: flex;
	flex: 1 1 100%;
	font-family: inherit;
	font-size: 14px;
	font-weight: 400;
	gap: 47px;
	letter-spacing: 0.08em;
	line-height: 1.4;
}

.wsk-rooms-tabs__pagination::after {
	border-top: 1px solid rgba(255,255,255,0.25);
	content: "";
	flex: 1 1 100%;
	height: 1px;
	position: relative;
	width: 100%;
}

.wsk-rooms-tabs__nav {
	align-items: center;
	display: flex;
	flex-shrink: 0;
	gap: 16px;
	justify-content: center;
}

.wsk-rooms-tabs__prev,
.wsk-rooms-tabs__next {
	align-items: center;
	background: transparent;
	border: 1px solid rgba(255,255,255,0.4);
	border-radius: 50%;
	color: #fff;
	cursor: pointer;
	display: flex;
	font-size: 18px;
	height: 64px;
	justify-content: center;
	line-height: 1;
	transition: background 0.3s ease, border-color 0.3s ease, color 0.3s ease;
	width: 64px;
}

.wsk-rooms-tabs__prev:hover,
.wsk-rooms-tabs__prev:focus-visible,
.wsk-rooms-tabs__next:hover,
.wsk-rooms-tabs__next:focus-visible {
	background: linear-gradient(91deg, #996B55 25%, #E5AB8E 42%, #E5AB8E 58%, #996B55 75%);
	border-color: transparent;
	outline: none;
}

.wsk-rooms-tabs__prev[aria-disabled="true"],
.wsk-rooms-tabs__next[aria-disabled="true"] {
	opacity: 0.3;
	pointer-events: none;
}

/* Responsive — tablet */
@media (max-width: 1024px) {
	.wsk-rooms-tabs__contain { padding: 48px 32px 64px; }
	.wsk-rooms-tabs__cover { margin-right: -32px; }
	.wsk-rooms-tabs .wsk-rooms-tabs__header {
		font-size: var(--wsk-rt-heading-font-size-md, var(--wsk-rt-heading-font-size, 48px)) !important;
		margin: 0 0 40px !important;
	}
	.wsk-rooms-tabs__tablist { gap: 24px; }
	.wsk-rooms-tabs__tabpanels { margin-top: 32px; }
	.wsk-rooms-tabs__swiper { margin-right: -32px; padding-right: 30%; }
	.wsk-rooms-tabs__prev,
	.wsk-rooms-tabs__next { height: 48px; width: 48px; font-size: 16px; }
}

/* Responsive — mobile */
@media (max-width: 640px) {
	.wsk-rooms-tabs__contain { padding: 36px 20px 48px; }
	.wsk-rooms-tabs__cover { margin-right: -20px; }
	.wsk-rooms-tabs .wsk-rooms-tabs__header {
		font-size: var(--wsk-rt-heading-font-size-sm, var(--wsk-rt-heading-font-size-md, var(--wsk-rt-heading-font-size, 32px))) !important;
		letter-spacing: -1px;
		margin: 0 0 28px !important;
	}
	.wsk-rooms-tabs__tablist { gap: 16px; }
	.wsk-rooms-tabs__tab { font-size: 11px; }
	.wsk-rooms-tabs__tabpanels { margin-top: 24px; }

	/* Full active slide + thin peek of next. Specificity matches the desktop
	   base rule (0,3,0) so it wins over `.wsk-rooms-tabs .swiper.wsk-rooms-tabs__swiper`. */
	.wsk-rooms-tabs .swiper.wsk-rooms-tabs__swiper {
		margin-right: -20px;
		padding-right: 12%;
		overflow: visible;
	}
	.wsk-rooms-tabs__swiper .swiper-slide { transform: scale(1); }

	.wsk-rooms-tabs__details { margin-right: 0; }
	.wsk-rooms-tabs__details::before { padding-top: 140%; }

	/* Always visible overlay on mobile — centered */
	.wsk-rooms-tabs__swiper .swiper-slide .wsk-rooms-tabs__details_contain,
	.wsk-rooms-tabs__swiper .swiper-slide.swiper-slide-active .wsk-rooms-tabs__details_contain {
		opacity: 1;
		visibility: visible;
		flex-flow: column nowrap;
		align-items: center;
		justify-content: center;
		gap: 24px;
		padding: 24px 20px;
		text-align: center;
	}
	.wsk-rooms-tabs__swiper .swiper-slide .wsk-rooms-tabs__details::before { opacity: 1; }

	.wsk-rooms-tabs__details_content {
		align-items: center;
		text-align: center;
		width: 100%;
	}
	.wsk-rooms-tabs .wsk-rooms-tabs__details_title,
	.wsk-rooms-tabs h1.wsk-rooms-tabs__details_title,
	.wsk-rooms-tabs h2.wsk-rooms-tabs__details_title,
	.wsk-rooms-tabs h3.wsk-rooms-tabs__details_title,
	.wsk-rooms-tabs h4.wsk-rooms-tabs__details_title,
	.wsk-rooms-tabs h5.wsk-rooms-tabs__details_title,
	.wsk-rooms-tabs h6.wsk-rooms-tabs__details_title {
		font-size: var(--wsk-rt-slide_title-font-size-sm, var(--wsk-rt-slide_title-font-size, 40px)) !important;
		line-height: 1.1;
		letter-spacing: -0.02em;
		text-align: var(--wsk-rt-slide_title-text-align-sm, var(--wsk-rt-slide_title-text-align, center)) !important;
	}
	.wsk-rooms-tabs__details_buttons {
		flex-direction: row;   /* R11 — buttons stay in row, just narrower */
		flex-wrap: wrap;
		gap: 10px;
		justify-content: center;
		width: 100%;
	}
	.wsk-rooms-tabs a.wsk-rooms-tabs__btn {
		flex: 1 1 40%;
		font-size: 12px;
		padding: 14px 16px;
		text-align: center;
	}

	.wsk-rooms-tabs__function { margin-top: 24px; padding-top: 16px; }
	.wsk-rooms-tabs__nav { gap: 12px; }
	.wsk-rooms-tabs__prev,
	.wsk-rooms-tabs__next { height: 44px; width: 44px; font-size: 14px; }
	.wsk-rooms-tabs__pagination { font-size: 12px; }
}

/* Reduced motion — disable transitions + animations (R6). */
@media (prefers-reduced-motion: reduce) {
	.wsk-rooms-tabs *,
	.wsk-rooms-tabs *::before,
	.wsk-rooms-tabs *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}

/* === Avada cascade lockdown (audit check #28b) ===
   Locks .swiper-* properties Avada's compiled CSS can re-declare. */
.wsk-rooms-tabs__swiper .swiper-slide {
	flex-shrink: 0 !important;
}
.wsk-rooms-tabs__swiper .swiper-slide-active {
	opacity: 1 !important;
}
.wsk-rooms-tabs__swiper .swiper-pagination {
	position: relative !important;
	bottom: auto !important;
	top: auto !important;
}
.wsk-rooms-tabs__swiper .swiper-pagination-bullet {
	transform: none !important;
}
/**
 * WEPRO: Luxury Gallery
 *
 * Full-bleed cinematic carousel with bronze slat-band top/bottom borders,
 * native CSS scroll-snap + peek-of-next, gold inset slide borders, and
 * optional <dialog> lightbox.
 *
 * Ported from vstt-property-hub property-collection.css + luxury-sections.css
 * with wsk-lg-* CSS custom properties and hub-parity default fallbacks.
 */

/* ──────────────────────────────────────────────────────────
   1. Container — navy band with optional vertical slat border on top + bottom
   ────────────────────────────────────────────────────────── */
.wsk-luxury-gallery {
	position: relative;
	background-color: var(--wsk-lg-bg, #0A1A33);
	padding: 40px 0;
}

.wsk-luxury-gallery:not(.wsk-luxury-gallery--no-bands) {
	background-image: repeating-linear-gradient(
		to right,
		transparent 0,
		transparent 22px,
		var(--wsk-lg-band, #996B55) 22px,
		var(--wsk-lg-band, #996B55) 23px
	);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 72% 100%;
}

.wsk-luxury-gallery__sr-only {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
	padding: 0;
	margin: -1px;
}

/* ──────────────────────────────────────────────────────────
   2. Slider — scroll-snap track with peek
   ────────────────────────────────────────────────────────── */
.wsk-luxury-gallery__slider {
	position: relative;
}

.wsk-luxury-gallery .wsk-luxury-gallery__track {
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: var(--wsk-lg-gap, 16px);
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	padding: 0 var(--wsk-lg-peek, 21%);
}

.wsk-luxury-gallery__track::-webkit-scrollbar {
	display: none;
}

/* 3. Slide
   Avada applies several global `button { ... }` rules (position:absolute,
   width:100%, height:50px, margin-top:20px, display:block). Because our slide
   is a <button>, those can hit us. !important on layout-critical properties
   matches the hub's defensive strategy and ensures uniform slide sizing. */
.wsk-luxury-gallery button.wsk-luxury-gallery__slide,
.wsk-luxury-gallery a.wsk-luxury-gallery__slide,
.wsk-luxury-gallery .wsk-luxury-gallery__slide {
	position: relative !important;
	display: block !important;
	flex: 0 0 var(--wsk-lg-slide-pct, 58%) !important;
	min-width: var(--wsk-lg-slide-pct, 58%) !important;
	max-width: var(--wsk-lg-slide-pct, 58%) !important;
	width: var(--wsk-lg-slide-pct, 58%) !important;
	height: var(--wsk-lg-slide-height, 520px) !important;
	scroll-snap-align: center;
	overflow: hidden;
	background: transparent !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	cursor: pointer;
	text-decoration: none !important;
	box-shadow: none !important;
	-webkit-appearance: none;
	appearance: none;
	font: inherit;
	color: inherit;
}

/* Image — targeted via descendant `img` selector (not class) because lazy-load
   plugins (Avada built-in, Smush, WP Rocket) frequently replace img src with an
   SVG placeholder AND prepend their own class="lazyload" attribute, causing the
   browser to drop any later class="…" attributes per HTML spec. Using the plain
   `img` selector means our rules apply regardless of what the lazy-loader does.
   !important also defends against Avada's global `img { height: auto }`. */
.wsk-luxury-gallery .wsk-luxury-gallery__slide > img,
.wsk-luxury-gallery .wsk-luxury-gallery__slide img.wsk-luxury-gallery__img {
	display: block !important;
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	height: var(--wsk-lg-slide-height, 520px) !important;
	object-fit: cover !important;
	object-position: center center;
	margin: 0 !important;
	padding: 0 !important;
	transition: transform .6s ease;
}

.wsk-luxury-gallery__slide:hover > img {
	transform: scale(1.025);
}

/* Gold inset border — optional via .wsk-luxury-gallery--no-border */
.wsk-luxury-gallery:not(.wsk-luxury-gallery--no-border) .wsk-luxury-gallery__slide::after {
	content: '';
	position: absolute;
	inset: 10px;
	border: 1px solid var(--wsk-lg-border, rgba(229,171,142,.22));
	pointer-events: none;
	z-index: 1;
	transition: border-color .4s;
}

.wsk-luxury-gallery:not(.wsk-luxury-gallery--no-border) .wsk-luxury-gallery__slide:hover::after {
	border-color: var(--wsk-lg-border-hover, rgba(229,171,142,.5));
}

/* ──────────────────────────────────────────────────────────
   4. Navigation arrows
   ────────────────────────────────────────────────────────── */
.wsk-luxury-gallery__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 3;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	border: 1px solid var(--wsk-lg-arrow-border, rgba(229,171,142,.3));
	background: var(--wsk-lg-arrow-bg, rgba(6,22,46,.8));
	color: var(--wsk-lg-arrow-color, #C9A87A);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background .25s, border-color .25s, opacity .3s;
	opacity: 0;
	padding: 0;
}

.wsk-luxury-gallery__slider:hover .wsk-luxury-gallery__arrow,
.wsk-luxury-gallery__slider:focus-within .wsk-luxury-gallery__arrow {
	opacity: 1;
}

.wsk-luxury-gallery__arrow:hover,
.wsk-luxury-gallery__arrow:focus-visible {
	background: var(--wsk-lg-arrow-hover, rgba(229,171,142,.15));
	border-color: var(--wsk-lg-arrow-color, #C9A87A);
	outline: none;
}

.wsk-luxury-gallery__arrow--prev { left: 24px; }
.wsk-luxury-gallery__arrow--next { right: 24px; }

.wsk-luxury-gallery__arrow--disabled,
.wsk-luxury-gallery__arrow[disabled] {
	opacity: .25;
	cursor: not-allowed;
	pointer-events: none;
}

/* ──────────────────────────────────────────────────────────
   5. Lightbox <dialog>
   ────────────────────────────────────────────────────────── */
.wsk-luxury-gallery__lightbox {
	border: 0;
	padding: 0;
	margin: 0;
	width: 100vw;
	height: 100vh;
	max-width: 100vw;
	max-height: 100vh;
	background: transparent;
	color: #fff;
	overflow: hidden;
}

.wsk-luxury-gallery__lightbox::backdrop {
	background:
		radial-gradient(ellipse at center,
			color-mix(in srgb, var(--wsk-lg-lb-bg, #0A1A33) 96%, transparent) 0%,
			color-mix(in srgb, var(--wsk-lg-lb-bg, #0A1A33) 99%, black) 100%);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

.wsk-luxury-gallery__lightbox[open] {
	display: flex;
	align-items: center;
	justify-content: center;
	animation: wsk-luxury-gallery-in .35s cubic-bezier(.2, .7, .2, 1) both;
}

@keyframes wsk-luxury-gallery-in {
	from { opacity: 0; transform: scale(.96); }
	to   { opacity: 1; transform: scale(1); }
}

.wsk-luxury-gallery__lb-figure {
	position: relative;
	margin: 0;
	max-width: min(90vw, 1600px);
	max-height: 88vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.wsk-luxury-gallery__lb-img {
	display: block;
	max-width: 100%;
	max-height: 82vh;
	width: auto;
	height: auto;
	object-fit: contain;
	border-radius: 2px;
	box-shadow:
		0 20px 60px -10px rgba(0, 0, 0, .6),
		0 0 0 1px color-mix(in srgb, var(--wsk-lg-lb-accent, #C9A87A) 18%, transparent);
}

.wsk-luxury-gallery__lb-count {
	margin-top: 1rem;
	font-family: inherit;
	font-size: clamp(.78rem, .9vw, .85rem);
	letter-spacing: .25em;
	text-transform: uppercase;
	color: color-mix(in srgb, var(--wsk-lg-lb-accent, #C9A87A) 80%, transparent);
	font-weight: 500;
}

.wsk-luxury-gallery__lb-close {
	position: fixed;
	top: clamp(1rem, 2.5vw, 2rem);
	right: clamp(1rem, 2.5vw, 2rem);
	width: 48px;
	height: 48px;
	border-radius: 50%;
	border: 1px solid color-mix(in srgb, var(--wsk-lg-lb-accent, #C9A87A) 30%, transparent);
	background: color-mix(in srgb, var(--wsk-lg-lb-bg, #0A1A33) 60%, transparent);
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease;
	z-index: 2;
	padding: 0;
}

.wsk-luxury-gallery__lb-close:hover,
.wsk-luxury-gallery__lb-close:focus-visible {
	background: var(--wsk-lg-lb-accent, #C9A87A);
	color: var(--wsk-lg-lb-bg, #0A1A33);
	border-color: var(--wsk-lg-lb-accent, #C9A87A);
	transform: rotate(90deg);
	outline: none;
}

.wsk-luxury-gallery__lb-nav {
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	width: 56px;
	height: 56px;
	border-radius: 50%;
	border: 1px solid color-mix(in srgb, var(--wsk-lg-lb-accent, #C9A87A) 30%, transparent);
	background: color-mix(in srgb, var(--wsk-lg-lb-bg, #0A1A33) 60%, transparent);
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease;
	z-index: 2;
	padding: 0;
}

.wsk-luxury-gallery__lb-nav:hover,
.wsk-luxury-gallery__lb-nav:focus-visible {
	background: var(--wsk-lg-lb-accent, #C9A87A);
	color: var(--wsk-lg-lb-bg, #0A1A33);
	border-color: var(--wsk-lg-lb-accent, #C9A87A);
	outline: none;
}

.wsk-luxury-gallery__lb-nav--prev { left: clamp(1rem, 3vw, 2.5rem); }
.wsk-luxury-gallery__lb-nav--prev:hover {
	transform: translateY(-50%) translateX(-3px);
}

.wsk-luxury-gallery__lb-nav--next { right: clamp(1rem, 3vw, 2.5rem); }
.wsk-luxury-gallery__lb-nav--next:hover {
	transform: translateY(-50%) translateX(3px);
}

/* ──────────────────────────────────────────────────────────
   6. Responsive — tablet
   ────────────────────────────────────────────────────────── */
@media (max-width: 1024px) {
	.wsk-luxury-gallery .wsk-luxury-gallery__track {
		gap: 12px;
		padding: 0 10%;
	}
	.wsk-luxury-gallery button.wsk-luxury-gallery__slide,
	.wsk-luxury-gallery a.wsk-luxury-gallery__slide,
	.wsk-luxury-gallery .wsk-luxury-gallery__slide {
		flex: 0 0 80% !important;
		min-width: 80% !important;
		max-width: 80% !important;
		width: 80% !important;
		height: 340px !important;
	}
	.wsk-luxury-gallery .wsk-luxury-gallery__slide > img,
	.wsk-luxury-gallery .wsk-luxury-gallery__slide img.wsk-luxury-gallery__img {
		height: 340px !important;
	}
	.wsk-luxury-gallery__arrow {
		opacity: 1;
		width: 40px;
		height: 40px;
	}
	.wsk-luxury-gallery__arrow--prev { left: 10px; }
	.wsk-luxury-gallery__arrow--next { right: 10px; }
}

/* ──────────────────────────────────────────────────────────
   7. Responsive — small mobile
   ────────────────────────────────────────────────────────── */
@media (max-width: 550px) {
	.wsk-luxury-gallery .wsk-luxury-gallery__track {
		gap: 12px;
		padding: 0 5%;
	}
	.wsk-luxury-gallery button.wsk-luxury-gallery__slide,
	.wsk-luxury-gallery a.wsk-luxury-gallery__slide,
	.wsk-luxury-gallery .wsk-luxury-gallery__slide {
		flex: 0 0 90% !important;
		min-width: 90% !important;
		max-width: 90% !important;
		width: 90% !important;
		height: 220px !important;
	}
	.wsk-luxury-gallery .wsk-luxury-gallery__slide > img,
	.wsk-luxury-gallery .wsk-luxury-gallery__slide img.wsk-luxury-gallery__img {
		height: 220px !important;
	}
	.wsk-luxury-gallery:not(.wsk-luxury-gallery--no-border) .wsk-luxury-gallery__slide::after {
		inset: 5px;
	}
}

/* Lightbox — mobile tweaks */
@media (max-width: 720px) {
	.wsk-luxury-gallery__lb-nav {
		width: 44px;
		height: 44px;
	}
	.wsk-luxury-gallery__lb-close {
		width: 40px;
		height: 40px;
	}
	.wsk-luxury-gallery__lb-img {
		max-height: 75vh;
	}
}

/* ──────────────────────────────────────────────────────────
   8. Reduced motion
   ────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-luxury-gallery *,
	.wsk-luxury-gallery *::before,
	.wsk-luxury-gallery *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
/**
 * WEPRO: Need Cards
 *
 * Sweetpunk-inspired colored cards with hidden-until-hover KPI + link.
 * Per-card colors come from inline `style="--wsk-nc-bg:…;--wsk-nc-text:…"`
 * emitted by PHP. Section-level tokens live on the root element.
 *
 * Defensive !important strategy (learned from rooms-tabs + luxury-gallery audits):
 *   - Cards render as <a> or <article>; Avada targets anchors with global rules
 *     → !important on layout-critical properties (display, padding, margin,
 *     color, background, text-decoration) beats the cascade cleanly.
 *   - Images use child combinator `.wsk-need-cards__bg > img` so lazy-load
 *     class-rewriting can't strip our styles.
 */

/* ──────────────────────────────────────────────────────────
   1. Section wrapper
   ────────────────────────────────────────────────────────── */
.wsk-need-cards {
	--wsk-nc-cols-lg: 4;
	--wsk-nc-cols-md: 2;
	--wsk-nc-gap:     16px;
	--wsk-nc-radius:  6px;
	--wsk-nc-aspect:  4 / 5;
	position: relative;
	width: 100%;
}

/* Heading / card title / kpi typography rules.
 *
 * Stripped per user direction: NO line-height / weight / letter-spacing /
 * text-transform / font-style overrides — Avada h2/h3/p cascade applies.
 *
 * Kept here:
 *   1. font-size: clamp(...) — so titles SCALE DOWN on mobile (without this,
 *      Avada renders desktop h2/h3 size on mobile and the cards explode).
 *   2. color: inherit — so the per-card palette text color set on the card
 *      via --wsk-nc-text flows into descendants (Avada's h3 { color: black }
 *      would otherwise win and palette would have no visible effect).
 *
 * Editor overrides via Avada Typography dialog still win over both. */

/* Section heading (above the grid). */
.wsk-need-cards .wsk-need-cards__title,
.wsk-need-cards h1.wsk-need-cards__title,
.wsk-need-cards h2.wsk-need-cards__title,
.wsk-need-cards h3.wsk-need-cards__title,
.wsk-need-cards h4.wsk-need-cards__title {
	font-size: var(--wsk-nc-heading-font-size, clamp(1.6rem, 4vw, 3rem));
}

/* Card titles inside each card. */
.wsk-need-cards .wsk-need-cards__card-title,
.wsk-need-cards h1.wsk-need-cards__card-title,
.wsk-need-cards h2.wsk-need-cards__card-title,
.wsk-need-cards h3.wsk-need-cards__card-title,
.wsk-need-cards h4.wsk-need-cards__card-title,
.wsk-need-cards h5.wsk-need-cards__card-title,
.wsk-need-cards h6.wsk-need-cards__card-title {
	font-size: var(--wsk-nc-card_title-font-size, clamp(1.05rem, 2.2vw, 1.5rem));
	/* Card titles need tight leading. Theme `body_typography line-height` is
	 * often 1.8–2.0 — too airy for a card heading. */
	line-height: var(--wsk-nc-card_title-line-height, 1.2) !important;
	color: inherit !important;
}

/* KPI / subline beneath each title. */
.wsk-need-cards .wsk-need-cards__kpi,
.wsk-need-cards p.wsk-need-cards__kpi {
	font-size: var(--wsk-nc-kpi-font-size, clamp(0.8rem, 1.4vw, 0.95rem));
	/* Card body text — tighter than theme body. 1.5 reads cleanly inside the
	 * card; theme `body_typography line-height` of 1.8–2.0 explodes the rows
	 * inside narrow card columns. */
	line-height: var(--wsk-nc-kpi-line-height, 1.5) !important;
	color: inherit !important;
	/* Visual safety net on top of the server-side trim — even if the editor
	 * sets `subline_limit=0` (unlimited) and a post has 500 chars, this clamps
	 * the rendered text to 4 lines + ellipsis so cards stay uniform. */
	display: -webkit-box;
	-webkit-line-clamp: var(--wsk-nc-kpi-line-clamp, 4);
	line-clamp: var(--wsk-nc-kpi-line-clamp, 4);
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* ──────────────────────────────────────────────────────────
   2. Grid
   ────────────────────────────────────────────────────────── */
.wsk-need-cards__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--wsk-nc-gap, 16px);
	width: 100%;
}

/* Mobile swiper (horizontal scroll-snap, no JS dependency) */
.wsk-need-cards--mobile-swiper .wsk-need-cards__grid {
	display: flex;
	flex-wrap: nowrap;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	padding-bottom: 4px; /* room for scroll shadow */
}
.wsk-need-cards--mobile-swiper .wsk-need-cards__grid::-webkit-scrollbar {
	display: none;
}
.wsk-need-cards--mobile-swiper .wsk-need-cards__grid > * {
	flex: 0 0 78%;
	min-width: 78%;
	max-width: 78%;
	scroll-snap-align: center;
}

/* Tablet — use columns_tablet var */
@media (min-width: 641px) {
	.wsk-need-cards .wsk-need-cards__grid {
		display: grid !important;
		grid-template-columns: repeat(var(--wsk-nc-cols-md, 2), minmax(0, 1fr));
	}
	.wsk-need-cards--mobile-swiper .wsk-need-cards__grid > * {
		flex: initial;
		min-width: 0;
		max-width: 100%;
		scroll-snap-align: unset;
	}
}

/* Desktop — use columns_desktop var */
@media (min-width: 1025px) {
	.wsk-need-cards .wsk-need-cards__grid {
		grid-template-columns: repeat(var(--wsk-nc-cols-lg, 4), minmax(0, 1fr));
	}
}


/* ──────────────────────────────────────────────────────────
   3. Card
   ────────────────────────────────────────────────────────── */
.wsk-need-cards a.wsk-need-cards__card,
.wsk-need-cards article.wsk-need-cards__card,
.wsk-need-cards .wsk-need-cards__card {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	align-items: flex-end !important;
	overflow: hidden !important;
	padding: 40px 32px 32px !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: var(--wsk-nc-radius, 6px);
	aspect-ratio: var(--wsk-nc-aspect, 1 / 1.15);
	text-decoration: none !important;
	background: var(--wsk-nc-bg, #ffffff) !important;
	color: var(--wsk-nc-text, #0f0f0f) !important;
	transition: transform .4s ease;
	box-sizing: border-box;
	font: inherit;
	-webkit-appearance: none;
	appearance: none;
	/* Subtle edge so a white (or near-bg) card stays visible on light sections.
	   Only kicks in when the card color is close to the section color; harmless
	   on darker tiles. */
	box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--wsk-nc-text, #0f0f0f) 8%, transparent);
}

.wsk-need-cards__card:hover {
	transform: translateY(-2px);
}

/* Background image layer */
.wsk-need-cards__bg {
	position: absolute;
	z-index: 0;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}
.wsk-need-cards__bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(0,0,0,0.2), rgba(0,0,0,0.2));
	z-index: 2;
	pointer-events: none;
}
.wsk-need-cards__bg > img {
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center center;
	margin: 0 !important;
	padding: 0 !important;
	transition: transform 1s cubic-bezier(.254,.033,.681,.992);
}
.wsk-need-cards__card:hover .wsk-need-cards__bg > img {
	transform: scale(1.05);
}

/* Content layer sits above image */
.wsk-need-cards__content {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	color: inherit;
}

/* Card title — large uppercase block, tight line-height. Scales up on desktop. */
.wsk-need-cards .wsk-need-cards__card-title,
/* Card title rule removed — Avada h2/h3/h4 cascade applies. */

/* KPI rule removed — Avada <p> cascade applies. Only the opacity transition
 * is kept (separate rule below) for the hover-reveal mode. */
.wsk-need-cards .wsk-need-cards__kpi {
	transition: opacity .2s ease-in-out;
}

/* Bottom row holds link + astragraphe in the SAME right-bottom slot —
   they swap on hover (astragraphe fades out, link fades in). This mirrors
   the reference interaction where the decorative mark is replaced by the
   CTA on hover rather than the two living side-by-side. */
.wsk-need-cards__bottom {
	position: relative;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	margin-top: auto;
	width: 100%;
	min-height: 50px;
	color: inherit;
}

.wsk-need-cards__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: inherit;
	font-size: 12px;
	font-weight: 500;
	line-height: 0.9;
	letter-spacing: 0.2px;
	text-transform: uppercase;
	color: inherit;
	opacity: 1;
	transition: opacity .25s ease-in-out;
}
.wsk-need-cards__link--empty {
	display: none;
}
.wsk-need-cards__link-text {
	display: inline-block;
	overflow: hidden;
	max-width: 200px;
	white-space: nowrap;
	transition: max-width .3s ease-in-out;
}
.wsk-need-cards__link-arrow {
	width: 9px;
	height: 9px;
	flex-shrink: 0;
	color: inherit;
}

/* Astragraphe sits at right-bottom, same slot as the link. */
.wsk-need-cards__astragraphe {
	display: inline-flex;
	width: 50px;
	height: 50px;
	color: inherit;
	flex-shrink: 0;
	opacity: 1;
	transition: opacity .25s ease-in-out;
}
.wsk-need-cards__astragraphe svg {
	width: 100%;
	height: auto;
	fill: currentColor;
}

/* When BOTH link and astragraphe exist, stack them in the same position
   so only one is visible at a time. The link absolute-positions over the
   astragraphe on the right edge. */
.wsk-need-cards__bottom:has(.wsk-need-cards__link):has(.wsk-need-cards__astragraphe) .wsk-need-cards__link {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

/* ──────────────────────────────────────────────────────────
   4. Hover-reveal mode
   ────────────────────────────────────────────────────────── */
/* Default (no hover / no focus): subline hidden, link hidden, astragraphe visible.
 *
 * !important required: the base .wsk-need-cards p.wsk-need-cards__kpi rule (and
 * div./span. variants used to beat Avada theme paragraph margins) has higher
 * specificity (0,2,1) than .wsk-need-cards--hover .wsk-need-cards__kpi (0,2,0)
 * — so without !important here, the base `opacity: 1` would win and the kpi
 * would never hide on load. */
.wsk-need-cards--hover .wsk-need-cards__kpi,
.wsk-need-cards--hover .wsk-need-cards__link {
	opacity: 0 !important;
	pointer-events: none;
}
.wsk-need-cards--hover .wsk-need-cards__link-text {
	max-width: 0;
}
.wsk-need-cards--hover .wsk-need-cards__astragraphe {
	opacity: 1;
}

/* Hover / focus / tap-revealed: subline + link visible, astragraphe fades out. */
.wsk-need-cards--hover .wsk-need-cards__card:hover .wsk-need-cards__kpi,
.wsk-need-cards--hover .wsk-need-cards__card:focus-within .wsk-need-cards__kpi,
.wsk-need-cards--hover .wsk-need-cards__card.is-revealed .wsk-need-cards__kpi,
.wsk-need-cards--hover .wsk-need-cards__card:hover .wsk-need-cards__link,
.wsk-need-cards--hover .wsk-need-cards__card:focus-within .wsk-need-cards__link,
.wsk-need-cards--hover .wsk-need-cards__card.is-revealed .wsk-need-cards__link {
	opacity: 1 !important;
	pointer-events: auto;
}

.wsk-need-cards--hover .wsk-need-cards__card:hover .wsk-need-cards__astragraphe,
.wsk-need-cards--hover .wsk-need-cards__card:focus-within .wsk-need-cards__astragraphe,
.wsk-need-cards--hover .wsk-need-cards__card.is-revealed .wsk-need-cards__astragraphe {
	opacity: 0;
}

.wsk-need-cards--hover .wsk-need-cards__card:hover .wsk-need-cards__link-text,
.wsk-need-cards--hover .wsk-need-cards__card:focus-within .wsk-need-cards__link-text,
.wsk-need-cards--hover .wsk-need-cards__card.is-revealed .wsk-need-cards__link-text {
	max-width: 200px;
}

/* ──────────────────────────────────────────────────────────
   5. Responsive — title size bump on desktop
   ────────────────────────────────────────────────────────── */
@media (min-width: 900px) {
	.wsk-need-cards .wsk-need-cards__card-title,
	.wsk-need-cards h1.wsk-need-cards__card-title,
	.wsk-need-cards h2.wsk-need-cards__card-title,
	.wsk-need-cards h3.wsk-need-cards__card-title,
	.wsk-need-cards h4.wsk-need-cards__card-title,
	.wsk-need-cards h5.wsk-need-cards__card-title,
	.wsk-need-cards h6.wsk-need-cards__card-title,
	.wsk-need-cards p.wsk-need-cards__card-title,
	.wsk-need-cards div.wsk-need-cards__card-title,
	.wsk-need-cards span.wsk-need-cards__card-title {
		font-size: var(--wsk-nc-card_title-font-size-md, var(--wsk-nc-card_title-font-size, 24px));
	}
}

/* ──────────────────────────────────────────────────────────
   6. Reduced motion
   ────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-need-cards *,
	.wsk-need-cards *::before,
	.wsk-need-cards *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}

/* === :focus-visible (audit check #32) ===
   Keyboard-focus indicator for every interactive surface inside the element. */
.wsk-need-cards a:focus-visible,
.wsk-need-cards button:focus-visible,
.wsk-need-cards [tabindex]:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
	border-radius: 2px;
}
/**
 * WEPRO: Booking CTA
 *
 * Footer-style call-to-action: rounded card (default white) sitting on a
 * colored section backdrop. Title + description + pill button, followed by
 * a full-width hero image and a vertical list of services. Each service row
 * inverts to the accent color on hover.
 *
 * Defensive !important strategy matches the pattern learned from previous
 * elements (rooms-tabs, luxury-gallery, need-cards): Avada targets <a> and
 * heading tags globally, so layout-critical properties carry !important.
 */

/* ──────────────────────────────────────────────────────────
   1. Element root — transparent wrapper, no backdrop, no padding.
   The editor places the element inside any Avada container they
   like; we don't double up on section chrome.
   ────────────────────────────────────────────────────────── */
.wsk-booking-cta {
	position: relative;
	width: 100%;
	background: transparent;
	padding: 0;
	margin: 0;
	color: var(--wsk-bc-text, #3B3634);
	box-sizing: border-box;
}

/* ──────────────────────────────────────────────────────────
   2. Inner card — rounded white panel with its own padding.
   ────────────────────────────────────────────────────────── */
.wsk-booking-cta__card {
	position: relative;
	max-width: 1180px;
	margin: 0 auto;
	background: var(--wsk-bc-card-bg, #FFFFFF);
	border-radius: 10px;
	/* Single padding value applied to all four sides. Editor can override via
	   the Card Padding param; default is 20px (matches the element default). */
	padding: var(--wsk-bc-card-padding, 20px);
	overflow: hidden;
	color: var(--wsk-bc-text, #3B3634);
}

/* ──────────────────────────────────────────────────────────
   3. Title — Avada-standard typography, editor-controlled via
   the "Section Title" typography block. CSS var fallbacks match
   the PHP defaults exactly (R5 — zero visual regression).
   ────────────────────────────────────────────────────────── */
.wsk-booking-cta .wsk-booking-cta__title,
.wsk-booking-cta h1.wsk-booking-cta__title,
.wsk-booking-cta h2.wsk-booking-cta__title,
.wsk-booking-cta h3.wsk-booking-cta__title,
.wsk-booking-cta h4.wsk-booking-cta__title,
.wsk-booking-cta h5.wsk-booking-cta__title,
.wsk-booking-cta h6.wsk-booking-cta__title,
.wsk-booking-cta p.wsk-booking-cta__title,
.wsk-booking-cta div.wsk-booking-cta__title,
.wsk-booking-cta span.wsk-booking-cta__title {
	font-family: var(--wsk-bc-title-font-family, inherit);
	font-size: var(--wsk-bc-title-font-size, clamp(2.5rem, 7vw, 7rem)) !important;
	font-weight: var(--wsk-bc-title-font-weight, 400);
	font-style: var(--wsk-bc-title-font-style, normal);
	line-height: var(--wsk-bc-title-line-height, 0.95);
	letter-spacing: var(--wsk-bc-title-letter-spacing, -1px);
	text-transform: var(--wsk-bc-title-text-transform, none);
	color: var(--wsk-bc-title-color, var(--wsk-bc-text, #3B3634)) !important;
	text-align: var(--wsk-bc-title-text-align, center) !important;
	margin: var(--wsk-bc-title-margin-top, 0) 0 var(--wsk-bc-title-margin-bottom, clamp(16px, 2vw, 32px)) !important;
	padding: 0 !important;
}

/* ──────────────────────────────────────────────────────────
   4. Description — Avada-standard typography block.
   ────────────────────────────────────────────────────────── */
.wsk-booking-cta .wsk-booking-cta__desc,
.wsk-booking-cta p.wsk-booking-cta__desc,
.wsk-booking-cta div.wsk-booking-cta__desc,
.wsk-booking-cta span.wsk-booking-cta__desc {
	max-width: 640px;
	margin: var(--wsk-bc-desc-margin-top, 0) auto var(--wsk-bc-desc-margin-bottom, clamp(24px, 3vw, 40px));
	font-family: var(--wsk-bc-desc-font-family, inherit);
	font-size: var(--wsk-bc-desc-font-size, clamp(1rem, 1.2vw, 1.125rem));
	font-weight: var(--wsk-bc-desc-font-weight, 400);
	font-style: var(--wsk-bc-desc-font-style, normal);
	line-height: var(--wsk-bc-desc-line-height, 1.55);
	letter-spacing: var(--wsk-bc-desc-letter-spacing, normal);
	text-transform: var(--wsk-bc-desc-text-transform, none);
	color: var(--wsk-bc-desc-color, var(--wsk-bc-text, #3B3634));
	text-align: var(--wsk-bc-desc-text-align, center) !important;
	padding: 0;
}
.wsk-booking-cta__desc p {
	margin: 0;
}

/* ──────────────────────────────────────────────────────────
   5. CTA button — pill with arrow-circle indicator
   ────────────────────────────────────────────────────────── */
.wsk-booking-cta__cta-wrap {
	display: flex;
	justify-content: center;
	margin-bottom: clamp(32px, 4vw, 56px);
}

/* Cascade-beat catch-all — Avada's compiled fusion-styles/*.min.css declares
   .fusion-row a / .fusion-row a:hover with site-global colors. Without this
   reset, those rules win on specificity tie-breaks and override our locked
   anchor styles below. Lock the inherited color + decoration here so every
   anchor inside the element starts from a known baseline; the per-anchor
   rules then re-color via the same !important pattern. */
.wsk-booking-cta a,
.wsk-booking-cta a:hover,
.wsk-booking-cta a:focus,
.wsk-booking-cta a:visited {
	color: inherit !important;
	text-decoration: none !important;
	background: transparent !important;
	border: 0 !important;
}

.wsk-booking-cta a.wsk-booking-cta__cta {
	display: inline-flex !important;
	align-items: center;
	gap: 16px;
	padding: 8px 8px 8px 28px !important;
	border-radius: 9999px;
	background: var(--wsk-bc-accent-bg, #3B3634) !important;
	color: var(--wsk-bc-accent-text, #F2EFEE) !important;
	text-decoration: none !important;
	font-family: inherit;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.02em;
	line-height: 1;
	min-height: 56px;
	border: 0 !important;
	cursor: pointer;
	transition: transform .25s ease, background .25s ease;
}
.wsk-booking-cta a.wsk-booking-cta__cta:hover,
.wsk-booking-cta a.wsk-booking-cta__cta:focus-visible {
	transform: translateY(-1px);
	outline: none;
}
.wsk-booking-cta__cta-text {
	padding: 4px 0;
}
.wsk-booking-cta__cta-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--wsk-bc-accent-text, #F2EFEE) 18%, transparent);
	color: var(--wsk-bc-accent-text, #F2EFEE);
	flex-shrink: 0;
	transition: background .25s ease, transform .25s ease;
}
.wsk-booking-cta a.wsk-booking-cta__cta:hover .wsk-booking-cta__cta-icon,
.wsk-booking-cta a.wsk-booking-cta__cta:focus-visible .wsk-booking-cta__cta-icon {
	background: var(--wsk-bc-accent-text, #F2EFEE);
	color: var(--wsk-bc-accent-bg, #3B3634);
	transform: rotate(-10deg);
}

/* ──────────────────────────────────────────────────────────
   6. Hero image — full-width, rounded
   ────────────────────────────────────────────────────────── */
.wsk-booking-cta__hero {
	position: relative;
	width: 100%;
	margin-bottom: clamp(32px, 4vw, 56px);
	border-radius: 10px;
	overflow: hidden;
	aspect-ratio: 16 / 7;
	background: var(--wsk-bc-accent-bg, #3B3634);
}
.wsk-booking-cta__hero > img,
.wsk-booking-cta .wsk-booking-cta__hero img.wsk-booking-cta__hero-img {
	display: block !important;
	position: absolute !important;
	inset: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center center;
	margin: 0 !important;
	padding: 0 !important;
}

/* ──────────────────────────────────────────────────────────
   7. Services list — vertical list, hover fill
   ────────────────────────────────────────────────────────── */
.wsk-booking-cta__services {
	position: relative;
	margin-top: 0;
}
.wsk-booking-cta .wsk-booking-cta__services-label,
.wsk-booking-cta p.wsk-booking-cta__services-label,
.wsk-booking-cta div.wsk-booking-cta__services-label,
.wsk-booking-cta span.wsk-booking-cta__services-label,
.wsk-booking-cta h1.wsk-booking-cta__services-label,
.wsk-booking-cta h2.wsk-booking-cta__services-label,
.wsk-booking-cta h3.wsk-booking-cta__services-label,
.wsk-booking-cta h4.wsk-booking-cta__services-label,
.wsk-booking-cta h5.wsk-booking-cta__services-label,
.wsk-booking-cta h6.wsk-booking-cta__services-label {
	margin: var(--wsk-bc-services_label-margin-top, 0) 0 var(--wsk-bc-services_label-margin-bottom, 8px) 0;
	padding: 0;
	font-family: var(--wsk-bc-services_label-font-family, inherit);
	font-size: var(--wsk-bc-services_label-font-size, 0.875rem);
	font-weight: var(--wsk-bc-services_label-font-weight, 400);
	font-style: var(--wsk-bc-services_label-font-style, normal);
	line-height: var(--wsk-bc-services_label-line-height, 1.4);
	letter-spacing: var(--wsk-bc-services_label-letter-spacing, 0.04em);
	text-transform: var(--wsk-bc-services_label-text-transform, none);
	color: var(--wsk-bc-services_label-color, var(--wsk-bc-text, #3B3634));
	text-align: var(--wsk-bc-services_label-text-align, left);
}

.wsk-booking-cta__list {
	list-style: none;
	margin: 0;
	padding: 0;
	border-top: 1px solid color-mix(in srgb, var(--wsk-bc-text, #3B3634) 18%, transparent);
}
.wsk-booking-cta__item {
	list-style: none;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid color-mix(in srgb, var(--wsk-bc-text, #3B3634) 18%, transparent);
}

.wsk-booking-cta a.wsk-booking-cta__item-link,
.wsk-booking-cta .wsk-booking-cta__item-link {
	display: flex !important;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: clamp(16px, 2vw, 28px) clamp(12px, 2vw, 24px) !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--wsk-bc-service_item-color, var(--wsk-bc-text, #3B3634)) !important;
	text-decoration: none !important;
	font-family: var(--wsk-bc-service_item-font-family, inherit);
	font-size: var(--wsk-bc-service_item-font-size, clamp(1.5rem, 3vw, 2.75rem));
	font-weight: var(--wsk-bc-service_item-font-weight, 500);
	font-style: var(--wsk-bc-service_item-font-style, normal);
	line-height: var(--wsk-bc-service_item-line-height, 1.15);
	letter-spacing: var(--wsk-bc-service_item-letter-spacing, -0.5px);
	text-transform: var(--wsk-bc-service_item-text-transform, none);
	text-align: var(--wsk-bc-service_item-text-align, left);
	transition: background .3s ease, color .3s ease, padding-left .3s ease;
}

.wsk-booking-cta__item-title {
	flex: 1 1 auto;
	min-width: 0;
}

.wsk-booking-cta__item-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	color: inherit;
	opacity: 0.75;
	transition: transform .3s ease, opacity .3s ease;
}
.wsk-booking-cta__item-arrow svg {
	width: 100%;
	height: auto;
	fill: currentColor;
}

/* Hover — row fills with accent color, text inverts, arrow slides */
.wsk-booking-cta a.wsk-booking-cta__item-link:hover,
.wsk-booking-cta a.wsk-booking-cta__item-link:focus-visible {
	background: var(--wsk-bc-accent-bg, #3B3634) !important;
	color: var(--wsk-bc-accent-text, #F2EFEE) !important;
	padding-left: clamp(20px, 2.5vw, 32px) !important;
	outline: none;
}
.wsk-booking-cta a.wsk-booking-cta__item-link:hover .wsk-booking-cta__item-arrow,
.wsk-booking-cta a.wsk-booking-cta__item-link:focus-visible .wsk-booking-cta__item-arrow {
	opacity: 1;
	transform: translate(4px, -4px);
}

/* ──────────────────────────────────────────────────────────
   8. Responsive tweaks
   ────────────────────────────────────────────────────────── */
@media (min-width: 641px) {
	.wsk-booking-cta .wsk-booking-cta__item-link {
		font-size: var(--wsk-bc-service_item-font-size-md, var(--wsk-bc-service_item-font-size, clamp(2rem, 4.5vw, 3.5rem)));
	}
	.wsk-booking-cta__hero {
		aspect-ratio: 16 / 6;
	}
}

@media (min-width: 1025px) {
	.wsk-booking-cta__hero {
		aspect-ratio: 16 / 5.5;
	}
}

/* ──────────────────────────────────────────────────────────
   9. Reduced motion
   ────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-booking-cta *,
	.wsk-booking-cta *::before,
	.wsk-booking-cta *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}
/**
 * WEPRO: Menu Overlay — Avada-proof editorial top-bar + fullscreen panel.
 *
 * Two surfaces: a sticky top bar (`.wsk-menu-overlay__bar`) and a fullscreen
 * off-canvas panel (`.wsk-menu-overlay__panel`). Editors override via CSS vars
 * exposed on the root element; hard-coded fallbacks are the design defaults.
 *
 * Avada defence: every anchor/button/ul/li/nav/section we render is explicitly
 * re-declared with !important on color, background, border, margin, padding,
 * font-* properties. Avada's global rules target bare `a`, `.fusion-tb-header a`,
 * `.fusion-column-wrapper a`, `.fusion-column button`, `ul li a`, etc., and
 * without !important they beat the specificity of a single class.
 */

/* ──────────────────────────────────────────────────────────
   0. Root reset — kill Avada inheritance leaks for every
      descendant we render. Text + link decoration, margins,
      paddings, backgrounds.
   ────────────────────────────────────────────────────────── */
.wsk-menu-overlay,
.wsk-menu-overlay * {
	box-sizing: border-box;
}
.wsk-menu-overlay a,
.wsk-menu-overlay a:link,
.wsk-menu-overlay a:visited,
.wsk-menu-overlay a:hover,
.wsk-menu-overlay a:focus,
.wsk-menu-overlay a:active,
.wsk-menu-overlay__topbar a,
.wsk-menu-overlay__topbar a:link,
.wsk-menu-overlay__topbar a:visited,
.wsk-menu-overlay__topbar a:hover,
.wsk-menu-overlay__topbar a:focus,
.wsk-menu-overlay__topbar a:active,
.wsk-menu-overlay__panel a,
.wsk-menu-overlay__panel a:link,
.wsk-menu-overlay__panel a:visited,
.wsk-menu-overlay__panel a:hover,
.wsk-menu-overlay__panel a:focus,
.wsk-menu-overlay__panel a:active {
	text-decoration: none !important;
	border: 0 !important;
	outline: none !important;
	background: transparent !important;
	box-shadow: none !important;
	color: inherit !important;
}
.wsk-menu-overlay button,
.wsk-menu-overlay__topbar button,
.wsk-menu-overlay__panel button {
	appearance: none !important;
	-webkit-appearance: none !important;
	background: transparent !important;
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	color: inherit !important;
	font: inherit !important;
	padding: 0 !important;
	margin: 0 !important;
	cursor: pointer;
}
.wsk-menu-overlay ul,
.wsk-menu-overlay ol,
.wsk-menu-overlay__topbar ul,
.wsk-menu-overlay__topbar ol,
.wsk-menu-overlay__panel ul,
.wsk-menu-overlay__panel ol {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}
.wsk-menu-overlay li,
.wsk-menu-overlay__topbar li,
.wsk-menu-overlay__panel li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	line-height: inherit;
}
.wsk-menu-overlay nav,
.wsk-menu-overlay__topbar nav,
.wsk-menu-overlay__panel nav,
.wsk-menu-overlay section,
.wsk-menu-overlay__topbar section,
.wsk-menu-overlay__panel section {
	background: transparent !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}
.wsk-menu-overlay__topbar img,
.wsk-menu-overlay__panel img {
	max-width: none;
	border: 0 !important;
	box-shadow: none !important;
}

/* ──────────────────────────────────────────────────────────
   1. Root wrapper — positioning context only.
   ────────────────────────────────────────────────────────── */
.wsk-menu-overlay {
	position: relative;
	color: var(--wsk-mo-topbar-text, #ffffff);
}

/* ──────────────────────────────────────────────────────────
   2. TOP BAR — ref `.module-mainmenu.submodule-main`
      h=140 / 187 / 251px. logo=145/200/226. trigger=40/55.
   ────────────────────────────────────────────────────────── */
.wsk-menu-overlay__topbar {
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	z-index: 2147483646 !important;
	height: var(--wsk-mo-topbar-h, 64px) !important;
	padding: var(--wsk-mo-topbar-pad-top, 30px) var(--wsk-mo-topbar-pad-x, 22px) 0 !important;
	background: var(--wsk-mo-topbar-bg, transparent) !important;
	color: var(--wsk-mo-topbar-text, #ffffff) !important;
	display: flex !important;
	align-items: flex-start !important;
	justify-content: center !important;
	width: 100% !important;
	margin: 0 !important;
	border: 0 !important;
	font-family: "Jost", sans-serif;
	font-size: 14px;
	font-weight: 300;
	letter-spacing: 0.04em;
	line-height: 1;
	transition: background .3s ease, height .3s ease, padding .3s ease;
}
/* Scrolled state — ref `.submodule-sticky`: compact height, light greige bg,
   greige text, bottom border. Ref heights: 77 / 87 / 88 px. */
.wsk-menu-overlay__topbar.is-scrolled {
	height: var(--wsk-mo-sticky-h, 77px) !important;
	background: var(--wsk-mo-topbar-scrolled, #edecea) !important;
	color: var(--wsk-mo-sticky-text, #8f8876) !important;
	border-bottom: 1px solid var(--wsk-mo-sticky-border, rgba(143, 136, 118, 0.26)) !important;
}
@media (min-width: 768px) {
	.wsk-menu-overlay__topbar.is-scrolled { --wsk-mo-sticky-h: 87px; }
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__topbar.is-scrolled { --wsk-mo-sticky-h: 88px; }
}
/* Shrink logo in scrolled / sticky state. Editor controls width + height via the
   Sticky Bar Max Width/Height range fields (CSS vars below). */
.wsk-menu-overlay__topbar.is-scrolled img.wsk-menu-overlay__logo-img {
	width: auto !important;
	height: auto !important;
	max-width: var(--wsk-mo-logo-sticky-w, 62px) !important;
	max-height: var(--wsk-mo-logo-sticky-h, 62px) !important;
}
/* Scrolled state re-centers content vertically (compact 77–88px bar). */
.wsk-menu-overlay__topbar.is-scrolled {
	align-items: center !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.wsk-menu-overlay__topbar.is-scrolled .wsk-menu-overlay__topbar-right {
	margin-top: 0 !important;
}
/* Dividers flip to greige in scrolled state (desktop only).
   Only booking + lang own dividers (ref pattern). */
@media (min-width: 1280px) {
	.wsk-menu-overlay__topbar.is-scrolled a.wsk-menu-overlay__booking::before,
	.wsk-menu-overlay__topbar.is-scrolled .wsk-menu-overlay__lang::before {
		background: rgba(143, 136, 118, 0.26) !important;
	}
}
/* Scrolled state shows phone icon only (ref hides .phone-text via display:flex swap). */
.wsk-menu-overlay__topbar.is-scrolled .wsk-menu-overlay__phone-text {
	display: none !important;
}

.wsk-menu-overlay__topbar-inner {
	position: relative;
	display: flex !important;
	width: 100%;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px;
}

/* ──────────────────────────────────────────────────────────────────────
 * Center brand wordmark (sticky-only, desktop-only).
 * Hidden by default; reveals when topbar.is-scrolled fires AND the panel
 * is closed, on viewports >= 900px. Hides automatically when the panel
 * opens (the panel has its own large brand logo).
 * ────────────────────────────────────────────────────────────────────── */
.wsk-menu-overlay__center-brand {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%) translateY(6px);
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0;
	text-align: center;
	text-decoration: none;
	color: inherit;
	pointer-events: auto;
	opacity: 0;
	transition: opacity 0.35s cubic-bezier(0.2, 0.8, 0.2, 1),
		transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1);
	white-space: nowrap;
	max-width: 60vw;
	overflow: hidden;
}

.wsk-menu-overlay__center-brand-text,
.wsk-menu-overlay__center-brand-sub {
	display: block;
}

@media (min-width: 900px) {
	.wsk-menu-overlay__topbar.is-scrolled .wsk-menu-overlay__center-brand {
		display: flex;
		opacity: 1;
		transform: translate(-50%, -50%);
	}
}

/* Hide center brand when the menu panel is open (body class set by JS). */
body.wsk-menu-overlay-open .wsk-menu-overlay__center-brand {
	opacity: 0 !important;
	pointer-events: none;
	transform: translate(-50%, -50%) translateY(6px) !important;
}

.wsk-menu-overlay__topbar-left {
	display: flex !important;
	align-items: center !important;
	min-width: 0;
}

/* Logo */
.wsk-menu-overlay a.wsk-menu-overlay__logo,
.wsk-menu-overlay__topbar a.wsk-menu-overlay__logo {
	display: inline-flex !important;
	align-items: center !important;
	line-height: 0 !important;
	position: relative !important;
}
.wsk-menu-overlay__topbar img.wsk-menu-overlay__logo-img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: var(--wsk-mo-logo-mobile-w, 100px) !important;
	max-height: var(--wsk-mo-logo-mobile-h, 100px) !important;
	object-fit: contain !important;
}
/* Dark/light logo swap.
   Initial topbar (transparent over hero) → light always.
   Sticky / scrolled state → variant chosen by editor (--logo--sticky-{variant}).
   When only one variant exists the other src tag is omitted server-side. */
.wsk-menu-overlay__topbar img.wsk-menu-overlay__logo-img--dark { display: none !important; }
.wsk-menu-overlay__topbar img.wsk-menu-overlay__logo-img--light { display: block !important; }
.wsk-menu-overlay__topbar.is-scrolled .wsk-menu-overlay__logo--sticky-dark img.wsk-menu-overlay__logo-img--light { display: none !important; }
.wsk-menu-overlay__topbar.is-scrolled .wsk-menu-overlay__logo--sticky-dark img.wsk-menu-overlay__logo-img--dark { display: block !important; }
.wsk-menu-overlay__topbar.is-scrolled .wsk-menu-overlay__logo--sticky-light img.wsk-menu-overlay__logo-img--dark { display: none !important; }
.wsk-menu-overlay__topbar.is-scrolled .wsk-menu-overlay__logo--sticky-light img.wsk-menu-overlay__logo-img--light { display: block !important; }

/* Right area */
.wsk-menu-overlay__topbar-right {
	display: flex !important;
	align-items: center !important;
	gap: 0;
	margin-top: 0 !important;
}

/* Mobile topbar (≤1279.98px): phone icon · divider · MY BOOKING · burger.
   Phone-text, lang, CTA hidden. Exactly ONE divider, owned by phone::border-right.
   Gaps exposed as CSS vars so editors can retune without editing this file. */
@media (max-width: 1279.98px) {
	.wsk-menu-overlay__topbar .wsk-menu-overlay__phone-text,
	.wsk-menu-overlay__topbar .wsk-menu-overlay__lang,
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__cta {
		display: none !important;
	}
	.wsk-menu-overlay__topbar {
		padding: var(--wsk-mo-topbar-pad-top, 16px) 8px 0 !important;
	}
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking,
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking:link,
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking:visited {
		display: inline-flex !important;
		position: relative !important;
		margin: 0 !important;
		padding: 0 !important;
		min-height: 0 !important;
		width: auto !important;
		flex: 0 0 auto !important;
		font-size: 11px !important;
		letter-spacing: 0.15em !important;
		white-space: nowrap !important;
		border: 0 !important;
	}
	/* Suppress the booking::before divider on mobile — phone already owns one
	   via its border-right. Keeping both produced two visible dividers. */
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking::before {
		content: none !important;
		display: none !important;
	}
	.wsk-menu-overlay__topbar button.wsk-menu-overlay__trigger {
		margin-left: var(--wsk-mo-mobile-trigger-gap, 10px) !important;
	}
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__phone-text,
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking,
	.wsk-menu-overlay__topbar .wsk-menu-overlay__lang,
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__cta {
		display: inline-flex !important;
	}
}

/* Phone icon link — our addition, visible on all widths. */
.wsk-menu-overlay__topbar a.wsk-menu-overlay__phone {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin-right: 10px !important;
	padding: 0 10px 0 0 !important;
	border-right: 1px solid var(--wsk-mo-divider, rgba(255, 255, 255, 0.5)) !important;
	color: inherit !important;
	font-family: inherit !important;
	font-size: 14px !important;
	font-weight: 300 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	transition: opacity .25s ease;
}
.wsk-menu-overlay__topbar a.wsk-menu-overlay__phone:hover,
.wsk-menu-overlay__topbar a.wsk-menu-overlay__phone:focus-visible {
	opacity: 0.7;
}
.wsk-menu-overlay__phone-icon {
	width: 24px !important;
	height: 24px !important;
	flex: 0 0 24px !important;
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__phone {
		border-right: 0 !important;
		margin-right: 0 !important;
		padding-right: 0 !important;
	}
	/* Initial state ≥1280: ref shows phone TEXT only (icon hidden).
	   On scroll the state flips — see .is-scrolled rules below. */
	.wsk-menu-overlay__topbar:not(.is-scrolled) .wsk-menu-overlay__phone-icon {
		display: none !important;
	}
	.wsk-menu-overlay__topbar:not(.is-scrolled) .wsk-menu-overlay__phone-text {
		display: inline-flex !important;
	}
}

/* Booking / lang — desktop base styles (≥1280 only). */
@media (min-width: 1280px) {
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking,
	.wsk-menu-overlay__topbar .wsk-menu-overlay__lang {
		margin-left: 16px !important;
		padding-left: 16px !important;
	}
}
.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking,
.wsk-menu-overlay__topbar .wsk-menu-overlay__lang {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	color: inherit !important;
	font-family: inherit !important;
	font-size: 14px !important;
	font-weight: 300 !important;
	letter-spacing: 0.04em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	min-height: 20px !important;
	transition: opacity .25s ease;
}
/* Desktop dividers:
   - my-booking + lang each own a LEFT divider via ::before (left: 0, 1px × 10px, rgba(255,255,255,.17))
   - CTA has NO divider; just margin-left: 28px gap before a bordered button
   - phone gets border-right only at mobile (desktop hides `.phone`, shows `.phone-text`)  */
@media (min-width: 1280px) {
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking,
	.wsk-menu-overlay__topbar .wsk-menu-overlay__lang {
		position: relative !important;
	}
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking::before,
	.wsk-menu-overlay__topbar .wsk-menu-overlay__lang::before {
		content: "" !important;
		display: block !important;
		width: 1px !important;
		height: 20px !important;
		background: var(--wsk-mo-divider, rgba(255, 255, 255, 0.5)) !important;
		position: absolute !important;
		left: 0 !important;
		top: 50% !important;
		transform: translateY(-50%) !important;
		border: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
		pointer-events: none !important;
	}
}
.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking:hover,
.wsk-menu-overlay__topbar a.wsk-menu-overlay__booking:focus-visible {
	opacity: 0.7;
}

/* CTA — ref `.button-booking`: #0D2F44 bg, 1px rgba(255,255,255,.6) border,
   14/16px Jost 400, 0.15em tracking, 44/46px min-height, 0 border-radius.
   NOTE: selector must NOT depend on `.wsk-menu-overlay` ancestor because JS portals
   the topbar to <body> at init (see menu-overlay.js). Use .wsk-menu-overlay__topbar
   as the only scope. */
.wsk-menu-overlay__topbar a.wsk-menu-overlay__cta {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: center !important;
	justify-content: center !important;
	margin-left: 28px !important;
	padding: 0 24px !important;
	min-height: 44px !important;
	height: 44px !important;
	gap: 4px !important;
	background: var(--wsk-mo-cta-bg, #0d2f44) !important;
	background-color: var(--wsk-mo-cta-bg, #0d2f44) !important;
	color: var(--wsk-mo-cta-text, #ffffff) !important;
	border: 1px solid var(--wsk-mo-cta-border, rgba(255, 255, 255, 0.6)) !important;
	border-radius: 0 !important;
	font-family: inherit !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	letter-spacing: 0.15em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	white-space: nowrap !important;
	text-decoration: none !important;
	cursor: pointer;
	transition: all 0.15s ease-in;
	box-sizing: border-box !important;
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__topbar a.wsk-menu-overlay__cta {
		font-size: 16px !important;
		min-height: 46px !important;
		height: 46px !important;
	}
}
.wsk-menu-overlay__topbar a.wsk-menu-overlay__cta:hover,
.wsk-menu-overlay__topbar a.wsk-menu-overlay__cta:focus-visible {
	background: var(--wsk-mo-cta-bg-hover, #204a63) !important;
}

/* Hamburger */
.wsk-menu-overlay__topbar button.wsk-menu-overlay__trigger {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: var(--wsk-mo-trigger-w, 40px) !important;
	height: var(--wsk-mo-trigger-w, 40px) !important;
	margin-left: 28px !important;
	color: inherit !important;
	transition: opacity .25s ease;
}
.wsk-menu-overlay__topbar button.wsk-menu-overlay__trigger:hover,
.wsk-menu-overlay__topbar button.wsk-menu-overlay__trigger:focus-visible {
	opacity: 0.7;
}
.wsk-menu-overlay__trigger-icon {
	width: var(--wsk-mo-trigger-w, 40px) !important;
	height: var(--wsk-mo-trigger-w, 40px) !important;
	object-fit: contain !important;
}

/* Ref-exact responsive sizing. */
@media (min-width: 768px) {
	.wsk-menu-overlay__topbar { padding: var(--wsk-mo-topbar-pad-top, 30px) 30px 0 !important; }
}
@media (min-width: 1024px) {
	.wsk-menu-overlay__topbar { --wsk-mo-topbar-h: 187px; }
	.wsk-menu-overlay__topbar img.wsk-menu-overlay__logo-img {
		max-width: var(--wsk-mo-logo-w, 150px) !important;
		max-height: var(--wsk-mo-logo-h, 150px) !important;
	}
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__topbar { --wsk-mo-topbar-h: 251px; padding: var(--wsk-mo-topbar-pad-top, 30px) 52px 0 !important; }
	.wsk-menu-overlay__topbar img.wsk-menu-overlay__logo-img {
		max-width: var(--wsk-mo-logo-w, 150px) !important;
		max-height: var(--wsk-mo-logo-h, 150px) !important;
	}
	.wsk-menu-overlay__topbar button.wsk-menu-overlay__trigger,
	.wsk-menu-overlay__trigger-icon { width: 55px !important; height: 55px !important; }
}

/* ──────────────────────────────────────────────────────────
   3. PANEL — ref `.module-mainmenu.submodule-mainmenu-open`
   ────────────────────────────────────────────────────────── */
.wsk-menu-overlay__panel {
	position: fixed !important;
	left: 0 !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	z-index: 2147483647 !important;
	background: var(--wsk-mo-overlay-bg, #ffffff) !important;
	color: var(--wsk-mo-overlay-text, #786947) !important;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-100%);
	transition: all 0.3s ease-in;
	visibility: hidden;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	font-family: "Jost", sans-serif;
	font-size: 14px;
	line-height: 1;
	font-weight: 300;
	letter-spacing: 0.04em;
}
.wsk-menu-overlay__panel.is-open {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
	visibility: visible;
}

.wsk-menu-overlay__panel-inner {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	height: 100% !important;
	overflow: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__panel-inner {
		overflow: hidden !important;
	}
}

/* Top-area (mobile sticky bar) */
.wsk-menu-overlay__top-area {
	position: sticky !important;
	top: 0 !important;
	z-index: 2;
	flex-shrink: 0;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	height: 77px !important;
	padding: 0 22px !important;
	background: var(--wsk-mo-top-area-bg, #e5e4e1) !important;
	color: var(--wsk-mo-overlay-text, #786947) !important;
	border-bottom: 1px solid rgba(120, 105, 71, 0.26) !important;
}
@media (min-width: 768px) {
	.wsk-menu-overlay__top-area { height: 87px !important; padding: 0 30px !important; }
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__top-area { display: none !important; }
}

.wsk-menu-overlay__top-area .wsk-menu-overlay__panel-phone-icon {
	width: 37px !important;
	height: auto !important;
}
.wsk-menu-overlay__top-area a.wsk-menu-overlay__top-area-booking {
	display: inline-flex !important;
	align-items: center !important;
	color: inherit !important;
	font-family: "Jost", sans-serif !important;
	font-size: 14px !important;
	font-weight: 300 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	text-decoration: none !important;
}
.wsk-menu-overlay__panel img.wsk-menu-overlay__top-area-brand-img {
	width: auto !important;
	height: auto !important;
	max-width: var(--wsk-mo-logo-panel-mobile-w, 100px) !important;
	max-height: var(--wsk-mo-logo-panel-mobile-h, 100px) !important;
	display: block !important;
	object-fit: contain !important;
}

/* Main area */
.wsk-menu-overlay__main {
	flex: 1 1 auto !important;
	min-height: 0 !important;
	height: 100% !important;
	display: flex !important;
	flex-direction: column !important;
	z-index: 1;
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__main {
		display: grid !important;
		grid-template-columns: 65fr 35fr !important;
		grid-template-rows: auto 1fr auto !important;
		grid-template-areas:
			"image maintop"
			"image maincenter"
			"mainbottom mainbottom" !important;
		align-items: stretch !important;
		height: 100% !important;
		min-height: 0 !important;
	}
	.wsk-menu-overlay__image {
		grid-area: image;
		align-self: stretch !important;
		justify-self: stretch !important;
		width: 100% !important;
		height: 100% !important;
		min-height: 100% !important;
	}
	.wsk-menu-overlay__main-top { grid-area: maintop; }
	.wsk-menu-overlay__main-center { grid-area: maincenter; }
	.wsk-menu-overlay__main-bottom { grid-area: mainbottom; width: 100% !important; }
}

/* Image layer — never on mobile */
.wsk-menu-overlay__image,
.wsk-menu-overlay__image li,
.wsk-menu-overlay__image img { display: none !important; }
@media (max-width: 1279px) {
	.wsk-menu-overlay__panel .wsk-menu-overlay__image,
	.wsk-menu-overlay__panel .wsk-menu-overlay__image li,
	.wsk-menu-overlay__panel .wsk-menu-overlay__image img {
		display: none !important;
		visibility: hidden !important;
	}
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__image {
		display: block !important;
		width: 65vw !important;
		max-width: 65vw !important;
		height: 100% !important;
		background-color: transparent !important;
		position: relative !important;
		overflow: hidden !important;
	}
	.wsk-menu-overlay__image li {
		display: block !important;
		transition: all 0.3s ease-in;
		z-index: 2;
		position: absolute !important;
		left: 0 !important;
		top: 0 !important;
		width: 100% !important;
		height: 100% !important;
	}
	.wsk-menu-overlay__image li.is-default { z-index: 1; }
	.wsk-menu-overlay__image img {
		position: absolute !important;
		left: 0 !important;
		top: 0 !important;
		width: 100% !important;
		height: 100% !important;
		object-fit: cover !important;
		display: block !important;
	}
	.wsk-menu-overlay__image li:not(.is-default) { opacity: 0; }
	.wsk-menu-overlay__image li:not(.is-default).is-active { opacity: 1; }
}

/* Main top (thin bar) */
.wsk-menu-overlay__main-top {
	font-family: var(--wsk-mo-primary_link-font-family, "Jost", sans-serif) !important;
	font-size: 14px !important;
	line-height: 1 !important;
	font-weight: 300 !important;
	letter-spacing: 0.04em !important;
	padding: 6px 22px 4px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	border-top: 1px solid rgba(120, 105, 71, 0.26) !important;
	border-bottom: 1px solid rgba(120, 105, 71, 0.26) !important;
}
/* Mobile main-top: hide phone-text + close; keep MY BOOKING + lang visible. */
@media (max-width: 1279px) {
	.wsk-menu-overlay__panel .wsk-menu-overlay__main-top a.wsk-menu-overlay__panel-phone,
	.wsk-menu-overlay__panel .wsk-menu-overlay__main-top .wsk-menu-overlay__phone-text,
	.wsk-menu-overlay__panel .wsk-menu-overlay__main-top button.wsk-menu-overlay__close {
		display: none !important;
	}
	.wsk-menu-overlay__panel .wsk-menu-overlay__main-top a.wsk-menu-overlay__panel-booking {
		display: inline-flex !important;
		font-weight: 300 !important;
	}
	.wsk-menu-overlay__panel .wsk-menu-overlay__main-top {
		justify-content: space-between !important;
		padding: 20px 22px !important;
	}
}
@media (min-width: 768px) {
	.wsk-menu-overlay__main-top { padding: 14px 22px 12px !important; }
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__main-top {
		justify-content: flex-end !important;
		border: 0 !important;
		gap: 32px !important;
		padding: 40px 40px 4px !important;
		flex-wrap: nowrap !important;
	}
	.wsk-menu-overlay__main-top .wsk-menu-overlay__phone-text,
	.wsk-menu-overlay__main-top button.wsk-menu-overlay__close {
		display: inline-flex !important;
	}
	.wsk-menu-overlay__main-top a.wsk-menu-overlay__panel-phone,
	.wsk-menu-overlay__main-top .wsk-menu-overlay__phone-text,
	.wsk-menu-overlay__main-top a.wsk-menu-overlay__panel-booking,
	.wsk-menu-overlay__main-top .wsk-menu-overlay__panel-lang {
		white-space: nowrap !important;
		flex: 0 0 auto !important;
	}
}

/* Main center (big uppercase serif list) */
.wsk-menu-overlay__main-center {
	font-family: var(--wsk-mo-primary_link-font-family, "Cormorant Garamond", serif) !important;
	font-size: 24px !important;
	line-height: 1.1 !important;
	font-weight: 300 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
	text-transform: uppercase !important;
	padding: 32px 0 !important;
	color: inherit !important;
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__main-center {
		font-size: 25px !important;
		padding-top: 0 !important;
	}
}

.wsk-menu-overlay__main-center ul {
	width: 100% !important;
}
.wsk-menu-overlay__main-center .wsk-menu-overlay__panel-logo {
	display: none !important;
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__main-center .wsk-menu-overlay__panel-logo {
		display: flex !important;
		margin-bottom: 20px !important;
	}
	.wsk-menu-overlay__panel img.wsk-menu-overlay__panel-logo-img {
		display: block !important;
		width: auto !important;
		height: auto !important;
		max-width: var(--wsk-mo-logo-panel-w, 150px) !important;
		max-height: var(--wsk-mo-logo-panel-h, 150px) !important;
		object-fit: contain !important;
	}
}

/* Link rows */
.wsk-menu-overlay__panel a.wsk-menu-overlay__link,
.wsk-menu-overlay__panel .wsk-menu-overlay__link {
	display: flex !important;
	justify-content: center !important;
	padding: 13.8px 0 !important;
	color: inherit !important;
	transition: opacity 0.15s ease-in;
}
@media (min-width: 768px) {
	.wsk-menu-overlay__panel a.wsk-menu-overlay__link { padding: 23.8px 0 !important; }
}
@media (min-width: 1024px) {
	.wsk-menu-overlay__panel a.wsk-menu-overlay__link { padding: 17.5px 0 !important; }
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__panel a.wsk-menu-overlay__link { padding: 14px 0 !important; }
}

/* Hover fade */
.wsk-menu-overlay__main-center ul:hover .wsk-menu-overlay__link {
	opacity: 0.7;
}
.wsk-menu-overlay__main-center ul .wsk-menu-overlay__link:hover,
.wsk-menu-overlay__main-center ul .wsk-menu-overlay__link:focus-visible {
	opacity: 1;
}

/* Primary label (consumes Avada typography vars) */
.wsk-menu-overlay__main-center .wsk-menu-overlay__label {
	font-family: var(--wsk-mo-primary_link-font-family, inherit) !important;
	font-size: var(--wsk-mo-primary_link-font-size, inherit) !important;
	font-weight: var(--wsk-mo-primary_link-font-weight, inherit) !important;
	font-style: var(--wsk-mo-primary_link-font-style, normal) !important;
	line-height: var(--wsk-mo-primary_link-line-height, 1.1) !important;
	letter-spacing: var(--wsk-mo-primary_link-letter-spacing, normal) !important;
	text-transform: var(--wsk-mo-primary_link-text-transform, uppercase) !important;
	color: var(--wsk-mo-primary_link-color, var(--wsk-mo-overlay-link, var(--wsk-mo-overlay-text, #ffffff))) !important;
	background: transparent !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Main bottom — "Maison footer" — secondary nav + socials on same row ≥1280. */
.wsk-menu-overlay__main-bottom {
	flex-shrink: 0;
	font-family: var(--wsk-mo-secondary_link-font-family, "Jost", sans-serif) !important;
	font-size: 11px !important;
	line-height: 1.3 !important;
	font-weight: 300 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	border-top: 1px solid rgba(120, 105, 71, 0.26) !important;
	padding: 18px 16px 20px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 16px !important;
	color: inherit !important;
}
@media (min-width: 768px)  { .wsk-menu-overlay__main-bottom { font-size: 13px !important; padding: 24px 22px !important; gap: 22px !important; } }
@media (min-width: 1280px) {
	.wsk-menu-overlay__main-bottom {
		font-size: 14px !important;
		padding: 24px 36px !important;
		gap: 32px !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: space-between !important;
	}
	.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections {
		flex: 0 1 auto !important;
		width: auto !important;
		margin-right: auto !important;
	}
	.wsk-menu-overlay__bottom-socials {
		margin-left: auto !important;
	}
	.wsk-menu-overlay__bottom-socials ul.wsk-menu-overlay__social-list {
		justify-content: flex-end !important;
		margin: 0 !important;
		width: auto !important;
		max-width: none !important;
	}
}

/* "Follow Us" label with hairlines either side. */
.wsk-menu-overlay__social-label {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	width: 100% !important;
	max-width: var(--wsk-mo-social-max-w, 420px) !important;
	margin: 8px auto 4px !important;
	color: inherit !important;
}
.wsk-menu-overlay__social-label-rule {
	flex: 1 1 auto !important;
	height: 1px !important;
	background: rgba(120, 105, 71, 0.35) !important;
	display: block !important;
}
.wsk-menu-overlay__social-label-text {
	flex: 0 0 auto !important;
	font-family: var(--wsk-mo-secondary_link-font-family, "Jost", sans-serif) !important;
	font-size: 9px !important;
	font-weight: 400 !important;
	letter-spacing: 0.4em !important;
	text-transform: uppercase !important;
	color: inherit !important;
	opacity: 0.75;
}
@media (min-width: 768px) { .wsk-menu-overlay__social-label-text { font-size: 10px !important; } }

/* Bottom socials wrapper — sits INSIDE .wsk-menu-overlay__main-bottom.
   Mobile: stacked below secondary nav. Desktop ≥1280: right-aligned beside it. */
.wsk-menu-overlay__bottom-socials {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	gap: 10px !important;
	width: 100% !important;
	max-width: var(--wsk-mo-social-max-w, 420px) !important;
	margin: 0 auto !important;
	padding: 0 !important;
	flex: 0 0 auto !important;
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__bottom-socials {
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		flex-direction: row !important;
		gap: 16px !important;
	}
	/* Hide the "FOLLOW US" hairline label at desktop — ref has icons only inline. */
	.wsk-menu-overlay__bottom-socials .wsk-menu-overlay__social-label {
		display: none !important;
	}
}

/* Socials — horizontal row, even spread. */
.wsk-menu-overlay__panel ul.wsk-menu-overlay__social-list {
	list-style: none !important;
	margin: 0 auto !important;
	padding: 0 !important;
	width: 100% !important;
	max-width: var(--wsk-mo-social-max-w, 420px) !important;
	display: flex !important;
	grid-template-columns: none !important;
	align-items: center !important;
	justify-content: space-around !important;
	flex-wrap: nowrap !important;
	gap: 8px !important;
	border-top: 0 !important;
	column-count: auto !important;
}
.wsk-menu-overlay__panel ul.wsk-menu-overlay__social-list li {
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
	max-width: none !important;
}
@media (min-width: 768px) {
	.wsk-menu-overlay__panel ul.wsk-menu-overlay__social-list {
		gap: 16px !important;
	}
}
.wsk-menu-overlay__panel a.wsk-menu-overlay__social-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	color: inherit !important;
	opacity: 0.75;
	transition: opacity .2s ease, transform .2s ease;
}
.wsk-menu-overlay__panel a.wsk-menu-overlay__social-link:hover,
.wsk-menu-overlay__panel a.wsk-menu-overlay__social-link:focus-visible {
	opacity: 1;
	transform: translateY(-1px);
	outline: none;
}
.wsk-menu-overlay__social-link svg {
	display: block !important;
	width: 20px !important;
	height: 20px !important;
}
@media (min-width: 768px) {
	.wsk-menu-overlay__panel a.wsk-menu-overlay__social-link { width: 32px !important; height: 32px !important; }
	.wsk-menu-overlay__social-link svg { width: 22px !important; height: 22px !important; }
}

/* Secondary nav — "Editorial Index": 2-col grid with serif numerals + Jost labels,
   vertical hairline between columns, rows hairline-separated. */
.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections {
	width: 100% !important;
	max-width: 320px !important;
	margin: 4px auto 8px !important;
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	align-items: stretch !important;
	justify-items: stretch !important;
	gap: 0 !important;
	column-count: auto !important;
	position: relative !important;
	border: 0 !important;
	padding: 0 !important;
}
@media (min-width: 1280px) {
	.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections {
		max-width: none !important;
	}
}
/* Vertical hairline between the two columns. */
.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections::before {
	content: "" !important;
	position: absolute !important;
	top: 12px !important;
	bottom: 12px !important;
	left: 50% !important;
	width: 1px !important;
	background: rgba(120, 105, 71, 0.26) !important;
	pointer-events: none !important;
}
.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections li.wsk-menu-overlay__item {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid rgba(120, 105, 71, 0.15) !important;
}
/* Last row (if odd count, last item is in col 1 and spans row): remove its border. */
.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections li.wsk-menu-overlay__item:nth-last-child(-n+2):nth-child(odd) {
	border-bottom: 0 !important;
}
.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections li.wsk-menu-overlay__item:nth-last-child(-n+1):nth-child(even) {
	border-bottom: 0 !important;
}
.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections li.wsk-menu-overlay__item:last-child,
.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections li.wsk-menu-overlay__item:nth-last-child(2):nth-child(odd) {
	border-bottom: 0 !important;
}

.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections .wsk-menu-overlay__link {
	display: flex !important;
	align-items: baseline !important;
	justify-content: flex-start !important;
	gap: 10px !important;
	padding: 14px 16px !important;
	color: inherit !important;
	text-decoration: none !important;
	transition: opacity .2s ease, color .2s ease;
}
.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections .wsk-menu-overlay__link:hover,
.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections .wsk-menu-overlay__link:focus-visible {
	opacity: 1;
	color: var(--wsk-mo-overlay-accent, #786947) !important;
	outline: none;
}

/* Tiny serif numeral before each label. */
.wsk-menu-overlay__main-bottom .wsk-menu-overlay__link-num {
	font-family: "Cormorant Garamond", serif !important;
	font-style: italic !important;
	font-weight: 400 !important;
	font-size: 11px !important;
	letter-spacing: 0.05em !important;
	opacity: 0.55;
	line-height: 1 !important;
	flex: 0 0 auto;
}

/* Label block — smaller than before, tighter tracking. */
.wsk-menu-overlay__main-bottom .wsk-menu-overlay__label {
	font-family: var(--wsk-mo-secondary_link-font-family, "Jost", sans-serif) !important;
	font-size: 10px !important;
	font-weight: 300 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	color: var(--wsk-mo-secondary_link-color, var(--wsk-mo-overlay-link, var(--wsk-mo-overlay-text, #ffffff))) !important;
	line-height: 1.2 !important;
	background: transparent !important;
	margin: 0 !important;
	padding: 0 !important;
}

@media (min-width: 768px) {
	.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections .wsk-menu-overlay__link {
		padding: 18px 22px !important;
	}
	.wsk-menu-overlay__main-bottom .wsk-menu-overlay__link-num { font-size: 13px !important; }
	.wsk-menu-overlay__main-bottom .wsk-menu-overlay__label { font-size: 11px !important; }
}
@media (min-width: 1280px) {
	/* Flex-based distribution — handles N items (4, 5, 6, …) without wrapping. */
	.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections {
		display: flex !important;
		flex-wrap: nowrap !important;
		justify-content: space-between !important;
		align-items: stretch !important;
		gap: 0 !important;
		max-width: none !important;
		grid-template-columns: none !important;
	}
	.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections::before {
		display: none !important;
	}
	.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections li.wsk-menu-overlay__item {
		flex: 1 1 0 !important;
		border-right: 1px solid rgba(120, 105, 71, 0.15) !important;
		border-bottom: 0 !important;
	}
	.wsk-menu-overlay__main-bottom ul.wsk-menu-overlay__secondary-sections .wsk-menu-overlay__link {
		justify-content: center !important;
		padding: 22px 24px !important;
	}
	.wsk-menu-overlay__main-bottom .wsk-menu-overlay__label { font-size: 12px !important; }
}
.wsk-menu-overlay__main-bottom li {
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	break-inside: avoid;
	text-align: center;
}

.wsk-menu-overlay__main-bottom .wsk-menu-overlay__link:hover,
.wsk-menu-overlay__main-bottom .wsk-menu-overlay__link:focus-visible {
	opacity: 0.7;
}

/* Close button (both mobile + desktop) */
.wsk-menu-overlay__panel button.wsk-menu-overlay__close {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 40px !important;
	height: 40px !important;
	color: inherit !important;
	transition: transform .3s ease;
}
.wsk-menu-overlay__panel button.wsk-menu-overlay__close:hover,
.wsk-menu-overlay__panel button.wsk-menu-overlay__close:focus-visible {
	transform: rotate(90deg);
}
.wsk-menu-overlay__close-icon {
	width: 40px !important;
	height: 40px !important;
	object-fit: contain !important;
}

/* Panel phone links */
.wsk-menu-overlay__panel a.wsk-menu-overlay__panel-phone {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	color: inherit !important;
	text-transform: uppercase !important;
	letter-spacing: 0.12em !important;
	transition: opacity .25s ease;
}
.wsk-menu-overlay__panel a.wsk-menu-overlay__panel-phone:hover,
.wsk-menu-overlay__panel a.wsk-menu-overlay__panel-phone:focus-visible {
	opacity: 0.7;
}
.wsk-menu-overlay__panel-phone-icon {
	width: 37px !important;
	height: 37px !important;
	object-fit: contain !important;
}

/* Panel booking link */
.wsk-menu-overlay__panel a.wsk-menu-overlay__panel-booking {
	display: inline-flex !important;
	align-items: center !important;
	color: inherit !important;
	font-family: "Jost", sans-serif !important;
	font-size: 14px !important;
	font-weight: 300 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	transition: opacity .25s ease;
}
/* Panel lang block (inside main-top). */
.wsk-menu-overlay__panel .wsk-menu-overlay__panel-lang {
	display: inline-flex !important;
	align-items: center !important;
	color: inherit !important;
	font-family: "Jost", sans-serif !important;
	font-size: 14px !important;
	font-weight: 300 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
}
.wsk-menu-overlay__panel a.wsk-menu-overlay__panel-booking:hover,
.wsk-menu-overlay__panel a.wsk-menu-overlay__panel-booking:focus-visible {
	opacity: 0.7;
}

/* ──────────────────────────────────────────────────────────
   4. Body state when overlay is open (scroll lock)
   ────────────────────────────────────────────────────────── */
body.wsk-menu-overlay-open {
	overflow: hidden !important;
}

/* ──────────────────────────────────────────────────────────
   5. Reduced motion
   ────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-menu-overlay__topbar,
	.wsk-menu-overlay__panel,
	.wsk-menu-overlay__panel a.wsk-menu-overlay__link,
	.wsk-menu-overlay__panel button.wsk-menu-overlay__close,
	.wsk-menu-overlay__image li {
		transition-duration: 0.01ms !important;
	}
}
/**
 * WEPRO: Full Slider — editorial full-bleed slider with overlaid headline + body.
 *
 * Defaults (converted from a 62.5%-base rem reference, i.e. 1rem = 10px):
 *   .item: min-height 100vh, flex column, image full-bleed below content
 *   .item-pretitle: Cormorant Garamond serif, 26/28/30px, weight 300, line-height 1.1
 *   .item-title:    Jost sans, 25/30px, weight 300, letter-spacing 0.12em, uppercase
 *   .item-text:     Jost sans, 16/18px, weight 300, line-height 1.1
 *   White text over a dark image overlay.
 *   Bottom band: rgba(2,2,2,0.19) + backdrop-filter blur(6px), border-top hairline.
 *   Custom prev/next nav buttons with adjacent-slide title preview ≥1280px.
 *
 * Editor overrides flow through CSS variables (--wsk-fs-*-*) emitted by PHP via
 * wsk_text_css_vars(); fallbacks below are the ref values verbatim.
 *
 * Avada defence: every typographic + a/button/list rule is duplicated under
 * .fusion-body .wsk-fs ... with full element-tag matrix (h1–h6, div, span, p)
 * to outrank Avada's dynamic .fusion-body h3 / .fusion-body p cascade.
 */

/* ───────── -1. Self-host the ref fonts via Google Fonts so the design defaults
   render correctly even when the host theme doesn't ship them. ───────── */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500&family=Jost:wght@300;400;500&display=swap');

/* ───────── 0. Root reset under .wsk-fs ───────── */
.wsk-fs,
.wsk-fs * {
	box-sizing: border-box;
}
.wsk-fs a,
.wsk-fs a:link,
.wsk-fs a:visited,
.wsk-fs a:hover,
.wsk-fs a:focus,
.wsk-fs a:active {
	text-decoration: none !important;
	border: 0 !important;
	outline: none !important;
	background: transparent !important;
	color: inherit !important;
}
.wsk-fs button {
	appearance: none !important;
	-webkit-appearance: none !important;
	background: transparent !important;
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	color: inherit !important;
	font: inherit !important;
	padding: 0 !important;
	margin: 0 !important;
	cursor: pointer;
}

/* ───────── 1. Section wrapper ───────── */
.wsk-fs {
	position: relative;
	display: block;
	width: 100%;
	color: var(--wsk-fs-text, #FFFFFF);
	overflow: hidden;
}
.wsk-fs__inner {
	position: relative;
	width: 100%;
}

/* Swiper container — Swiper 12 sets overflow: hidden by default; OK here. */
.wsk-fs__swiper { width: 100%; }

/* ───────── 2. Slide ───────── */
.wsk-fs__slide.swiper-slide {
	position: relative;
	min-height: 88vh; /* leaves room for sticky header (~12vh) */
	display: flex !important;
	flex-direction: column;
	color: inherit;
}

/* Background image — full-bleed, fixed slide size, object-fit cover. */
.wsk-fs__bg {
	position: absolute;
	inset: 0;
	z-index: 1;
	overflow: hidden;
}
.wsk-fs__bg-img {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover !important;
	object-position: center center !important;
	display: block !important;
	border: 0 !important;
}

/* Dark overlay over image — strength controlled by --wsk-fs-overlay. */
.wsk-fs__overlay {
	position: absolute;
	inset: 0;
	background: var(--wsk-fs-overlay, rgba(0,0,0,0.35));
	pointer-events: none;
	z-index: 2;
}

/* Content layer above image + overlay — centered column (ref). */
.wsk-fs__content {
	position: relative;
	z-index: 3;
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	color: inherit;
	pointer-events: auto;
}

/* Top region — eyebrow up, title pushed down via space-between (ref pattern). */
.wsk-fs__top {
	flex: 1;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	text-align: center;
}

/* ───────── 3. Eyebrow + Title (centered per ref).
   Pixel values converted from ref (which assumes html { font-size: 62.5% }
   so 1rem = 10px). We don't depend on the host's root font-size, so we
   express ref values directly in px. */
.wsk-fs__eyebrow {
	font-family: var(--wsk-fs-eyebrow-font-family, "Cormorant Garamond", serif) !important;
	font-size: var(--wsk-fs-eyebrow-font-size, 26px) !important;
	font-weight: var(--wsk-fs-eyebrow-font-weight, 300) !important;
	font-style: var(--wsk-fs-eyebrow-font-style, normal) !important;
	line-height: var(--wsk-fs-eyebrow-line-height, 1.1) !important;
	letter-spacing: var(--wsk-fs-eyebrow-letter-spacing, normal) !important;
	text-transform: var(--wsk-fs-eyebrow-text-transform, uppercase) !important;
	color: var(--wsk-fs-eyebrow-color, var(--wsk-fs-text, #FFFFFF)) !important;
	text-align: var(--wsk-fs-eyebrow-text-align, center) !important;
	padding: 8px 22px !important;
	margin: 0 !important;
	background: transparent !important;
}
.wsk-fs__title {
	font-family: var(--wsk-fs-title-font-family, "Jost", sans-serif) !important;
	font-size: var(--wsk-fs-title-font-size, 25px) !important;
	font-weight: var(--wsk-fs-title-font-weight, 300) !important;
	font-style: var(--wsk-fs-title-font-style, normal) !important;
	line-height: var(--wsk-fs-title-line-height, 1) !important;
	letter-spacing: var(--wsk-fs-title-letter-spacing, 0.12em) !important;
	text-transform: var(--wsk-fs-title-text-transform, uppercase) !important;
	color: var(--wsk-fs-title-color, var(--wsk-fs-text, #FFFFFF)) !important;
	text-align: var(--wsk-fs-title-text-align, center) !important;
	padding: 22px !important;
	margin: 0 !important;
	background: transparent !important;
}

/* ───────── 4. Body band — full-width glass strip pinned to slide bottom ─────────
   Ref: border-top hairline + rgba(2,2,2,0.19) bg + backdrop-filter blur,
   text + CTA centered horizontally. */
.wsk-fs__body {
	width: 100%;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	border-top: 1px solid rgba(255, 255, 255, 0.35);
	background: rgba(2, 2, 2, 0.19); /* soft glass — ref */
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	padding: 22px 28px 72px !important;
}
.wsk-fs__text {
	font-family: var(--wsk-fs-body-font-family, "Jost", sans-serif) !important;
	font-size: var(--wsk-fs-body-font-size, 16px) !important;
	font-weight: var(--wsk-fs-body-font-weight, 300) !important;
	font-style: var(--wsk-fs-body-font-style, normal) !important;
	line-height: var(--wsk-fs-body-line-height, 1.1) !important;
	letter-spacing: var(--wsk-fs-body-letter-spacing, normal) !important;
	text-transform: var(--wsk-fs-body-text-transform, none) !important;
	color: var(--wsk-fs-body-color, var(--wsk-fs-text, #FFFFFF)) !important;
	text-align: var(--wsk-fs-body-text-align, center) !important;
	padding-top: 16px !important;
	margin: 0 !important;
	max-width: 630px;
	background: transparent !important;
}
.fusion-body .wsk-fs .wsk-fs__cta-wrap,
.wsk-fs .wsk-fs__cta-wrap {
	display: flex !important;
	justify-content: center !important;
	margin-top: 18px !important;
}
@media (min-width: 768px) {
	.fusion-body .wsk-fs .wsk-fs__cta-wrap,
	.wsk-fs .wsk-fs__cta-wrap { margin-top: 22px !important; }
}
@media (min-width: 1280px) {
	.fusion-body .wsk-fs .wsk-fs__cta-wrap,
	.wsk-fs .wsk-fs__cta-wrap { margin-top: 28px !important; }
}
.wsk-fs__cta,
.wsk-fs__cta:link,
.wsk-fs__cta:visited {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	padding: 10px 16px !important;
	border: 1px solid rgba(255, 255, 255, 0.35) !important;
	border-radius: 0 !important;
	background: rgba(0, 0, 0, 0.45) !important;
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	backdrop-filter: blur(16px) saturate(140%);
	color: var(--wsk-fs-text, #FFFFFF) !important;
	font-family: var(--wsk-fs-body-font-family, "Jost", sans-serif) !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	letter-spacing: 0.18em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	text-decoration: none !important;
	transition: background 0.3s ease, gap 0.3s ease, border-color 0.3s ease !important;
}
.wsk-fs__cta:hover,
.wsk-fs__cta:focus-visible {
	background: rgba(0, 0, 0, 0.6) !important;
	border-color: rgba(255, 255, 255, 0.6) !important;
	gap: 14px !important;
	outline: none;
}
.wsk-fs__cta svg {
	flex: 0 0 14px;
	width: 14px;
	height: 14px;
}

/* ───────── 5. Responsive padding ladder (lifted from ref, in px). ───────── */
@media (min-width: 768px) {
	.wsk-fs__eyebrow {
		max-width: 630px;
		padding-top: 63px !important;
	}
	.wsk-fs__title {
		font-size: var(--wsk-fs-title-font-size, 30px) !important;
		padding-bottom: 34px !important;
	}
	.wsk-fs__text {
		max-width: 630px;
	}
}
@media (min-width: 1024px) {
	.wsk-fs__eyebrow { padding-top: 76px !important; }
	.wsk-fs__body    { padding-top: 46px !important; padding-bottom: 40px !important; }
}
@media (min-width: 1280px) {
	.wsk-fs__eyebrow { padding-top: 51px !important; }
}

/* Inline style on the eyebrow sets padding:15px 22px (mobile-first); desktop
   overrides above must beat that inline declaration. .fusion-body bump + tag
   matrix gives our @media rules enough specificity. */
@media (min-width: 768px) {
	.fusion-body .wsk-fs__eyebrow,
	.fusion-body .wsk-fs h1.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h2.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h3.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h4.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h5.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h6.wsk-fs__eyebrow,
	.fusion-body .wsk-fs div.wsk-fs__eyebrow,
	.fusion-body .wsk-fs span.wsk-fs__eyebrow,
	.fusion-body .wsk-fs p.wsk-fs__eyebrow {
		padding: 63px 22px 15px !important;
	}
}
@media (min-width: 1024px) {
	.fusion-body .wsk-fs__eyebrow,
	.fusion-body .wsk-fs h1.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h2.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h3.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h4.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h5.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h6.wsk-fs__eyebrow,
	.fusion-body .wsk-fs div.wsk-fs__eyebrow,
	.fusion-body .wsk-fs span.wsk-fs__eyebrow,
	.fusion-body .wsk-fs p.wsk-fs__eyebrow {
		padding: 76px 22px 15px !important;
	}
}
@media (min-width: 1280px) {
	.fusion-body .wsk-fs__eyebrow,
	.fusion-body .wsk-fs h1.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h2.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h3.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h4.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h5.wsk-fs__eyebrow,
	.fusion-body .wsk-fs h6.wsk-fs__eyebrow,
	.fusion-body .wsk-fs div.wsk-fs__eyebrow,
	.fusion-body .wsk-fs span.wsk-fs__eyebrow,
	.fusion-body .wsk-fs p.wsk-fs__eyebrow {
		padding: 51px 22px 15px !important;
	}
}

/* ───────── 6. Custom controls (prev / counter / next) — mobile: tight cluster
   centered (arrows hug the counter); ≥1280: arrows split to slide edges. ───────── */
.wsk-fs__controls {
	position: relative;
	z-index: 4;
	margin-top: -62px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24px;
	padding: 0 16px 16px;
	color: var(--wsk-fs-text, #FFFFFF);
	pointer-events: none; /* re-enable on children */
}
.wsk-fs__controls > * { pointer-events: auto; }

.wsk-fs__prev-holder,
.wsk-fs__next-holder {
	display: flex;
	align-items: center;
	gap: 4px;
}
.wsk-fs__counter {
	flex: 0 0 auto;
	font-family: var(--wsk-fs-body-font-family, "Jost", sans-serif);
	font-size: 13px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	font-variant-numeric: tabular-nums;
	opacity: 0.85;
}
.wsk-fs__prev,
.wsk-fs__next {
	width: 40px !important;
	height: 40px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: var(--wsk-fs-text, #FFFFFF) !important;
	transition: opacity 0.2s ease, transform 0.3s ease !important;
}
.wsk-fs__prev:hover,
.wsk-fs__next:hover,
.wsk-fs__prev:focus-visible,
.wsk-fs__next:focus-visible {
	opacity: 0.7;
	outline: none;
}
.wsk-fs__prev svg,
.wsk-fs__next svg {
	width: 40px;
	height: 40px;
}
.wsk-fs__prev-title,
.wsk-fs__next-title {
	display: none;
}

/* ≥1024 — controls float above bottom of slide. */
@media (min-width: 1024px) {
	.wsk-fs__controls {
		margin-top: -50px;
	}
}

/* ≥1280 — body band becomes a 3-column row: [prev-holder | center | next-holder].
   Prev/next holders STRETCH to the desc-text height; the arrow sits at the
   bottom of each holder, which lines up with the bottom of the description. */
@media (min-width: 1280px) {
	.wsk-fs .wsk-fs__inner { position: relative; }
	.wsk-fs__controls {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 40px;
		top: auto;
		margin-top: 0;
		padding: 0;
		justify-content: space-between;
		align-items: stretch;
		min-height: 0;
	}
	.wsk-fs__counter { display: none; }
	.wsk-fs__prev-holder,
	.wsk-fs__next-holder {
		position: absolute;
		bottom: 0;
		top: auto;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;  /* anchor at column bottom (= controls bottom) */
		gap: 10px;                  /* fixed title↔arrow spacing regardless of desc */
		width: calc(50% - 400px);
	}
	.wsk-fs__prev-holder {
		left: 0;
		align-items: flex-end;
		padding-left: 30px;
		text-align: right;
	}
	.wsk-fs__next-holder {
		right: 0;
		align-items: flex-start;
		padding-right: 30px;
		text-align: left;
	}
	/* Force arrow alignment in case Avada's button reset overrides cross-axis. */
	.wsk-fs__prev-holder .wsk-fs__prev { align-self: flex-end !important; }
	.wsk-fs__next-holder .wsk-fs__next { align-self: flex-start !important; }
	.wsk-fs__prev-title,
	.wsk-fs__next-title {
		display: block;
		font-family: var(--wsk-fs-body-font-family, "Jost", sans-serif);
		font-size: 15px;
		line-height: 1;
		font-weight: 300;
		letter-spacing: 0.12em;
		text-transform: uppercase;
		max-width: 340px;
		cursor: pointer;
		margin-bottom: 2px;
		opacity: 0.85;
		transition: opacity 0.2s ease;
	}
	.wsk-fs__prev-title:hover,
	.wsk-fs__next-title:hover,
	.wsk-fs__prev-title:focus-visible,
	.wsk-fs__next-title:focus-visible {
		opacity: 1;
		outline: none;
	}
	.wsk-fs__prev-title.is-disabled,
	.wsk-fs__next-title.is-disabled,
	.wsk-fs__prev.swiper-button-disabled,
	.wsk-fs__next.swiper-button-disabled {
		opacity: 0;
		pointer-events: none;
	}
}

/* ───────── 8. Avada-defence — minimal residual.
   The element-level inline `style` attributes (set in PHP render) carry the
   ref-exact typography with var() fallbacks, so editor overrides flow through
   AND we win Avada's cascade. Only two scoped overrides remain here:
   (a) wpautop child <p> tags inside the body band keep body typography,
   (b) Avada's link-color override on <a> needs explicit defeat for the CTA. */
.fusion-body .wsk-fs__text p,
.fusion-body .wsk-fs__body p {
	font: inherit !important;
	color: inherit !important;
	margin: 0 !important;
	background: transparent !important;
}
.fusion-body .wsk-fs a.wsk-fs__cta,
.fusion-body .wsk-fs a.wsk-fs__cta:link,
.fusion-body .wsk-fs a.wsk-fs__cta:visited,
.fusion-body .wsk-fs a.wsk-fs__cta:hover,
.fusion-body .wsk-fs a.wsk-fs__cta:focus,
.fusion-body .wsk-fs a.wsk-fs__cta:active {
	color: var(--wsk-fs-text, #FFFFFF) !important;
	text-decoration: none !important;
	border-bottom: 0 !important;
}

/* ───────── 7. Reduced motion ───────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-fs__cta,
	.wsk-fs__prev,
	.wsk-fs__next,
	.wsk-fs__prev-title,
	.wsk-fs__next-title {
		transition-duration: 0.01ms !important;
	}
}

/* === Avada cascade lockdown (audit check #28b) === */
.wsk-fs__slide.swiper-slide {
	display: flex !important;
	min-height: auto !important;
}
.wsk-fs__btn-prev.swiper-button-disabled,
.wsk-fs__btn-next.swiper-button-disabled {
	opacity: 0.4 !important;
	pointer-events: none !important;
}
/**
 * WEPRO: Daily Routine — element stylesheet.
 *
 * Background video or image with an overlaid product/post card strip.
 * The bg media persists across card swaps; cards live in a horizontal
 * scroll rail with prev/next arrows on desktop and touch-scroll on
 * mobile. The element owns its inner background; the section wrapper
 * (Avada container) owns outer padding/border/shadow.
 *
 * Tokens (with fallback defaults):
 *   --wsk-dr-mh-d              700px      desktop min-height
 *   --wsk-dr-mh-m              600px      mobile min-height
 *   --wsk-dr-overlay-opacity   0          dark overlay strength (0–0.8)
 *   --wsk-dr-card-bg           surface    card background
 *   --wsk-dr-card-text         text       card text color
 *   --wsk-dr-card-radius       8px        card corner radius
 *   --wsk-dr-card-image-h      110px      square image side
 *   --wsk-dr-arrow-bg          rgba(0,0,0,0.25)   nav arrow background
 *   --wsk-dr-arrow-fg          #ffffff    nav arrow icon
 *   --wsk-dr-bag-bg            text       bag-icon button background
 *   --wsk-dr-bag-fg            surface    bag-icon button icon
 */

/* ══════════════════════════════════════════════════════════════════════
 * Root.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-dr {
	position: relative;
	isolation: isolate;
	width: 100%;
	min-height: var(--wsk-dr-mh-m, 600px);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

@media (min-width: 900px) {
	.wsk-dr {
		min-height: var(--wsk-dr-mh-d, 700px);
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Background layer (video / iframe / image).
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-dr__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}

.wsk-dr__bg video,
.wsk-dr__bg iframe,
.wsk-dr__bg img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	border: 0;
	display: block;
}

.wsk-dr__bg iframe {
	pointer-events: none;
	/* Scale the YouTube iframe up to mask its UI chrome. */
	transform: scale(1.4);
	transform-origin: center center;
}

.wsk-dr__bg picture {
	position: absolute;
	inset: 0;
	display: block;
}

.wsk-dr__bg-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, var(--wsk-dr-overlay-opacity, 0));
	pointer-events: none;
}

/* ══════════════════════════════════════════════════════════════════════
 * Strip — horizontal scroll rail of product cards.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-dr__strip {
	position: relative;
	z-index: 1;
	width: 100%;
	display: flex;
	align-items: center;
	padding: 0;
}

.wsk-dr__rail {
	display: flex;
	gap: 12px;
	overflow-x: auto;
	overflow-y: visible;
	padding: 20px 24px 24px 16px;
	width: 100%;
	scroll-behavior: smooth;
	scrollbar-width: none;
	-ms-overflow-style: none;
	scroll-snap-type: x proximity;
}

/* Desktop: large left padding pushes the first card to the right edge
   of the viewport, so on load only 1 full card + half the next show
   (the rest extend off-screen to the right and scroll into view).
   Math: 1.5 cards × (380px card + 12px gap) ≈ 588px visible from the
   right edge; everything left of that is padding. */
@media (min-width: 900px) {
	.wsk-dr__rail {
		padding: 24px 32px 28px calc(100% - 588px);
	}
}

.wsk-dr__rail::-webkit-scrollbar {
	display: none;
}

[dir="rtl"] .wsk-dr__rail {
	flex-direction: row-reverse;
}

/* ══════════════════════════════════════════════════════════════════════
 * Card.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-dr__card {
	display: flex;
	box-sizing: border-box;
	padding: 8px;
	background: var(--wsk-dr-card-bg, var(--wdt-color-surface, #ffffff));
	color: var(--wsk-dr-card-text, var(--wdt-color-text, #1e293b));
	min-height: 125px;
	height: auto;
	/* Mobile: each card is ~65vw so on load 1 full card + a clear half
	   of the next is visible (matches reference behavior). */
	flex: 0 0 65vw;
	max-width: 65vw;
	border-radius: var(--wsk-dr-card-radius, var(--wdt-radius-md, 8px));
	box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3);
	scroll-snap-align: start;
	position: relative;
	z-index: 2;
}

/* Desktop: fixed 380px card width matches the reference proportions.
   Combined with the rail's large left padding, this yields 1 full card
   + half of the next card visible on load (matches reference). */
@media (min-width: 900px) {
	.wsk-dr__card {
		flex: 0 0 380px;
		max-width: 380px;
		min-height: 130px;
		box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.3);
	}
}

.wsk-dr__link {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 16px;
	width: 100%;
	text-decoration: none;
	color: inherit;
	outline: 0;
}

.fusion-row .wsk-dr a,
.fusion-row .wsk-dr a:link,
.fusion-row .wsk-dr a:visited {
	color: inherit !important;
	text-decoration: none !important;
}

.wsk-dr__pic {
	flex-shrink: 0;
	width: var(--wsk-dr-card-image-h, 110px);
	height: var(--wsk-dr-card-image-h, 110px);
	display: block;
	position: relative;
	background-color: transparent;
	border-radius: var(--wsk-dr-card-radius, var(--wdt-radius-md, 8px));
	overflow: hidden;
}

.wsk-dr__pic img {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	object-fit: cover;
	object-position: center center;
	display: block;
	border-radius: var(--wsk-dr-card-radius, var(--wdt-radius-md, 8px));
}

.wsk-dr__body {
	width: 140px;
	text-align: start;
	line-height: 1.1;
	display: flex;
	flex-direction: column;
}

@media (min-width: 900px) {
	.wsk-dr__body {
		width: 180px;
	}
}

/* Locked-rule typography: badge / title / price use !important inline
   styles in PHP to beat Avada's compiled fusion-styles cascade. The
   rules below provide layout-only defaults (margin/clamp). */
.wsk-dr__badge {
	font-size: 11px;
	letter-spacing: 1px;
	text-transform: uppercase;
	opacity: 0.6;
	margin-top: 6px;
	margin-bottom: 0;
	line-height: normal;
	padding-right: 4px;
	word-wrap: break-word;
}

[dir="rtl"] .wsk-dr__badge {
	padding-right: 0;
	padding-left: 4px;
}

.wsk-dr__title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: normal;
	max-height: 3em;
	line-height: 1.2;
	margin-top: 8px;
	margin-bottom: 0;
	padding-right: 4px;
}

[dir="rtl"] .wsk-dr__title {
	padding-right: 0;
	padding-left: 4px;
}

.wsk-dr__price {
	margin-top: 8px;
	margin-bottom: 4px;
}

.wsk-dr__price ins {
	text-decoration: none;
}

/* ══════════════════════════════════════════════════════════════════════
 * Bag icon button (Add to cart) — sits to the right of the card body.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-dr__bag {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 34px;
	height: 34px;
	padding: 0;
	margin-left: 8px;
	margin-right: 4px;
	border: 1px solid var(--wsk-dr-bag-bg, var(--wdt-color-text, #1e293b));
	border-radius: var(--wsk-dr-card-radius, var(--wdt-radius-md, 8px));
	background: var(--wsk-dr-bag-bg, var(--wdt-color-text, #1e293b));
	color: var(--wsk-dr-bag-fg, var(--wdt-color-surface, #ffffff));
	cursor: pointer;
	-webkit-appearance: none;
	transition: background 0.3s ease-in, color 0.3s ease-in, transform 0.2s ease;
}

.wsk-dr__bag:hover {
	background: rgba(0, 0, 0, 0.85);
}

.wsk-dr__bag:focus-visible {
	outline: 2px solid var(--wsk-dr-bag-bg, var(--wdt-color-text, #1e293b));
	outline-offset: 2px;
}

.wsk-dr__bag svg {
	width: 20px;
	height: 20px;
	display: block;
}

.wsk-dr__bag.is-pulse {
	transform: scale(1.08);
}

/* ══════════════════════════════════════════════════════════════════════
 * Card arrow (next-card) — sits next to the bag icon. Opt-in via
 * `show_card_arrow` builder param.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-dr__card-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 34px;
	height: 34px;
	padding: 0;
	margin-left: 8px;
	margin-right: 4px;
	border: 1px solid currentColor;
	border-radius: 50%;
	background: transparent;
	color: var(--wsk-dr-card-text, var(--wdt-color-text, #1e293b));
	cursor: pointer;
	-webkit-appearance: none;
	transition: background 0.25s ease-in, color 0.25s ease-in, transform 0.2s ease;
	align-self: center;
}

.wsk-dr__card-arrow:hover {
	background: var(--wsk-dr-card-text, var(--wdt-color-text, #1e293b));
	color: var(--wsk-dr-card-bg, var(--wdt-color-surface, #ffffff));
}

.wsk-dr__card-arrow:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.wsk-dr__card-arrow svg {
	width: 18px;
	height: 18px;
	display: block;
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-dr *,
	.wsk-dr *::before,
	.wsk-dr *::after {
		animation: none !important;
		transition: none !important;
	}

	.wsk-dr__rail {
		scroll-behavior: auto;
	}
}
/**
 * WEPRO: Video Reels — element stylesheet.
 *
 * Vertical-aspect video reels carousel. Active slide grows the video to
 * full height (80% → 100%) and fades the product card in (opacity 0 → 1);
 * inactive slides keep the card hidden and the video shorter to draw the
 * eye toward the centred active reel.
 *
 * Tokens (with fallback defaults):
 *   --wsk-vr-aspect           0.6           video aspect-ratio (w/h)
 *   --wsk-vr-image-aspect     0.6           image-only fallback aspect-ratio
 *   --wsk-vr-card-bg          #ffffff       card background
 *   --wsk-vr-card-text        #1e293b       card text color
 *   --wsk-vr-card-radius      8px           card corner radius
 *   --wsk-vr-card-image-h     90px          square thumbnail side
 *   --wsk-vr-bag-bg           #1e293b       bag-icon button background
 *   --wsk-vr-bag-fg           #ffffff       bag-icon button icon
 *   --wsk-vr-slides-d         3             slidesPerView desktop
 *   --wsk-vr-slides-m         1.2           slidesPerView mobile
 *   --wsk-vr-gap              24px          space-between
 */

/* ══════════════════════════════════════════════════════════════════════
 * Root.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-vr {
	position: relative;
	width: 100%;
	display: block;
	color: var(--wsk-vr-card-text, var(--wdt-color-text, #1e293b));
}

/* ══════════════════════════════════════════════════════════════════════
 * Swiper container.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-vr__swiper {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.wsk-vr .swiper-wrapper {
	align-items: center;
}

/* ══════════════════════════════════════════════════════════════════════
 * Slide.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-vr__slide {
	width: 300px;
	height: auto;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
}

@media (min-width: 900px) {
	.wsk-vr__slide {
		width: 357px;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Video wrap — aspect-ratio framed; inactive slides shrink video to 80%.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-vr__video-wrap {
	width: 100%;
	height: auto;
	aspect-ratio: var(--wsk-vr-aspect, 0.6);
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	border-radius: var(--wsk-vr-card-radius, var(--wdt-radius-md, 8px));
	margin-bottom: 16px;
	position: relative;
}

/* Image-only slides use the dedicated image aspect var. */
.wsk-vr__video-wrap--image {
	aspect-ratio: var(--wsk-vr-image-aspect, var(--wsk-vr-aspect, 0.6));
}

.wsk-vr__video-wrap > video,
.wsk-vr__video-wrap > picture {
	display: block;
	width: 100%;
	height: 80%;
	transition: height 0.3s ease-in-out;
	border-radius: var(--wsk-vr-card-radius, var(--wdt-radius-md, 8px));
	overflow: hidden;
	position: relative;
}

.wsk-vr__video-wrap video,
.wsk-vr__video-wrap picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.wsk-vr__slide.swiper-slide-active .wsk-vr__video-wrap > video,
.wsk-vr__slide.swiper-slide-active .wsk-vr__video-wrap > picture {
	height: 100%;
}

/* ══════════════════════════════════════════════════════════════════════
 * Sound toggle.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-vr__sound-toggle {
	position: absolute;
	bottom: 16px;
	right: 16px;
	z-index: 6;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: none;
	border-radius: 50%;
	background-color: rgba(0, 0, 0, 0.4);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	color: #fff;
	cursor: pointer;
	opacity: 0;
	transform: scaleX(0);
	transition: opacity 0.2s ease-out, transform 0.2s ease-out;
}

.wsk-vr__slide.swiper-slide-active .wsk-vr__sound-toggle {
	opacity: 1;
	transform: scaleX(1);
}

.wsk-vr__sound-toggle:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

.wsk-vr__sound-toggle .wsk-vr__icon-sound-on,
.wsk-vr__sound-toggle .wsk-vr__icon-sound-off {
	width: 20px;
	height: 20px;
	display: none;
}

.wsk-vr[data-sound="off"] .wsk-vr__icon-sound-off { display: block; }
.wsk-vr[data-sound="on"] .wsk-vr__icon-sound-on { display: block; }

/* ══════════════════════════════════════════════════════════════════════
 * Card — fades in on the active slide.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-vr__card {
	position: relative;
	display: flex;
	align-items: center;
	box-sizing: border-box;
	gap: 12px;
	padding: 8px;
	background: var(--wsk-vr-card-bg, var(--wdt-color-surface, #ffffff));
	color: var(--wsk-vr-card-text, var(--wdt-color-text, #1e293b));
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: var(--wsk-vr-card-radius, var(--wdt-radius-md, 8px));
	min-height: 110px;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.4s ease-out;
}

.wsk-vr__slide.swiper-slide-active .wsk-vr__card {
	opacity: 1;
	pointer-events: auto;
}

.wsk-vr__link {
	display: flex;
	gap: 12px;
	width: 100%;
	text-decoration: none;
	color: inherit;
	align-items: center;
}

.wsk-vr__pic {
	flex: 0 0 auto;
	display: block;
	width: var(--wsk-vr-card-image-h, 90px);
	height: var(--wsk-vr-card-image-h, 90px);
	border-radius: calc(var(--wsk-vr-card-radius, 8px) / 2);
	overflow: hidden;
}

.wsk-vr__pic img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.wsk-vr__body {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 4px;
	min-width: 0;
	word-break: break-word;
}

.wsk-vr__badge {
	margin: 0;
}

.wsk-vr__title {
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wsk-vr__price {
	margin: 0;
}

/* ══════════════════════════════════════════════════════════════════════
 * Bag button.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-vr__bag {
	flex: 0 0 auto;
	align-self: center;
	margin-right: 8px;
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid currentColor;
	border-radius: 50%;
	background: transparent;
	color: var(--wsk-vr-card-text, var(--wdt-color-text, #1e293b));
	cursor: pointer;
	transition: transform 0.2s ease-out, background 0.2s ease-in, color 0.2s ease-in;
}

.wsk-vr__bag:hover {
	background: var(--wsk-vr-bag-bg, var(--wdt-color-text, #1e293b));
	color: var(--wsk-vr-bag-fg, var(--wdt-color-surface, #ffffff));
}

.wsk-vr__bag.is-pulse { transform: scale(1.15); }
.wsk-vr__bag:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

.wsk-vr__bag svg { width: 18px; height: 18px; }

/* ══════════════════════════════════════════════════════════════════════
 * Card next-arrow (optional).
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-vr__card-arrow {
	flex: 0 0 auto;
	align-self: center;
	margin-right: 8px;
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid currentColor;
	border-radius: 50%;
	background: transparent;
	color: var(--wsk-vr-card-text, var(--wdt-color-text, #1e293b));
	cursor: pointer;
	transition: background 0.2s ease-in, color 0.2s ease-in;
}

.wsk-vr__card-arrow:hover {
	background: var(--wsk-vr-card-text, var(--wdt-color-text, #1e293b));
	color: var(--wsk-vr-card-bg, var(--wdt-color-surface, #ffffff));
}

.wsk-vr__card-arrow:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }

.wsk-vr__card-arrow svg { width: 18px; height: 18px; }

/* ══════════════════════════════════════════════════════════════════════
 * Swiper navigation buttons — top: 45% per ref.
 * ══════════════════════════════════════════════════════════════════════ */
/* Luxury glass-effect nav buttons. Glass = backdrop-blur + translucent
   white + subtle inner highlight + soft outer shadow. */
.wsk-vr__nav {
	position: absolute;
	top: 50%;
	z-index: 10;
	width: 52px;
	height: 52px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	border: 1px solid rgba(0, 0, 0, 0.18);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.55);
	color: #111;
	cursor: pointer;
	-webkit-backdrop-filter: blur(14px) saturate(180%);
	backdrop-filter: blur(14px) saturate(180%);
	box-shadow:
		0 4px 20px rgba(0, 0, 0, 0.18),
		inset 0 1px 0 rgba(255, 255, 255, 0.45),
		inset 0 -1px 0 rgba(0, 0, 0, 0.10);
	transform: translateY(-50%) scale(1);
	opacity: 0;
	pointer-events: none;
	transition:
		opacity 0.35s cubic-bezier(0.2, 0.8, 0.2, 1),
		transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1),
		background 0.25s ease,
		border-color 0.25s ease,
		box-shadow 0.25s ease;
}

/* Reveal nav buttons on hover or keyboard focus within the element. */
.wsk-vr:hover .wsk-vr__nav,
.wsk-vr:focus-within .wsk-vr__nav {
	opacity: 1;
	pointer-events: auto;
}

/* Coarse-pointer (touch) devices: keep nav softly visible since there's
   no hover. Still kept lightweight so it doesn't dominate the slide. */
@media (hover: none) {
	.wsk-vr__nav {
		opacity: 0.85;
		pointer-events: auto;
	}
}

.wsk-vr__nav:hover {
	background: rgba(255, 255, 255, 0.78);
	border-color: rgba(0, 0, 0, 0.32);
	color: #000;
	transform: translateY(-50%) scale(1.06);
	box-shadow:
		0 8px 28px rgba(0, 0, 0, 0.18),
		inset 0 1px 0 rgba(255, 255, 255, 0.85),
		inset 0 -1px 0 rgba(0, 0, 0, 0.08);
}

.wsk-vr__nav:focus-visible {
	outline: 2px solid rgba(0, 0, 0, 0.7);
	outline-offset: 3px;
}

.wsk-vr__nav svg {
	width: 22px;
	height: 22px;
	display: block;
	filter: drop-shadow(0 1px 1px rgba(255, 255, 255, 0.55));
}

.wsk-vr__nav--prev { left: 18px; }
.wsk-vr__nav--next { right: 18px; }

/* Mobile: smaller, hugged tighter. */
@media (max-width: 720px) {
	.wsk-vr__nav {
		width: 42px;
		height: 42px;
	}
	.wsk-vr__nav svg { width: 18px; height: 18px; }
	.wsk-vr__nav--prev { left: 10px; }
	.wsk-vr__nav--next { right: 10px; }
}

.wsk-vr__nav.swiper-button-disabled {
	opacity: 0.35;
	pointer-events: none;
}

/* Swiper default arrow content suppression. */
.wsk-vr__nav.swiper-button-next::after,
.wsk-vr__nav.swiper-button-prev::after {
	content: none;
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-vr *,
	.wsk-vr *::before,
	.wsk-vr *::after {
		animation: none !important;
		transition: none !important;
	}

	.wsk-vr video {
		display: none !important;
	}
}

/* === Avada cascade lockdown (audit check #28b) === */
.wsk-vr .swiper-wrapper {
	align-items: stretch !important;
}
.wsk-vr__slide.swiper-slide {
	flex-shrink: 0 !important;
}
.wsk-vr__slide.swiper-slide-active {
	opacity: 1 !important;
}
.wsk-vr__nav.swiper-button-disabled {
	opacity: 0.4 !important;
	visibility: visible !important;
	pointer-events: none !important;
}
.wsk-vr__nav.swiper-button-next,
.wsk-vr__nav.swiper-button-prev {
	background-image: none !important;
}
/**
 * WEPRO: Beauty Hero — element stylesheet.
 *
 * Cinematic full-viewport hero with image / video / YouTube background,
 * centered headline + subtext, optional scroll-shrink effect on content,
 * and an animated scroll-down indicator pinned at the bottom.
 *
 * Tokens (with fallback defaults):
 *   --wsk-bh-mh-d              800px         min-height (desktop, when not full-viewport)
 *   --wsk-bh-mh-m              600px         min-height (mobile, when not full-viewport)
 *   --wsk-bh-overlay-opacity   0.25          dark overlay strength (0–0.8)
 *   --wsk-bh-shrink-intensity  0.25          max content scale-down on scroll (0.05–0.6)
 *   --wsk-bh-scroll-progress   0             0..1 progress driver, written by JS
 *   --wsk-bh-scroll-fg         #ffffff       scroll indicator foreground color
 */

/* ══════════════════════════════════════════════════════════════════════
 * Root.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-bh {
	position: relative;
	isolation: isolate;
	width: 100%;
	overflow: hidden;
	min-height: var(--wsk-bh-mh-m, 600px);
	display: block;
}

@media (min-width: 900px) {
	.wsk-bh {
		min-height: var(--wsk-bh-mh-d, 800px);
	}
}

/* Full-viewport variant — declare 100vh first then 100svh so older
   browsers without svh support fall back gracefully. */
.wsk-bh.is-full-viewport {
	min-height: 100vh;
	min-height: 100svh;
}

/* ══════════════════════════════════════════════════════════════════════
 * Background layer.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-bh__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}

.wsk-bh__bg picture,
.wsk-bh__bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

.wsk-bh__bg picture img,
.wsk-bh__bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	border: 0;
	display: block;
}

/* YouTube full-bleed cover — sized to whichever is larger of slot
   width or slot height × 16/9, centered. The parent .wsk-bh__bg sets
   `overflow: hidden`, which clips the iframe to the slot. */
.wsk-bh__yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}

.wsk-bh__yt-wrap iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 177.78%;   /* 16/9 × 100 — beats any parent aspect ratio narrower than 16:9 */
	height: 177.78%;  /* 16/9 × 100 — beats any parent aspect ratio wider than 16:9   */
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

.wsk-bh__bg-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(0, 0, 0, var(--wsk-bh-overlay-opacity, 0.25));
}

/* ══════════════════════════════════════════════════════════════════════
 * Content — centered both axes, scroll-shrink driven by CSS var.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-bh__content {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-rows: 1fr auto 1fr auto;
	align-items: center;
	justify-items: center;
	gap: clamp(1rem, 2vw, 2rem);
	padding: clamp(2rem, 5vw, 5rem) clamp(1rem, 4vw, 4rem);
	min-height: inherit;
	text-align: center;
	transform-origin: center center;
	will-change: transform, opacity;
}

/* Headline goes to row 2 (centered), subtext goes to row 4 (bottom). */
.wsk-bh__headline {
	grid-row: 2;
	align-self: center;
}

.wsk-bh__subtext {
	grid-row: 4;
	align-self: end;
	margin-bottom: clamp(6rem, 14vh, 10rem);
}

.wsk-bh.is-full-viewport .wsk-bh__content {
	min-height: 100vh;
	min-height: 100svh;
}

/* Scroll-shrink: pure transform-driven. No `position: sticky` because
   Avada column wrappers apply `overflow: hidden` and fixed heights
   that break the sticky containing block. JS writes
   --wsk-bh-scroll-progress (0..1) on the root and CSS animates only
   the headline. Subtext stays static so the user reads it cleanly
   while the big headline slides down + shrinks past. */
.wsk-bh[data-shrink-on="yes"] .wsk-bh__headline {
	transform:
		translateY(calc(var(--wsk-bh-scroll-progress, 0) * 40vh))
		scale(calc(1 - var(--wsk-bh-scroll-progress, 0) * var(--wsk-bh-shrink-intensity, 0.25)));
	opacity: calc(1 - var(--wsk-bh-scroll-progress, 0) * 0.85);
	will-change: transform, opacity;
	transform-origin: center center;
}

/* Headline: width = container, text-align center. text-wrap: balance
   gives nice line breaks; word-break: keep-all stops mid-word splits.
   When a single word is wider than the viewport, overflow is allowed
   to remain visible (the .wsk-bh root has overflow: hidden anyway). */
.wsk-bh__headline {
	width: 100%;
	max-width: 100%;
	text-align: center;
	text-wrap: balance;
	overflow-wrap: normal;
}

/* Subtext: width-limited so long sentences wrap nicely. */
.wsk-bh__subtext {
	max-width: min(700px, 90%);
	padding-bottom: 0.5em;
	border-bottom: 1px solid currentColor;
}

/* Subtext link styling. The single underline rule comes from the <p>'s
   border-bottom; link itself stays text-decoration-free to avoid a
   double line. */
.wsk-bh__subtext-link {
	color: inherit;
	text-decoration: none;
	transition: opacity 0.2s ease;
}

.wsk-bh__subtext-link:hover,
.wsk-bh__subtext-link:focus-visible {
	opacity: 0.85;
}

/* Avada-row override-guard: Avada forces link color via .fusion-row. */
.fusion-row .wsk-bh a,
.fusion-row .wsk-bh a:link,
.fusion-row .wsk-bh a:visited,
.fusion-row .wsk-bh a:hover {
	color: inherit !important;
	text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════════════════════
 * Scroll indicator — pinned bottom-center, animated chevron + line.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-bh__scroll-indicator {
	position: absolute;
	bottom: clamp(1.5rem, 4vh, 3rem);
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
	width: 36px;
	height: 56px;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 6px;
	padding: 8px;
	border: 1px solid rgba(255, 255, 255, 0.45);
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.12);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
	color: var(--wsk-bh-scroll-fg, #ffffff);
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease, transform 0.25s ease;
	font: inherit;
}

.wsk-bh__scroll-indicator:hover,
.wsk-bh__scroll-indicator:focus-visible {
	background: rgba(255, 255, 255, 0.22);
	transform: translateX(-50%) translateY(-2px);
	outline: none;
}

.wsk-bh__scroll-indicator:focus-visible {
	border-color: rgba(255, 255, 255, 0.8);
	box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.4);
}

.wsk-bh__scroll-line {
	width: 1px;
	height: 16px;
	background: currentColor;
	opacity: 0.6;
	transform-origin: top center;
	animation: wsk-bh-scroll-pulse 1.6s cubic-bezier(0.25, 0.1, 0.25, 1) infinite;
}

.wsk-bh__scroll-indicator svg {
	display: block;
	opacity: 0.85;
	animation: wsk-bh-scroll-bounce 1.6s ease-in-out infinite;
}

@keyframes wsk-bh-scroll-pulse {
	0%, 100% { transform: scaleY(0.4); opacity: 0.4; }
	50%      { transform: scaleY(1);   opacity: 0.9; }
}

@keyframes wsk-bh-scroll-bounce {
	0%, 100% { transform: translateY(0); }
	50%      { transform: translateY(3px); }
}

/* ══════════════════════════════════════════════════════════════════════
 * Mobile (<720px) polish.
 * ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 720px) {
	.wsk-bh__content {
		padding: clamp(1rem, 6vw, 2.5rem);
		gap: clamp(0.75rem, 2vw, 1.25rem);
	}

	.wsk-bh__scroll-indicator {
		bottom: clamp(1rem, 3vh, 2rem);
		width: 32px;
		height: 50px;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion — disable scroll-shrink + indicator animations.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-bh__scroll-line,
	.wsk-bh__scroll-indicator svg {
		animation: none !important;
	}

	.wsk-bh[data-shrink-on="yes"] .wsk-bh__headline {
		transform: none !important;
		opacity: 1 !important;
	}

	.wsk-bh__subtext-link,
	.wsk-bh__scroll-indicator {
		transition: none !important;
	}
}
/**
 * WEPRO: Architecture Hero — element stylesheet.
 *
 * Cinematic full-viewport hero with image / video / YouTube background,
 * left-edge vertical text rail, centered logo + description that gently
 * track the cursor on hover.
 *
 * Tokens (with fallback defaults):
 *   --wsk-ah-mh-d              800px         min-height (desktop, when not full-viewport)
 *   --wsk-ah-mh-m              600px         min-height (mobile, when not full-viewport)
 *   --wsk-ah-overlay-opacity   0.25          dark overlay strength (0–0.8)
 *   --wsk-ah-rail-offset       24px          edge-to-rail distance
 *   --wsk-ah-logo-max-w        360px         max width of the logo image
 *   --wsk-ah-logo-max-h        360px         max height of the logo image
 *   --wsk-ah-mx                0px           JS-driven mouse-X offset on .wsk-ah__center
 *   --wsk-ah-my                0px           JS-driven mouse-Y offset on .wsk-ah__center
 */

/* ══════════════════════════════════════════════════════════════════════
 * Root.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-ah {
	position: relative;
	isolation: isolate;
	width: 100%;
	overflow: hidden;
	min-height: var(--wsk-ah-mh-m, 600px);
	display: block;
}

@media (min-width: 900px) {
	.wsk-ah {
		min-height: var(--wsk-ah-mh-d, 800px);
	}
}

/* Full-viewport variant — declare 100vh first then 100svh so older
   browsers without svh support fall back gracefully. */
.wsk-ah.is-full-viewport {
	min-height: 100vh;
	min-height: 100svh;
}

/* ══════════════════════════════════════════════════════════════════════
 * Background layer.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-ah__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}

.wsk-ah__bg picture,
.wsk-ah__bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

.wsk-ah__bg picture img,
.wsk-ah__bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	border: 0;
	display: block;
}

/* YouTube full-bleed cover — sized to whichever is larger of slot
   width or slot height × 16/9, centered. The parent .wsk-ah__bg sets
   `overflow: hidden`, which clips the iframe to the slot. */
.wsk-ah__yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}

.wsk-ah__yt-wrap iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 177.78%;   /* 16/9 × 100 — beats any parent aspect ratio narrower than 16:9 */
	height: 177.78%;  /* 16/9 × 100 — beats any parent aspect ratio wider than 16:9   */
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

.wsk-ah__bg-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(0, 0, 0, var(--wsk-ah-overlay-opacity, 0.25));
}

/* ══════════════════════════════════════════════════════════════════════
 * Vertical text rail — pinned mid-height on the left or right edge.
 * ══════════════════════════════════════════════════════════════════════ */
/* The rail uses native CSS vertical writing mode so the visible text
   edge sits exactly at the configured offset from the viewport edge
   regardless of font size. No rotation, no transform-origin overflow. */
.wsk-ah__rail {
	position: absolute;
	top: 50%;
	z-index: 2;
	pointer-events: none;
	color: #ffffff;
	transform: translateY(-50%);
	max-height: 90%;
	display: block;
}

.wsk-ah__rail--left {
	left: var(--wsk-ah-rail-offset, 24px);
}

.wsk-ah__rail--right {
	right: var(--wsk-ah-rail-offset, 24px);
}

.wsk-ah__rail-text {
	display: block;
	white-space: nowrap;
}

.wsk-ah__rail--left .wsk-ah__rail-text {
	writing-mode: vertical-rl;
	transform: rotate(180deg);
}

.wsk-ah__rail--right .wsk-ah__rail-text {
	writing-mode: vertical-rl;
}

/* ══════════════════════════════════════════════════════════════════════
 * Center: logo + description, cursor-driven parallax.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-ah__center {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 20%;
	z-index: 2;
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	justify-content: center;
	gap: clamp(1.5rem, 3vw, 3rem);
	padding: clamp(1rem, 4vw, 3rem);
	text-align: left;
	color: #ffffff;
	pointer-events: none;
	will-change: transform;
	transition: transform 100ms linear;
	transform: translate3d(var(--wsk-ah-mx, 0px), var(--wsk-ah-my, 0px), 0);
}

/* Children are interactive (links must remain clickable). */
.wsk-ah__center > * {
	pointer-events: auto;
}

.wsk-ah__logo {
	display: flex;
	justify-content: center;
	align-items: center;
}

.wsk-ah__logo img {
	display: block;
	max-width: var(--wsk-ah-logo-max-w, 360px);
	max-height: var(--wsk-ah-logo-max-h, 360px);
	width: auto;
	height: auto;
	object-fit: contain;
}

.wsk-ah__description {
	max-width: min(700px, 90%);
	text-align: center;
	text-wrap: pretty;
}

.wsk-ah__description-link {
	color: inherit;
	text-decoration: none;
	transition: opacity 0.2s ease;
}

.wsk-ah__description-link:hover,
.wsk-ah__description-link:focus-visible {
	opacity: 0.85;
}

/* Avada-row override-guard: Avada forces link color via .fusion-row. */
.fusion-row .wsk-ah a,
.fusion-row .wsk-ah a:link,
.fusion-row .wsk-ah a:visited,
.fusion-row .wsk-ah a:hover {
	color: inherit !important;
	text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════════════════════
 * Mobile (<720px) polish — hide the vertical rail, scale logo down.
 * ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 720px) {
	.wsk-ah__rail {
		display: none;
	}

	/* Stack logo above description on mobile (single column). Logo
	   keeps its source order (it renders first in PHP), so column
	   direction puts it on top of the description naturally. */
	.wsk-ah__center {
		inset: 0;
		bottom: 0;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center;
		gap: clamp(0.75rem, 2vw, 1.25rem);
	}

	.wsk-ah__logo img {
		max-width: min(var(--wsk-ah-logo-max-w, 360px), 240px);
		max-height: min(var(--wsk-ah-logo-max-h, 360px), 240px);
	}

	.wsk-ah__description {
		font-size: clamp(0.8125rem, 3.4vw, 0.9375rem);
		text-align: center;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Touch devices — no cursor to follow.
 * ══════════════════════════════════════════════════════════════════════ */
@media (hover: none) {
	.wsk-ah__center {
		transform: none !important;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-ah__center {
		transition: none !important;
		transform: none !important;
	}

	.wsk-ah__description-link {
		transition: none !important;
	}
}
/**
 * WEPRO: Residences — element stylesheet.
 *
 * Scroll-takeover storytelling.
 *
 * Desktop: section is (slide-count × 100vh) tall; .wsk-res__stage is
 * `position: sticky` for that distance. Each incoming slide is layered
 * on top of the previous and revealed via a right-edge clip-path wipe
 * driven by per-slide scroll fraction, written into a CSS custom
 * property by JS. The underlying layer also gets a subtle scale-down
 * so the new slide appears to push in.
 *
 * Intro slide overlays its title + subtitle directly on the bg
 * (bottom-left, plain typography). Post slides use a dark caption card
 * inset off the bottom-right corner with hover-expand 240→460px.
 *
 * Mobile: branched by [data-mobile-layout].
 *   stacked    — uses the same scroll-takeover engine at 100dvh per
 *                slide. Each post wipes over the previous as the user
 *                scrolls.
 *   swipeable  — intro hero, then a horizontal scroll-snap track with
 *                thumb tabs anchored inside each image at its bottom
 *                edge. Caption swaps below the image.
 */

/* ══════════════════════════════════════════════════════════════════════
 * Root.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-res {
	position: relative;
	width: 100%;
	color: #ffffff;
	background: #000;
	min-height: calc(var(--wsk-res-slide-count, 4) * 100vh);
	min-height: calc(var(--wsk-res-slide-count, 4) * 100dvh);
}

/* ══════════════════════════════════════════════════════════════════════
 * Desktop sticky stage.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-res__stage {
	position: sticky;
	top: 0;
	height: 100vh;
	width: 100%;
	overflow: hidden;
	isolation: isolate;
}

/* ── Slide stack ─────────────────────────────────────────────────── */
.wsk-res__slides {
	position: absolute;
	inset: 0;
	z-index: 0;
}

/*
 * Default slide: hidden via right-edge clip-path collapse, slightly
 * scaled up so the reveal feels like a push-in. Once the slide
 * becomes the active one, JS sets `--wsk-res-clip` on it (0..100)
 * which opens the polygon's left edge from 100% → 0% as scroll
 * progresses through that slide's segment.
 */
.wsk-res__slide {
	position: absolute;
	inset: 0;
	z-index: 0;
	clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
	transform: scale(1.06);
	transition:
		clip-path  900ms cubic-bezier(0.25, 0.74, 0.22, 0.99),
		transform 1200ms cubic-bezier(0.25, 0.74, 0.22, 0.99);
}

/* Slides that have already played stay fully visible underneath the
   incoming slide. */
.wsk-res__slide.is-played {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	transform: scale(1);
}

/* Active slide — JS continuously sets --wsk-res-clip (0..100, where
   100 = fully visible). Convert to a polygon that opens its LEFT edge:
   left edge x = (100 - clip)%. */
.wsk-res__slide.is-active {
	z-index: 1;
	clip-path: polygon(
		calc((100 - var(--wsk-res-clip, 0)) * 1%) 0,
		100% 0,
		100% 100%,
		calc((100 - var(--wsk-res-clip, 0)) * 1%) 100%
	);
	transform: scale(calc(1 + (1 - (var(--wsk-res-clip, 0) / 100)) * 0.06));
	transition: clip-path 0ms linear, transform 0ms linear;
}

/* The intro slide is the very first; it starts already revealed —
   never use the clip-path mask on it. */
.wsk-res__slide--intro {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	transform: scale(1);
}

.wsk-res__slide--intro.is-active {
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	transform: scale(1);
}

.wsk-res__slide-bg {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.wsk-res__slide-bg picture,
.wsk-res__slide-bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

.wsk-res__slide-bg picture img,
.wsk-res__slide-bg video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

/* YouTube full-bleed cover — sized to whichever is larger of
   container width or container height × 16/9, centered. The parent
   .wsk-res__slide-bg / .wsk-res__mobile-intro-bg / .wsk-res__mobile-slide-bg
   all set `overflow: hidden`, which clips the iframe to the slot. */
.wsk-res__yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}

.wsk-res__yt-wrap iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 177.78%;   /* 16/9 × 100 — beats any parent aspect ratio narrower than 16:9 */
	height: 177.78%;  /* 16/9 × 100 — beats any parent aspect ratio wider than 16:9   */
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

.wsk-res__slide-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(0, 0, 0, var(--wsk-res-overlay-opacity, 0.25));
}

/* ══════════════════════════════════════════════════════════════════════
 * Intro overlay — bottom-left, plain typography on bg.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-res__intro-overlay {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 3;
	padding: clamp(2rem, 5vw, 5rem);
	color: #ffffff;
	pointer-events: none;
	max-width: min(720px, 70%);
}

.wsk-res__intro-overlay > * {
	pointer-events: auto;
}

.wsk-res__intro-title {
	margin: 0 0 0.5em 0;
}

.wsk-res__intro-desc {
	margin: 0;
	max-width: min(540px, 100%);
	opacity: 0.92;
}

.wsk-res__intro-button {
	margin-top: clamp(1.25rem, 2.5vw, 2rem);
}

/* ══════════════════════════════════════════════════════════════════════
 * Vertical progress line — right edge, mid-stage.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-res__progress {
	position: absolute;
	right: clamp(20px, 2.5vw, 40px);
	top: 50%;
	transform: translateY(-50%);
	z-index: 4;
	width: 1.5px;
	height: clamp(140px, 22vh, 240px);
	background: rgba(255, 255, 255, 0.18);
	pointer-events: none;
}

.wsk-res__progress-bar {
	display: block;
	width: 100%;
	height: 5%;
	background: var(--wsk-res-caption-btn, #ffffff);
	transition: height 600ms cubic-bezier(0.25, 0.74, 0.22, 0.99);
	transform-origin: top center;
}

/* ══════════════════════════════════════════════════════════════════════
 * Caption card (post slides only) — inset off bottom-right corner.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-res__caption {
	position: absolute;
	right: clamp(20px, 3vw, 44px);
	bottom: clamp(20px, 3vw, 44px);
	z-index: 5;
	width: clamp(260px, 22vw, 320px);
}

.wsk-res__caption-stack {
	position: relative;
	min-height: 184px;
}

.wsk-res__caption-card {
	position: absolute;
	inset: auto 0 0 0;
	height: 184px;
	overflow: hidden;
	/* Hard glass: heavy backdrop blur + saturate, translucent fill,
	   thin top/inner highlight for the reflective rim. */
	background: rgba(15, 30, 25, 0.42);
	-webkit-backdrop-filter: blur(22px) saturate(160%);
	backdrop-filter: blur(22px) saturate(160%);
	border: 1px solid rgba(255, 255, 255, 0.14);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.16),
		0 24px 48px -16px rgba(0, 0, 0, 0.45);
	color: var(--wsk-res-caption-text, #ffffff);
	transition:
		height 800ms cubic-bezier(0.25, 0.74, 0.22, 0.99),
		opacity 400ms cubic-bezier(0.25, 0.74, 0.22, 0.99);
	opacity: 0;
}

/* When the editor has set a custom solid bg color, fall back to
   semi-transparent on top of it so the glass effect still works. */
.wsk-res__caption-card[style*="--wsk-res-caption-bg"],
.wsk-res .wsk-res__caption-card {
	background: color-mix(in srgb, var(--wsk-res-caption-bg, #1f3b30) 55%, transparent);
}

.wsk-res__caption-card.is-active {
	opacity: 1;
}

.wsk-res__caption-card[hidden] {
	display: none !important;
}

.wsk-res__caption:hover .wsk-res__caption-card.is-active {
	height: 340px;
}

.wsk-res__caption-card-content {
	position: relative;
	padding: 18px 22px 0;
	display: flex;
	flex-direction: column;
	gap: 0.4em;
	/* Reserve room above the divider line; line sits at top:108px so
	   content gets the upper section and the excerpt zone stays below. */
	min-height: 108px;
}

.wsk-res__caption-card-type {
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wsk-res__caption-card-desc {
	margin: 0;
	opacity: 0.7;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Hairline divider — pinned 108px from top of card (placement-from-
   top, not bottom). Sits BELOW the desc, ABOVE the excerpt-reveal
   area + button. */
.wsk-res__caption-card-line {
	position: absolute;
	left: 22px;
	right: 22px;
	top: 108px;
	height: 1px;
	background: var(--wsk-res-caption-line, rgba(255, 255, 255, 0.4));
}

/* Hover-revealed excerpt — collapsed by default. Lives between the
   divider line and the button. Top padding clears the hairline. */
.wsk-res__caption-card-excerpt {
	margin: 0;
	padding: 26px 22px 0;
	opacity: 0;
	max-height: 0;
	transform: translateY(-4px);
	overflow: hidden;
	transition:
		opacity    400ms cubic-bezier(0.25, 0.74, 0.22, 0.99) 0ms,
		transform  600ms cubic-bezier(0.25, 0.74, 0.22, 0.99) 0ms,
		max-height 800ms cubic-bezier(0.25, 0.74, 0.22, 0.99) 0ms;
	display: -webkit-box;
	-webkit-line-clamp: 6;
	-webkit-box-orient: vertical;
	text-overflow: ellipsis;
}

.wsk-res__caption:hover .wsk-res__caption-card.is-active .wsk-res__caption-card-excerpt {
	opacity: 0.78;
	max-height: 150px;
	transform: translateY(0);
	transition-delay: 200ms;
}

.wsk-res__caption-card-button {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 14px 22px;
}

/* ══════════════════════════════════════════════════════════════════════
 * Buttons — outline, letter-spaced uppercase.
 * ══════════════════════════════════════════════════════════════════════ */
/* Slim text-button with an underline that animates from left edge.
   No fill flip on hover — keeps the card calm on hover. */
.wsk-res__btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 0.6em;
	padding: 6px 0 8px;
	border: 0;
	background: transparent;
	color: var(--wsk-res-caption-btn, #ffffff);
	font-size: 0.68rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	text-decoration: none;
	font-weight: 500;
	cursor: pointer;
	overflow: hidden;
}

.wsk-res__btn::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 1px;
	width: 100%;
	background: #ffffff;
	opacity: 0.55;
}

.wsk-res__btn::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 1px;
	width: 100%;
	background: #ffffff;
	transform: scaleX(0);
	transform-origin: right center;
	transition: transform 400ms cubic-bezier(0.25, 0.74, 0.22, 0.99);
}

.wsk-res__btn:hover::after,
.wsk-res__btn:focus-visible::after {
	transform: scaleX(1);
	transform-origin: left center;
}

.wsk-res__btn:focus-visible {
	outline: 2px solid var(--wsk-res-caption-btn, #ffffff);
	outline-offset: 4px;
}

.wsk-res__btn--light {
	color: #ffffff;
}

/* Avada-row override-guard. */
.fusion-row .wsk-res a,
.fusion-row .wsk-res a:link,
.fusion-row .wsk-res a:visited,
.fusion-row .wsk-res a:hover {
	color: inherit !important;
	text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════════════════════
 * Mobile shell — common.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-res__mobile {
	display: none;
	position: relative;
	background: var(--wsk-res-caption-bg, #1f3b30);
	color: var(--wsk-res-caption-text, #ffffff);
}

/* Intro hero block — title + subtitle on bg, full-bleed, ~100dvh. */
.wsk-res__mobile-intro {
	position: relative;
	overflow: hidden;
	min-height: 100dvh;
	background: #000;
}

.wsk-res__mobile-intro-bg {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.wsk-res__mobile-intro-bg picture,
.wsk-res__mobile-intro-bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.wsk-res__mobile-intro-bg picture img,
.wsk-res__mobile-intro-bg video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

.wsk-res__mobile-intro-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(0, 0, 0, var(--wsk-res-overlay-opacity, 0.25));
}

/* Intro overlay text on mobile sits TOP-left. */
.wsk-res__mobile-intro .wsk-res__intro-overlay {
	bottom: auto;
	/* Anchor the block roughly upper-third — under the menu, well
	   above the vertical centre. `top` uses dvh so it accounts for the
	   mobile chrome correctly. Override via --wsk-res-intro-top. */
	top: calc(
		env(safe-area-inset-top, 0px) +
		var(--wsk-res-intro-top, clamp(7rem, 22dvh, 12rem))
	);
	max-width: 100%;
	padding: 0 clamp(1.25rem, 5vw, 2rem) clamp(2rem, 7vw, 3.5rem);
}

.wsk-res__mobile-intro .wsk-res__intro-title {
	font-size: clamp(2.75rem, 14vw, 4.5rem);
}

/* ══════════════════════════════════════════════════════════════════════
 * Mobile — STACKED variant.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-res__mobile-cards--stacked {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.wsk-res__mobile-stacked-card {
	display: flex;
	flex-direction: column;
	background: transparent;
	color: var(--wsk-res-caption-text, #ffffff);
	margin-bottom: clamp(1.5rem, 5vw, 2.5rem);
}

.wsk-res__mobile-stacked-image {
	position: relative;
	width: 100%;
	height: clamp(280px, 62vw, 460px);
	overflow: hidden;
	background: #000;
}

.wsk-res__mobile-stacked-image .wsk-res__slide-bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.wsk-res__mobile-stacked-image .wsk-res__slide-bg picture,
.wsk-res__mobile-stacked-image .wsk-res__slide-bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	transform-origin: center center;
	will-change: transform;
}

.wsk-res__mobile-stacked-image .wsk-res__slide-bg picture img,
.wsk-res__mobile-stacked-image .wsk-res__slide-bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

.wsk-res__mobile-stacked-image .wsk-res__mobile-slide-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(0, 0, 0, var(--wsk-res-overlay-opacity, 0.25));
}

.wsk-res__mobile-stacked-body {
	position: relative;
	margin: -56px clamp(0.75rem, 4vw, 1.5rem) clamp(1rem, 4vw, 2rem);
	padding: clamp(1.25rem, 5vw, 1.75rem) clamp(1.25rem, 5vw, 1.75rem) clamp(1.5rem, 5vw, 2rem);
	z-index: 2;
	/* Hard glass — same recipe as the desktop caption card. */
	background: color-mix(in srgb, var(--wsk-res-caption-bg, #1f3b30) 55%, transparent);
	-webkit-backdrop-filter: blur(22px) saturate(160%);
	backdrop-filter: blur(22px) saturate(160%);
	border: 1px solid rgba(255, 255, 255, 0.14);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.16),
		0 24px 48px -16px rgba(0, 0, 0, 0.45);
}

/* Solid fallback when backdrop-filter isn't supported (older browsers). */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
	.wsk-res__mobile-stacked-body {
		background: var(--wsk-res-caption-bg, #1f3b30);
	}
}

/* In the stacked layout, every card is permanently displayed (no
   slide-in active toggle); override the mobile-caption-card display. */
.wsk-res__mobile-cards--stacked .wsk-res__mobile-caption-card {
	display: block;
}

.wsk-res__mobile-cards--stacked .wsk-res__mobile-caption-card-content {
	display: flex;
	flex-direction: column;
	gap: 0.4em;
	margin-bottom: 18px;
}

/* ══════════════════════════════════════════════════════════════════════
 * Mobile — SWIPEABLE variant.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-res__mobile-cards--swipeable {
	display: block;
}

/* Stage = image-area positioning context for the absolute tab strip. */
.wsk-res__mobile-cards--swipeable .wsk-res__mobile-stage {
	position: relative;
}

.wsk-res__mobile-cards--swipeable .wsk-res__mobile-track {
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

.wsk-res__mobile-cards--swipeable .wsk-res__mobile-track::-webkit-scrollbar {
	display: none;
}

.wsk-res__mobile-cards--swipeable .wsk-res__mobile-slide {
	position: relative;
	flex: 0 0 100%;
	scroll-snap-align: center;
	aspect-ratio: 4 / 5;
	overflow: hidden;
}

.wsk-res__mobile-cards--swipeable .wsk-res__mobile-slide-bg {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.wsk-res__mobile-cards--swipeable .wsk-res__mobile-slide-bg picture,
.wsk-res__mobile-cards--swipeable .wsk-res__mobile-slide-bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.wsk-res__mobile-cards--swipeable .wsk-res__mobile-slide-bg picture img,
.wsk-res__mobile-cards--swipeable .wsk-res__mobile-slide-bg video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

.wsk-res__mobile-cards--swipeable .wsk-res__mobile-slide-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(0, 0, 0, var(--wsk-res-overlay-opacity, 0.25));
}

/* Tab strip — overlaid at the bottom of the image area (the stage,
   not the cards section). Allows horizontal scroll-fit when total tab
   text exceeds viewport width; otherwise distributes equally. */
.wsk-res__mobile-cards--swipeable .wsk-res__mobile-stage .wsk-res__mobile-tabs {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 3;
	display: flex;
	gap: 4px;
	padding: 0 12px 12px;
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
	pointer-events: auto;
}

.wsk-res__mobile-cards--swipeable .wsk-res__mobile-stage .wsk-res__mobile-tabs::-webkit-scrollbar {
	display: none;
}

.wsk-res__mobile-tab {
	flex: 1 1 0;
	min-width: 0;
	max-width: 50%;
	padding: 8px 4px;
	background: transparent;
	border: 0;
	border-bottom: 1.5px solid rgba(255, 255, 255, 0.35);
	color: #ffffff;
	font-size: 0.65rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	text-align: center;
	cursor: pointer;
	opacity: 0.55;
	transition:
		opacity      300ms cubic-bezier(0.25, 0.74, 0.22, 0.99),
		border-color 300ms cubic-bezier(0.25, 0.74, 0.22, 0.99);
}

.wsk-res__mobile-tab .wsk-res__mobile-tab-text {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.wsk-res__mobile-tab.is-active {
	opacity: 1;
	border-bottom-color: #ffffff;
}

.wsk-res__mobile-tab:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 2px;
}


/* Caption — outside the image area in swipeable, JS swaps active. */
.wsk-res__mobile-cards--swipeable .wsk-res__mobile-caption {
	padding: 24px 20px 36px;
	color: var(--wsk-res-caption-text, #ffffff);
}

.wsk-res__mobile-caption-card {
	display: none;
	position: relative;
}

.wsk-res__mobile-caption-card.is-active {
	display: block;
}

.wsk-res__mobile-caption-card[hidden] {
	display: none !important;
}

.wsk-res__mobile-caption-card-content {
	display: flex;
	flex-direction: column;
	gap: 0.4em;
	margin-bottom: 18px;
}

.wsk-res__mobile-caption-card-type {
	margin: 0;
}

.wsk-res__mobile-caption-card-desc {
	margin: 0;
	opacity: 0.78;
}

.wsk-res__mobile-caption-card-line {
	display: none;
}

.wsk-res__mobile-caption-card-button {
	margin-top: 4px;
}

/* ══════════════════════════════════════════════════════════════════════
 * Breakpoint switch — mobile under 980px.
 *
 * STACKED layout (default) keeps the desktop sticky scroll-takeover —
 * each post wipes over the previous via the same clip-path mechanic
 * (sticky 100dvh × N). Simpler mobile shell is only used when the
 * editor picks SWIPEABLE.
 * ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 979px) {
	/* Default stacked variant → uses the same scroll-takeover engine as
	   desktop. Stage stays visible, mobile shell stays hidden. We just
	   relax sticky height to use dvh (mobile-aware viewport units). */
	.wsk-res[data-mobile-layout="stacked"] .wsk-res__stage,
	.wsk-res:not([data-mobile-layout]) .wsk-res__stage {
		height: 100dvh;
	}

	/* Caption card on mobile sits inset off the bottom; tighter clamps. */
	.wsk-res[data-mobile-layout="stacked"] .wsk-res__caption,
	.wsk-res:not([data-mobile-layout]) .wsk-res__caption {
		right: clamp(16px, 5vw, 28px);
		bottom: clamp(16px, 5vw, 28px);
		width: clamp(240px, 78vw, 360px);
	}

	/* Right-edge progress line gets out of the way on narrow screens. */
	.wsk-res[data-mobile-layout="stacked"] .wsk-res__progress,
	.wsk-res:not([data-mobile-layout]) .wsk-res__progress {
		right: 12px;
		height: clamp(100px, 18vh, 160px);
	}

	/* Intro overlay on the very-first slide reflows to top-left so it
	   doesn't collide with the bottom-right caption card on mobile.
	   Sits roughly upper-third — well below any sticky menu. */
	.wsk-res[data-mobile-layout="stacked"] .wsk-res__slide--intro .wsk-res__intro-overlay,
	.wsk-res:not([data-mobile-layout]) .wsk-res__slide--intro .wsk-res__intro-overlay {
		bottom: auto;
		top: calc(env(safe-area-inset-top, 0px) + clamp(8rem, 24dvh, 13rem));
		max-width: 100%;
		padding: 0 clamp(1.25rem, 5vw, 2rem) 0;
	}

	/* Hide the simpler mobile shell on stacked — we use the stage. */
	.wsk-res[data-mobile-layout="stacked"] .wsk-res__mobile,
	.wsk-res:not([data-mobile-layout]) .wsk-res__mobile {
		display: none;
	}

	/* SWIPEABLE variant → falls back to the simple horizontal carousel. */
	.wsk-res[data-mobile-layout="swipeable"] {
		min-height: 0;
	}
	.wsk-res[data-mobile-layout="swipeable"] .wsk-res__stage {
		display: none;
	}
	.wsk-res[data-mobile-layout="swipeable"] .wsk-res__mobile {
		display: block;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-res__slide,
	.wsk-res__caption-card,
	.wsk-res__progress-bar,
	.wsk-res__btn,
	.wsk-res__mobile-tab {
		transition: none !important;
	}
	.wsk-res__slide {
		transform: none !important;
	}
	.wsk-res__slide.is-active {
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
	}
}
/**
 * WEPRO: Wellness Hero — element stylesheet.
 *
 * Layout: full-bleed 100vh hero with three layers:
 *   1. Background — photo via <picture> (also acts as fallback when
 *                   WebGL is unavailable; hidden when the canvas is up)
 *   2. Scene     — WebGL canvas projecting the same image onto a
 *                   deformable 3D plane
 *   3. Content   — body text bottom-left, title block bottom-right
 *
 * Mobile reflow:
 *   - Title block (title above subtitle) — top
 *   - Body text — vertically centred a bit below the middle
 *   - Photo full-bleed under everything
 *
 * Tokens (with fallback defaults):
 *   --wsk-wh-overlay-opacity     0
 *   --wsk-wh-title-color         #e0d1b6
 *   --wsk-wh-subtitle-color      #ffffff
 *   --wsk-wh-body-color          #ffffff
 */

/* ══════════════════════════════════════════════════════════════════════
 * Root.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-wh {
	position: relative;
	width: 100%;
	min-height: 100vh;
	min-height: 100dvh;
	overflow: hidden;
	color: #ffffff;
	background: #0b1410;
	isolation: isolate;
}

/* ══════════════════════════════════════════════════════════════════════
 * Background layer.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-wh__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
}

.wsk-wh__bg picture,
.wsk-wh__pic,
.wsk-wh__bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

.wsk-wh__bg picture img,
.wsk-wh__bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

/* YouTube full-bleed cover — sized to whichever is larger of slot
   width or slot height × 16/9, centered. The parent .wsk-wh__bg sets
   `overflow: hidden`, which clips the iframe to the slot. */
.wsk-wh__yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}

.wsk-wh__yt-wrap iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 177.78%;   /* 16/9 × 100 — beats any parent aspect ratio narrower than 16:9 */
	height: 177.78%;  /* 16/9 × 100 — beats any parent aspect ratio wider than 16:9   */
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

.wsk-wh__bg-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(0, 0, 0, var(--wsk-wh-overlay-opacity, 0));
}

/* ══════════════════════════════════════════════════════════════════════
 * Scene layer — WebGL canvas.
 *
 * The canvas takes over for the bg <picture> once Three.js is up.
 * The image is projected onto a deformable plane that breathes with
 * noise displacement and tilts on hover.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-wh__scene {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: auto;
}

.wsk-wh__canvas {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

/* Once the canvas is rendering the same image, hide the static
   <picture> so we don't double-render. JS adds the class. */
.wsk-wh__bg.is-hidden-by-scene {
	opacity: 0;
}

/* ══════════════════════════════════════════════════════════════════════
 * Content overlays.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-wh__body,
.wsk-wh__title-block {
	position: absolute;
	z-index: 2;
	pointer-events: none;
	max-width: min(560px, 50%);
}

.wsk-wh__body > *,
.wsk-wh__title-block > * {
	pointer-events: auto;
}

/* Body — bottom-left, well clear of the top menu. Pushed ~5vw
   inward from the left edge so it sits in the inner third. */
.wsk-wh__body {
	bottom: clamp(8rem, 28vh, 16rem);
	left: clamp(2.5rem, 10vw, 7rem);
}

.wsk-wh__body-text {
	margin: 0;
	max-width: min(420px, 100%);
	text-wrap: pretty;
}

/* Title block — bottom-right. Tight gap so subtitle sits close to
   the title (~3% of vh). */
.wsk-wh__title-block {
	right: clamp(1.5rem, 5vw, 4rem);
	bottom: clamp(2rem, 6vh, 5rem);
	text-align: right;
	max-width: min(720px, 70%);
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: clamp(0.25rem, 0.5vh, 0.5rem);
}

.wsk-wh__subtitle {
	margin: 0;
}

.wsk-wh__title {
	margin: 0;
	display: block;
}

/* ══════════════════════════════════════════════════════════════════════
 * Mobile (≤ 720px) — single column reflow.
 *
 *   Title on top
 *   Scene in the middle (kept full-bleed via the absolutely-
 *     positioned scene layer; just give it some breathing room
 *     between the reflowed text blocks)
 *   Body below the scene
 * ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 720px) {
	/* Mobile order matches the design:
	   1. Title block (title + subtitle below it) — top
	   2. Body text — vertically centered over the photo area
	   The bg <picture> / canvas remains full-bleed underneath. */
	.wsk-wh {
		min-height: 100dvh;
		display: block;
		padding-top: calc(env(safe-area-inset-top, 0px) + clamp(9rem, 27dvh, 14rem));
	}

	/* Title block — top-left, in document flow. */
	.wsk-wh__title-block {
		position: relative;
		right: auto;
		bottom: auto;
		text-align: left;
		align-items: flex-start;
		padding: 0 clamp(1.25rem, 5vw, 2rem);
		max-width: 100%;
		gap: clamp(0.5rem, 1.5vw, 1rem);
	}

	/* Title above subtitle on mobile (ref pattern). */
	.wsk-wh__title {
		font-size: clamp(2.75rem, 13vw, 4.5rem) !important;
		order: 1;
	}
	.wsk-wh__subtitle {
		order: 2;
	}

	/* Body — anchored 20% below vertical center (i.e. ~70% from top). */
	.wsk-wh__body {
		position: absolute;
		left: clamp(1.25rem, 5vw, 2rem);
		right: clamp(1.25rem, 5vw, 2rem);
		top: 70%;
		transform: translateY(-50%);
		bottom: auto;
		max-width: 100%;
	}

	.wsk-wh__body-text {
		font-size: clamp(0.9375rem, 4vw, 1rem) !important;
		max-width: 100%;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-wh__canvas {
		/* JS freezes the render loop on a single static frame. */
		opacity: 1;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Avada-row override-guard — Avada forces link color in .fusion-row.
 * ══════════════════════════════════════════════════════════════════════ */
.fusion-row .wsk-wh a,
.fusion-row .wsk-wh a:link,
.fusion-row .wsk-wh a:visited,
.fusion-row .wsk-wh a:hover {
	color: inherit !important;
	text-decoration: none !important;
}
/**
 * WEPRO: Legacy Hero — element stylesheet.
 *
 * Layout values copied verbatim from the visual reference.
 * Class-name mapping:
 *   .section1                    -> .wsk-leh
 *   .section1Video               -> .wsk-leh__bg video
 *   .section1Header              -> .wsk-leh__content
 *   .section1HeaderGradient      -> .wsk-leh__bg-gradient
 *   .section1HeaderLeft          -> .wsk-leh__left
 *   .section1HeaderRight         -> .wsk-leh__right
 *   .section1HeaderRightContent  -> .wsk-leh__buttons
 *   #section1HeaderRightButton2  -> .wsk-leh__btn--secondary
 *   .section1Title               -> .wsk-leh__title
 *   .section1Description         -> .wsk-leh__body
 *   .section1TitleItalic         -> .wsk-leh__title em
 */

/* Root — full-bleed breakout. */
.wsk-leh {
	position: relative;
	width: 100vw;
	margin-inline: calc(50% - 50vw);
	height: 100vh;
	display: flex;
	justify-content: flex-start;
	overflow: hidden;
	background-color: #000;
	color: #ffffff;
	isolation: isolate;
}

/* Background. */
.wsk-leh__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.wsk-leh__bg picture img,
.wsk-leh__bg video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	object-fit: cover;
	object-position: center;
	display: block;
	z-index: 1;
}

/* YouTube full-bleed cover — sized to whichever is larger of
   viewport width or viewport height × 16/9, centered. Guarantees no
   letterboxing on portrait, square, or ultrawide viewports. */
.wsk-leh__yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}

.wsk-leh__yt-wrap iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: max(100vw, calc(100vh * 16 / 9));
	height: max(100vh, calc(100vw * 9 / 16));
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

.wsk-leh__bg-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(0, 0, 0, var(--wsk-leh-overlay-opacity, 0.35));
	z-index: 2;
}

/* Bottom-fade gradient — verbatim from .section1HeaderGradient. */
.wsk-leh__bg-gradient {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 50vh;
	background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.75) 100%);
	pointer-events: none;
	z-index: 2;
}

/* Content layer = ref .section1Header (row, items flex-end, padding 5rem 5rem 7vh). */
.wsk-leh__content {
	position: relative;
	width: 100%;
	height: 100dvh;
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	padding: 5rem;
	padding-bottom: 7vh;
	z-index: 3;
	overflow: visible;
	pointer-events: none;
}

/* Left cell = .section1HeaderLeft. */
.wsk-leh__left {
	display: flex;
	flex: 1 1 0;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	min-width: 0;
	pointer-events: auto;
}

/* Right cell = .section1HeaderRight + .section1HeaderRightContent merged.
   Desktop stack: buttons on top, body description below.
   Buttons align with the body's left edge. */
.wsk-leh__right {
	display: flex;
	flex: 0 0 auto;
	margin-left: auto;
	flex-direction: column-reverse;
	align-items: flex-start;
	justify-content: center;
	gap: 1.5rem;
	pointer-events: auto;
}

/* Buttons row = .section1HeaderRightContent.
   Desktop: inline side-by-side. Mobile keeps row in the @media block. */
.wsk-leh__buttons {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 0.75rem;
	pointer-events: auto;
}

/* Title = .section1Title + .title.
   Locked-rule pattern beats Avada theme typography cascade. */
.wsk-leh .wsk-leh__title,
.fusion-body .wsk-leh .wsk-leh__title,
.fusion-row .wsk-leh .wsk-leh__title {
	margin: 0 !important;
	padding: 0 !important;
	text-align: left !important;
	font-family: var(--wsk-leh-title-font-family, inherit) !important;
	font-size: var(--wsk-leh-title-font-size, clamp(3rem, 4vw, 6.5rem)) !important;
	font-weight: var(--wsk-leh-title-font-weight, 500) !important;
	line-height: var(--wsk-leh-title-line-height, 1) !important;
	letter-spacing: var(--wsk-leh-title-letter-spacing, -0.05em) !important;
	text-transform: var(--wsk-leh-title-text-transform, none) !important;
	color: var(--wsk-leh-title-color, #ffffff) !important;
}

/* Italic accent inside title = .section1TitleItalic. */
.wsk-leh .wsk-leh__title em,
.wsk-leh .wsk-leh__title i,
.fusion-body .wsk-leh .wsk-leh__title em,
.fusion-body .wsk-leh .wsk-leh__title i {
	font-style: italic !important;
	font-family: var(--wsk-leh-title-italic-font-family, inherit) !important;
	margin-right: 0.02em;
	margin-left: 0.25em;
}

/* Word splitter — atomic inline-block so a word never breaks
   mid-character. The browser is only allowed to wrap between words
   (where the splitter leaves plain whitespace text nodes). */
.wsk-leh__word {
	display: inline-block;
	white-space: nowrap;
}

/* Char-by-char blur-fade reveal — JS splits the title into
   <span class="wsk-leh__char"> with staggered transition-delay set
   inline, then toggles .is-revealed on the root. Mirrors the GSAP
   stagger pattern from the visual reference (blur 8 → 0, opacity 0
   → 1, duration 500ms, stagger 50ms). */
.wsk-leh__char {
	display: inline-block;
	opacity: 0;
	filter: blur(8px);
	transition:
		opacity 500ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
		filter  500ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
	will-change: opacity, filter;
}

.wsk-leh.is-revealed .wsk-leh__char {
	opacity: 1;
	filter: blur(0);
}

/* Subtitle, body, buttons — parallel fade-up reveal. */
.wsk-leh__subtitle,
.wsk-leh__body,
.wsk-leh__buttons {
	opacity: 0;
	transform: translateY(24px);
	transition:
		opacity   700ms cubic-bezier(0.25, 0.74, 0.22, 0.99) 200ms,
		transform 700ms cubic-bezier(0.25, 0.74, 0.22, 0.99) 200ms;
	will-change: opacity, transform;
}

.wsk-leh.is-revealed .wsk-leh__subtitle,
.wsk-leh.is-revealed .wsk-leh__body,
.wsk-leh.is-revealed .wsk-leh__buttons {
	opacity: 1;
	transform: translateY(0);
}

/* Reduced-motion / live-editor short-circuit — JS adds is-no-anim
   together with is-revealed when the reduced-motion media query
   matches; we land on the final state with no transition. */
.wsk-leh.is-no-anim .wsk-leh__char,
.wsk-leh.is-no-anim .wsk-leh__subtitle,
.wsk-leh.is-no-anim .wsk-leh__body,
.wsk-leh.is-no-anim .wsk-leh__buttons {
	transition: none !important;
}

/* Subtitle (eyebrow) — small uppercase line. */
.wsk-leh .wsk-leh__subtitle,
.fusion-body .wsk-leh .wsk-leh__subtitle,
.fusion-row .wsk-leh .wsk-leh__subtitle {
	margin: 0 0 0.25rem 0 !important;
	padding: 0 !important;
	text-align: left !important;
	font-family: var(--wsk-leh-subtitle-font-family, inherit) !important;
	font-size: var(--wsk-leh-subtitle-font-size, 0.85rem) !important;
	font-weight: var(--wsk-leh-subtitle-font-weight, 500) !important;
	letter-spacing: var(--wsk-leh-subtitle-letter-spacing, 0.18em) !important;
	text-transform: var(--wsk-leh-subtitle-text-transform, uppercase) !important;
	line-height: var(--wsk-leh-subtitle-line-height, 1.5) !important;
	color: var(--wsk-leh-subtitle-color, #ffffff) !important;
	opacity: 0.85;
}

/* Description = .section1Description + .description.
   Locked-rule pattern beats Avada theme typography cascade. */
.wsk-leh .wsk-leh__body,
.fusion-body .wsk-leh .wsk-leh__body,
.fusion-row .wsk-leh .wsk-leh__body {
	margin: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	max-width: 320px;
	text-align: left !important;
	font-family: var(--wsk-leh-body-font-family, inherit) !important;
	font-size: var(--wsk-leh-body-font-size, clamp(0.95rem, 1.62vw, 1.18rem)) !important;
	font-weight: var(--wsk-leh-body-font-weight, 400) !important;
	line-height: var(--wsk-leh-body-line-height, 1.4) !important;
	letter-spacing: var(--wsk-leh-body-letter-spacing, 0) !important;
	text-transform: var(--wsk-leh-body-text-transform, none) !important;
	color: var(--wsk-leh-body-color, #ffffffc0) !important;
}

/* Buttons — ref recipe:
     fixed 42px height, 0 20px padding, 5px gap, font 14px,
     pill (border-radius: 9999px), transition all 0.3s ease.
   Primary = soft-white pill with depth shadow + 2px hover lift.
   Secondary = glass wrapper: backdrop-blur 20px + saturate 140%,
     translucent fill, hairline border, layered drop+inner-rim shadow.
   Locked-rule pattern beats Avada theme link/button typography cascade. */
.wsk-leh .wsk-leh__btn,
.fusion-body .wsk-leh .wsk-leh__btn,
.fusion-row .wsk-leh .wsk-leh__btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 5px;
	height: 42px;
	padding: 0 20px !important;
	border: 0 !important;
	border-radius: 9999px !important;
	font-family: var(--wsk-leh-btn-font-family, inherit) !important;
	font-size: var(--wsk-leh-btn-font-size, 14px) !important;
	font-weight: var(--wsk-leh-btn-font-weight, 500) !important;
	line-height: 1 !important;
	letter-spacing: var(--wsk-leh-btn-letter-spacing, 0) !important;
	text-transform: var(--wsk-leh-btn-text-transform, none) !important;
	text-decoration: none !important;
	white-space: nowrap;
	overflow: hidden;
	cursor: pointer;
	transition: all 300ms ease;
}

.wsk-leh__btn:focus-visible {
	outline: 2px solid var(--wsk-leh-focus-ring, #ffffff);
	outline-offset: 3px;
}

.wsk-leh__btn-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1em;
	height: 1em;
	flex-shrink: 0;
	transition: transform 300ms ease;
}

.wsk-leh__btn-icon svg {
	width: 100%;
	height: 100%;
	display: block;
}

.wsk-leh__btn-text {
	white-space: nowrap;
	font-weight: 500;
}

/* Primary — soft off-white pill with a depth shadow that lifts on hover. */
.wsk-leh__btn--primary {
	background: var(--wsk-leh-btn-primary-bg, #f5f5f0);
	color: var(--wsk-leh-btn-primary-text, #000000);
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.wsk-leh__btn--primary:hover {
	background: #e5e5e0;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25);
	transform: translateY(-2px);
}

/* Secondary — glass: heavy backdrop blur + saturate, translucent fill,
   thin top inner-highlight rim, deep ambient drop shadow. */
.wsk-leh__btn--secondary {
	background: var(--wsk-leh-btn-secondary-bg, rgba(200, 200, 200, 0.1));
	color: var(--wsk-leh-btn-secondary-text, #ffffff);
	border: 1px solid rgba(255, 255, 255, 0.2) !important;
	box-shadow:
		0 10px 30px rgba(0, 0, 0, 0.35),
		inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.wsk-leh__btn--secondary:hover {
	background: rgba(255, 255, 255, 0.1);
	transform: translateY(-2px);
}

@supports ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
	.wsk-leh__btn--secondary {
		-webkit-backdrop-filter: blur(20px) saturate(140%);
		backdrop-filter: blur(20px) saturate(140%);
	}
}

/* Avada link-cascade neutraliser — Avada forces link colour and underline. */
.fusion-row .wsk-leh a {
	text-decoration: none !important;
}

.fusion-row .wsk-leh .wsk-leh__btn--primary {
	color: var(--wsk-leh-btn-primary-text, #000000) !important;
}

.fusion-row .wsk-leh .wsk-leh__btn--secondary {
	color: var(--wsk-leh-btn-secondary-text, #ffffff) !important;
}

/* Desktop button visibility — secondary hidden on desktop, mirrors
   #section1HeaderRightButton2 { display: none } from the ref. */
.wsk-leh--desktop-primary_only .wsk-leh__btn--secondary {
	display: none;
}

/* Mobile / narrow (max-width: 1024px) — matches the visual reference breakpoint.
   .section1Header              -> flex-direction: column; align-items: center; padding 3vh
   .section1HeaderGradient      -> height 70vh; full opaque bottom
   .section1HeaderLeft / Right  -> reset to full-width centered cells
   .section1Title/Description   -> text-align: center
   .section1HeaderRightContent  -> flex-direction: column-reverse; align-items: stretch
   #section1HeaderRightButton2  -> display: flex (visible on narrow) */
@media (max-width: 1024px) {
	.wsk-leh__content {
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-end;
		padding: 3vh 1.25rem;
		gap: 2rem;
	}

	.wsk-leh__bg-gradient {
		height: 70vh;
		background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 1) 100%);
	}

	.wsk-leh__left {
		flex: 0 0 auto;
		align-items: center;
		width: 100%;
		overflow: hidden;
	}

	.wsk-leh__right {
		flex: 0 0 auto;
		margin-left: 0;
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.wsk-leh__title,
	.wsk-leh__body,
	.wsk-leh__subtitle {
		text-align: center;
	}

	.wsk-leh__body {
		max-width: none;
		margin-left: auto;
		margin-right: auto;
	}

	.wsk-leh__buttons {
		flex-direction: row;
		align-items: stretch;
		justify-content: center;
		flex-wrap: nowrap;
		gap: 0.75rem;
		width: 100%;
	}

	.wsk-leh__btn {
		flex: 1 1 0;
		min-width: 0;
		justify-content: center;
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.wsk-leh__btn-text {
		white-space: normal;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.wsk-leh--desktop-primary_only .wsk-leh__btn--secondary {
		display: inline-flex;
	}
}

/* Reduced motion — also force reveal-state final values so users with
   reduce-motion never see a frozen pre-reveal title. */
@media (prefers-reduced-motion: reduce) {
	.wsk-leh__btn {
		transition: none !important;
	}
	.wsk-leh__btn:hover {
		transform: none !important;
	}
	.wsk-leh__char,
	.wsk-leh__subtitle,
	.wsk-leh__body,
	.wsk-leh__buttons {
		opacity: 1 !important;
		filter: none !important;
		transform: none !important;
		transition: none !important;
	}
}
/**
 * WEPRO: Manifesto — element stylesheet.
 *
 * Layout values lifted from the visual reference:
 *   .section3                    -> .wsk-mfst
 *   .section3Content             -> .wsk-mfst__stage
 *   .section3Video / picture     -> .wsk-mfst__bg .wsk-mfst__video / __pic
 *   .section3BeliefsTitle        -> .wsk-mfst__eyebrow
 *   .section3Text                -> .wsk-mfst__items-viewport
 *   .section3TextItems           -> .wsk-mfst__items
 *   .section3TextItem            -> .wsk-mfst__item
 *   .section3TextItemItalic      -> .wsk-mfst__item em
 *   .section3Button (.glass)     -> .wsk-mfst__btn
 *
 * Mechanics:
 *   - Outer .wsk-mfst is 325vh tall to give the sticky stage a long
 *     scroll runway.
 *   - .wsk-mfst__stage is `position: sticky; top: 0; height: 100vh`
 *     and remains pinned for the duration.
 *   - JS writes per-item inline styles (rotateX/scale/blur/opacity)
 *     based on each item's distance from the column center, plus
 *     a translateY on .wsk-mfst__items so the stack scrolls through.
 *   - JS also sets a CSS variable `--wsk-mfst-zoom` on the bg layer
 *     so the video/image scales from a starter inset (~80% width with
 *     border-radius 10px) to full-bleed across the scroll.
 */

/* ══════════════════════════════════════════════════════════════════════
 * Root.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-mfst {
	position: relative;
	width: 100%;
	min-height: 325vh;
	color: #ffffff;
	background: #000;
	isolation: isolate;
}

/* Sticky stage. */
.wsk-mfst__stage {
	position: sticky;
	top: 0;
	width: 100%;
	height: 100vh;
	height: 100dvh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	z-index: 1;
}

/* ══════════════════════════════════════════════════════════════════════
 * Background layer (video / picture / youtube).
 *
 * Verbatim from the ref: starts as a centred rectangle at the same
 * width as the page's content row (clamp 720px / 88vw / 1200px to
 * mirror the ref's section2Cards max-width:1200px), height 100vh,
 * border-radius 10px, hairline border. JS interpolates `width` from
 * that starter to 100vw across the zoom-in phase, then back at the
 * zoom-out phase. Height is never animated.
 *
 * On viewports under 1024px the bg is full-bleed always (no inset).
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-mfst__bg {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	width: var(--wsk-mfst-bg-width, clamp(720px, 88vw, 1200px));
	height: 100vh;
	height: 100dvh;
	border-radius: var(--wsk-mfst-bg-radius, 10px);
	border: var(--wsk-mfst-bg-border, 1px) solid rgba(255, 255, 255, 0.15);
	overflow: hidden;
	opacity: 0.5;
	z-index: 0;
	will-change: width, border-radius;
}

.wsk-mfst__bg picture,
.wsk-mfst__bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
}

.wsk-mfst__bg picture img,
.wsk-mfst__bg video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

/* YouTube full-bleed cover — same pattern as Legacy / Wellness / Beauty / Architecture. */
.wsk-mfst__yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}

.wsk-mfst__yt-wrap iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 177.78%;
	height: 177.78%;
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

.wsk-mfst__bg-overlay {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: rgba(0, 0, 0, var(--wsk-mfst-overlay-opacity, 0.5));
	z-index: 1;
}

/* ══════════════════════════════════════════════════════════════════════
 * Content stack — eyebrow + items viewport + button.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-mfst__content {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 100vw;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 5vh 1.25rem;
	pointer-events: none;
}

.wsk-mfst__content > * {
	pointer-events: auto;
}

/* ── Eyebrow ── */
.wsk-mfst .wsk-mfst__eyebrow,
.fusion-body .wsk-mfst .wsk-mfst__eyebrow,
.fusion-row .wsk-mfst .wsk-mfst__eyebrow {
	margin: 0 0 5vh 0 !important;
	padding: 0 !important;
	text-align: center !important;
	font-family: var(--wsk-mfst-eyebrow-font-family, inherit) !important;
	font-size: var(--wsk-mfst-eyebrow-font-size, clamp(0.9rem, 1.1vw, 1.1rem)) !important;
	font-weight: var(--wsk-mfst-eyebrow-font-weight, 500) !important;
	letter-spacing: var(--wsk-mfst-eyebrow-letter-spacing, 0.07em) !important;
	text-transform: var(--wsk-mfst-eyebrow-text-transform, uppercase) !important;
	line-height: var(--wsk-mfst-eyebrow-line-height, 1.2) !important;
	color: var(--wsk-mfst-eyebrow-color, #ffffff) !important;
}

/* ── Items viewport ── */
.wsk-mfst__items-viewport {
	position: relative;
	width: 100%;
	max-width: 100vw;
	height: 20vh;
	padding-top: 5vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	overflow: hidden;
	z-index: 1;
}

.wsk-mfst__items {
	flex-shrink: 0;
	display: flex;
	max-width: 100vw;
	flex-direction: column;
	align-items: center;
	height: auto;
	min-height: max-content;
	will-change: transform;
}

/* Each item — JS writes the per-item inline transform/filter/opacity. */
.wsk-mfst .wsk-mfst__item,
.fusion-body .wsk-mfst .wsk-mfst__item,
.fusion-row .wsk-mfst .wsk-mfst__item {
	flex-shrink: 0;
	min-height: 10vh;
	display: block;
	width: 100%;
	margin: 0 !important;
	padding: 0 2rem !important;
	font-family: var(--wsk-mfst-item-font-family, inherit) !important;
	font-size: var(--wsk-mfst-item-font-size, clamp(2rem, 2.2vw, 4.2rem)) !important;
	font-weight: var(--wsk-mfst-item-font-weight, 500) !important;
	line-height: var(--wsk-mfst-item-line-height, 1.2) !important;
	letter-spacing: var(--wsk-mfst-item-letter-spacing, -0.03em) !important;
	text-transform: var(--wsk-mfst-item-text-transform, none) !important;
	text-align: center !important;
	color: var(--wsk-mfst-item-color, #ffffff) !important;
	transform-style: preserve-3d;
	will-change: transform, filter, opacity;
}

.wsk-mfst__item em,
.wsk-mfst__item i {
	font-style: italic;
	font-family: var(--wsk-mfst-item-italic-font-family, inherit);
	color: var(--wsk-mfst-item-italic-color, inherit);
	letter-spacing: -0.05em;
	margin-left: 0.1em;
	margin-right: 0.1em;
}

/* Whole-item link wrapper inherits typography from the parent. */
.wsk-mfst__item-link {
	color: inherit !important;
	text-decoration: none !important;
}

/* Avada-cascade neutraliser on links inside the element. */
.fusion-row .wsk-mfst a,
.fusion-row .wsk-mfst a:link,
.fusion-row .wsk-mfst a:visited,
.fusion-row .wsk-mfst a:hover {
	color: inherit !important;
	text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════════════════════
 * Glass CTA button — same recipe as Legacy Hero secondary.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-mfst__cta {
	margin-top: 5vh;
	display: flex;
	justify-content: center;
}

.wsk-mfst .wsk-mfst__btn,
.fusion-body .wsk-mfst .wsk-mfst__btn,
.fusion-row .wsk-mfst .wsk-mfst__btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 7px;
	height: 45px;
	padding: 0 24px !important;
	border: 1px solid var(--wsk-mfst-btn-border, rgba(255, 255, 255, 0.2)) !important;
	border-radius: 9999px !important;
	background: var(--wsk-mfst-btn-bg, rgba(200, 200, 200, 0.1));
	color: var(--wsk-mfst-btn-text, #ffffff) !important;
	font-family: var(--wsk-mfst-btn-font-family, inherit) !important;
	font-size: var(--wsk-mfst-btn-font-size, 15px) !important;
	font-weight: var(--wsk-mfst-btn-font-weight, 500) !important;
	line-height: 1 !important;
	letter-spacing: var(--wsk-mfst-btn-letter-spacing, 0) !important;
	text-transform: var(--wsk-mfst-btn-text-transform, none) !important;
	text-decoration: none !important;
	white-space: nowrap;
	overflow: hidden;
	cursor: pointer;
	box-shadow:
		0 10px 30px rgba(0, 0, 0, 0.35),
		inset 0 1px 0 rgba(255, 255, 255, 0.08);
	transition: all 300ms ease;
}

@supports ((-webkit-backdrop-filter: blur(20px)) or (backdrop-filter: blur(20px))) {
	.wsk-mfst__btn {
		-webkit-backdrop-filter: blur(20px) saturate(140%);
		backdrop-filter: blur(20px) saturate(140%);
	}
}

.wsk-mfst__btn:hover {
	background: rgba(255, 255, 255, 0.1);
	transform: translateY(-2px);
}

.wsk-mfst__btn:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 3px;
}

.wsk-mfst__btn-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1em;
	height: 1em;
	flex-shrink: 0;
	transition: transform 300ms ease;
}

.wsk-mfst__btn-icon svg {
	width: 100%;
	height: 100%;
	display: block;
}

.wsk-mfst__btn-text {
	white-space: nowrap;
}

/* ══════════════════════════════════════════════════════════════════════
 * Mobile / narrow (≤ 1024px).
 *
 * The 3D card-flip is too tight to read on small screens. We keep the
 * sticky stage and the scroll cycling, but switch the per-item visual
 * to a softer fade-only (no perspective, no scale, no blur).
 * Background also drops the zoom — full-bleed always.
 * ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
	.wsk-mfst {
		min-height: 280vh;
	}

	/* Mobile keeps the same open-from-center / close-to-center
	   mechanic — only the starter rect is narrower (80vw) so the
	   inset is visible on phones. JS still drives `width` across
	   the scroll; CSS just sets the default starter via the same
	   `--wsk-mfst-bg-width` var. */
	.wsk-mfst__bg {
		--wsk-mfst-bg-width: 80vw;
	}

	.wsk-mfst .wsk-mfst__item,
	.fusion-body .wsk-mfst .wsk-mfst__item,
	.fusion-row .wsk-mfst .wsk-mfst__item {
		font-size: var(--wsk-mfst-item-font-size, clamp(1.6rem, 5vw, 2.6rem)) !important;
		padding: 0 1.25rem !important;
	}

	.wsk-mfst__items-viewport {
		height: 18vh;
	}

	.wsk-mfst__cta {
		width: 100%;
	}

	.wsk-mfst__btn {
		width: auto;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion — flatten everything to a static list.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-mfst {
		min-height: 0;
	}
	.wsk-mfst__stage {
		position: relative;
		height: auto;
		padding: 8vh 0;
	}
	.wsk-mfst__bg {
		position: absolute;
		left: 0;
		top: 0;
		transform: none;
		width: 100% !important;
		height: 100% !important;
		border-radius: 0 !important;
		border: 0 !important;
	}
	.wsk-mfst__items-viewport {
		height: auto;
		overflow: visible;
	}
	.wsk-mfst__items {
		transform: none !important;
	}
	.wsk-mfst__item {
		min-height: 0 !important;
		opacity: 1 !important;
		filter: none !important;
		transform: none !important;
		margin: 0.5em 0 !important;
	}
	.wsk-mfst__btn {
		transition: none !important;
	}
}
/**
 * WEPRO: American Hero
 *
 * Full-viewport (100svh) cinematic hero. Layout values lifted from the
 * editorial-cinematic reference: 8-column grid, three rows (title / hr /
 * footer), with copyright bottom-left and eyebrow bottom-right. Same
 * structure across desktop / tablet / mobile — clamp() typography +
 * vw-fluid padding scale fluidly without breakpoint-driven reflow.
 *
 * Cascade-beat: every editor-tunable typography property uses
 * `var(--wsk-amh-X-PROP, REF_DEFAULT) !important` so Avada's compiled
 * dynamic CSS cannot override the locked-rule values.
 *
 * @package WeProStarterKit
 */

/* ──────────────────────────────────────────────────────────
 * Layout
 * ────────────────────────────────────────────────────────── */
.wsk-amh {
	--wsk-amh-color: #ffffff;
	--wsk-amh-color-bg: #010101;
	--wsk-amh-overlay-color: var(--wsk-amh-color-bg);
	--wsk-amh-overlay-opacity: 0.50;
	--wsk-amh-hr: color-mix(in srgb, transparent, currentColor 20%);

	position: relative;
	display: block;
	width: 100%;
	height: calc(100 * var(--svh, 1svh));
	background-color: #000;
	color: var(--wsk-amh-color);
	overflow: hidden;
	isolation: isolate;
}

/* ──────────────────────────────────────────────────────────
 * Background media — image / video / YouTube
 * ────────────────────────────────────────────────────────── */
.wsk-amh__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
}

.wsk-amh__pic,
.wsk-amh__pic img,
.wsk-amh__video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* YouTube cover-fit (skill rule #45a viewport-sized variant).
   <iframe> cannot use object-fit; size whichever axis dominates so the
   16:9 player ALWAYS covers the viewport without letterboxing. */
.wsk-amh__yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}
.wsk-amh__yt-wrap iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width:  max(100vw, calc(100vh * 16 / 9));
	height: max(100vh, calc(100vw *  9 / 16));
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

/* ──────────────────────────────────────────────────────────
 * Bottom veil — protects copy legibility (250px gradient).
 * ────────────────────────────────────────────────────────── */
.wsk-amh__veil {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 250px;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(to top, var(--wsk-amh-overlay-color) 0%, transparent 100%);
	opacity: var(--wsk-amh-overlay-opacity);
}

/* ──────────────────────────────────────────────────────────
 * Foreground UI grid — bottom-anchored, 8-column.
 * ────────────────────────────────────────────────────────── */
.wsk-amh__ui {
	position: absolute;
	z-index: 2;
	bottom: 0;
	left: 0;
	width: 100%;
	display: grid;
	grid-template-rows: auto auto auto;
	grid-template-columns: repeat(8, 1fr);
	gap: 0;
	padding: clamp(1rem, .86rem + .71vw, 1.5rem);
	color: var(--wsk-amh-color);
}

/* Title — row 1, full-width, centered, large display type. */
.wsk-amh .wsk-amh__title,
.fusion-body .wsk-amh .wsk-amh__title {
	grid-column: 1 / -1;
	grid-row: 1 / 2;
	display: grid;
	text-align: center;
	align-items: end;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--wsk-amh-title-font-family, ui-sans-serif, system-ui, sans-serif) !important;
	font-size: var(--wsk-amh-title-font-size, clamp(2.5rem, 1.93rem + 2.86vw, 4.5rem)) !important;
	font-weight: var(--wsk-amh-title-font-weight, 500) !important;
	font-style: var(--wsk-amh-title-font-style, normal) !important;
	line-height: var(--wsk-amh-title-line-height, clamp(2.25rem, 1.74rem + 2.57vw, 4.05rem)) !important;
	letter-spacing: var(--wsk-amh-title-letter-spacing, 0) !important;
	text-transform: var(--wsk-amh-title-text-transform, none) !important;
	color: var(--wsk-amh-title-color, currentColor) !important;
}

/* Hairline divider — row 2, full-width.
   Margins locked with !important so Avada's dynamic global resets
   (e.g. .fusion-row > div { margin: 0 }) cannot collapse the spacing. */
.wsk-amh__hr,
.fusion-body .wsk-amh__hr {
	grid-column: 1 / -1;
	grid-row: 2 / 3;
	height: 9px !important;
	margin-top:    clamp(.5rem, .46rem + .18vw, .625rem) !important;
	margin-bottom: clamp(1rem, .86rem + .71vw, 1.5rem)   !important;
	margin-left: 0  !important;
	margin-right: 0 !important;
	padding: 0      !important;
	border: 1px solid var(--wsk-amh-hr) !important;
	border-bottom: 0 !important;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	transform: scaleY(-1);
}

/* Subtitle — row 3 spans full width, centered, capped at 780px max. */
.wsk-amh .wsk-amh__subtitle,
.fusion-body .wsk-amh .wsk-amh__subtitle {
	grid-column: 1 / -1;
	grid-row: 3 / 4;
	max-width: 780px;
	margin: 0 auto !important;
	padding: 0 !important;
	text-align: center;
	font-family: var(--wsk-amh-subtitle-font-family, ui-sans-serif, system-ui, sans-serif) !important;
	font-size: var(--wsk-amh-subtitle-font-size, 14px) !important;
	font-weight: var(--wsk-amh-subtitle-font-weight, 400) !important;
	font-style: var(--wsk-amh-subtitle-font-style, normal) !important;
	line-height: var(--wsk-amh-subtitle-line-height, 1.25) !important;
	letter-spacing: var(--wsk-amh-subtitle-letter-spacing, normal) !important;
	text-transform: var(--wsk-amh-subtitle-text-transform, none) !important;
	color: var(--wsk-amh-subtitle-color, currentColor) !important;
	opacity: 0.7;
}

/* Copyright — row 3, bottom-left (column 1). */
.wsk-amh .wsk-amh__copyright,
.fusion-body .wsk-amh .wsk-amh__copyright {
	grid-row: 3 / 4;
	grid-column: 1 / 2;
	align-self: end;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--wsk-amh-copyright-font-family, ui-monospace, "SFMono-Regular", "Menlo", monospace) !important;
	font-size: var(--wsk-amh-copyright-font-size, 0.75rem) !important;
	font-weight: var(--wsk-amh-copyright-font-weight, 400) !important;
	font-style: var(--wsk-amh-copyright-font-style, normal) !important;
	line-height: var(--wsk-amh-copyright-line-height, 0.75rem) !important;
	letter-spacing: var(--wsk-amh-copyright-letter-spacing, normal) !important;
	text-transform: var(--wsk-amh-copyright-text-transform, uppercase) !important;
	color: var(--wsk-amh-copyright-color, currentColor) !important;
	opacity: 0.5;
	text-align: left;
}

/* Eyebrow — row 3, bottom-right (column -2 / -1). */
.wsk-amh .wsk-amh__eyebrow,
.fusion-body .wsk-amh .wsk-amh__eyebrow {
	grid-row: 3 / 4;
	grid-column: -2 / -1;
	align-self: end;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--wsk-amh-eyebrow-font-family, ui-monospace, "SFMono-Regular", "Menlo", monospace) !important;
	font-size: var(--wsk-amh-eyebrow-font-size, 0.75rem) !important;
	font-weight: var(--wsk-amh-eyebrow-font-weight, 400) !important;
	font-style: var(--wsk-amh-eyebrow-font-style, normal) !important;
	line-height: var(--wsk-amh-eyebrow-line-height, 0.75rem) !important;
	letter-spacing: var(--wsk-amh-eyebrow-letter-spacing, normal) !important;
	text-transform: var(--wsk-amh-eyebrow-text-transform, uppercase) !important;
	color: var(--wsk-amh-eyebrow-color, currentColor) !important;
	opacity: 0.5;
	text-align: right;
}

/* When subtitle is centered the copyright/eyebrow share row 3 with it.
   Make sure the centered subtitle doesn't visually collide on small grids
   by giving it slightly more breathing room from the side markers. */
.wsk-amh .wsk-amh__subtitle {
	grid-column: 2 / -2;
}

/* Mobile (≤720px):
   - Copyright is HIDDEN.
   - Eyebrow is pulled OUT of the bottom UI grid and pinned near the
     TOP of the hero (centered horizontally), close to the site header.
   - Subtitle reclaims full grid width inside the bottom UI block.
   Specificity bumped with .fusion-body prefix to beat the desktop
   selector AND every layout property carries !important to beat any
   downstream Avada/typography re-declaration. */
@media (max-width: 720px) {
	.wsk-amh .wsk-amh__copyright,
	.fusion-body .wsk-amh .wsk-amh__copyright {
		display: none !important;
	}
	.wsk-amh .wsk-amh__eyebrow,
	.fusion-body .wsk-amh .wsk-amh__eyebrow {
		position: absolute !important;
		top: clamp(0.5rem, 2vw, 1rem) !important;
		left: 50% !important;
		right: auto !important;
		bottom: auto !important;
		transform: translateX(-50%) !important;
		grid-row: auto !important;
		grid-column: auto !important;
		text-align: center !important;
		justify-self: auto !important;
		align-self: auto !important;
		z-index: 3;
	}
	.wsk-amh .wsk-amh__subtitle,
	.fusion-body .wsk-amh .wsk-amh__subtitle {
		grid-column: 1 / -1 !important;
	}
}

/* ──────────────────────────────────────────────────────────
 * Reduced motion — disable any decorative transitions/animations.
 * ────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-amh *,
	.wsk-amh *::before,
	.wsk-amh *::after {
		animation: none !important;
		transition: none !important;
	}
}
/**
 * WEPRO: Armenia Hero
 *
 * Full-viewport (100svh) cinematic hero with the background framed at the
 * bottom (NOT all sides). On load, the bg covers the section EXCEPT for a
 * strip at the bottom that exposes a flat band holding the title + subtitle.
 * Bottom corners of the bg are rounded. Sides + top of the bg are flush
 * with the section edges.
 *
 * "Frame + Expand on Scroll" mode (default ON):
 *   - On load: `.wsk-arh__bg` has `bottom: var(--wsk-arh-frame-bottom)`
 *     (default 216px) and rounded bottom corners. The title + subtitle
 *     live in the strip BELOW the bg, anchored to the bottom of the section.
 *   - As the user scrolls past, JS writes `--wsk-arh-p` (0..1) to the root
 *     and `bottom` + bottom-radius animate to 0. The bg becomes full-bleed;
 *     the title + subtitle are now overlaid on the image at the bottom.
 *   - When `frame_enabled=no`, the bg is full-bleed at all times.
 *
 * Scroll indicator: bottom-right corner. Label is rendered VERTICAL
 * (rotated, bottom-up reading direction) per the editorial-tourism ref.
 *
 * @package WeProStarterKit
 */

/* ──────────────────────────────────────────────────────────
 * Layout
 * ────────────────────────────────────────────────────────── */
.wsk-arh {
	--wsk-arh-color: #ffffff;
	--wsk-arh-overlay-color: #010101;
	--wsk-arh-overlay-opacity: 0.40;
	--wsk-arh-scroll-accent: #1f5f4c;

	/* Frame defaults — overridden inline by editor + animated by JS via --wsk-arh-p. */
	--wsk-arh-frame-bottom: 216px;
	--wsk-arh-frame-radius: 64px;
	--wsk-arh-p: 0;

	position: relative;
	display: block;
	width: 100%;
	height: calc(100 * var(--svh, 1svh));
	min-height: 560px;
	background-color: transparent;
	color: var(--wsk-arh-color);
	overflow: hidden;
	isolation: isolate;
}

/* ──────────────────────────────────────────────────────────
 * Background media wrapper.
 *
 * Default mode (no frame): the .wsk-arh__bg layer fills the section.
 * Framed mode: bottom is offset by `(1 - p) * frame-bottom`, so on load
 * the bg ends ~216px above the section's bottom edge (exposing the copy
 * strip), and as p → 1 the bottom collapses to 0 (full-bleed).
 *
 * Z-index stack (bottom → top):
 *   0  background (image/video/iframe)
 *   1  veil
 *   2  ui (title/subtitle/scroll)
 * ────────────────────────────────────────────────────────── */
.wsk-arh__bg {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
	background-color: transparent;
}

.wsk-arh--framed .wsk-arh__bg {
	bottom: calc(var(--wsk-arh-frame-bottom) * (1 - var(--wsk-arh-p)));
	border-bottom-left-radius:  calc(var(--wsk-arh-frame-radius) * (1 - var(--wsk-arh-p)));
	border-bottom-right-radius: calc(var(--wsk-arh-frame-radius) * (1 - var(--wsk-arh-p)));
}

.wsk-arh__pic,
.wsk-arh__pic img,
.wsk-arh__video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* YouTube cover-fit (skill rule #45a viewport-sized variant). */
.wsk-arh__yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}
.wsk-arh__yt-wrap iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width:  max(100%, calc(100% * 16 / 9));
	height: max(100%, calc(100% *  9 / 16));
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

/* ──────────────────────────────────────────────────────────
 * Bottom veil — gradient that protects copy legibility.
 * Sits inside the bg layer so it follows the rounded frame.
 * ────────────────────────────────────────────────────────── */
.wsk-arh__veil {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 1;
	pointer-events: none;
	background: linear-gradient(
		to top,
		var(--wsk-arh-overlay-color) 0%,
		transparent 55%
	);
	opacity: var(--wsk-arh-overlay-opacity);
}

/* In framed mode the veil tracks the bg's bottom inset so it doesn't
   bleed into the exposed copy strip below. */
.wsk-arh--framed .wsk-arh__veil {
	bottom: calc(var(--wsk-arh-frame-bottom) * (1 - var(--wsk-arh-p)));
	border-bottom-left-radius:  calc(var(--wsk-arh-frame-radius) * (1 - var(--wsk-arh-p)));
	border-bottom-right-radius: calc(var(--wsk-arh-frame-radius) * (1 - var(--wsk-arh-p)));
	overflow: hidden;
}

/* ──────────────────────────────────────────────────────────
 * Foreground UI — title + subtitle anchored to the BOTTOM of the section.
 * In framed mode they live in the exposed strip below the bg.
 * In full-bleed mode they overlay the image at the bottom.
 * The scroll indicator is pinned bottom-right (vertical text).
 * ────────────────────────────────────────────────────────── */
.wsk-arh__ui {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 2;
	display: grid;
	grid-template-rows: 1fr auto;
	grid-template-columns: 1fr;
	pointer-events: none;
}

.wsk-arh__copy {
	grid-row: 2 / 3;
	grid-column: 1 / 2;
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
	column-gap: clamp(2rem, 5vw, 5rem);
	row-gap: clamp(.5rem, 1vw, 1rem);
	align-items: end;
	width: 100%;
	max-width: 1480px;
	margin: 0 auto;
	padding-left:   clamp(1rem, 4vw, 4rem);
	padding-right:  clamp(1rem, 4vw, 4rem);
	padding-bottom: clamp(1.5rem, 3vw, 3rem);

	/* Height of the bottom strip on load = frame-bottom; collapses with p. */
	min-height: calc(var(--wsk-arh-frame-bottom) * (1 - var(--wsk-arh-p)));

	pointer-events: auto;
}

/* Bottom strip + copy stay transparent — text is always white. The copy
   sits on whatever the page/section background is in framed state and
   moves onto the bg image as it expands. */

.wsk-arh:not(.wsk-arh--framed) .wsk-arh__copy {
	min-height: auto;
}

/* ── Title (display sans, large fluid clamp). ── */
.wsk-arh .wsk-arh__title,
.fusion-body .wsk-arh .wsk-arh__title {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--wsk-arh-title-font-family, ui-sans-serif, system-ui, sans-serif) !important;
	font-size: var(--wsk-arh-title-font-size, clamp(2.25rem, 1.4rem + 3.8vw, 4.75rem)) !important;
	font-weight: var(--wsk-arh-title-font-weight, 600) !important;
	font-style: var(--wsk-arh-title-font-style, normal) !important;
	line-height: var(--wsk-arh-title-line-height, 1.05) !important;
	letter-spacing: var(--wsk-arh-title-letter-spacing, -0.01em) !important;
	text-transform: var(--wsk-arh-title-text-transform, none) !important;
	color: var(--wsk-arh-title-color, color-mix(
		in srgb,
		#0a0a0a calc((1 - var(--wsk-arh-p)) * 100%),
		var(--wsk-arh-color, #ffffff) calc(var(--wsk-arh-p) * 100%)
	)) !important;
	text-align: left;
}

/* ── Subtitle. ── */
.wsk-arh .wsk-arh__subtitle,
.fusion-body .wsk-arh .wsk-arh__subtitle {
	margin: 0 !important;
	padding: 0 !important;
	max-width: 640px;
	font-family: var(--wsk-arh-subtitle-font-family, ui-sans-serif, system-ui, sans-serif) !important;
	font-size: var(--wsk-arh-subtitle-font-size, clamp(0.95rem, 0.86rem + 0.4vw, 1.15rem)) !important;
	font-weight: var(--wsk-arh-subtitle-font-weight, 400) !important;
	font-style: var(--wsk-arh-subtitle-font-style, normal) !important;
	line-height: var(--wsk-arh-subtitle-line-height, 1.5) !important;
	letter-spacing: var(--wsk-arh-subtitle-letter-spacing, normal) !important;
	text-transform: var(--wsk-arh-subtitle-text-transform, none) !important;
	color: var(--wsk-arh-subtitle-color, color-mix(
		in srgb,
		#0a0a0a calc((1 - var(--wsk-arh-p)) * 100%),
		var(--wsk-arh-color, #ffffff) calc(var(--wsk-arh-p) * 100%)
	)) !important;
	opacity: 0.92;
	text-align: left;
}

/* ──────────────────────────────────────────────────────────
 * Scroll indicator — pinned bottom-right of the section, above the
 * right-column subtitle. Label is VERTICAL (writing-mode: vertical-rl
 * rotated 180° → reads bottom-up) per the editorial-tourism reference.
 * Color matches the brand accent (forest green).
 * ────────────────────────────────────────────────────────── */
.wsk-arh__scroll {
	position: absolute;
	right: clamp(1rem, 2vw, 2.5rem);
	/* Sits above the bottom strip, hugging the bottom of the framed bg. */
	bottom: calc(var(--wsk-arh-frame-bottom) * (1 - var(--wsk-arh-p)) + clamp(.5rem, 1.5vw, 1.5rem));
	z-index: 3;
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5rem;
	padding: clamp(.75rem, 1.2vw, 1rem) clamp(.5rem, .8vw, .75rem);
	color: var(--wsk-arh-color, #ffffff);
	text-decoration: none;
	pointer-events: auto;
	-webkit-tap-highlight-color: transparent;
	/* Glass card background */
	background: rgba(255, 255, 255, 0.10);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	-webkit-backdrop-filter: blur(10px) saturate(160%);
	backdrop-filter: blur(10px) saturate(160%);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}
.wsk-arh:not(.wsk-arh--framed) .wsk-arh__scroll {
	bottom: clamp(1rem, 2.5vw, 2.5rem);
}
.wsk-arh a.wsk-arh__scroll,
.wsk-arh a.wsk-arh__scroll:hover,
.wsk-arh a.wsk-arh__scroll:focus,
.wsk-arh a.wsk-arh__scroll:visited,
.fusion-body .wsk-arh a.wsk-arh__scroll {
	color: var(--wsk-arh-color) !important;
	text-decoration: none !important;
	background: transparent !important;
	border: 0 !important;
}

.wsk-arh .wsk-arh__scroll-text,
.fusion-body .wsk-arh .wsk-arh__scroll-text {
	display: inline-block !important;
	margin: 0 !important;
	padding: 0 !important;
	writing-mode: vertical-rl !important;
	transform: rotate(180deg) !important;
	font-family: var(--wsk-arh-scroll-font-family, ui-sans-serif, system-ui, sans-serif) !important;
	font-size: var(--wsk-arh-scroll-font-size, 0.65rem) !important;
	font-weight: var(--wsk-arh-scroll-font-weight, 400) !important;
	font-style: var(--wsk-arh-scroll-font-style, normal) !important;
	line-height: var(--wsk-arh-scroll-line-height, 1.2) !important;
	letter-spacing: var(--wsk-arh-scroll-letter-spacing, 0.18em) !important;
	text-transform: var(--wsk-arh-scroll-text-transform, uppercase) !important;
	color: var(--wsk-arh-scroll-color, #ffffff) !important;
	opacity: 1;
}

.wsk-arh__scroll-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 96px;
	color: #ffffff;
}
.wsk-arh__scroll-icon svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

/* Snake-trace draw animation — the sinuous glow shaft traces itself
   down, then the tip arrives. Loops with a soft fade. Hairline stroke
   (0.9px) keeps it editorial. */
.wsk-arh__scroll-glow {
	stroke-dasharray: 160;
	stroke-dashoffset: 160;
	animation: wsk-arh-snake-draw 2.4s cubic-bezier(.65, 0, .35, 1) infinite;
}
.wsk-arh__scroll-tip {
	opacity: 0;
	transform: translateY(-6px);
	transform-origin: center;
	animation: wsk-arh-snake-tip 2.4s cubic-bezier(.65, 0, .35, 1) infinite;
}

@keyframes wsk-arh-snake-draw {
	0%   { stroke-dashoffset: 160; opacity: 0;   }
	18%  { opacity: 1; }
	60%  { stroke-dashoffset: 0;   opacity: 1;   }
	85%  { stroke-dashoffset: 0;   opacity: 0.9; }
	100% { stroke-dashoffset: 0;   opacity: 0;   }
}
@keyframes wsk-arh-snake-tip {
	0%, 55% { opacity: 0; transform: translateY(-6px); }
	65%     { opacity: 1; transform: translateY(0); }
	85%     { opacity: 1; transform: translateY(0); }
	100%    { opacity: 0; transform: translateY(0); }
}

/* Focus-visible ring on the click-to-scroll variant. */
.wsk-arh__scroll:focus-visible {
	outline: 2px solid var(--wsk-arh-scroll-accent) !important;
	outline-offset: 6px;
	border-radius: 4px;
}

/* ──────────────────────────────────────────────────────────
 * Mobile (≤720px) — same structure, smaller frame strip + copy padding.
 * ────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
	.wsk-arh__copy {
		grid-template-columns: 1fr;
		row-gap: clamp(.5rem, 1.5vw, 1rem);
	}
}
@media (max-width: 720px) {
	.wsk-arh {
		--wsk-arh-frame-bottom: 200px;
		--wsk-arh-frame-radius: 28px;
		min-height: 480px;
	}
	.wsk-arh__copy {
		padding-left:   clamp(1rem, 4vw, 1.5rem);
		padding-right:  clamp(1rem, 4vw, 1.5rem);
		padding-bottom: clamp(1rem, 3vw, 1.5rem);
	}
	.wsk-arh__scroll {
		right: clamp(.5rem, 2vw, .75rem);
		gap: 0.35rem;
		padding: 0.5rem 0.4rem;
	}
	.wsk-arh__scroll-icon {
		width: 18px;
		height: 64px;
	}
}

/* ──────────────────────────────────────────────────────────
 * Reduced motion — disable all decorative motion.
 * ────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-arh *,
	.wsk-arh *::before,
	.wsk-arh *::after {
		animation: none !important;
		transition: none !important;
	}
}
/**
 * WEPRO: IntroMenu — element stylesheet.
 *
 * Reference-extracted rules. Class renames applied 1:1 from the saved
 * reference page's compiled component CSS:
 *   .intro                  -> .wsk-im__intro
 *   .intro__bg              -> .wsk-im__intro-bg
 *   .intro__logo            -> .wsk-im__intro-logo
 *   #menu-label             -> .wsk-im__label
 *   .menu-label__bg         -> .wsk-im__label-bg
 *   .menu-label__inner      -> .wsk-im__label-inner
 *   .menu-label__hamburger  -> .wsk-im__hamburger
 *   .menu-label__line       -> .wsk-im__line
 *   .menu-label__logos      -> .wsk-im__logos
 *   #menu                   -> .wsk-im__overlay
 *   .menu__list             -> .wsk-im__list
 *   .menu__item             -> .wsk-im__item
 *   .menu__item__active     -> .wsk-im__bullet--left / --right (kept SVG)
 *   .icon-molinico          -> .wsk-im__bullet
 *   .monogram (svg group)   -> kept literal (.monogram inside the SVG)
 *   .cp-up / .cp-down       -> kept literal (svg group classes)
 *   .fade                   -> kept literal (svg group class)
 *   .is-collapsed / .is-menu-open / .is-first-load / .is-loaded — state classes kept literal.
 *
 * All "var(--c-accent)" / "var(--c-secondary)" reference tokens map to:
 *   --wsk-im-bg  (default #D70321 — ref :root --c-accent)
 *   --wsk-im-fg  (default #CBA058 — ref rgb(203,159,87))
 *
 * Tokens (settable via element):
 *   --wsk-im-bg            #D70321   block + intro + overlay background
 *   --wsk-im-fg            #CBA058   hamburger lines + wordmark + menu text
 */

/* ══════════════════════════════════════════════════════════════════════
 * Wrapper — container for fixed children. Zero layout footprint.
 *
 * font-size: 10px scopes the rem base to match the reference's
 * `html { font-size: 10px }` global rule. All `rem` values inside this
 * element resolve at 1rem = 10px (not the browser-default 16px), which
 * is what the reference's `width:max(24rem,...)` etc. were tuned for.
 * Scoped to .wsk-im so it doesn't leak to surrounding page content.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-im,
.wsk-im__intro,
.wsk-im__label,
.wsk-im__overlay {
	color: var(--wsk-im-fg, #CBA058);
	font-size: 10px;
}
.wsk-im *,
.wsk-im *::before,
.wsk-im *::after,
.wsk-im__intro *,
.wsk-im__label *,
.wsk-im__overlay * {
	box-sizing: border-box;
}

/* ══════════════════════════════════════════════════════════════════════
 * INTRO — full-viewport accent overlay, wordmark centered.
 * Ref: .intro { display:flex; flex-direction:column; place-content:center;
 *               position:fixed; width:100vw; height:var(--height); z-index:29 }
 *      .intro.is-first-load { z-index:40 }
 *      .intro__bg { background:var(--c-accent); height:100vh; width:100vw; z-index:5 }
 *      .intro__logo { opacity:0; position:absolute; width:max(30rem,min(30vw,60rem)); z-index:10 }
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-im__intro {
	align-content: center;
	align-items: center;
	color: var(--wsk-im-fg, #CBA058);
	display: flex;
	flex-direction: column;
	height: 100svh;
	justify-content: center;
	place-content: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	z-index: calc(var(--wsk-im-z-base, 100) + 10);
	pointer-events: none;
}
.wsk-im__intro.is-first-load {
	z-index: calc(var(--wsk-im-z-base, 100) + 20);
}
.wsk-im__intro-bg {
	background: var(--wsk-im-bg, #D70321);
	height: 100vh;
	height: 100svh;
	left: 0;
	position: absolute;
	top: 0;
	width: 100vw;
	z-index: 5;
}
.wsk-im__intro-logo {
	/* Initial state — hidden until JS lifts it into view via the entrance tween.
	   Hard-coded px so the size doesn't depend on the surrounding font-size. */
	opacity: 0;
	position: absolute;
	width: clamp(280px, 80vw, 420px);
	z-index: 10;
	color: var(--wsk-im-fg, #CBA058);
	transform: translate3d(0, 100vh, 0);
}
@media screen and (min-width: 600px) {
	.wsk-im__intro-logo {
		width: clamp(360px, 60vw, 540px);
	}
}
@media screen and (min-width: 960px) {
	.wsk-im__intro-logo {
		width: clamp(420px, 40vw, 720px);
	}
}
.wsk-im__intro-logo svg {
	display: block;
	width: 100%;
	height: auto;
}

/* ══════════════════════════════════════════════════════════════════════
 * HEADER LABEL — fixed centered block at top.
 * Ref: #menu-label { left:0; right:0; margin:0 auto; padding:4%; position:fixed;
 *                    top:0; width:max(24rem,min(24vw,48rem)); z-index:30 }
 *      @media (min-width:960px) { padding:1.5% }
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-im__label {
	left: 0;
	margin: 0 auto;
	opacity: 1;
	padding: 4%;
	position: fixed;
	right: 0;
	top: 0;
	/* Ref formula: max(24rem, min(24vw, 48rem)) at 1rem=10px → 240px / 24vw / 480px.
	   Mobile floor reduced to 180px so it stays a centered block on 360px screens. */
	width: clamp(180px, 50vw, 240px);
	z-index: calc(var(--wsk-im-z-base, 100) + 10);
	color: var(--wsk-im-fg, #CBA058);
}
@media screen and (min-width: 600px) {
	.wsk-im__label {
		width: clamp(220px, 32vw, 320px);
	}
}
@media screen and (min-width: 960px) {
	.wsk-im__label {
		width: clamp(240px, 24vw, 480px);
	}
}
@media screen and (min-width: 960px) {
	.wsk-im__label {
		padding: 1.5%;
	}
}

/* Background rectangle behind hamburger + wordmark.
   Ref: .menu-label__bg { background:var(--c-accent); height:100%; left:0;
                          margin:0 auto; position:absolute; right:0; top:0;
                          transform-origin:center; width:100%; z-index:5 }
        .menu-label__bg.is-collapsed { height:80%; width:max(6rem,min(6vw,10rem)) }
        @media (min-width:960px) .menu-label__bg.is-collapsed { height:70% } */
.wsk-im__label-bg {
	background: var(--wsk-im-bg, #D70321);
	height: 100%;
	left: 0;
	margin: 0 auto;
	position: absolute;
	right: 0;
	top: 0;
	transform-origin: center;
	width: 100%;
	will-change: height, width;
	z-index: 5;
	transition:
		width 0.6s cubic-bezier(0.19, 1, 0.22, 1),
		height 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
.wsk-im.is-collapsed .wsk-im__label-bg {
	height: 80%;
	width: max(6rem, min(6vw, 10rem));
}
@media screen and (min-width: 960px) {
	.wsk-im.is-collapsed .wsk-im__label-bg {
		height: 75%;
	}
}
/* Text/dual mode collapsed: the bg must be tall enough to enclose the
 * burger + first-word stack, since text mode has no transform pushing
 * the wordmark up out of view. Override the SVG-tuned heights. */
.wsk-im.is-collapsed .wsk-im__label:not(:has(.logo-morphing)) .wsk-im__label-bg {
	height: 100%;
}
@media screen and (min-width: 960px) {
	.wsk-im.is-collapsed .wsk-im__label:not(:has(.logo-morphing)) .wsk-im__label-bg {
		height: 100%;
	}
}

/* Inner stack (hamburger above wordmark).
   Ref: .menu-label__inner { align-items:center; cursor:pointer; display:flex;
                             flex-direction:column; gap:3rem; justify-content:space-between;
                             position:relative; z-index:10 } */
.wsk-im__label-inner {
	align-items: center;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	gap: 3rem;
	justify-content: space-between;
	position: relative;
	z-index: 10;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	transition:
		width 0.6s cubic-bezier(0.19, 1, 0.22, 1),
		gap 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
/* Collapsed: clip the inner stack to the bg-strip width so wordmark
   groups + hamburger are bounded by the visible red strip. margin:0 auto
   keeps it horizontally centered within the wider .wsk-im__label
   (which itself has padding so the inner doesn't naturally center). */
.wsk-im.is-collapsed .wsk-im__label-inner {
	width: max(6rem, min(6vw, 10rem));
	gap: 0.2rem;
}
/* SVG-mode collapsed needs more breathing room because the monogram is
   transform-pushed up 80%; the visual gap with the burger needs padding. */
.wsk-im.is-collapsed .wsk-im__label-inner:has(.logo-morphing) {
	gap: 5rem;
}

/* Hamburger button (2 lines).
   Ref: .menu-label__hamburger { display:flex; flex-direction:column; gap:.5rem;
                                 transition:transform .75s cubic-bezier(.19,1,.22,1);
                                 width:max(6rem,min(6vw,10rem)); z-index:10 }
        @media (min-width:960px) { gap:1rem }
        :hover { transform:scaleX(.8) } */
.wsk-im__hamburger {
	background: transparent;
	border: 0;
	color: inherit;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin: 0;
	padding: 0;
	transition:
		transform 0.75s cubic-bezier(0.19, 1, 0.22, 1),
		width 0.6s cubic-bezier(0.19, 1, 0.22, 1),
		gap 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	width: max(6rem, min(6vw, 10rem));
	z-index: 10;
}
@media screen and (min-width: 960px) {
	.wsk-im__hamburger {
		gap: 1rem;
	}
}
.wsk-im__hamburger:hover {
	transform: scaleX(0.8);
}
.wsk-im__hamburger:focus-visible {
	outline: 2px solid var(--wsk-im-fg, #CBA058);
	outline-offset: 4px;
}

/* Collapsed: burger shrinks + breathes to match the narrow strip. */
.wsk-im.is-collapsed .wsk-im__hamburger {
	width: 60%;
	gap: 0.6rem;
}
@media screen and (min-width: 960px) {
	.wsk-im.is-collapsed .wsk-im__hamburger {
		gap: 0.8rem;
	}
}

/* Hamburger lines.
   Ref: .menu-label__line { background:var(--c-secondary); display:flex; height:2px;
                            position:relative; transform-origin:center;
                            transition:transform 1s cubic-bezier(.19,1,.22,1); width:100% }
        .is-menu-open .menu-label__line:first-child { transform:translate3D(0,.6rem,0) rotate(-8deg) }
        .is-menu-open .menu-label__line:last-child  { transform:translate3D(0,-.6rem,0) rotate(8deg) }
        @media (max-width:959.8px) { translate offsets become .35rem } */
.wsk-im__line {
	background: var(--wsk-im-fg, #CBA058);
	display: flex;
	height: 2px;
	position: relative;
	transform-origin: center;
	transition: transform 1s cubic-bezier(0.19, 1, 0.22, 1);
	width: 100%;
}
.wsk-im.is-menu-open .wsk-im__line:first-child {
	transform: translate3D(0, 0.35rem, 0) rotate(-8deg);
}
.wsk-im.is-menu-open .wsk-im__line:last-child {
	transform: translate3D(0, -0.35rem, 0) rotate(8deg);
}
@media screen and (min-width: 960px) {
	.wsk-im.is-menu-open .wsk-im__line:first-child {
		transform: translate3D(0, 0.6rem, 0) rotate(-8deg);
	}
	.wsk-im.is-menu-open .wsk-im__line:last-child {
		transform: translate3D(0, -0.6rem, 0) rotate(8deg);
	}
}

/* Wordmark lockup grid.
   Ref: .menu-label__logos { display:grid; grid-template-columns:100%;
                             grid-template-rows:100%; position:relative;
                             transition:transform .4s cubic-bezier(1,0,0,1); z-index:5 }
        .menu-label__logos.is-collapsed { transform:translate3D(0,-45%,0); transition:transform .5s cubic-bezier(.19,1,.22,1) .4s }
        @media (min-width:960px)  .is-collapsed { transform:scale(.8) translate3D(0,-55%,0) }
        @media (min-width:1920px) .is-collapsed { transform:scale(.8) translate3D(0,-45%,0) } */
.wsk-im__logos {
	display: grid;
	grid-template-columns: 100%;
	grid-template-rows: 100%;
	position: relative;
	transition: transform 0.4s cubic-bezier(1, 0, 0, 1);
	z-index: 5;
	color: inherit;
	text-decoration: none;
	width: 100%;
}
.wsk-im__logos:focus-visible {
	outline: 2px solid var(--wsk-im-fg, #CBA058);
	outline-offset: 4px;
}
.wsk-im__logos svg {
	display: block;
	width: 100%;
	height: auto;
	grid-area: 1 / 1;
}
/* Collapsed transform applies ONLY to SVG-mode wordmark (where the
 * monogram needs to be scaled up + shifted). Text mode and dual mode
 * shrink in place via their own opacity / font-size rules — no
 * scale/translate, otherwise the first word ends up off-screen. */
.wsk-im.is-collapsed .wsk-im__logos:has(.logo-morphing) {
	transform: scale(2) translate3D(0, -80%, 0);
	transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
@media screen and (min-width: 960px) {
	.wsk-im.is-collapsed .wsk-im__logos:has(.logo-morphing) {
		transform: scale(1.8) translate3D(0, -85%, 0);
	}
}
@media screen and (min-width: 1920px) {
	.wsk-im.is-collapsed .wsk-im__logos:has(.logo-morphing) {
		transform: scale(1.8) translate3D(0, -80%, 0);
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * SVG group transforms — replicates the GSAP timeline using CSS transitions.
 *
 * Ref f8dd6ea.js (logo-morphing component watcher):
 *   On is-collapsed:
 *     .cp-up path  -> yPercent:-105 (stagger amount:.1 from:end), .5s expo.inOut
 *     .cp-down path-> yPercent: 105 (stagger amount:.1 from:end), .5s expo.inOut
 *     .fade        -> opacity:0,                                  .5s expo.inOut
 *
 * Ref CSS (block 5, scope=logo-morphing):
 *   .monogram { transition:.5s cubic-bezier(.19,1,.22,1) .15s; will-change:transform }
 *   .is-collapsed .monogram { transform:translate3D(41.5%,0,0); transition:.5s cubic-bezier(.19,1,.22,1) .35s }
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-im .logo-morphing {
	overflow: hidden;
	width: 100%;
	height: auto;
	color: inherit;
	display: block;
}

/* SVG transform fix: native SVG groups need transform-box: view-box so
   percentage translates resolve against the SVG's own viewport (not the
   group's own bounding box). Without this, translateY(-105%) would move
   each group by 105% of its own height — meaningless for a "slide off
   stage" effect. With view-box, it's 105% of the SVG's viewport height,
   which is what the reference timeline expects. */
.wsk-im .logo-morphing #don,
.wsk-im .logo-morphing #molinico,
.wsk-im .logo-morphing .monogram {
	transform-box: view-box;
	transform-origin: 0 0;
}

/* The two filigree groups (#desde, #nueva-tradicion) — fade out on collapse.
   !important needed because the SVG markup has inline style="opacity:1"
   on those groups (they ship visible by default; only collapsed-state
   overrides). */
.wsk-im .logo-morphing .fade {
	transition: opacity 0.5s cubic-bezier(0.86, 0, 0.07, 1);
}
.wsk-im.is-collapsed .logo-morphing .fade {
	opacity: 0 !important;
}

/* Upper word group (#don) — slides UP off-stage. Apply on the GROUP, not
   its children (paths inside don't have their own bounding boxes that
   work cleanly). */
.wsk-im .logo-morphing #don {
	transition: transform 0.5s cubic-bezier(0.86, 0, 0.07, 1), opacity 0.4s linear;
}
.wsk-im.is-collapsed .logo-morphing #don {
	transform: translateY(-200%);
	opacity: 0;
}

/* Lower word group (#molinico) — slides DOWN off-stage. */
.wsk-im .logo-morphing #molinico {
	transition: transform 0.5s cubic-bezier(0.86, 0, 0.07, 1), opacity 0.4s linear;
}
.wsk-im.is-collapsed .logo-morphing #molinico {
	transform: translateY(200%);
	opacity: 0;
}

/* The big monogram glyph (#monogram) is included in the bundled SVG as a
   reference shape but never rendered — the small monogram (.monogram /
   #monogram-small) is the one that animates. Hide via class hook so we
   don't depend on inline `style="display:none"` (which lets us drop the
   `style` attr from the wp_kses allowlist applied to editor uploads). */
.wsk-im .logo-morphing #monogram,
.wsk-im .logo-morphing .monogram-large {
	display: none;
}

/* The small monogram (M+R glyph) — slides into view via translate3D(41.5%,0,0).
   Ref: .is-collapsed .monogram { transform: translate3D(41.5%,0,0) } */
.wsk-im .logo-morphing .monogram {
	transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.15s;
	will-change: transform;
}
.wsk-im.is-collapsed .logo-morphing .monogram {
	transform: translate3D(41.5%, 0, 0);
	transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.35s;
}

/* ══════════════════════════════════════════════════════════════════════
 * OVERLAY MENU — full-viewport.
 * Ref: #menu { align-items:center; background:var(--c-accent); display:flex;
 *              flex-direction:column; height:100dvh; justify-content:flex-end;
 *              left:0; opacity:0; pointer-events:none; position:fixed; top:0;
 *              visibility:hidden; width:100vw; z-index:25 }
 * Open animation (JS-driven clip-path tween, 1.2s expo.inOut):
 *   from inset(0 (vw/2 - lw/2)px (vh - lh)px (vw/2 - lw/2 - 1)px)
 *   to   inset(0 0 0 0)
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-im__overlay {
	align-items: center;
	background: var(--wsk-im-bg, #D70321);
	color: var(--wsk-im-fg, #CBA058);
	display: flex;
	flex-direction: column;
	height: 100dvh;
	justify-content: flex-end;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	top: 0;
	visibility: hidden;
	width: 100vw;
	z-index: calc(var(--wsk-im-z-base, 100) + 5);
	-webkit-clip-path: inset(0 50% 100% 50%);
	clip-path: inset(0 50% 100% 50%);
	transition:
		clip-path 1.2s cubic-bezier(0.86, 0, 0.07, 1),
		-webkit-clip-path 1.2s cubic-bezier(0.86, 0, 0.07, 1),
		opacity 0.4s ease;
}
.wsk-im.is-menu-open .wsk-im__overlay {
	-webkit-clip-path: inset(0 0 0 0);
	clip-path: inset(0 0 0 0);
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}

/* Menu list. Ref: .menu__list { width:var(--width) }   :root --width:90vw */
.wsk-im__list {
	list-style: none;
	margin: 0 0 6rem;
	padding: 0;
	width: 90vw;
	max-width: 1400px;
}

/* Menu item row.
   Ref: .menu__item { align-items:center; border-bottom:1px solid var(--c-secondary);
                      display:flex; gap:var(--gutter); justify-content:center;
                      padding:1.6rem 0; width:100% }
   Typography: ref site uses class fs-90 / fs-110 on labels (font-size:max(5rem,min(5vw,9rem))).
   We pick fs-90 as a safe default — FALLBACK — not declared in ref CSS for .menu__item. */
.wsk-im__item {
	align-items: center;
	border-bottom: 1px solid currentColor;
	display: flex;
	gap: 2rem;
	justify-content: center;
	padding: 1.6rem 0;
	width: 100%;
	font-family: var(--wsk-im-menu-font-family, inherit);
	font-size: var(--wsk-im-menu-font-size, max(2rem, min(4vw, 4.5rem)));
	font-weight: var(--wsk-im-menu-font-weight, inherit);
	font-style: var(--wsk-im-menu-font-style, normal);
	line-height: var(--wsk-im-menu-line-height, 1);
	letter-spacing: var(--wsk-im-menu-letter-spacing, 0.02em);
	text-transform: var(--wsk-im-menu-text-transform, uppercase);
	color: var(--wsk-im-menu-color, inherit);
}
@media screen and (min-width: 600px) {
	.wsk-im__item {
		font-size: var(--wsk-im-menu-font-size-md, var(--wsk-im-menu-font-size, max(2rem, min(4vw, 4.5rem))));
	}
}
.wsk-im__item a {
	color: inherit;
	text-decoration: none;
	transition: opacity 0.3s ease;
}
.wsk-im__item a:hover,
.wsk-im__item a:focus-visible {
	opacity: 0.7;
}
.wsk-im__item a:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}
.wsk-im__item-label {
	display: inline-block;
}

/* Active-item bullets — molinico diamond. The PHP emits each bullet with
   inline `transform:rotate(±90deg)` so we don't need separate left/right
   CSS modifiers; only the size + color is governed here. */
.wsk-im__bullet {
	color: inherit;
	display: inline-block;
	flex: none;
	height: auto;
	width: max(2.2rem, min(2.2vw, 3.4rem));
}

/* ══════════════════════════════════════════════════════════════════════
 * Theme override guard — Avada forces .fusion-row a:hover color.
 * Scope our overlay link colours so they survive the cascade.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-im a,
.fusion-row .wsk-im a,
.fusion-row .wsk-im a:link,
.fusion-row .wsk-im a:visited,
.fusion-row .wsk-im a:hover {
	color: inherit !important;
	text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════════════════════
 * DYNAMIC LOGO MODES — text + dual-image
 * ══════════════════════════════════════════════════════════════════════ */

/* Text mode: simple stacked lockup (eyebrow / main / subtext).
 * Color uses the text_color CSS var if set, otherwise foreground.
 * Per-block typography is var-driven via wsk_text_* helpers; fallbacks
 * preserve the previous hardcoded scale so unconfigured instances are
 * unchanged. */
.wsk-im__wordmark--text {
	color: var(--wsk-im-text-color, var(--wsk-im-fg, #CBA058));
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4em;
	font-family: inherit;
	text-align: center;
	text-transform: uppercase;
}
.wsk-im__wordmark-eyebrow {
	display: block;
	font-family: var(--wsk-im-eyebrow-font-family, inherit);
	font-size: var(--wsk-im-eyebrow-font-size, clamp(8px, 1.4vw, 14px));
	font-weight: var(--wsk-im-eyebrow-font-weight, 600);
	font-style: var(--wsk-im-eyebrow-font-style, normal);
	letter-spacing: var(--wsk-im-eyebrow-letter-spacing, 0.18em);
	line-height: var(--wsk-im-eyebrow-line-height, 1.2);
	text-transform: var(--wsk-im-eyebrow-text-transform, inherit);
	color: var(--wsk-im-eyebrow-color, inherit);
	opacity: 0.95;
}
.wsk-im__wordmark-sub {
	display: block;
	font-family: var(--wsk-im-sub-font-family, inherit);
	font-size: var(--wsk-im-sub-font-size, clamp(8px, 1.4vw, 14px));
	font-weight: var(--wsk-im-sub-font-weight, 600);
	font-style: var(--wsk-im-sub-font-style, normal);
	letter-spacing: var(--wsk-im-sub-letter-spacing, 0.18em);
	line-height: var(--wsk-im-sub-line-height, 1.2);
	text-transform: var(--wsk-im-sub-text-transform, inherit);
	color: var(--wsk-im-sub-color, inherit);
	opacity: 0.95;
}
.wsk-im__wordmark-main {
	display: block;
	font-family: var(--wsk-im-main-font-family, inherit);
	/* Mobile: clamp keeps the EXPANDED-state wordmark legible without
	   overflowing the screen. Collapsed-state strip uses its own override
	   below (.is-collapsed .wsk-im__wordmark-main-first) so this size
	   doesn't have to shrink to fit the 60px-wide vertical bar. */
	font-size: var(--wsk-im-main-font-size, clamp(28px, 8vw, 44px));
	font-weight: var(--wsk-im-main-font-weight, 800);
	font-style: var(--wsk-im-main-font-style, normal);
	letter-spacing: var(--wsk-im-main-letter-spacing, 0.01em);
	line-height: var(--wsk-im-main-line-height, 0.95);
	text-transform: var(--wsk-im-main-text-transform, inherit);
	color: var(--wsk-im-main-color, inherit);
	white-space: pre-line; /* honors Enter, no character-wrap */
	max-width: 100%;
}
/* Responsive font-size overrides — applied only when the editor sets
   the medium / small breakpoint values. Fallback to the next size up
   so the rule is harmless when unset. */
@media screen and (min-width: 600px) {
	.wsk-im__wordmark-main {
		font-size: var(--wsk-im-main-font-size-md, var(--wsk-im-main-font-size, clamp(28px, 6vw, 56px)));
	}
}
@media screen and (min-width: 960px) {
	.wsk-im__wordmark-main {
		font-size: var(--wsk-im-main-font-size, clamp(36px, 8vw, 88px));
	}
}
.wsk-im__wordmark-main-first,
.wsk-im__wordmark-main-rest {
	display: inline;
	transition: opacity 0.4s ease, font-size 0.5s cubic-bezier(0.19, 1, 0.22, 1);
}

/* Collapsed state — text-mode wordmark.
   Hide eyebrow / subtext / remainder; shrink the first word so it fits
   inside the narrow strip (same role as #monogram-small in SVG mode). */
/* Collapsed text-mode: hide eyebrow / subtext / main-remainder AND
   collapse their box so the strip height shrinks to just the first word.
   `display: none` (not just opacity) is required because flex layout
   reserves space for hidden-but-visible items, making the strip tall. */
.wsk-im.is-collapsed .wsk-im__wordmark-eyebrow,
.wsk-im.is-collapsed .wsk-im__wordmark-sub,
.wsk-im.is-collapsed .wsk-im__wordmark-main-rest {
	display: none;
}
.wsk-im.is-collapsed .wsk-im__wordmark--text {
	gap: 0;
}
.wsk-im.is-collapsed .wsk-im__wordmark-main-first {
	font-size: clamp(11px, 2vw, 18px);
	letter-spacing: 0.02em;
	line-height: 1;
}

/* Dual mode: full + mark images stacked, cross-fade on collapse. */
.wsk-im__wordmark--dual {
	display: block;
	position: relative;
	width: 100%;
}
.wsk-im__wordmark-full,
.wsk-im__wordmark-mark {
	display: block;
	height: auto;
	max-width: 100%;
	transition: opacity 0.5s cubic-bezier(0.19, 1, 0.22, 1);
	width: 100%;
}
.wsk-im__wordmark-mark {
	left: 50%;
	margin-left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: auto;
	max-height: 100%;
}
.wsk-im.is-collapsed .wsk-im__wordmark-full {
	opacity: 0;
}
.wsk-im.is-collapsed .wsk-im__wordmark-mark {
	opacity: 1;
}

/* SVG-image fallback (when SVG can't be inlined): same opacity rules as
 * dual mode but with a single image. */
.wsk-im__wordmark--svgimg {
	display: block;
	height: auto;
	max-width: 100%;
	width: 100%;
}

/* ══════════════════════════════════════════════════════════════════════
 * TOP STATIC NAV — desktop-only, two columns flanking the centered label
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-im__topnav {
	display: none;
	pointer-events: none;
}

@media screen and (min-width: 960px) {
	.wsk-im__topnav {
		align-items: center;
		display: flex;
		justify-content: space-between;
		left: 0;
		padding: 1.5% 3%;
		pointer-events: none;
		position: fixed;
		right: 0;
		top: 0;
		width: 100vw;
		z-index: calc(var(--wsk-im-z-base, 100) + 8); /* under the label, above page content */
	}
	.wsk-im__topnav-col {
		display: flex;
		flex: 1 1 0;
		pointer-events: auto;
	}
	.wsk-im__topnav-col--left  { justify-content: flex-start; }
	.wsk-im__topnav-col--right { justify-content: flex-end; }

	/* Make room in the centre for the label (which is ~24vw wide). */
	.wsk-im__topnav-col--left  { padding-right: 14vw; }
	.wsk-im__topnav-col--right { padding-left:  14vw; }

	.wsk-im__topnav-list {
		align-items: center;
		display: flex;
		gap: clamp(16px, 2vw, 32px);
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.wsk-im__topnav-item a {
		color: var(--wsk-im-fg, #CBA058);
		font-family: inherit;
		font-size: clamp(12px, 1vw, 14px);
		font-weight: 600;
		letter-spacing: 0.08em;
		text-decoration: none;
		text-transform: uppercase;
		transition: opacity 0.3s ease;
	}
	.wsk-im__topnav-item a:hover,
	.wsk-im__topnav-item a:focus-visible {
		opacity: 0.7;
	}
	.wsk-im__topnav-item a:focus-visible {
		outline: 2px solid currentColor;
		outline-offset: 4px;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion — kill every transition, present steady state directly.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-im *,
	.wsk-im *::before,
	.wsk-im *::after {
		animation: none !important;
		transition: none !important;
	}
	.wsk-im__intro {
		display: none !important;
	}
	.wsk-im__intro-logo {
		opacity: 1;
		transform: none;
	}
}
/**
 * WEPRO: Refract Hero — element stylesheet.
 *
 * Editorial split hero: left copy column with split-text title + dual CTAs,
 * right glass-card slider with progress line. Background is full-bleed
 * (image / video / iframe / slideshow / posts cycler).
 */

/* ══════════════════════════════════════════════════════════════════════
 * Shell
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-rh {
	position: relative;
	isolation: isolate;
	width: 100%;
	min-height: var(--wsk-rh-min-height, 100vh);
	overflow: hidden;
	color: #fff;
	display: flex;
	flex-direction: column;
}

/* ══════════════════════════════════════════════════════════════════════
 * Background layer
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-rh__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	overflow: hidden;
}

.wsk-rh__bg-cycler,
.wsk-rh__bg-slideshow {
	position: absolute;
	inset: 0;
}

.wsk-rh__bg-image {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.8s cubic-bezier(0.25, 0.74, 0.22, 0.99);
	will-change: opacity;
}
.wsk-rh__bg-image.is-active { opacity: 1; }

.wsk-rh__bg-video {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	pointer-events: none;
}

/* YouTube / Vimeo cover-fit (parent is viewport-sized: full-bleed hero) */
.wsk-rh__yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}
.wsk-rh__yt-wrap .wsk-rh__yt {
	position: absolute;
	top: 50%;
	left: 50%;
	width: max(100vw, calc(100vh * 16 / 9));
	height: max(100vh, calc(100vw * 9 / 16));
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

/* Overlay */
.wsk-rh__bg-overlay {
	position: absolute;
	inset: 0;
	background: var(--wsk-rh-overlay, rgba(0,0,0,0.55));
	opacity: var(--wsk-rh-dim-amount, 0.55);
	pointer-events: none;
}

/* ══════════════════════════════════════════════════════════════════════
 * Inner layout — copy left, slider right
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-rh__inner {
	position: relative;
	z-index: 1;
	flex: 1 1 auto;
	width: 100%;
	max-width: 1600px;
	margin-inline: auto;
	padding: clamp(2rem, 6vw, 5rem) clamp(1.25rem, 4vw, 3rem);
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr auto;
	gap: clamp(1.5rem, 4vw, 3rem);
	align-items: end;
}

/* ══════════════════════════════════════════════════════════════════════
 * Copy column
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-rh__copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: clamp(1rem, 2vw, 1.5rem);
	max-width: 720px;
	/* Mobile / tablet default: vertically center the copy in its grid
	   cell so the title doesn't stick to the top of the section.
	   Desktop (≥1024px) overrides this to align-self: end. */
	align-self: center;
	min-height: 0;
}

.wsk-rh__slogan {
	display: inline-block;
	padding: 0.5rem 1rem;
	border: 1px solid var(--wsk-rh-slogan-border, rgba(255,255,255,0.15));
	background: var(--wsk-rh-slogan-bg, rgba(0,0,0,0.5));
	border-radius: 999px;
	font-family: var(--wsk-rh-slogan-font-family, inherit);
	font-size: var(--wsk-rh-slogan-font-size, 0.75rem);
	font-weight: var(--wsk-rh-slogan-font-weight, 500);
	font-style: var(--wsk-rh-slogan-font-style, normal);
	line-height: var(--wsk-rh-slogan-line-height, 1.4);
	letter-spacing: var(--wsk-rh-slogan-letter-spacing, 0.12em);
	text-transform: var(--wsk-rh-slogan-text-transform, uppercase);
	color: var(--wsk-rh-slogan-color, #fff);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

/* Title — !important on color + tightened selector specificity to beat
   Avada's compiled `.fusion-row h1 { color: var(--awb-...) }` cascade
   that otherwise wins because Avada's CSS loads after element CSS and
   targets h1/h2 with same-or-higher specificity. */
.wsk-rh .wsk-rh__title,
.fusion-row .wsk-rh .wsk-rh__title {
	margin: 0;
	font-family: var(--wsk-rh-title-font-family, inherit);
	font-size: var(--wsk-rh-title-font-size, clamp(2.5rem, 6vw, 5.5rem));
	font-weight: var(--wsk-rh-title-font-weight, 600);
	font-style: var(--wsk-rh-title-font-style, normal);
	line-height: var(--wsk-rh-title-line-height, 1.02);
	letter-spacing: var(--wsk-rh-title-letter-spacing, -0.02em);
	text-transform: var(--wsk-rh-title-text-transform, none);
	color: var(--wsk-rh-title-color, #fff) !important;
}

/* Split-text wrappers — !important on display + overflow + transform
   in case Avada's `h1 span` cascade resets them. The clip-then-reveal
   effect REQUIRES `.wsk-rh__title-word { overflow: hidden }` so the
   inner span's translateY(110%) is hidden before reveal. */
.wsk-rh__title-word,
.wsk-rh__title-char {
	display: inline-block !important;
	overflow: hidden !important;
	vertical-align: bottom;
	line-height: inherit;
}
/* `display: inline-block` collapses whitespace inside the span, which
   eats the space character we deliberately render between words. Force
   `white-space: pre` so the literal space is preserved at full em width. */
.wsk-rh__title-space { display: inline-block; white-space: pre; }

.wsk-rh__title-word-inner,
.wsk-rh__title-char-inner {
	display: inline-block !important;
	transform: translateY(110%);
	transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
	will-change: transform;
}

.wsk-rh.is-revealed .wsk-rh__title-word-inner,
.wsk-rh.is-revealed .wsk-rh__title-char-inner {
	transform: translateY(0);
}

/* Stagger */
.wsk-rh__title--split_word .wsk-rh__title-word:nth-child(1) .wsk-rh__title-word-inner { transition-delay: 0ms; }
.wsk-rh__title--split_word .wsk-rh__title-word:nth-child(2) .wsk-rh__title-word-inner { transition-delay: 60ms; }
.wsk-rh__title--split_word .wsk-rh__title-word:nth-child(3) .wsk-rh__title-word-inner { transition-delay: 120ms; }
.wsk-rh__title--split_word .wsk-rh__title-word:nth-child(4) .wsk-rh__title-word-inner { transition-delay: 180ms; }
.wsk-rh__title--split_word .wsk-rh__title-word:nth-child(5) .wsk-rh__title-word-inner { transition-delay: 240ms; }
.wsk-rh__title--split_word .wsk-rh__title-word:nth-child(6) .wsk-rh__title-word-inner { transition-delay: 300ms; }
.wsk-rh__title--split_word .wsk-rh__title-word:nth-child(n+7) .wsk-rh__title-word-inner { transition-delay: 360ms; }

/* Fade variant */
.wsk-rh__title--fade {
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 1.4s cubic-bezier(0.25, 0.74, 0.22, 0.99), transform 1.4s cubic-bezier(0.25, 0.74, 0.22, 0.99);
}
.wsk-rh.is-revealed .wsk-rh__title--fade {
	opacity: 1;
	transform: translateY(0);
}

.wsk-rh__desc {
	margin: 0;
	max-width: 56ch;
	font-family: var(--wsk-rh-desc-font-family, inherit);
	font-size: var(--wsk-rh-desc-font-size, clamp(1rem, 1.4vw, 1.125rem));
	font-weight: var(--wsk-rh-desc-font-weight, 400);
	font-style: var(--wsk-rh-desc-font-style, normal);
	line-height: var(--wsk-rh-desc-line-height, 1.6);
	letter-spacing: var(--wsk-rh-desc-letter-spacing, 0);
	text-transform: var(--wsk-rh-desc-text-transform, none);
	color: var(--wsk-rh-desc-color, rgba(255,255,255,0.75));
}

/* CTAs */
.wsk-rh__ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin-top: clamp(0.5rem, 1.5vw, 1rem);
}

.wsk-rh__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.95rem 1.6rem;
	border-radius: 999px;
	font-family: var(--wsk-rh-cta-font-family, inherit);
	font-size: var(--wsk-rh-cta-font-size, 0.95rem);
	font-weight: var(--wsk-rh-cta-font-weight, 500);
	font-style: var(--wsk-rh-cta-font-style, normal);
	line-height: var(--wsk-rh-cta-line-height, 1.2);
	letter-spacing: var(--wsk-rh-cta-letter-spacing, 0);
	text-transform: var(--wsk-rh-cta-text-transform, none);
	text-decoration: none;
	transition: transform 0.4s cubic-bezier(0.25, 0.74, 0.22, 0.99),
	            background 0.4s cubic-bezier(0.25, 0.74, 0.22, 0.99),
	            color 0.4s cubic-bezier(0.25, 0.74, 0.22, 0.99),
	            border-color 0.4s cubic-bezier(0.25, 0.74, 0.22, 0.99);
}

.wsk-rh__cta--1 {
	background: var(--wsk-rh-cta1-bg, #000);
	color: var(--wsk-rh-cta1-text, #fff);
	border: 1px solid var(--wsk-rh-cta1-bg, #000);
}
.wsk-rh__cta--1:hover { transform: translateY(-2px); }

.wsk-rh__cta--2 {
	background: transparent;
	color: var(--wsk-rh-cta2-text, #fff);
	border: 1px solid var(--wsk-rh-cta2-border, rgba(255,255,255,0.4));
}
.wsk-rh__cta--2:hover {
	border-color: var(--wsk-rh-cta2-text, #fff);
	transform: translateY(-2px);
}

.wsk-rh__cta-arrow {
	display: inline-block;
	transition: transform 0.4s cubic-bezier(0.25, 0.74, 0.22, 0.99);
}
.wsk-rh__cta--2:hover .wsk-rh__cta-arrow { transform: translateX(4px); }

/* Cascade override — Avada styles .fusion-row a */
.wsk-rh a,
.fusion-row .wsk-rh a,
.fusion-row .wsk-rh a:link,
.fusion-row .wsk-rh a:visited {
	color: inherit !important;
	text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════════════════════
 * Slider — bottom-right glass card cluster
 * ══════════════════════════════════════════════════════════════════════ */
/* Slider region: NO wrapper glass / bg / border / padding. The cards
   themselves carry the glass treatment so the wrapper stays transparent —
   matches the ref where cards float over the page bg with one peeking
   off-screen on the right edge. */
.wsk-rh__slider {
	/* Mobile/tablet baseline: slider extends past the section's right
	   padding via negative margin-right so the next card's peek bleeds
	   off-screen. `overflow: hidden` clips departing cards on the LEFT
	   so they don't spill into the copy column as the carousel advances.
	   Desktop (≥1024px) overrides with position:absolute pattern. */
	width: auto;
	max-width: none;
	justify-self: stretch;
	margin-right: calc(-1 * clamp(1.25rem, 4vw, 3rem));
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

/* Progress line — on mobile/tablet the slider extends past the section's
   right padding, but the progress numerals must stay inside the visible
   section. Right padding compensates for the extension so the trailing
   "0n" total never clips against the viewport edge. Desktop overrides. */
.wsk-rh__progress {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	font-size: 0.75rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	color: var(--wsk-rh-card-text, #fff);
	padding-right: clamp(1.25rem, 4vw, 3rem);
}
.wsk-rh__progress-num { font-variant-numeric: tabular-nums; opacity: 0.85; }
.wsk-rh__progress-num--current { opacity: 1; }
.wsk-rh__progress-track {
	flex: 1 1 auto;
	height: 1px;
	background: var(--wsk-rh-progress-track, rgba(255,255,255,0.2));
	position: relative;
	overflow: hidden;
}
.wsk-rh__progress-fill {
	position: absolute;
	left: 0; top: 0;
	height: 100%;
	width: 0%;
	background: var(--wsk-rh-progress-fill, #fff);
	transition: width 0.8s cubic-bezier(0.25, 0.74, 0.22, 0.99);
}

/* Cards track — translate-driven carousel. JS sets `transform:
   translateX(-N * card_step)` to advance. `overflow: visible` lets
   cards extend past the track's right edge so card #2 peeks into
   the slider's visible area. The SLIDER (`.wsk-rh__slider`) clips
   the off-screen excess via its own `overflow: hidden`. */
.wsk-rh__cards {
	display: grid;
	grid-auto-flow: column;
	/* Mobile peek: 1 full card + ~half of next visible. JS reads the
	   actual rendered width to compute the per-step translate, so
	   this can be % or fixed px — both work. */
	grid-auto-columns: 75%;
	gap: 0.75rem;
	overflow: visible;
	transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
	will-change: transform;
}

/* Each card carries its own glass treatment now that the slider wrapper
   is transparent. Backdrop-filter blurs the page background showing
   through the card. Hover/active states use `color-mix` so they track
   whatever color_card_bg the editor sets — instead of jumping to a
   hardcoded white-tinted glass that ignores the brand color. */
.wsk-rh__card {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.6rem;
	border-radius: 14px;
	background: var(--wsk-rh-card-bg, rgba(255,255,255,0.12));
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1px solid rgba(255,255,255,0.15);
	transition: background 0.4s cubic-bezier(0.25, 0.74, 0.22, 0.99);
	color: var(--wsk-rh-card-text, #fff);
}
.wsk-rh__card:hover {
	background: color-mix(in srgb, var(--wsk-rh-card-bg, rgba(255,255,255,0.12)) 70%, #fff 30%);
}
.wsk-rh__card.is-active {
	background: color-mix(in srgb, var(--wsk-rh-card-bg, rgba(255,255,255,0.12)) 55%, #fff 45%);
}

.wsk-rh__card-thumb {
	flex: 0 0 auto;
	/* Responsive thumb: clamps between 64px (narrow phones) and 96px
	   (wide desktop) so it doesn't crowd the meta column on small
	   screens or look undersized at large slider widths. */
	width: clamp(64px, 14vw, 96px);
	aspect-ratio: 1;
	border-radius: 10px;
	overflow: hidden;
	background: linear-gradient(135deg, rgba(255,255,255,0.1), rgba(255,255,255,0.02));
}
.wsk-rh__card-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.wsk-rh__card-meta {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 0.25rem;
	min-width: 0;
}
.wsk-rh__card-title {
	margin: 0;
	font-family: var(--wsk-rh-card_title-font-family, inherit);
	font-size: var(--wsk-rh-card_title-font-size, 0.95rem);
	font-weight: var(--wsk-rh-card_title-font-weight, 500);
	font-style: var(--wsk-rh-card_title-font-style, normal);
	line-height: var(--wsk-rh-card_title-line-height, 1.3);
	letter-spacing: var(--wsk-rh-card_title-letter-spacing, 0);
	text-transform: var(--wsk-rh-card_title-text-transform, none);
	color: var(--wsk-rh-card-text, #fff);
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.wsk-rh__card-subtitle {
	margin: 0;
	font-family: var(--wsk-rh-card_sub-font-family, inherit);
	font-size: var(--wsk-rh-card_sub-font-size, 0.78rem);
	font-weight: var(--wsk-rh-card_sub-font-weight, 400);
	font-style: var(--wsk-rh-card_sub-font-style, normal);
	line-height: var(--wsk-rh-card_sub-line-height, 1.4);
	letter-spacing: var(--wsk-rh-card_sub-letter-spacing, 0);
	text-transform: var(--wsk-rh-card_sub-text-transform, none);
	color: var(--wsk-rh-card-subtitle, rgba(255,255,255,0.65));
}

/* Tablet (720-1023px) inherits the mobile peek pattern (75% card width
   from base rule). Desktop block below overrides with fixed 320px cards
   and a position:absolute slider. */

/* ══════════════════════════════════════════════════════════════════════
 * Desktop (≥1024px) — copy fills the section, slider floats bottom-right
 * with one card peeking off-screen via overflow on the cards track.
 * ══════════════════════════════════════════════════════════════════════ */
@media (min-width: 1024px) {
	.wsk-rh__inner {
		grid-template-columns: 1fr;
		grid-template-rows: 1fr;
		align-items: center;
	}
	.wsk-rh__copy {
		max-width: 56%; /* leave room visually for the bottom-right slider */
		align-self: center;
	}
	.wsk-rh__slider {
		position: absolute;
		/* Slider extends past viewport's right edge — section's
		   `overflow: hidden` clips. This matches the ref's pattern
		   where the "next" card runs cleanly off the screen edge,
		   not into an artificial right-padding gap. Right offset is
		   negative by ~half a card so card 1 always peeks. */
		right: -150px;
		bottom: clamp(2rem, 4vw, 4rem);
		/* Wide enough that 1 active card + half-peek + slight extra
		   peek fit inside before clipping. */
		width: 600px;
		max-width: none;
		margin-right: 0;
		overflow: hidden;
		z-index: 2;
	}
	.wsk-rh__cards {
		/* Cards 320px each. With slider=600px visible (450 inside section
		   after -150 negative-right + section overflow:hidden clips it),
		   card 0 fills most of the inside-section area, card 1 sits at
		   ~330px and runs cleanly past the viewport's right edge. */
		grid-auto-columns: 320px;
	}
	.wsk-rh__progress {
		/* Progress numerals must stay inside the visible section area
		   even though the slider extends past viewport's right edge.
		   Right padding compensates for the slider's negative right
		   offset so the trailing total ("09") never clips at viewport. */
		padding-right: clamp(140px, 16vw, 220px);
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Focus
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-rh a:focus-visible,
.wsk-rh button:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
	border-radius: 6px;
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-rh *,
	.wsk-rh *::before,
	.wsk-rh *::after {
		animation: none !important;
		transition: none !important;
	}
	.wsk-rh__title-word-inner,
	.wsk-rh__title-char-inner {
		transform: translateY(0) !important;
	}
	.wsk-rh__title--fade {
		opacity: 1 !important;
		transform: none !important;
	}
	.wsk-rh__cards { scroll-behavior: auto; }
}
/**
 * WEPRO: TheFuture Menu — element stylesheet.
 *
 * All visual properties are CSS-var-driven so the editor's color/layout
 * knobs flow through to the rendered output. See PHP file docblock for
 * design provenance.
 *
 * Layout tokens:
 *   --wsk-ms-pad-top              60px         Header top padding
 *   --wsk-ms-pad-bot              35px         Header bottom padding
 *   --wsk-ms-bar-gutter           24px         Horizontal gutter on the bar
 *   --wsk-ms-logo-w               140px        Header logo image width
 *
 * Color tokens (Header bar):
 *   --wsk-ms-header-bg            transparent  Header background
 *   --wsk-ms-burger-bg            #000         Menu icon — circle (closed)
 *   --wsk-ms-burger-lines         #fff         Menu icon — lines (closed)
 *   --wsk-ms-burger-open-bg       #fff         Menu icon — circle (open)
 *   --wsk-ms-burger-open-lines    #000         Menu icon — lines (open)
 *   --wsk-ms-cta-bg               #000         Button background
 *   --wsk-ms-cta-text             #fff         Button text
 *   --wsk-ms-cta-hover-bg         #fff         Button hover background
 *   --wsk-ms-cta-hover-text       #000         Button hover text
 *
 * Color tokens (Open menu panel):
 *   --wsk-ms-modal-overlay        rgba(0,0,0,.2)  Page overlay behind panel
 *   --wsk-ms-modal-bg             #000         Panel background
 *   --wsk-ms-modal-text           #fff         Panel default text
 *
 * Color tokens (Menu items):
 *   --wsk-ms-menu-item-bg         #fff         Menu item background
 *   --wsk-ms-menu-item-text       #000         Menu item text
 *   --menu-feature-colour         (none)       Per-item hover color (inline on <li>)
 *
 * Typography vars (--wsk-ms-{prefix}-*) are emitted by wsk_text_css_vars()
 * and consumed via the locked-rule inline-style pattern (see PHP). When set
 * by the editor in the Typography tab they take precedence over the Colors
 * tab knobs.
 */

/* ══════════════════════════════════════════════════════════════════════
 * Shell
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-ms {
	position: relative;
	width: 100%;
	color: inherit;
}

.wsk-ms.is-sticky .wsk-ms__header {
	position: sticky;
	top: 0;
	z-index: 50;
}

/* ══════════════════════════════════════════════════════════════════════
 * Header bar
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-ms__header {
	background: var( --wsk-ms-header-bg, transparent );
	padding-top: var( --wsk-ms-pad-top, 20px );
	padding-bottom: var( --wsk-ms-pad-bot, 20px );
	transition: background-color 0.3s ease;
}
/* CSS fallbacks above match the PHP defaults (20/20). The fallbacks
   take effect when wsk_override_vars() skips emitting the var because
   editor's value matches the default — at which point the CSS fallback
   wins. Keep PHP default + CSS fallback in sync to avoid the "header
   shows 60/35 when editor leaves untouched" bug from earlier. */

/* Container respects whatever Avada column/section width is set by the
   editor — no inner max-width or padding constraints. Full-width-ready. */
.wsk-ms__container {
	width: 100%;
	max-width: none;
	margin-inline: auto;
	padding: 0;
}

.wsk-ms__bar {
	display: grid;
	grid-template-columns: auto 1fr auto;
	/* Top-align all three columns (burger / logo block / CTA) so they
	   start on the same horizontal line — matches the ref's float-based
	   layout where each column sits at the top of its grid cell. The
	   logo block can be multi-line (heading + strapline) without
	   pushing the burger and CTA into the middle of the row. */
	align-items: start;
	column-gap: 1rem;
	/* Horizontal gutter on the bar — matches ref site's flat 24px gutter.
	   Editor can override via the `--wsk-ms-bar-gutter` token / Layout
	   tab. Section bg stays full-width because gutter is on the bar, not
	   the outer container. */
	padding-inline: var( --wsk-ms-bar-gutter, 24px );
}

/* ── Burger ─────────────────────────────────────────────────────────── */
.wsk-ms__burger {
	all: unset;
	box-sizing: border-box;
	cursor: pointer;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var( --wsk-ms-burger-bg, #000 );
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 3px;
	z-index: 10;
	position: relative;
	transition: background-color 0.25s ease-in-out;
	-webkit-tap-highlight-color: transparent;
}

.wsk-ms__burger:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.wsk-ms__burger-line {
	display: block;
	background: var( --wsk-ms-burger-lines, #fff );
	height: 1px;
	width: 18px;
	transition: transform 0.25s ease-in-out, background-color 0.25s ease-in-out;
}

/* The burger doesn't change position when modal opens — close lives
   inside the modal panel as a dedicated `.wsk-ms__close` button (see
   below). Burger keeps its visual swap (X-rotate) but no position-
   fixed lift, which fails inside transformed Avada columns. */
.wsk-ms__burger.is-open {
	background: var( --wsk-ms-burger-open-bg, #fff );
}

.wsk-ms__burger.is-open .wsk-ms__burger-line {
	background: var( --wsk-ms-burger-open-lines, #000 );
}

.wsk-ms__burger.is-open .wsk-ms__burger-line:first-child {
	transform: translateY(2px) rotate(45deg);
}

.wsk-ms__burger.is-open .wsk-ms__burger-line:nth-child(2) {
	transform: translateY(-2px) rotate(-45deg);
}

/* ── Close button (lives inside the modal panel) ─────────────────────── */
.wsk-ms__close {
	all: unset;
	box-sizing: border-box;
	cursor: pointer;
	position: absolute;
	top: 20px;
	left: 20px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: var( --wsk-ms-burger-open-bg, #fff );
	display: inline-flex;
	align-items: center;
	justify-content: center;
	z-index: 5;
	transition: transform 0.25s ease-in-out;
	-webkit-tap-highlight-color: transparent;
}
.wsk-ms__close:hover {
	transform: scale(1.05);
}
.wsk-ms__close:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}
.wsk-ms__close-line {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 18px;
	height: 1px;
	background: var( --wsk-ms-burger-open-lines, #000 );
}
.wsk-ms__close-line--1 {
	transform: translate(-50%, -50%) rotate(45deg);
}
.wsk-ms__close-line--2 {
	transform: translate(-50%, -50%) rotate(-45deg);
}

/* ── Logo lockup (header) ────────────────────────────────────────────── */
.wsk-ms__logo {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	text-decoration: none;
	color: inherit;
	gap: 5px;
	min-width: 0;
	justify-self: center;
}

.wsk-ms__logo:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

.wsk-ms__logo-img {
	display: block;
	width: var( --wsk-ms-logo-w, 140px );
	max-width: 100%;
	height: auto;
	margin-bottom: 5px;
}

.wsk-ms__logo-text {
	display: block;
}

.wsk-ms__heading {
	display: block;
	margin: 0 0 5px;
	font-family: serif;
}

.wsk-ms__strapline {
	display: block;
	margin: 0;
}

/* ── CTA ─────────────────────────────────────────────────────────────── */
.wsk-ms__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	/* Thin ref-site pill — slim vertical padding, modest horizontal,
	   smaller font weight than a full button. Editor can re-bulk via
	   typography params if a thicker look is desired. */
	padding: 6px 16px;
	font-size: 0.875rem;
	border-radius: 999px;
	background: var( --wsk-ms-cta-bg, #000 );
	color: var( --wsk-ms-cta-text, #fff );
	border: 1px solid var( --wsk-ms-cta-bg, #000 );
	text-decoration: none;
	transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
	white-space: nowrap;
	justify-self: end;
}

.wsk-ms__cta:hover,
.wsk-ms__cta:focus-visible {
	background: var( --wsk-ms-cta-hover-bg, #fff );
	color: var( --wsk-ms-cta-hover-text, #000 );
}

.wsk-ms__cta:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.wsk-ms__cta-label {
	display: inline-block;
}

/* Theme-override guards — Avada forces .fusion-row a colors. */
.wsk-ms .wsk-ms__cta,
.fusion-row .wsk-ms .wsk-ms__cta,
.fusion-row .wsk-ms .wsk-ms__cta:link,
.fusion-row .wsk-ms .wsk-ms__cta:visited {
	color: var( --wsk-ms-cta-text, #fff ) !important;
	text-decoration: none !important;
}

.wsk-ms .wsk-ms__cta:hover,
.fusion-row .wsk-ms .wsk-ms__cta:hover {
	color: var( --wsk-ms-cta-hover-text, #000 ) !important;
}

.wsk-ms .wsk-ms__logo,
.fusion-row .wsk-ms .wsk-ms__logo,
.fusion-row .wsk-ms .wsk-ms__logo:link,
.fusion-row .wsk-ms .wsk-ms__logo:visited {
	color: inherit !important;
	text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════════════════════
 * Modal overlay
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-ms__modal {
	position: fixed;
	inset: 0;
	width: 100vw;
	height: 100svh;
	background: var( --wsk-ms-modal-overlay, rgba( 0, 0, 0, 0.2 ) );
	z-index: 9999;
	overflow: auto;
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	-webkit-overflow-scrolling: touch;
}

.wsk-ms__modal.is-open {
	visibility: visible;
	opacity: 1;
	pointer-events: auto;
}

.wsk-ms__modal-scroller {
	position: absolute;
	left: 50%;
	/* Anchor to the burger row: header's pad-top + the burger's offset.
	   Falls back to 20px when the var isn't set. The pad-top var is
	   emitted on the .wsk-ms section root by render_parent(). */
	top: var( --wsk-ms-pad-top, 20px );
	transform: translateX( calc( max( -50vw, -960px ) + 10px ) );
	width: min( 630px, 100vw );
	padding: 0 0 60px;
}

@media ( min-width: 1280px ) {
	.wsk-ms__modal-scroller {
		width: min( 800px, 100vw );
	}
}

/* Optional slide-in panel motion: open state is anchored left at the
   negative-X transform above; closed state slides fully off-screen left.
   Fade-in on `.wsk-ms` opacity remains the reduced-motion fallback. */
@media ( prefers-reduced-motion: no-preference ) {
	.wsk-ms__modal-scroller {
		transition: transform 0.45s cubic-bezier( 0.22, 1, 0.36, 1 );
	}
	.wsk-ms__modal:not( .is-open ) .wsk-ms__modal-scroller {
		transform: translateX( -100% );
	}
}

.wsk-ms__modal-wrap {
	position: relative;  /* Anchor for the absolute-positioned close button. */
	background: var( --wsk-ms-modal-bg, #000 );
	color: var( --wsk-ms-modal-text, #fff );
	border-radius: 15px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.wsk-ms__modal-header {
	/* Generous bottom padding gives the logo lockup room to breathe
	   before the menu / bio columns below. */
	padding: 20px 40px 32px;
	text-align: center;
}

.wsk-ms__logo--modal {
	display: block;
	color: var( --wsk-ms-modal-text, #fff );
}

.wsk-ms__modal-body {
	display: flex;
	flex-direction: column;
	gap: 20px;
	/* Top padding reduced: tightens the menu column to the modal header. */
	padding: 12px 24px 24px;
}

/* Two-column layout (desktop). */
.wsk-ms--two-col .wsk-ms__modal-body {
	gap: 20px;
	padding: 12px 24px 24px;
}

@media ( min-width: 900px ) {
	.wsk-ms--two-col .wsk-ms__modal-body {
		flex-direction: row;
		gap: 45px;
		padding: 24px 50px 50px;
	}
}

/* ── Modal navigation ────────────────────────────────────────────────── */
.wsk-ms__nav {
	width: 100%;
	color: var( --wsk-ms-modal-text, #fff );
}

@media ( min-width: 900px ) {
	.wsk-ms--two-col .wsk-ms__nav {
		width: 265px;
		flex: 0 0 265px;
	}
	.wsk-ms--single-col .wsk-ms__nav {
		max-width: 360px;
		margin-inline: auto;
	}
}

.wsk-ms__menu-label {
	margin: 0 0 10px;
	color: var( --wsk-ms-modal-text, #fff );
	opacity: 0.85;
}

.wsk-ms__menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.wsk-ms__menu-item {
	margin: 0;
}

/* Menu items — white pill default. Selector drops the `.wsk-ms` ancestor
   so the rule still matches when JS portals the modal to <body> (Avada
   column transform escape). All visual properties go through CSS vars
   so the editor's Colors / Typography tab overrides apply. Hover swaps
   bg to per-item `--menu-feature-colour` (set inline on the <li>). */
.wsk-ms__menu-item a,
.fusion-row .wsk-ms__menu-item a,
.fusion-row .wsk-ms__menu-item a:link,
.fusion-row .wsk-ms__menu-item a:visited {
	display: block;
	background-color: var( --wsk-ms-menu-item-bg, #ffffff ) !important;
	color: var( --wsk-ms-menu-color, var( --wsk-ms-menu-item-text, #000000 ) ) !important;
	font-family: var( --wsk-ms-menu-font-family, Georgia, "Times New Roman", Times, serif );
	font-size: var( --wsk-ms-menu-font-size, 0.875rem );
	font-weight: var( --wsk-ms-menu-font-weight, 400 );
	letter-spacing: var( --wsk-ms-menu-letter-spacing, 0 );
	text-transform: var( --wsk-ms-menu-text-transform, none );
	line-height: var( --wsk-ms-menu-line-height, 1em );
	padding: 12px 20px;
	border-radius: 10px;
	text-decoration: none !important;
	transition: background 0.25s;
}

/* Hover rule must match the same `.fusion-row` ancestor specificity as
   the base rule above — otherwise a 4-class-selector base rule with
   `!important` outranks a 1-class-selector hover rule and the palette
   color never paints. The previous version included `a:hover` in the
   base selector list, which made the base rule apply even on hover. */
.wsk-ms__menu-item a:hover,
.wsk-ms__menu-item a:focus-visible,
.fusion-row .wsk-ms__menu-item a:hover,
.fusion-row .wsk-ms__menu-item a:focus-visible {
	background-color: var( --menu-feature-colour, var( --wsk-ms-menu-item-bg, #ffffff ) ) !important;
}

@media screen and ( min-width: 1600px ) {
	.wsk-ms__menu-item a,
	.fusion-row .wsk-ms__menu-item a {
		font-size: 1.25rem;
	}
}

.wsk-ms__menu-item a:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

/* Theme-override guard — Avada forces `.fusion-row a` colors. Scope this
   guard to bio links + menu-label only (NOT menu items, which have their
   own tighter rule above). The `:not()` excludes the menu-item subtree
   so we don't fight the menu-item color rule + `!important` chain. */
.wsk-ms__modal a:not(.wsk-ms__menu-item a),
.fusion-row .wsk-ms__bio a,
.fusion-row .wsk-ms__bio a:link,
.fusion-row .wsk-ms__bio a:visited {
	color: var( --wsk-ms-modal-text, #fff ) !important;
	text-decoration: none !important;
}

/* ── Bio column ──────────────────────────────────────────────────────── */
.wsk-ms__bio {
	flex: 1;
	min-width: 0;
	color: var( --wsk-ms-modal-text, #fff );
}

.wsk-ms__bio-label {
	margin: 0 0 10px;
}

.wsk-ms__bio-text {
	display: block;
	margin: 0 0 12px;
}

.wsk-ms__bio-link {
	margin: 14px 0 0;
}

.wsk-ms__bio-link a {
	font-weight: 600;
	border-bottom: 1px solid currentColor;
}

/* ══════════════════════════════════════════════════════════════════════
 * Mobile (<720px)
 * ══════════════════════════════════════════════════════════════════════ */
@media ( max-width: 719px ) {
	/* Mobile compresses the header padding to a flat 16px top/bottom
	   regardless of the editor's desktop-tuned padding values. */
	.wsk-ms__header {
		padding-top: 16px;
		padding-bottom: 16px;
	}

	.wsk-ms__bar {
		grid-template-columns: auto 1fr auto;
		column-gap: 12px;
		/* Vertical center on mobile — burger + logo + CTA all line up
		   on the heading midline. */
		align-items: center;
	}

	/* Logo block centered between burger and CTA on mobile. */
	.wsk-ms__logo {
		justify-self: center;
		text-align: center;
	}
	.wsk-ms__logo-text {
		text-align: center;
	}

	/* Smaller burger on mobile — proportional to the shrunk heading. */
	.wsk-ms__burger {
		width: 36px;
		height: 36px;
	}

	/* Heading uses the auto-fluid clamp on desktop; on mobile the
	   inline style's clamp() lower bound (≈60% of desktop) already
	   shrinks it. We additionally tighten line-height so the heading
	   block doesn't push the bar height. */
	.wsk-ms__heading {
		line-height: 1 !important;
		margin: 0 !important;
	}

	/* Strapline hidden on small phones — too cramped next to burger
	   and CTA. Comes back at >=480px below where there's room. */
	.wsk-ms__strapline {
		display: none;
	}

	/* CTA pill compresses padding/font on mobile so it fits without
	   wrapping the label. */
	.wsk-ms__cta {
		padding: 6px 12px;
		font-size: 12px;
	}

	/* CTA hidden on mobile by default; shown only when admin enables it. */
	.wsk-ms--cta-desktop-only .wsk-ms__cta {
		display: none;
	}
}

/* Bring back strapline at >=480px (small tablets / large phones). */
@media ( min-width: 480px ) and ( max-width: 719px ) {
	.wsk-ms__strapline {
		display: block;
		margin-top: 2px;
	}
}

/* ── Mobile modal: full-bleed (no rounded card). The block below was
   accidentally orphaned from its `@media (max-width: 719px)` parent
   during a prior edit, which leaked the full-bleed rules to desktop —
   wrapping it back in the breakpoint here fixes the desktop modal
   opening at 100% width instead of the centered 630px / 800px card. */
@media ( max-width: 719px ) {
	.wsk-ms__modal-scroller {
		top: 0;
		transform: translateX( max( -50vw, -960px ) );
		width: 100%;
		padding: 0 0 40px;
		min-height: 100%;
	}
	.wsk-ms__modal-wrap {
		border-radius: 0;
		min-height: 100svh;
		width: 100%;
	}
	.wsk-ms__modal-header {
		padding: 64px 24px 0;
	}
	.wsk-ms__modal-body {
		padding: 24px;
	}

	/* ── Contact footer — visible on mobile only (matches ref site
	   .navigation-modal footer { display: block } < 720px) ─────────── */
	.wsk-ms__contact {
		display: flex;
		flex-direction: column;
		gap: 14px;
		border-top: 1px solid currentColor;
		margin: 8px 24px 0;
		padding: 20px 0 24px;
		color: var( --wsk-ms-modal-text, #ffffff );
	}

	/* Socials — icon row, evenly spread. */
	.wsk-ms__socials {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 12px;
		list-style: none;
		margin: 0;
		padding: 0 8px;
	}
	.wsk-ms__socials-item {
		flex: 1 1 0;
		display: flex;
		justify-content: center;
	}
	.wsk-ms__socials-item a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 36px;
		min-height: 36px;
		padding: 6px;
		color: inherit;
		text-decoration: none;
		transition: opacity 0.2s;
	}
	.wsk-ms__socials-item a:hover,
	.wsk-ms__socials-item a:focus-visible {
		opacity: 0.7;
	}
	.wsk-ms__socials-item svg {
		width: 22px;
		height: 22px;
		display: block;
		fill: currentColor;
	}
	.wsk-ms__socials-label {
		font-size: 11px;
		letter-spacing: 0.05em;
		text-transform: uppercase;
	}

	/* Lozenge — light grey pill, white inner pills. Inline (no wrap).
	   Overflow scrolls horizontally on tiny screens rather than wrapping. */
	.wsk-ms__lozenge,
	.fusion-row .wsk-ms__lozenge,
	.wsk-ms .wsk-ms__lozenge {
		display: inline-flex;
		align-items: center;
		flex-wrap: nowrap;
		gap: 8px;
		background-color: #e2e3e3 !important;
		color: #707372 !important;
		border-radius: 30px;
		padding: 8px 12px;
		font-size: 11px !important;
		white-space: nowrap;
		max-width: 100%;
		overflow-x: auto;
		scrollbar-width: none;
		text-decoration: none;
		align-self: flex-start;
	}
	.wsk-ms__lozenge::-webkit-scrollbar {
		display: none;
	}
	.wsk-ms__lozenge-label {
		padding: 0 4px;
		flex: 0 0 auto;
		/* Hidden on smallest screens to match ref `.visible-md.visible-lg`
		   pattern — keeps the pill compact when inline. */
		display: none;
	}
	/* Locked-rule cascade beat — the parent lozenge carries the
	   biotext typography style which sets `color: ... !important`,
	   so inner pills must win with `!important` of their own. */
	.wsk-ms__lozenge .wsk-ms__lozenge-item,
	.fusion-row .wsk-ms__lozenge .wsk-ms__lozenge-item,
	.wsk-ms .wsk-ms__lozenge .wsk-ms__lozenge-item {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		background-color: #ffffff !important;
		color: #000000 !important;
		border-radius: 30px;
		padding: 5px 11px;
		text-decoration: none;
		flex: 0 0 auto;
	}
	.wsk-ms__lozenge .wsk-ms__lozenge-item:hover,
	.wsk-ms__lozenge .wsk-ms__lozenge-item:focus-visible {
		color: #000000 !important;
		text-decoration: none;
	}
	.wsk-ms__lozenge--solo .wsk-ms__lozenge-arrow {
		color: #000000 !important;
	}

	/* Solo lozenge variant — newsletter button (single pill + arrow). */
	.wsk-ms__lozenge--solo {
		display: inline-flex;
		justify-content: space-between;
		gap: 12px;
		padding: 10px 16px;
		min-width: 60%;
	}
	.wsk-ms__lozenge--solo .wsk-ms__lozenge-label {
		display: inline-block;
		color: #707372;
	}
	.wsk-ms__lozenge-arrow {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 28px;
		height: 28px;
		border-radius: 50%;
		background-color: #ffffff;
		color: #000000;
		flex: 0 0 auto;
	}
	.wsk-ms__lozenge-arrow svg {
		display: block;
	}

	/* Disclaimer — copyright + linked legal pages, centered, small. */
	.wsk-ms__disclaimer {
		margin: 6px 0 0;
		padding: 0 4px;
		font-size: 11px;
		line-height: 1.5;
		text-align: center;
		color: inherit;
	}
	.wsk-ms__disclaimer a {
		color: inherit;
		text-decoration: underline;
	}
	.wsk-ms__disclaimer a:hover,
	.wsk-ms__disclaimer a:focus-visible {
		text-decoration: none;
	}

	/* Slightly larger viewports inside mobile range — show the lozenge
	   captions ("Find us", "Newsletter") again once there's room. */
	@media ( min-width: 480px ) {
		.wsk-ms__lozenge-label {
			display: inline-block;
		}
	}
}

/* Hide the contact section on tablet/desktop — ref site only shows it
   inside the modal on mobile. ≥720px the modal is centered and the bio
   column carries the contact info via the existing manual fields. */
@media ( min-width: 720px ) {
	.wsk-ms__contact {
		display: none;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion
 * ══════════════════════════════════════════════════════════════════════ */
@media ( prefers-reduced-motion: reduce ) {
	.wsk-ms *,
	.wsk-ms *::before,
	.wsk-ms *::after {
		animation: none !important;
		transition: none !important;
	}
}

/* ────────────────────────────────────────────────────────────────────
   REDUCED MOTION (QW-1, P0)
   The .wsk-ms *::after kill above is unconditional. This wraps the
   wider element in an explicit reduced-motion guard so screen readers
   and assistive tech can detect the preference being honored.
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-ms,
	.wsk-ms * {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
		transition-delay: 0ms !important;
		scroll-behavior: auto !important;
	}
}
/**
 * WEPRO: TheFuture Slide — element stylesheet.
 *
 * Visual values (card aspect, gap, hover scale, scrollbar hide, mobile stack)
 * lifted from the saved reference markup. No brand-specific copy in either
 * defaults or fallbacks.
 *
 * Public CSS custom properties (every var has a fallback so the element
 * renders correctly with no inline overrides):
 *   --wsk-tfs-section-bg     transparent     section-level background
 *   --wsk-tfs-card-bg        #e2e3e3         card background (pre-hover)
 *   --wsk-tfs-card-radius    10px            card corner radius
 *   --wsk-tfs-card-gap       30px            gap between cards (small)
 *   --wsk-tfs-card-gap-lg    40px            gap between cards (>=1600px)
 *   --wsk-tfs-card-aspect    334/438         card aspect-ratio
 *   --wsk-tfs-card-w         253px           card width (small/medium)
 *   --wsk-tfs-card-w-lg      380px           card width (>=1600px)
 *   --wsk-tfs-sub-bg         #ffffff         subheading pill bg
 *   --wsk-tfs-sub-color      #000000         subheading pill text
 *   --wsk-tfs-heading-color  inherit         heading text colour
 *   --wsk-tfs-nav-focus      #000000         focus-visible outline colour
 */

/* ══════════════════════════════════════════════════════════════════════
 * Section shell.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-tfs {
	margin: auto;
	max-width: 1920px;
	width: 100%;
	background: var(--wsk-tfs-section-bg, transparent);
	position: relative;
	isolation: isolate;
}

/* ══════════════════════════════════════════════════════════════════════
 * Track — native horizontal scroll, hidden scrollbar.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-tfs__chapters {
	overflow-x: auto;
	padding: 24px;
	scrollbar-width: none;
}
.wsk-tfs__chapters::-webkit-scrollbar {
	display: none;
}

.wsk-tfs__scroller {
	display: flex;
	gap: var(--wsk-tfs-card-gap, 30px);
	position: relative;
	width: max-content;
}
/* Phantom right-edge spacer — horizontal scroll containers ignore the
   parent's padding-right when children are wider than the viewport
   (children clip at content-edge, not padding-edge). The ::after fills
   the role of "padding-right" so the last card breathes against the
   right side of the track once scrolled, matching the ref site's
   symmetric 24px gutters. */
.wsk-tfs__scroller::after {
	content: '';
	flex: 0 0 24px;
}
.wsk-tfs__scroller.is-dragging .wsk-tfs__chapter {
	pointer-events: none;
}

/* ══════════════════════════════════════════════════════════════════════
 * Cards.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-tfs__chapter {
	aspect-ratio: var(--wsk-tfs-card-aspect, 334/438);
	background-color: var(--wsk-tfs-card-bg, #e2e3e3);
	border-radius: var(--wsk-tfs-card-radius, 10px);
	display: flex;
	flex-direction: column;
	padding: 24px 20px;
	text-align: center;
	transition: background 0.25s, transform 0.25s;
	user-select: none;
	width: var(--wsk-tfs-card-w, 253px);
	text-decoration: none;
	color: inherit;
}
/* Hover background uses !important to beat any global Avada link/card
   hover rules compiled into fusion-styles. Specificity is also raised
   via .fusion-row / .wsk-tfs ancestor selectors per cascade-beat
   pattern (skill check #28b). */
.wsk-tfs__chapter:hover,
.fusion-row .wsk-tfs__chapter:hover,
.wsk-tfs .wsk-tfs__chapter:hover {
	background-color: var(--chapter-feature-colour, var(--wsk-tfs-card-bg, #e2e3e3)) !important;
	text-decoration: none;
	transform: scale(1.1);
}
.wsk-tfs__chapter:focus-visible {
	outline: 2px solid var(--wsk-tfs-nav-focus, #000);
	outline-offset: 4px;
}

.wsk-tfs__chapter-heading {
	font-family: var(--wsk-tfs-heading-font-family, inherit);
	font-size: var(--wsk-tfs-heading-font-size, 0.75rem);
	font-weight: var(--wsk-tfs-heading-font-weight, 600);
	margin: 0 0 15px;
	pointer-events: none;
	text-align: center;
	text-transform: var(--wsk-tfs-heading-text-transform, uppercase);
	color: var(--wsk-tfs-heading-color, inherit);
	letter-spacing: var(--wsk-tfs-heading-letter-spacing, 0);
	line-height: var(--wsk-tfs-heading-line-height, 1.4);
}

/* Media slot — single aspect ratio for every source (image / video / YT).
   The slot owns the aspect-ratio. Each direct child clips itself with its
   own border-radius + overflow:hidden, so the subheading pill (which
   absolutely-positions over the slot's bottom edge) is NOT clipped. */
.wsk-tfs__chapter-video {
	flex: 1;
	font-size: 0;
	margin-bottom: 24px;
	pointer-events: none;
	position: relative;
	aspect-ratio: 1/.88;
	width: 100%;
}
.wsk-tfs__chapter-video > video,
.wsk-tfs__chapter-video > img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
	background-color: #000;
	border-radius: var(--wsk-tfs-card-radius, 10px);
	overflow: hidden;
}

/* YouTube embed — cover-fit inside the card slot (16:9 source forced
   to fill the slot via 177.78% over-sizing trick). */
.wsk-tfs__chapter-yt-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
	background-color: #000;
	border-radius: var(--wsk-tfs-card-radius, 10px);
}
.wsk-tfs__chapter-yt-wrap iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 177.78%;
	height: 177.78%;
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}
/* YT thumb — covers the slot at-rest, hidden once playback starts. */
.wsk-tfs__chapter-yt-thumb {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: var(--wsk-tfs-card-radius, 10px);
	display: block;
	z-index: 1;
	transition: opacity 0.2s;
}
.wsk-tfs__chapter-yt-wrap.is-playing .wsk-tfs__chapter-yt-thumb {
	opacity: 0;
	pointer-events: none;
}

.wsk-tfs__chapter-subheading {
	background-color: var(--wsk-tfs-sub-bg, #fff);
	border-radius: 12px;
	bottom: 0;
	display: inline-block;
	font-family: var(--wsk-tfs-sub-font-family, inherit);
	font-size: var(--wsk-tfs-sub-font-size, 0.875rem);
	font-weight: var(--wsk-tfs-sub-font-weight, 500);
	letter-spacing: var(--wsk-tfs-sub-letter-spacing, 0);
	line-height: var(--wsk-tfs-sub-line-height, 1.3);
	text-transform: var(--wsk-tfs-sub-text-transform, uppercase);
	color: var(--wsk-tfs-sub-color, #000);
	left: 50%;
	padding: 6px 8px;
	pointer-events: none;
	position: absolute;
	text-align: center;
	transform: translate(-50%, 50%);
	/* Was: white-space: nowrap → long German compound words overflowed.
	   Allow wrapping, bound the pill so it stays inside the card width,
	   and let long words break cleanly at any character. text-wrap:balance
	   distributes line lengths evenly for a tidy multi-line pill. */
	white-space: normal;
	max-width: calc(100% - 24px);
	overflow-wrap: anywhere;
	hyphens: auto;
	text-wrap: balance;
	z-index: 2;
}

/* ══════════════════════════════════════════════════════════════════════
 * Nav buttons.
 * ══════════════════════════════════════════════════════════════════════ */
.wsk-tfs__nav {
	display: flex;
	justify-content: space-between;
	padding: 20px 24px 0;
}
.wsk-tfs__nav button {
	background: transparent;
	border: 0;
	cursor: pointer;
	padding: 0;
	opacity: 0.5;
	pointer-events: none;
	transition: opacity 0.25s;
	color: inherit;
}
.wsk-tfs__nav button.is-active {
	opacity: 1;
	pointer-events: all;
}
.wsk-tfs__nav-prev img,
.wsk-tfs__nav-prev svg {
	transform: rotate(180deg);
}
.wsk-tfs__nav-prev:focus-visible,
.wsk-tfs__nav-next:focus-visible {
	outline: 2px solid var(--wsk-tfs-nav-focus, #000);
	outline-offset: 4px;
}

/* ══════════════════════════════════════════════════════════════════════
 * Mobile (<=480px) — stack vertically, hide nav.
 * ══════════════════════════════════════════════════════════════════════ */
@media screen and (max-width: 480px) {
	.wsk-tfs__scroller {
		flex-direction: column;
		width: 100%;
	}
	.wsk-tfs__scroller .wsk-tfs__chapter {
		width: 100%;
	}
	.wsk-tfs__nav {
		display: none;
	}
	.wsk-tfs__chapter-subheading {
		font-size: var(--wsk-tfs-sub-font-size, 1.125rem);
		padding: 6px 11px;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Large screens (>=1600px) — bigger cards + gap.
 * ══════════════════════════════════════════════════════════════════════ */
@media screen and (min-width: 1600px) {
	.wsk-tfs__scroller {
		gap: var(--wsk-tfs-card-gap-lg, 40px);
	}
	.wsk-tfs__chapter {
		width: var(--wsk-tfs-card-w-lg, 380px);
	}
	.wsk-tfs__chapter-subheading {
		font-size: var(--wsk-tfs-sub-font-size, 1.125rem);
		padding: 8px 15px;
	}
	.wsk-tfs__chapter-video {
		margin-bottom: 40px;
	}
}

/* ══════════════════════════════════════════════════════════════════════
 * Reduced motion.
 * ══════════════════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
	.wsk-tfs__chapter,
	.wsk-tfs__nav button {
		transition: none !important;
	}
	.wsk-tfs__chapter:hover {
		transform: none;
	}
}
/**
 * WEPRO: TheFuture Footer — element stylesheet.
 *
 * Pixel-faithful clone of thefutureofexperience.com footer rules.
 * Every value below is lifted verbatim from the ref site's
 * style.css (.link-lozenge, .link-lozenges, .list--socials, .footer
 * groups). No invented padding, no manufactured breakpoints, no
 * overflow-scroll tricks — if the ref doesn't declare it, we don't
 * either.
 *
 * Public CSS custom properties (color overrides only — never override
 * dimensions or layout, those are locked to ref values):
 *   --wsk-tff-bg                background color (default #f0f0f0)
 *   --wsk-tff-text              foreground text (default #000)
 *   --wsk-tff-divider           top border line (default #000)
 *   --wsk-tff-lozenge-bg        outer pill bg (default #e2e3e3)
 *   --wsk-tff-lozenge-text      outer pill caption (default #707372)
 *   --wsk-tff-lozenge-pill-bg   inner pill bg (default #fff)
 *   --wsk-tff-lozenge-pill-text inner pill text (default #000)
 *   --wsk-tff-socials-icon      social icon color (default #000)
 *   --wsk-tff-colophon          colophon text color (default #707372)
 */

/* ── Footer container — ref `.footer` ────────────────────────────── */
.wsk-tff {
	background-color: var( --wsk-tff-bg, #f0f0f0 );
	color: var( --wsk-tff-text, #000000 );
	border-top: 1px solid var( --wsk-tff-divider, #000000 );
	padding: 24px;
	max-width: 100%;
	overflow: visible;
}
.wsk-tff__container {
	margin: 0 auto;
	max-width: var( --wsk-tff-max-w, 1920px );
	width: 100%;
}

/* ── Main row — three groups (contact LEFT, socials CENTER, downloads
   RIGHT) sharing a single horizontal row on desktop. Stacks centered
   on mobile (ref `.footer .col { text-align:center }`). ─────────── */
.wsk-tff__main {
	display: flex;
	flex-direction: column;
	gap: 20px;
	align-items: center;
	text-align: center;
}
.wsk-tff__col--socials  { order: 1; }
.wsk-tff__col--contact  { order: 2; }
.wsk-tff__col--stack    { order: 3; }

@media ( min-width: 900px ) {
	.wsk-tff__main {
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		flex-wrap: wrap;
		gap: 20px;
	}
	.wsk-tff__col--contact { order: 1; }
	.wsk-tff__col--socials { order: 2; }
	.wsk-tff__col--stack   { order: 3; }
}

/* ── Socials — ref `.list--socials` ───────────────────────────────── */
.wsk-tff__socials {
	display: flex;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 28px;
	color: var( --wsk-tff-socials-icon, #000000 );
}
.wsk-tff__socials-item {
	position: relative;
}
.wsk-tff__socials-item a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: inherit;
	text-decoration: none;
}
.wsk-tff__socials-item svg {
	width: 28px;
	height: 28px;
	display: block;
	fill: currentColor;
}

/* ── Lozenges wrapper — ref `.link-lozenges` ──────────────────────── */
.wsk-tff__lozenges {
	display: flex;
	gap: 10px;
	justify-content: center;
	margin: 10px 0;
}
@media ( min-width: 900px ) {
	.wsk-tff__lozenges {
		justify-content: flex-end;
	}
}

/* ── Single lozenge — smaller pill (ref baseline 8/12 → 6/10). */
.wsk-tff__lozenge,
.fusion-row .wsk-tff__lozenge,
.wsk-tff .wsk-tff__lozenge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background-color: var( --wsk-tff-lozenge-bg, #e2e3e3 ) !important;
	color: var( --wsk-tff-lozenge-text, #707372 ) !important;
	border-radius: 30px;
	padding: 6px 10px;
	font-size: 11px !important;
	white-space: nowrap;
	text-decoration: none;
}
.wsk-tff__lozenge:hover {
	color: var( --wsk-tff-lozenge-text, #707372 );
	text-decoration: none;
}
.wsk-tff__lozenge-label {
	flex: 0 0 auto;
}

/* ── Inner pill — ref `.link-lozenge__item` (verbatim) ────────────── */
.wsk-tff__lozenge .wsk-tff__lozenge-item,
.fusion-row .wsk-tff__lozenge .wsk-tff__lozenge-item,
.wsk-tff .wsk-tff__lozenge .wsk-tff__lozenge-item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background-color: var( --wsk-tff-lozenge-pill-bg, #ffffff ) !important;
	color: var( --wsk-tff-lozenge-pill-text, #000000 ) !important;
	border-radius: 30px;
	padding: 4px 9px;
	text-decoration: none;
}
.wsk-tff__lozenge .wsk-tff__lozenge-item:hover {
	color: var( --wsk-tff-lozenge-pill-text, #000000 ) !important;
	text-decoration: none;
}

/* ── Newsletter arrow — ref uses an inline `<img>` (no rule). We use
   a circular white pill to mirror the visible style. Smallest
   addition needed; keeps the same .link-lozenge__item shape. ──── */
.wsk-tff__lozenge-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background-color: var( --wsk-tff-lozenge-pill-bg, #ffffff );
	color: var( --wsk-tff-lozenge-pill-text, #000000 );
}
.wsk-tff__lozenge-arrow svg {
	width: 16px;
	height: 16px;
	display: block;
}

/* ── WhatsApp QR — body-portaled card (escape Avada column clipping).
   The PHP render emits an empty <div class="wsk-tff__wa-qr" data-wa-url>
   inside the WhatsApp <li> as a marker only. The actual QR card is a
   body-level <div class="wsk-tff-qr-portal"> appended at first hover/tap;
   that bypasses every overflow:hidden / transformed-ancestor trap that
   would otherwise clip an absolute-positioned card inside the column. */
.wsk-tff__socials-item { position: relative; }
.wsk-tff__wa-qr {
	display: none;            /* marker only — rendered card lives in the portal */
}
.wsk-tff-qr-portal {
	position: absolute;       /* JS sets top/left in document coords */
	top: -9999px;
	left: -9999px;
	background-color: #ffffff;
	padding: 8px;
	border-radius: 6px;
	box-shadow: 0 4px 18px rgba( 0, 0, 0, 0.18 );
	opacity: 0;
	pointer-events: none;
	transition: opacity .18s ease, transform .18s ease;
	z-index: 999999;          /* sit above sticky headers / popups */
	transform: translateY( 4px );
}
.wsk-tff-qr-portal.is-open {
	opacity: 1;
	transform: translateY( 0 );
}
.wsk-tff-qr-portal canvas,
.wsk-tff-qr-portal img,
.wsk-tff-qr-portal table {
	display: block;
	margin: 0;
	width:  140px;
	height: 140px;
	border-collapse: collapse;
}
.wsk-tff-qr-portal table td {
	padding: 0;
	border: 0;
}

/* ── Newsletter popup modal — full-viewport overlay + centered card.
   Renders an Avada Form ([fusion_form form_post_id="N"]) inline. The
   modal node sits inside .wsk-tff but is `position: fixed` against the
   viewport, so any Avada column wrapper / overflow:hidden ancestor is
   bypassed by the stacking-context-breaking z-index + fixed positioning.
   Body scroll-lock applied via the .wsk-tff-nl-locked class on <html>. */
.wsk-tff__newsletter-modal[hidden] { display: none !important; }
.wsk-tff__newsletter-modal {
	position: fixed;
	inset: 0;
	z-index: 999998;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.wsk-tff__newsletter-modal__overlay {
	position: absolute;
	inset: 0;
	background-color: rgba( 0, 0, 0, 0.55 );
	opacity: 0;
	transition: opacity .2s ease;
}
.wsk-tff__newsletter-modal__card {
	position: relative;
	background-color: #ffffff;
	color: #111111;
	width: 100%;
	max-width: 460px;
	max-height: calc( 100vh - 40px );
	overflow-y: auto;
	border-radius: 8px;
	padding: 32px 28px 28px;
	box-shadow: 0 24px 60px rgba( 0, 0, 0, 0.32 );
	transform: translateY( 12px );
	opacity: 0;
	transition: opacity .22s ease, transform .22s ease;
}
.wsk-tff__newsletter-modal.is-open .wsk-tff__newsletter-modal__overlay { opacity: 1; }
.wsk-tff__newsletter-modal.is-open .wsk-tff__newsletter-modal__card {
	opacity: 1;
	transform: translateY( 0 );
}
.wsk-tff__newsletter-modal__close {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 32px;
	height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 0;
	color: #111111;
	cursor: pointer;
	border-radius: 50%;
	padding: 0;
	transition: background-color .15s ease;
}
.wsk-tff__newsletter-modal__close:hover,
.wsk-tff__newsletter-modal__close:focus-visible {
	background-color: rgba( 0, 0, 0, 0.06 );
	outline: none;
}
.wsk-tff__newsletter-modal__close:focus-visible {
	outline: 2px solid #111111;
	outline-offset: 2px;
}
/* High-specificity locked rule — Avada theme + Fusion stylesheets emit
   default heading typography (h1–h6) at competing specificity, and even
   when our element renders the title as <p> the editor may swap to a
   heading tag. Locking with `.wsk-tff` ancestor + `!important` keeps the
   modal title at editorial-caption size regardless of cascade depth. */
.wsk-tff .wsk-tff__newsletter-modal .wsk-tff__newsletter-modal__title,
.wsk-tff__newsletter-modal h1.wsk-tff__newsletter-modal__title,
.wsk-tff__newsletter-modal h2.wsk-tff__newsletter-modal__title,
.wsk-tff__newsletter-modal h3.wsk-tff__newsletter-modal__title,
.wsk-tff__newsletter-modal h4.wsk-tff__newsletter-modal__title,
.wsk-tff__newsletter-modal h5.wsk-tff__newsletter-modal__title,
.wsk-tff__newsletter-modal h6.wsk-tff__newsletter-modal__title,
.wsk-tff__newsletter-modal p.wsk-tff__newsletter-modal__title {
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-family: inherit !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	letter-spacing: 0.02em !important;
	line-height: 1.35 !important;
	color: #111111 !important;
	text-transform: none !important;
}
.wsk-tff__newsletter-modal__body {
	color: inherit;
}
/* Avada Form inside the modal — let it use full width without inheriting
   the footer's centered text-align or strange flex constraints. */
.wsk-tff__newsletter-modal__body .fusion-form-builder,
.wsk-tff__newsletter-modal__body .fusion-form-form-wrapper,
.wsk-tff__newsletter-modal__body form {
	text-align: left;
	width: 100%;
}

/* Body scroll-lock when modal is open. */
html.wsk-tff-nl-locked,
body.wsk-tff-nl-locked {
	overflow: hidden;
}

/* Popup-mode visual hint on the trigger button — match the lozenge look,
   but render as a real <button> reset (no UA gradient/border). */
button.wsk-tff__lozenge.wsk-tff__lozenge--popup,
.wsk-tff button.wsk-tff__lozenge.wsk-tff__lozenge--popup {
	border: 0;
	cursor: pointer;
	font: inherit;
	letter-spacing: inherit;
	appearance: none;
	-webkit-appearance: none;
}

/* ── Downloads lozenge — caption + N inner pills (e.g. EN, DE, 中文)
   for multi-language PDFs or any other "one caption, many files"
   surface. Same shape as the standard lozenge but its inner pills wrap
   on narrow viewports. ───────────────────────────────────────────── */
.wsk-tff__downloads {
	flex-wrap: wrap;
	row-gap: 6px;
}

/* ── Colophon — ref `.footer .footer__colophon` ─────────────────────
   Locked-rule cascade-beat pattern (rule #9 + #28b): Avada column
   wrappers can leak `text-align` from neighbouring elements. We force
   centering with selector specificity (`.wsk-tff .wsk-tff__colophon`)
   AND `!important` on the alignment + width so the colophon always
   spans the full column and centers regardless of column placement. */
.wsk-tff .wsk-tff__colophon,
.fusion-row .wsk-tff .wsk-tff__colophon {
	display: block !important;
	width: 100% !important;
	margin-top: 20px;
	text-align: center !important;
	font-size: 12px;
	color: var( --wsk-tff-colophon, #707372 );
}
.wsk-tff .wsk-tff__colophon a {
	color: var( --wsk-tff-text, #000000 );
	text-decoration: underline;
}

/* ── Focus-visible — keyboard navigation outlines on every interactive
   surface. Uses the lozenge-pill text color (or the page text color)
   so the outline always contrasts with whichever bg sits behind. ── */
.wsk-tff__socials-item a:focus-visible,
.wsk-tff__lozenge:focus-visible,
.wsk-tff__lozenge-item:focus-visible,
.wsk-tff__lozenge--solo:focus-visible,
.wsk-tff__colophon a:focus-visible {
	outline: 2px solid var( --wsk-tff-text, #000000 );
	outline-offset: 3px;
	border-radius: 30px;
}
.wsk-tff__socials-item a:focus-visible {
	border-radius: 4px;
}
.wsk-tff__colophon a:focus-visible {
	border-radius: 2px;
}

/* ── Tier-1 luxury effects ──────────────────────────────────────────
 * Quiet hover rewards that reward attention without demanding it.
 * 1. Social icons — magnetic translate (CSS sets the transition; JS
 *    writes `--wsk-tff-mx/--wsk-tff-my` translate vars per-icon).
 * 2. Social icons — staggered fade-in on first viewport entry; JS
 *    adds `.is-in-view` to the .wsk-tff__socials list once.
 * 4. Newsletter arrow — translates 4px right on lozenge hover.
 * 5. Underline-grow on colophon links — animated ::after, 0→100%.
 */

/* #1 magnetic socials — JS sets translate vars on mouseenter/move. */
.wsk-tff__socials-item a {
	transform: translate3d( var( --wsk-tff-mx, 0 ), var( --wsk-tff-my, 0 ), 0 );
	transition: transform 0.35s cubic-bezier( 0.22, 1, 0.36, 1 );
	will-change: transform;
}

/* #2 staggered fade-in — items invisible until parent gets `.is-in-view`. */
.wsk-tff__socials .wsk-tff__socials-item {
	opacity: 0;
	transform: translateY( 6px );
	transition: opacity 0.5s ease, transform 0.5s cubic-bezier( 0.22, 1, 0.36, 1 );
}
.wsk-tff__socials.is-in-view .wsk-tff__socials-item {
	opacity: 1;
	transform: translateY( 0 );
}
.wsk-tff__socials.is-in-view .wsk-tff__socials-item:nth-child(1) { transition-delay: 0ms;   }
.wsk-tff__socials.is-in-view .wsk-tff__socials-item:nth-child(2) { transition-delay: 70ms;  }
.wsk-tff__socials.is-in-view .wsk-tff__socials-item:nth-child(3) { transition-delay: 140ms; }
.wsk-tff__socials.is-in-view .wsk-tff__socials-item:nth-child(4) { transition-delay: 210ms; }
.wsk-tff__socials.is-in-view .wsk-tff__socials-item:nth-child(5) { transition-delay: 280ms; }
.wsk-tff__socials.is-in-view .wsk-tff__socials-item:nth-child(6) { transition-delay: 350ms; }
.wsk-tff__socials.is-in-view .wsk-tff__socials-item:nth-child(7) { transition-delay: 420ms; }
.wsk-tff__socials.is-in-view .wsk-tff__socials-item:nth-child(8) { transition-delay: 490ms; }

/* #4 newsletter arrow travels 4px right on lozenge hover — replaces
   the previous static white pill with directional motion. */
.wsk-tff__lozenge-arrow {
	transition: transform 0.3s cubic-bezier( 0.22, 1, 0.36, 1 );
}
.wsk-tff__lozenge--solo:hover .wsk-tff__lozenge-arrow,
.wsk-tff__lozenge--solo:focus-visible .wsk-tff__lozenge-arrow {
	transform: translateX( 4px );
}

/* #5 underline-grow on colophon links — left-to-right reveal. The
   default browser underline is suppressed and replaced with a
   ::after rule animating from 0 to 100% width. Locked-rule cascade-
   beat with !important on text-decoration so Avada anchor styles
   don't reapply the hard underline. */
.wsk-tff__colophon a,
.wsk-tff .wsk-tff__colophon a {
	position: relative;
	text-decoration: none !important;
	background-image: none !important;
	display: inline-block;
}
.wsk-tff__colophon a::after {
	content: "";
	position: absolute;
	left: 0;
	right: auto;
	bottom: 0;
	width: 100%;
	height: 1px;
	background-color: currentColor;
	transform-origin: left center;
	transform: scaleX( 1 );
	transition: transform 0.4s cubic-bezier( 0.22, 1, 0.36, 1 );
}
.wsk-tff__colophon a:hover::after,
.wsk-tff__colophon a:focus-visible::after {
	transform-origin: right center;
	transform: scaleX( 0 );
}
/* Reverse-direction grow back on mouseleave: the rule above shrinks
   right-to-left on hover; the base rule's transform-origin: left makes
   it grow back left-to-right when hover ends. */

/* ── Reduced motion ──────────────────────────────────────────────── */
@media ( prefers-reduced-motion: reduce ) {
	.wsk-tff *,
	.wsk-tff *::before,
	.wsk-tff *::after,
	.wsk-tff-qr-portal {
		animation: none !important;
		transition: none !important;
	}
	.wsk-tff-qr-portal.is-open {
		transform: none;
	}
	/* Tier-1 effects neutralised — show socials immediately, no
	   magnetic translate, no arrow travel, no underline reveal. */
	.wsk-tff__socials-item a {
		transform: none !important;
	}
	.wsk-tff__socials .wsk-tff__socials-item {
		opacity: 1 !important;
		transform: none !important;
	}
	.wsk-tff__lozenge--solo:hover .wsk-tff__lozenge-arrow,
	.wsk-tff__lozenge--solo:focus-visible .wsk-tff__lozenge-arrow {
		transform: none !important;
	}
	.wsk-tff__colophon a::after {
		transform: scaleX( 1 ) !important;
	}
}

/* ────────────────────────────────────────────────────────────────────
   REDUCED MOTION (QW-1, P0)
   Collapse durations rather than disabling outright — layout stays,
   motion stops, no blank sections.
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-tff,
	.wsk-tff * {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
		transition-delay: 0ms !important;
		scroll-behavior: auto !important;
	}
}
/**
 * WEPRO: TheFuture Hero PTB — element stylesheet.
 *
 * Pixel-faithful clone of thefutureofexperience.com `.section--chapter-heading`
 * (`Timeless Inspiration - Retail Design that Endures.html` L199-230 +
 * `_files/chapter-heading.css` + `_files/style.css` `.chapter-navigation`
 * group). Every value below is lifted verbatim from the ref site. No
 * invented padding, no manufactured breakpoints, no overflow tricks — if
 * the ref doesn't declare it, we don't either.
 *
 * Structure:
 *   .wsk-tfhp                     section root, margin:auto + max-width 1920
 *                                 (ref `.section--chapter-heading`)
 *   .wsk-tfhp__hero               820px-wide colored card with 9px radius,
 *                                 accent color = card background
 *                                 (ref `.section--chapter-heading__hero`)
 *   .wsk-tfhp__bg-video           aspect-locked video inside the card
 *   .wsk-tfhp__title              absolute-positioned title block, centered
 *                                 over the video
 *   .wsk-tfhp__nav                prev/next chapter row beneath the card
 *                                 (ref `.chapter-navigation`)
 *
 * Public CSS custom properties (set on .wsk-tfhp via inline style):
 *   --wsk-tfhp-accent             accent (matches ref --section-accent-colour;
 *                                 used as the card's background frame)
 *   --wsk-tfhp-text               title color
 *   --wsk-tfhp-eyebrow            eyebrow color
 *   --wsk-tfhp-nav-text           nav link color
 */

/* ── Section root — fills the parent column 100% (no internal padding
   that would shrink the card). Outer breathing room belongs to the
   Avada column, not us — that way the card grows/shrinks with the
   column the editor drops it into. */
.fusion-row .wsk-tfhp,
.fusion-builder-row .wsk-tfhp,
.wsk-tfhp {
	box-sizing: border-box;
	display: block !important;
	margin: 0 !important;
	max-width: 100% !important;
	padding: 0;
	position: relative;
	text-align: center !important;
	width: 100% !important;
}

/* ── Hero card — accent-coloured frame containing the video. The card
   is content-sized to 820px wide on desktop, 1100px on >=1600px, with
   9px rounded corners. `margin: auto` + locked alignment to defeat
   any flex-justify-flex-start the column wrapper might apply. */
.fusion-row .wsk-tfhp .wsk-tfhp__hero,
.wsk-tfhp .wsk-tfhp__hero,
.wsk-tfhp__hero {
	background-color: var( --wsk-tfhp-accent, #21BC6B );
	border-radius: 9px;
	box-sizing: border-box;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 20px;
	position: relative;
	width: 100% !important;
	z-index: 2;
}
.wsk-tfhp,
.wsk-tfhp * {
	box-sizing: border-box;
}

/* ── Background media — ref locks aspect to 780/420 desktop, 353/456 on
   <=768px (portrait on mobile). Same 9px radius as the parent so the
   video edge-aligns with the card frame (with the accent visible as a
   20px border around all four sides). */
.wsk-tfhp__bg {
	position: relative;
}
.wsk-tfhp__bg-video,
.wsk-tfhp__bg-img,
.wsk-tfhp__bg-poster {
	aspect-ratio: 780 / 420;
	background-color: #000;
	border-radius: 9px;
	display: block;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
	width: 100%;
}
@media screen and ( max-width: 768px ) {
	.wsk-tfhp__bg-video,
	.wsk-tfhp__bg-img,
	.wsk-tfhp__bg-poster {
		aspect-ratio: 353 / 456;
	}
}

/* YouTube background — contained-slot cover-fit pattern (rule #45a).
   Wrap matches the card's aspect ratio (780:420 desktop, 353:456 mobile)
   with overflow:hidden. Iframe sized 177.78% on both axes (= 16/9 × 100)
   so it always overshoots the slot dimensions, then translate-centered.
   Net result: the wrap shows only the centered cover-cropped portion
   of YouTube's 16:9 player — no letterbox bars regardless of slot AR. */
.wsk-tfhp__bg-yt-wrap {
	aspect-ratio: 780 / 420;
	background-color: #000;
	border-radius: 9px;
	overflow: hidden;
	position: relative;
	width: 100%;
}
@media screen and ( max-width: 768px ) {
	.wsk-tfhp__bg-yt-wrap {
		aspect-ratio: 353 / 456;
	}
}
.wsk-tfhp__bg-yt {
	border: 0;
	height: 177.78%;
	left: 50%;
	min-height: 100%;
	min-width: 100%;
	pointer-events: none;
	position: absolute;
	top: 50%;
	transform: translate( -50%, -50% );
	width: 177.78%;
}

/* ── Title block — absolute-positioned over the video, vertically and
   horizontally centered. Ref puts both eyebrow and h1 inside one flex
   column with `padding: 0 48px` for breathing room from card edges.
   Locked-rule cascade-beat: Avada `.fusion-row` rules + column wrapper
   text-align defaults will leak into the eyebrow/h1 unless we force
   centering with selector specificity AND !important on the alignment. */
.wsk-tfhp .wsk-tfhp__hero .wsk-tfhp__title,
.wsk-tfhp__hero > .wsk-tfhp__title {
	align-items: center !important;
	color: var( --wsk-tfhp-text, #ffffff );
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	justify-content: center !important;
	left: 0;
	padding: 0 48px;
	pointer-events: none;
	position: absolute;
	text-align: center !important;
	top: 0;
	width: 100% !important;
	z-index: 3;
}
.wsk-tfhp .wsk-tfhp__title > * {
	max-width: 100%;
	text-align: center !important;
	width: auto;
}
.wsk-tfhp .wsk-tfhp__eyebrow,
.wsk-tfhp__title p.wsk-tfhp__eyebrow,
.wsk-tfhp__title h1.wsk-tfhp__eyebrow,
.wsk-tfhp__title h2.wsk-tfhp__eyebrow,
.wsk-tfhp__title h3.wsk-tfhp__eyebrow,
.wsk-tfhp__title h4.wsk-tfhp__eyebrow,
.wsk-tfhp__title h5.wsk-tfhp__eyebrow,
.wsk-tfhp__title h6.wsk-tfhp__eyebrow,
.wsk-tfhp__title span.wsk-tfhp__eyebrow {
	color: var( --wsk-tfhp-eyebrow, #ffffff ) !important;
	display: block !important;
	font-weight: 600 !important;
	font-size: 12px !important;
	letter-spacing: 0.04em !important;
	text-align: center !important;
	text-transform: uppercase !important;
	line-height: 1.4 !important;
	margin: 0 0 4px !important;
	padding: 0 !important;
}
.wsk-tfhp .wsk-tfhp__heading,
.wsk-tfhp__title h1.wsk-tfhp__heading,
.wsk-tfhp__title h2.wsk-tfhp__heading,
.wsk-tfhp__title h3.wsk-tfhp__heading,
.wsk-tfhp__title h4.wsk-tfhp__heading,
.wsk-tfhp__title h5.wsk-tfhp__heading,
.wsk-tfhp__title h6.wsk-tfhp__heading,
.wsk-tfhp__title p.wsk-tfhp__heading {
	color: var( --wsk-tfhp-text, #ffffff ) !important;
	font-size: clamp( 28px, 4vw, 56px ) !important;
	font-weight: 600 !important;
	line-height: 1.1 !important;
	letter-spacing: -0.005em !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: center !important;
}

/* ── Chapter navigation — prev/next row beneath the hero card. Ref:
   `display: flex; justify-content: space-between; padding: 30px 0;
   max-width: 1920px`. Caps narrow to `padding: 0 24px` on large
   viewports because the parent .wsk-tfhp already has `padding: 60px 24px`.
   We honour the ref's behaviour: no extra side padding here, the ref
   re-declares `padding: 0 24px` only at smaller breakpoints. */
.wsk-tfhp__nav {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin: 30px auto 0;
	max-width: 100%;
	padding: 0;
	width: 1920px;
}
.wsk-tfhp__nav-link {
	align-items: center;
	color: var( --wsk-tfhp-nav-text, #000000 );
	display: flex;
	font-size: 12px;
	font-size: 0.75rem;
	gap: 15px;
	letter-spacing: 0.02em;
	text-decoration: underline;
	text-transform: uppercase;
}
.wsk-tfhp__nav-link:hover,
.wsk-tfhp__nav-link:focus-visible {
	color: var( --wsk-tfhp-nav-text, #000000 );
	text-decoration: none;
}
.wsk-tfhp__nav-link--next {
	flex-direction: row-reverse;
	margin-left: auto;
}
.wsk-tfhp__nav-spacer {
	flex: 0 0 1px;
}

/* Arrow icon — ref uses an inline-SVG data URI as background-image on
   a ::before pseudo-element. Default points left for the prev link;
   the next link gets `transform: rotate(180deg)` to point right.
   currentColor isn't supported on background-image SVGs, so the ref's
   black arrow is hardcoded — we keep parity with ref behaviour. */
.wsk-tfhp__nav-link::before {
	background-image: url( "data:image/svg+xml;charset=utf-8,%3Csvg width='20' height='9' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.875 4.917a.5.5 0 1 0 0-1v1ZM.292 4.063a.5.5 0 0 0 0 .707l3.182 3.182a.5.5 0 0 0 .707-.707L1.353 4.417l2.828-2.829a.5.5 0 0 0-.707-.707L.292 4.063Zm18.583.354v-.5H.645v1h18.23v-.5Z' fill='%23000'/%3E%3C/svg%3E" );
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	flex: 0 0 auto;
	height: 9px;
	transform-origin: center;
	width: 20px;
}
.wsk-tfhp__nav-link--next::before {
	transform: rotate( 180deg );
}

/* ── Focus-visible (a11y) ─────────────────────────────────────────── */
.wsk-tfhp__nav-link:focus-visible {
	outline: 2px solid var( --wsk-tfhp-nav-text, #000000 );
	outline-offset: 4px;
	border-radius: 2px;
}

/* ── Reduced motion ───────────────────────────────────────────────── */
@media ( prefers-reduced-motion: reduce ) {
	.wsk-tfhp *,
	.wsk-tfhp *::before,
	.wsk-tfhp *::after {
		animation: none !important;
		transition: none !important;
	}
}

/* ── Mobile / tablet — ref tightens vertical rhythm + nav padding.
   On narrow viewports the prev/next link stacks its arrow above the
   text so the text gets the full column width without truncation. */
@media screen and ( max-width: 1024px ) {
	.wsk-tfhp {
		padding-bottom: 30px;
	}
	.wsk-tfhp__nav {
		padding: 15px 0;
		position: relative;
	}
}

/* On mobile collapse the card's accent-coloured frame around the video
   to zero — the 20px frame that's striking on desktop reads as wasted
   orange padding once the card shrinks. Video edge-aligns with the
   card's rounded corners; nav still sits below the card with its own
   `margin: 30px auto 0`. */
@media screen and ( max-width: 768px ) {
	.fusion-row .wsk-tfhp .wsk-tfhp__hero,
	.wsk-tfhp .wsk-tfhp__hero,
	.wsk-tfhp__hero {
		padding: 0 !important;
	}
	.wsk-tfhp__nav {
		margin-top: 16px !important;
	}
}
@media screen and ( max-width: 768px ) {
	/* Keep the prev/next link on a single row as long as there's space.
	   The pseudo-element arrow stays inline with the text via flex-row;
	   the gap shrinks to 8px and the text gap to 6px so a long chapter
	   title still has room before it wraps. Earlier `flex-direction:
	   column` rule was removed — it forced the arrow to stack above
	   the text even when the row had plenty of width. */
	.wsk-tfhp .wsk-tfhp__nav-link,
	.wsk-tfhp .wsk-tfhp__nav-link--prev,
	.wsk-tfhp .wsk-tfhp__nav-link--next {
		display: inline-flex !important;
		flex-direction: row !important;
		align-items: center !important;
		gap: 8px !important;
		min-width: 0 !important;
	}
	.wsk-tfhp .wsk-tfhp__nav-link--next {
		flex-direction: row-reverse !important;
	}
}

/* ────────────────────────────────────────────────────────────────────
   REDUCED MOTION (QW-1, P0)
   Collapse durations rather than disabling outright — layout stays,
   motion stops, no blank sections.
   ──────────────────────────────────────────────────────────────────── */
@media (prefers-reduced-motion: reduce) {
	.wsk-tfhp,
	.wsk-tfhp * {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
		transition-delay: 0ms !important;
		scroll-behavior: auto !important;
	}
}
/**
 * WEPRO Insights Hero — visual reproduction of world.nrg.com `.wsk-ih` hero,
 * sized for typical Avada page contexts (no fluid-rem trickery).
 *
 * Sizing strategy:
 *   - All pixel/em sizes are absolute or clamp() — no `rem` so we don't fight
 *     the host page's <html> font-size.
 *   - Typography uses clamp(min, fluid, max) so it scales between mobile and
 *     desktop without exploding on ultrawide.
 *   - Hero takes 100svh so it works on mobile (avoids URL bar bouncing).
 *   - Full-bleed escape: -50vw margins break out of any constrained Avada column.
 */

/* ─── Riegla font-face (NRG CDN) ─────────────────────────────────── */
@font-face {
	font-family: "Riegla";
	src: url("https://nrgcdn.b-cdn.net/fonts/Riegla-Regular.ttf") format("truetype");
	font-weight: 400;
	font-display: swap;
}
@font-face {
	font-family: "Riegla";
	src: url("https://nrgcdn.b-cdn.net/fonts/Riegla-Medium.ttf") format("truetype");
	font-weight: 500;
	font-display: swap;
}
@font-face {
	font-family: "Riegla";
	src: url("https://nrgcdn.b-cdn.net/fonts/Riegla-Bold.ttf") format("truetype");
	font-weight: 700;
	font-display: swap;
}

/* ═══════════════════════════════════════════════════════════════════
 * Wrapper
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih.wsk-ih {
	position: relative;
	width: 100vw;
	min-height: 600px;
	height: 100svh;
	max-height: 900px;
	color: #fff;
	font-family: "Riegla", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	line-height: 1;
	overflow: hidden;
	background-color: #261d26;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.wsk-ih * { box-sizing: border-box; }

/* Dark scrim over the background. */
.wsk-ih.wsk-ih::after {
	content: "";
	position: absolute;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.25);
	z-index: 1;
	pointer-events: none;
}

/* ═══════════════════════════════════════════════════════════════════
 * Background — image / video / YouTube
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih .wsk-ih__bgWrap {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	will-change: transform;
	transform-origin: center center;
}

.wsk-ih .wsk-ih__bg {
	/* Bg-media check #45b — `object-fit: cover` only (no `transform: scale`).
	   Parallax-tilt cushion is achieved via negative inset: the bg overflows
	   the wrap by 1% on each side, giving the same visual "breathing room"
	   without the scale transform that the audit matrix bans. */
	position: absolute;
	top: -1%;
	left: -1%;
	right: -1%;
	bottom: -1%;
	width: 102%;
	height: 102%;
	object-fit: cover;
	background-color: rgba(0, 0, 0, 0.5);
	will-change: transform;
	transform-origin: center center;
}

.wsk-ih .wsk-ih__bg--yt iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: max(100%, calc(100vh * 16 / 9));
	height: max(100vh, calc(100% * 9 / 16));
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

/* ═══════════════════════════════════════════════════════════════════
 * Main view
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih .wsk-ih__main {
	position: absolute;
	inset: 0;
	display: block;
	z-index: 2;
}

.wsk-ih .wsk-ih__content {
	position: absolute;
	top: 45%;
	transform: translateY(-50%);
	left: clamp(20px, 4vw, 60px);
	max-width: clamp(280px, 50vw, 640px);
}

.wsk-ih .wsk-ih__subtext {
	font-size: clamp(14px, 1.1vw, 18px);
	line-height: 1.4;
	letter-spacing: -0.01em;
	margin: 0;
	color: rgba(255, 255, 255, 0.9);
}

/* ═══════════════════════════════════════════════════════════════════
 * phaseTitle — line-by-line gradient mask reveal
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih .phaseTitle {
	font-size: clamp(32px, 5vw, 64px);
	font-weight: 500;
	text-transform: uppercase;
	line-height: 0.9;
	letter-spacing: -0.01em;
	margin: 0 0 clamp(16px, 2vw, 28px);
	--phase-settle-color: #fff;
}

.wsk-ih .phaseTitle .line {
	display: block;
	overflow: hidden;
	position: relative;
}

.wsk-ih .phaseTitle .inner {
	position: relative;
	display: block;
	background: linear-gradient(90deg, #fff 45%, #ffc20e 46%, #ffc20e 54%, rgba(255, 255, 255, 0.2) 55%);
	background-size: 250% 100%;
	background-position: 100% 50%;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	transform: translateY(1.1em);
}

.wsk-ih .phaseTitle.in .inner {
	transform: translateY(0);
	background-position: 0 50%;
	transition:
		transform 0.8s cubic-bezier(0.215, 0.61, 0.355, 1),
		background-position 1.2s cubic-bezier(0.55, 0.1, 0.26, 0.995);
	animation: wsk-ih-phase-settle 0s 1.3s forwards;
}

.wsk-ih .phaseTitle.in .line:nth-child(2) .inner { transition-delay: 0.2s; animation-delay: 1.5s; }
.wsk-ih .phaseTitle.in .line:nth-child(3) .inner { transition-delay: 0.35s; animation-delay: 1.65s; }
.wsk-ih .phaseTitle.in .line:nth-child(4) .inner { transition-delay: 0.5s; animation-delay: 1.8s; }
.wsk-ih .phaseTitle.in .line:nth-child(5) .inner { transition-delay: 0.65s; animation-delay: 1.95s; }
.wsk-ih .phaseTitle.in .line:nth-child(6) .inner { transition-delay: 0.8s; animation-delay: 2.1s; }

@keyframes wsk-ih-phase-settle {
	to {
		background: var(--phase-settle-color);
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
		color: transparent;
	}
}

/* ═══════════════════════════════════════════════════════════════════
 * Video preview thumb (bottom-left)
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih .wsk-ih__videoPreview {
	position: absolute;
	left: clamp(20px, 3vw, 40px);
	bottom: clamp(20px, 3vw, 40px);
	width: clamp(220px, 22vw, 320px);
	height: clamp(130px, 13vw, 188px);
	cursor: pointer;
	border-radius: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 0;
	background: transparent;
	color: #fff;
	padding: 0;
	text-decoration: none;
}

.wsk-ih .wsk-ih__videoPreview::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 18px;
	background-color: rgba(255, 255, 255, 0.1);
	transition: transform 0.8s cubic-bezier(0.55, 0.1, 0.26, 0.995);
}

.wsk-ih .wsk-ih__videoPreview:hover::before {
	transform: scale(1.05);
	transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wsk-ih .wsk-ih__videoThumb {
	position: relative;
	z-index: 1;
	width: calc(100% - 12px);
	height: calc(100% - 12px);
	border-radius: 10px;
	background-color: rgba(0, 0, 0, 0.5);
	overflow: hidden;
}

.wsk-ih .wsk-ih__videoThumb video,
.wsk-ih .wsk-ih__videoThumb img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wsk-ih .wsk-ih__videoPlayButton {
	position: absolute;
	bottom: 18px;
	right: 22px;
	width: 32px;
	height: 32px;
	border-radius: 9px;
	z-index: 2;
	display: flex;
	justify-content: center;
	align-items: center;
	background-image: linear-gradient(90deg, #261d26 50%, #fff 50%);
	background-size: 202% 100%;
	background-position: 100% 50%;
	transition: background-position 0.3s cubic-bezier(0.55, 0.1, 0.26, 0.995);
	color: #261d26;
}

.wsk-ih .wsk-ih__videoPreview:hover .wsk-ih__videoPlayButton { background-position: 0 50%; }
.wsk-ih .wsk-ih__videoPreview:hover .wsk-ih__videoPlayButton svg { color: #fff; transition: color 0.1s linear; }

/* ═══════════════════════════════════════════════════════════════════
 * Topic select (bottom-right)
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih .wsk-ih__topicSelect {
	position: absolute;
	bottom: clamp(20px, 3vw, 40px);
	right: clamp(20px, 3vw, 40px);
	display: flex;
	flex-direction: column;
	gap: 10px;
	max-width: 60vw;
}

.wsk-ih .wsk-ih__topicSelectLabel {
	font-size: clamp(13px, 1.05vw, 16px);
	font-weight: 500;
}

.wsk-ih .wsk-ih__topicSelectButtons {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: flex-end;
}

/* ═══════════════════════════════════════════════════════════════════
 * categoryButton
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih .categoryButton {
	cursor: pointer;
	height: 40px;
	min-width: 130px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 14px;
	gap: 8px;
	border-radius: 10px;
	position: relative;
	text-decoration: none;
	color: inherit;
	--wsk-ih-term-accent: #30ffea;
}

.wsk-ih .categoryButton::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 10px;
	border: 1px solid rgba(68, 57, 68, 0.1);
	background-color: #fff;
	opacity: 0.6;
	transition: transform 0.8s cubic-bezier(0.55, 0.1, 0.26, 0.995);
}

.wsk-ih .categoryButton__icon {
	width: 20px;
	height: 20px;
	border-radius: 4px;
	flex-shrink: 0;
	position: relative;
	z-index: 1;
	background-image: linear-gradient(90deg, #261d26 50%, var(--wsk-ih-term-accent) 50%);
	background-size: 210% 100%;
	background-position: 98% 50%;
	transition: background-position 0.3s cubic-bezier(0.55, 0.1, 0.26, 0.995);
}

.wsk-ih .categoryButton__icon::after {
	content: "";
	position: absolute;
	inset: 0;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none' stroke='%23000' stroke-width='1.5'><path d='M5 0v10M0 5h10'/></svg>");
	background-size: 42%;
	background-repeat: no-repeat;
	background-position: center;
	filter: saturate(0.1) brightness(0.1);
	transition: filter 0.1s 0.1s linear;
}

.wsk-ih .categoryButton__label {
	font-size: 13px;
	font-weight: 700;
	color: #000;
	position: relative;
	z-index: 1;
	white-space: nowrap;
}

.wsk-ih .categoryButton:hover::before {
	transform: scale(1.05);
	transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.wsk-ih .categoryButton:hover .categoryButton__icon { background-position: 0 50%; }
.wsk-ih .categoryButton:hover .categoryButton__icon::after { filter: saturate(1) brightness(1); }

/* ═══════════════════════════════════════════════════════════════════
 * videoPlayer fullscreen modal
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih__videoPlayer.videoPlayer {
	position: fixed;
	inset: 0;
	z-index: 11000;
	background: #261d26;
	display: flex;
	flex-direction: column;
	padding: 24px;
	gap: 12px;
	opacity: 0;
	pointer-events: none;
	transform: translateY(100vh);
	transition:
		opacity 0.3s linear,
		transform 0.5s ease-in;
	color: #f6f7f3;
	font-family: "Riegla", -apple-system, sans-serif;
}

.wsk-ih__videoPlayer.videoPlayer.is-open {
	opacity: 1;
	pointer-events: all;
	transform: translateY(0);
	transition:
		opacity 0.3s linear,
		transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.wsk-ih__videoPlayer .videoPlayer__frame {
	position: absolute;
	inset: 70px 24px 90px;
}

.wsk-ih__videoPlayer .videoPlayer__video {
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
	opacity: 0;
	transition: opacity 0.3s linear;
	background-color: #000;
}
.wsk-ih__videoPlayer.is-open .videoPlayer__video {
	opacity: 1;
	transition: opacity 0.3s 0.3s linear;
}

.wsk-ih__videoPlayer .videoPlayer__close {
	position: absolute;
	top: 24px;
	right: 24px;
	width: 42px;
	height: 36px;
	background: rgba(246, 247, 243, 0.85);
	border: 1px solid rgba(68, 57, 68, 0.1);
	border-radius: 9px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #261d26;
	transition: background 0.2s ease;
	z-index: 2;
}
.wsk-ih__videoPlayer .videoPlayer__close:hover { background: #f6f7f3; }

.wsk-ih__videoPlayer .videoPlayer__controls {
	position: absolute;
	bottom: 24px;
	left: 24px;
	width: calc(100% - 48px);
	display: flex;
	align-items: center;
	gap: 16px;
	z-index: 2;
}

.wsk-ih__videoPlayer .videoPlayer__playPause,
.wsk-ih__videoPlayer .videoPlayer__volume {
	flex-shrink: 0;
	width: 42px;
	height: 36px;
	background: rgba(246, 247, 243, 0.85);
	border: 1px solid rgba(68, 57, 68, 0.1);
	border-radius: 9px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #261d26;
	transition: background 0.2s ease;
	padding: 0;
}
.wsk-ih__videoPlayer .videoPlayer__playPause:hover,
.wsk-ih__videoPlayer .videoPlayer__volume:hover { background: #f6f7f3; }

.wsk-ih__videoPlayer .videoPlayer__pauseIcon { display: none; }
.wsk-ih__videoPlayer.is-playing .videoPlayer__playIcon { display: none; }
.wsk-ih__videoPlayer.is-playing .videoPlayer__pauseIcon { display: flex; }

.wsk-ih__videoPlayer .videoPlayer__time {
	flex-shrink: 0;
	font-size: 12px;
	color: rgba(246, 247, 243, 0.85);
	white-space: nowrap;
	min-width: 80px;
	font-weight: 700;
}

.wsk-ih__videoPlayer .videoPlayer__progress {
	flex: 1;
	height: 8px;
	background: rgba(68, 57, 68, 0.5);
	border-radius: 4px;
	cursor: pointer;
	position: relative;
}

.wsk-ih__videoPlayer .videoPlayer__progressFill {
	position: absolute;
	inset: 0 auto 0 0;
	width: 0;
	background: rgba(246, 247, 243, 0.85);
	border-radius: 4px;
}

.wsk-ih__videoPlayer.is-muted .videoPlayer__volume { opacity: 0.4; }

/* ═══════════════════════════════════════════════════════════════════
 * Anima — entrance animation system
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih .anima.fade { opacity: 0; }
.wsk-ih .anima.fade.in {
	opacity: 1;
	transition: opacity 0.4s linear;
}
.wsk-ih .anima.fade.out {
	opacity: 0;
	transition: opacity 0.4s linear;
}

.wsk-ih .anima.fadeUp {
	opacity: 0;
	transform: translateY(40px);
}
.wsk-ih .anima.fadeUp.in {
	opacity: 1;
	transform: translateY(0);
	transition:
		opacity 0.4s linear,
		transform 0.7s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.wsk-ih .anima.fadeUp.out {
	opacity: 0;
	transform: translateY(0);
	transition:
		opacity 0.4s linear,
		transform 0.4s ease-in;
}

/* Stagger via data-anima-delay (1..10 = 0.1s..1.0s) */
.wsk-ih .anima[data-anima-delay="1"].in { transition-delay: 0.1s; }
.wsk-ih .anima[data-anima-delay="2"].in { transition-delay: 0.2s; }
.wsk-ih .anima[data-anima-delay="3"].in { transition-delay: 0.3s; }
.wsk-ih .anima[data-anima-delay="4"].in { transition-delay: 0.4s; }
.wsk-ih .anima[data-anima-delay="5"].in { transition-delay: 0.5s; }
.wsk-ih .anima[data-anima-delay="6"].in { transition-delay: 0.6s; }
.wsk-ih .anima[data-anima-delay="7"].in { transition-delay: 0.7s; }
.wsk-ih .anima[data-anima-delay="8"].in { transition-delay: 0.8s; }
.wsk-ih .anima[data-anima-delay="9"].in { transition-delay: 0.9s; }
.wsk-ih .anima[data-anima-delay="10"].in { transition-delay: 1s; }

/* ═══════════════════════════════════════════════════════════════════
 * Mobile (≤ 768px) — collapse to single column
 * ═══════════════════════════════════════════════════════════════════ */

@media (max-width: 768px) {
	/* Switch from absolute-positioned children to a flex stack — matches NRG mobile. */
	.wsk-ih.wsk-ih {
		min-height: auto;
		height: auto;
		max-height: none;
		display: flex;
		flex-direction: column;
		padding: 24px 20px 28px;
	}

	/* Background + scrim still cover the whole hero. */
	.wsk-ih .wsk-ih__bg,
	.wsk-ih .wsk-ih__bgWrap,
	.wsk-ih.wsk-ih::after {
		position: absolute;
	}

	/* Main becomes a normal block flow, not absolute. */
	.wsk-ih .wsk-ih__main {
		position: relative;
		inset: auto;
		display: flex;
		flex-direction: column;
		gap: 18px;
		width: 100%;
	}

	/* Title block first (full-width). */
	.wsk-ih .wsk-ih__content {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		transform: none;
		max-width: none;
		order: 1;
	}
	.wsk-ih .phaseTitle {
		font-size: clamp(28px, 8vw, 44px);
		margin-bottom: 14px;
	}
	.wsk-ih .wsk-ih__subtext {
		font-size: 15px;
		line-height: 1.45;
	}

	/* Frame thumb second, inline width. */
	.wsk-ih .wsk-ih__videoPreview {
		position: relative;
		left: auto;
		bottom: auto;
		width: 100%;
		max-width: 320px;
		height: auto;
		aspect-ratio: 16 / 10;
		order: 2;
		align-self: flex-start;
	}

	/* Topics last, stacked vertically full-width like NRG. */
	.wsk-ih .wsk-ih__topicSelect {
		position: relative;
		bottom: auto;
		right: auto;
		max-width: none;
		width: 100%;
		order: 3;
		gap: 12px;
		margin-top: 8px;
	}
	.wsk-ih .wsk-ih__topicSelectLabel {
		font-size: 14px;
	}
	.wsk-ih .wsk-ih__topicSelectButtons {
		flex-direction: column;
		gap: 10px;
		justify-content: stretch;
	}
	.wsk-ih .categoryButton {
		width: 100%;
		min-width: 0;
		height: 56px;
		justify-content: flex-start;
		padding: 0 18px;
		gap: 12px;
		border-radius: 14px;
	}
	.wsk-ih .categoryButton::before { border-radius: 14px; }
	.wsk-ih .categoryButton__icon {
		width: 28px;
		height: 28px;
		border-radius: 6px;
	}
	.wsk-ih .categoryButton__label {
		font-size: 15px;
	}
}

/* ═══════════════════════════════════════════════════════════════════
 * :focus-visible — keyboard accessibility
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih a:focus-visible,
.wsk-ih button:focus-visible,
.wsk-ih [role="slider"]:focus-visible,
.wsk-ih__videoPlayer button:focus-visible,
.wsk-ih__videoPlayer [role="slider"]:focus-visible {
	outline: 2px solid #30ffea;
	outline-offset: 3px;
	border-radius: 6px;
}

/* The categoryButton has its own ring via ::before — give a thicker outline. */
.wsk-ih .categoryButton:focus-visible {
	outline: 2px solid #30ffea;
	outline-offset: 4px;
}

/* ═══════════════════════════════════════════════════════════════════
 * Cascade-beat — typography vars from builder override defaults
 * ═══════════════════════════════════════════════════════════════════ */

.wsk-ih .phaseTitle.wsk-ih__heading {
	font-size: var(--wsk-ih-title-font-size, clamp(32px, 5vw, 64px)) !important;
	line-height: var(--wsk-ih-title-line-height, 0.9) !important;
	letter-spacing: var(--wsk-ih-title-letter-spacing, -0.01em) !important;
	text-transform: var(--wsk-ih-title-text-transform, uppercase) !important;
	font-weight: var(--wsk-ih-title-font-weight, 500) !important;
	font-style: var(--wsk-ih-title-font-style, normal) !important;
	text-align: var(--wsk-ih-title-text-align, left) !important;
	margin-top: var(--wsk-ih-title-margin-top, 0) !important;
	margin-bottom: var(--wsk-ih-title-margin-bottom, clamp(16px, 2vw, 28px)) !important;
}

.wsk-ih .wsk-ih__subtext {
	font-size: var(--wsk-ih-desc-font-size, clamp(14px, 1.1vw, 18px)) !important;
	line-height: var(--wsk-ih-desc-line-height, 1.4) !important;
	letter-spacing: var(--wsk-ih-desc-letter-spacing, -0.01em) !important;
	text-transform: var(--wsk-ih-desc-text-transform, none) !important;
	font-weight: var(--wsk-ih-desc-font-weight, 400) !important;
	font-style: var(--wsk-ih-desc-font-style, normal) !important;
	text-align: var(--wsk-ih-desc-text-align, left) !important;
	color: var(--wsk-ih-desc-color, rgba(255,255,255,0.9)) !important;
	margin-top: var(--wsk-ih-desc-margin-top, 0) !important;
	margin-bottom: var(--wsk-ih-desc-margin-bottom, 0) !important;
}

.wsk-ih .wsk-ih__topicSelectLabel {
	font-size: var(--wsk-ih-topic_label-font-size, clamp(13px, 1.05vw, 16px)) !important;
	line-height: var(--wsk-ih-topic_label-line-height, 1.2) !important;
	letter-spacing: var(--wsk-ih-topic_label-letter-spacing, normal) !important;
	text-transform: var(--wsk-ih-topic_label-text-transform, none) !important;
	font-weight: var(--wsk-ih-topic_label-font-weight, 500) !important;
	color: var(--wsk-ih-topic_label-color, #ffffff) !important;
}

.wsk-ih .categoryButton__label {
	font-size: var(--wsk-ih-topic_button-font-size, 13px) !important;
	font-weight: var(--wsk-ih-topic_button-font-weight, 700) !important;
	letter-spacing: var(--wsk-ih-topic_button-letter-spacing, normal) !important;
	text-transform: var(--wsk-ih-topic_button-text-transform, none) !important;
	color: var(--wsk-ih-topic_button-color, #000) !important;
}

.wsk-ih .wsk-ih::after,
.wsk-ih.wsk-ih::after {
	background-color: var(--wsk-ih-overlay, rgba(0, 0, 0, 0.25)) !important;
}

/* ═══════════════════════════════════════════════════════════════════
 * Reduced motion
 * ═══════════════════════════════════════════════════════════════════ */

@media (prefers-reduced-motion: reduce) {
	.wsk-ih .anima,
	.wsk-ih .categoryButton::before,
	.wsk-ih .categoryButton__icon,
	.wsk-ih .wsk-ih__videoPreview::before,
	.wsk-ih .wsk-ih__videoPlayButton,
	.wsk-ih .phaseTitle .inner,
	.wsk-ih__videoPlayer.videoPlayer {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-delay: 0s !important;
	}
}
/*
 * WEPRO Picasso Menu — visual values lifted verbatim from reference site:
 *   .navbar           — outer pill, 4.5em height, 1px sage outline, 8px radius
 *   .navbar-bg        — dark backdrop with backdrop-filter blur(14px)
 *   .navbar_col       — 33.33% width each (left / center / right)
 *   .navbar-item      — square per-item cell, border-left hairline divider
 *   .navbar-link      — uppercase nav link
 *   .btn-animate-chars — pill button, 3.5em height
 */

.wsk-pm {
	position: relative;
	z-index: 9000;
	width: 100%;
	color: #d4c6b9;
	font-family: "Basic Grotesque", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	letter-spacing: -0.01em;
	padding: 1.25em 1.25em 0;
	font-size: 14px;
}

.wsk-pm * { box-sizing: border-box; }

/* Sticky = fixed-top, pinned to viewport. Pill floats inset 1.25em via margin (no padding gap). */
.wsk-pm--sticky-1 {
	position: fixed;
	top: 1.25em;
	left: 1.25em;
	right: 1.25em;
	width: auto;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}
/* Glass effect — subtle dark blur so the bar is readable over hero video. */
.wsk-pm--sticky-1 .wsk-pm__inner {
	background-color: rgba(23, 28, 28, 0.6) !important;
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
}

/* ─── Outer pill (.navbar) ────────────────────────────────────────── */

.wsk-pm__inner {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 56px;
	border: 1px solid var(--wsk-pm-bar-border, #706d66) !important;
	border-radius: 8px;
	overflow: hidden;
}

/* ─── Backdrop (.navbar-bg) — dark + heavy blur ───────────────────── */

.wsk-pm__inner {
	background-color: var(--wsk-pm-bar-bg, #171c1c) !important;
}
.wsk-pm--theme-light .wsk-pm__inner {
	background-color: var(--wsk-pm-bar-bg, #f6f7f3) !important;
}

/* ─── 3 columns: left/right auto-fit, center flex-grows to take the rest.
 *     Previous design used rigid 33% per column, which forced 6 menu items
 *     to overflow + get clipped by `.wsk-pm__inner { overflow: hidden }`.
 *     Last items (Kontakt, etc.) were rendered but visually clipped behind
 *     the right column — making them un-clickable. ─────────────────────── */

.wsk-pm__col {
	position: relative;
	z-index: 1;
	height: 100%;
	display: flex;
	align-items: center;
	min-width: 0; /* allow shrink */
}

.wsk-pm__col--left {
	justify-content: flex-start;
	align-items: stretch;
	color: #d4c6b9;
	flex: 0 0 auto;
}
.wsk-pm__col--center {
	justify-content: center;
	flex: 1 1 auto;
	min-width: 0;
	overflow-x: auto;
	scrollbar-width: none;
}
.wsk-pm__col--center::-webkit-scrollbar { display: none; }
.wsk-pm__col--right  {
	justify-content: flex-end;
	padding-right: 0.5em;
	flex: 0 0 auto;
}

/* ─── Logo (.navbar_logo) — full-height, 2em horizontal padding ──── */

.wsk-pm__logo {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 0 2em;
	color: inherit;
	text-decoration: none;
	flex-shrink: 0;
}

.wsk-pm__logo--image img {
	height: 1em;
	width: auto;
	display: block;
}

.wsk-pm__logo-text {
	font-size: 1em !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0 !important;
	color: var(--wsk-pm-logo-color, #d4c6b9) !important;
	white-space: nowrap;
}

/* ─── Per-item square cells (.navbar-item) ───────────────────────── */

.wsk-pm__item {
	aspect-ratio: 1;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	border-left: 1px solid #706d66;
	color: inherit;
	text-decoration: none;
}

/* WhatsApp icon — fills the parent .wsk-pm__item cell, fully clickable. */
.wsk-pm__wapp {
	position: relative;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: inherit;
	text-decoration: none;
	cursor: pointer;
}
.wsk-pm__wapp svg {
	width: 18px;
	height: 18px;
	flex-shrink: 0;
}

/* Lang dropdown — tight square cell wrapping a native <select>. */
.wsk-pm__lang {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: inherit;
	font-size: 13px;
}
.wsk-pm__lang select {
	color: inherit;
	background: transparent;
	border: 0;
	font: inherit;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	cursor: pointer;
	padding: 4px 18px 4px 6px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6' fill='none' stroke='%23d4c6b9' stroke-width='1.5'><path d='M1 1l4 4 4-4'/></svg>");
	background-repeat: no-repeat;
	background-position: right 4px center;
	background-size: 8px;
}
.wsk-pm__lang select option {
	color: #171c1c;
	background: #f6f7f3;
}
.wsk-pm--theme-light .wsk-pm__lang select {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6' fill='none' stroke='%23171c1c' stroke-width='1.5'><path d='M1 1l4 4 4-4'/></svg>");
}

/* ─── Menu (.navbar_menu) ────────────────────────────────────────── */

.wsk-pm__menu {
	display: flex;
	height: 100%;
	padding: 0.5em 0;
	gap: 0.5em;
	justify-content: space-between;
}
.wsk-pm__menu-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 0.5em;
	height: 100%;
}
.wsk-pm__menu-item { display: flex; align-items: center; }

.wsk-pm__menu-link {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 0 clamp(0.625em, 1.2vw, 1.25em);
	background-color: rgba(212, 198, 185, 0.05) !important;
	border: 1px solid rgba(112, 109, 102, 0) !important;
	border-radius: 4px !important;
	color: #d4c6b9;
	text-decoration: none !important;
	transition: background-color 0.4s ease, border-color 0.4s ease !important;
	box-shadow: none !important;
	flex-shrink: 0; /* don't shrink — wrap is disabled, overflow scrolls instead */
}
.wsk-pm__menu-link:hover {
	background-color: rgba(212, 198, 185, 0.1) !important;
	border-color: rgba(212, 198, 185, 0.6) !important;
	color: #ffffff !important;
}
.wsk-pm__menu-link:hover .wsk-pm__menu-label,
.wsk-pm__menu-link:hover .wsk-pm__char-text {
	color: #ffffff !important;
}
.wsk-pm--theme-light .wsk-pm__menu-link {
	background-color: rgba(23, 28, 28, 0.04) !important;
	border-color: rgba(23, 28, 28, 0) !important;
}
.wsk-pm--theme-light .wsk-pm__menu-link:hover {
	background-color: rgba(23, 28, 28, 0.08) !important;
	border-color: rgba(23, 28, 28, 0.4) !important;
	color: #000 !important;
}
.wsk-pm--theme-light .wsk-pm__menu-link:hover .wsk-pm__menu-label,
.wsk-pm--theme-light .wsk-pm__menu-link:hover .wsk-pm__char-text {
	color: #000 !important;
}

.wsk-pm__menu-label {
	display: inline-block;
	font-size: var(--wsk-pm-menu-font-size, 1em) !important;
	font-weight: var(--wsk-pm-menu-font-weight, 500) !important;
	letter-spacing: var(--wsk-pm-menu-letter-spacing, 0.01em) !important;
	text-transform: var(--wsk-pm-menu-text-transform, uppercase) !important;
	color: var(--wsk-pm-menu-color, currentColor) !important;
	line-height: 1.3;
	white-space: nowrap;
	position: relative;
}

/* ─── Char-anim: 2-span markup. Label slides up, duplicate slides in from below. ── */

.wsk-pm__char-anim .wsk-pm__menu-label,
.wsk-pm__char-anim .wsk-pm__cta-label {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	overflow: hidden;
	height: 1.3em;
	line-height: 1.3em;
	position: relative;
	color: inherit;
}

.wsk-pm__char-text {
	display: inline-block;
	height: 1.3em;
	line-height: 1.3em;
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	color: inherit;
}

.wsk-pm__char-anim:hover .wsk-pm__char-text {
	transform: translateY(-100%);
}

/* Light theme — invert ink + bg colors so text is visible on light surfaces. */
.wsk-pm--theme-light {
	color: #171c1c;
}
.wsk-pm--theme-light .wsk-pm__inner {
	border-color: rgba(23, 28, 28, 0.3);
}
.wsk-pm--theme-light .wsk-pm__inner::before {
	background-color: rgba(246, 247, 243, 0.6);
}
.wsk-pm--theme-light .wsk-pm__col--left,
.wsk-pm--theme-light .wsk-pm__item,
.wsk-pm--theme-light .wsk-pm__hamburger {
	border-color: rgba(23, 28, 28, 0.3);
}
.wsk-pm--theme-light .wsk-pm__menu-link {
	background-color: rgba(23, 28, 28, 0.04);
	color: #171c1c;
}
.wsk-pm--theme-light .wsk-pm__menu-link:hover {
	background-color: rgba(23, 28, 28, 0.08);
	border-color: rgba(23, 28, 28, 0.4);
}
.wsk-pm--theme-light .wsk-pm__menu-label {
	color: var(--wsk-pm-menu-color, #171c1c) !important;
}
.wsk-pm--theme-light .wsk-pm__logo-text {
	color: var(--wsk-pm-logo-color, #171c1c) !important;
}
.wsk-pm--theme-light .wsk-pm__hamburger { color: #171c1c; }
.wsk-pm--theme-light .wsk-pm__item { border-left-color: rgba(23, 28, 28, 0.3); }

/* ─── CTA button (.btn-animate-chars + .button-icon) ─────────────── */

.wsk-pm__cta {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1em;
	height: 3.5em;
	padding: 0 0.5em 0 1.5em;
	background-color: var(--wsk-pm-cta-bg, #7a8b69) !important;
	color: var(--wsk-pm-cta-label-color, #171c1c) !important;
	border-radius: 4px;
	text-decoration: none;
	cursor: pointer;
	flex-grow: 0;
	position: relative;
}

.wsk-pm__cta-label {
	font-size: var(--wsk-pm-cta-font-size, 1em) !important;
	font-weight: var(--wsk-pm-cta-font-weight, 500) !important;
	color: var(--wsk-pm-cta-color, var(--wsk-pm-cta-label-color, #171c1c)) !important;
	letter-spacing: var(--wsk-pm-cta-letter-spacing, 0.01em) !important;
	text-transform: var(--wsk-pm-cta-text-transform, uppercase) !important;
	line-height: 1;
	white-space: nowrap;
}

/* Dark icon square at the right of the CTA (.button-icon) */
.wsk-pm__cta-arrow {
	flex-shrink: 0;
	aspect-ratio: 1;
	width: 2em;
	height: 2em;
	background-color: #171c1c;
	color: #d4c6b9;
	border-radius: 4px;
	padding: 0.5em;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

/* ─── Hamburger (mobile only, .nav-trigger) ──────────────────────── */

.wsk-pm__hamburger {
	display: none;
	width: 4em;
	height: 100%;
	background: transparent;
	border: 0;
	border-left: 1px solid #706d66;
	cursor: pointer;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 5px;
	padding: 0;
	color: #d4c6b9;
}
.wsk-pm__hamburger-line {
	display: block;
	width: 20px;
	height: 1.5px;
	background-color: currentColor;
	transition: transform 0.3s ease, opacity 0.3s ease;
}
.wsk-pm.is-mobile-open .wsk-pm__hamburger-line:nth-child(1) {
	transform: translateY(3px) rotate(45deg);
}
.wsk-pm.is-mobile-open .wsk-pm__hamburger-line:nth-child(2) {
	transform: translateY(-3px) rotate(-45deg);
}

/* ─── Mobile overlay ─────────────────────────────────────────────── */

/* ─── MOBILE OVERLAY ─── */
.wsk-pm__mobile {
	position: fixed;
	inset: 12px;
	z-index: 9999;
	background-color: #171c1c;
	color: #d4c6b9;
	display: flex;
	flex-direction: column;
	padding: 12px;
	opacity: 0;
	pointer-events: none;
	transform: translateY(-1em);
	transition: opacity 0.35s ease, transform 0.35s ease;
	overflow-y: auto;
	border: 1px solid rgba(212, 198, 185, 0.25);
	border-radius: 8px;
}
.wsk-pm.is-mobile-open .wsk-pm__mobile {
	opacity: 1;
	pointer-events: all;
	transform: translateY(0);
}

/* Hide the floating weprocta WhatsApp widget while overlay is open. */
.wsk-pm.is-mobile-open ~ .weprocta-ww,
.wsk-pm.is-mobile-open ~ * .weprocta-ww,
body:has(.wsk-pm.is-mobile-open) .weprocta-ww { display: none; }

/* Top bar — logo + actions + close, with hairline borders between cells. */
.wsk-pm__mobile-top {
	display: flex;
	align-items: stretch;
	height: 56px;
	border: 1px solid rgba(212, 198, 185, 0.25);
	border-radius: 8px;
	margin-bottom: 16px;
	overflow: hidden;
	flex-shrink: 0;
}
.wsk-pm__mobile-top-cell {
	display: flex;
	align-items: center;
	justify-content: center;
	border-left: 1px solid rgba(212, 198, 185, 0.25);
	background: transparent;
	border-top: 0;
	border-right: 0;
	border-bottom: 0;
	color: inherit;
	cursor: pointer;
	padding: 0;
	min-width: 56px;
}
.wsk-pm__mobile-top-cell:first-child { border-left: 0; }
.wsk-pm__mobile-top-cell--logo {
	flex: 1 1 auto;
	min-width: 0;
	justify-content: flex-start;
}
.wsk-pm__mobile-top-cell--logo .wsk-pm__logo {
	padding: 0 16px;
	height: 100%;
}
.wsk-pm__mobile-close {
	color: #d4c6b9;
}

/* Menu list — full-width centered items with horizontal hairlines between. */
.wsk-pm__mobile .wsk-pm__menu {
	flex: 1 1 auto;
	height: auto;
	padding: 0;
	display: block;
}
.wsk-pm__mobile .wsk-pm__menu-list {
	flex-direction: column;
	align-items: stretch;
	height: auto;
	gap: 0;
	border: 1px solid rgba(212, 198, 185, 0.25);
	border-radius: 8px;
	overflow: hidden;
}
.wsk-pm__mobile .wsk-pm__menu-item {
	width: 100%;
	border-top: 1px solid rgba(212, 198, 185, 0.25);
	display: block;
}
.wsk-pm__mobile .wsk-pm__menu-item:first-child { border-top: 0; }

.wsk-pm__mobile .wsk-pm__menu-link {
	width: 100%;
	height: auto !important;
	padding: 16px 16px !important;
	background-color: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	justify-content: center !important;
	color: var(--wsk-pm-mobile-text-color, #ffffff) !important;
}
.wsk-pm__mobile .wsk-pm__menu-link:hover {
	background-color: rgba(255, 255, 255, 0.06) !important;
	border: 0 !important;
}

/* Mobile menu label — force a contrast against the dark overlay BG.
 * Falls back to white; admin override via --wsk-pm-mobile-text-color
 * (emitted from the element settings panel). */
.wsk-pm__mobile .wsk-pm__menu-label,
.wsk-pm__mobile .wsk-pm__menu-label .wsk-pm__char-text {
	color: var(--wsk-pm-mobile-text-color, #ffffff) !important;
}

.wsk-pm__mobile .wsk-pm__menu-label {
	font-size: 13px !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
}
.wsk-pm__mobile .wsk-pm__menu-label,
.wsk-pm__mobile .wsk-pm__char-text {
	height: 1.2em;
	line-height: 1.2em;
}

/* Mobile logo, lang, WhatsApp, close — same fallback to white */
.wsk-pm__mobile .wsk-pm__logo-text {
	color: var(--wsk-pm-mobile-logo-color, var(--wsk-pm-mobile-text-color, #ffffff)) !important;
}
.wsk-pm__mobile .wsk-pm__wapp,
.wsk-pm__mobile .wsk-pm__mobile-close,
.wsk-pm__mobile .wsk-pm__lang select {
	color: var(--wsk-pm-mobile-text-color, #ffffff) !important;
}
.wsk-pm__mobile .wsk-pm__lang select {
	border-color: rgba(255, 255, 255, 0.3) !important;
	background: transparent !important;
}

/* Mobile overlay BG override (defaults to current #171c1c via main rule) */
.wsk-pm__mobile {
	background-color: var(--wsk-pm-mobile-bg, #171c1c) !important;
}

/* Mobile borders between items */
.wsk-pm__mobile .wsk-pm__menu-item {
	border-top-color: var(--wsk-pm-mobile-border, rgba(255, 255, 255, 0.18)) !important;
}
.wsk-pm__mobile .wsk-pm__mobile-top,
.wsk-pm__mobile .wsk-pm__mobile-top-cell {
	border-color: var(--wsk-pm-mobile-border, rgba(255, 255, 255, 0.18)) !important;
}
.wsk-pm__mobile .wsk-pm__mobile-wapp-pill {
	border-color: var(--wsk-pm-mobile-border, rgba(255, 255, 255, 0.4)) !important;
	color: var(--wsk-pm-mobile-text-color, #ffffff) !important;
}

/* Action stack — CTA full width + WhatsApp pill below. */
.wsk-pm__mobile-actions {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 16px;
	flex-shrink: 0;
}
.wsk-pm__mobile-actions .wsk-pm__cta {
	width: 100%;
	justify-content: space-between;
}
.wsk-pm__mobile-wapp-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 48px;
	width: 100%;
	border: 1px solid rgba(212, 198, 185, 0.4);
	border-radius: 8px;
	background: transparent;
	color: #d4c6b9 !important;
	text-decoration: none;
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}
.wsk-pm__mobile-wapp-pill svg { flex-shrink: 0; }

/* ─── Responsive ─────────────────────────────────────────────────── */

@media (max-width: 991px) {
	.wsk-pm__inner { height: 4em; }
	.wsk-pm__col--center { display: none; }
	.wsk-pm__col--right .wsk-pm__cta { display: none; }
	.wsk-pm__hamburger { display: flex; }

	/* Phase 6.1 — left col grows to take the remainder, right col only
	 * claims the hamburger's natural width. The previous `flex: 1` on
	 * both columns forced a 50/50 split that wasn't enough for logo +
	 * lang + whatsapp on mobile, so the cells bled past the left col
	 * boundary and were overlaid by the right col's empty whitespace
	 * (rendered later in DOM = stacked on top), making lang dropdown +
	 * WhatsApp anchor visible but unclickable. */
	.wsk-pm__col--left  { width: auto; flex: 1 1 auto; min-width: 0; }
	.wsk-pm__col--right { width: auto; flex: 0 0 auto; }

	/* Defense in depth: right col's only interactive child is the
	 * hamburger; if any future empty whitespace appears in the right
	 * col, it shouldn't intercept clicks. */
	.wsk-pm__col--right { pointer-events: none; }
	.wsk-pm__col--right .wsk-pm__hamburger { pointer-events: auto; }

	/* Sensible min-width on the icon cells so a wide logo can't squeeze
	 * the WhatsApp SVG against the cell's right border. Allow flex-shrink
	 * so the inner container never overflows past
	 * `.wsk-pm__inner { overflow: hidden }`. */
	.wsk-pm__item {
		min-width: 2.85em;
		aspect-ratio: auto;
	}
	.wsk-pm__col--left .wsk-pm__logo {
		min-width: 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
}

/* ─── A11y + reduced motion ──────────────────────────────────────── */

.wsk-pm a:focus-visible,
.wsk-pm button:focus-visible {
	outline: 2px solid #7a8b69;
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.wsk-pm__inner,
	.wsk-pm__menu-link,
	.wsk-pm__hamburger-line,
	.wsk-pm__mobile {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
	}
}
/*
 * WEPRO Picasso Hero — values lifted verbatim from reference site:
 *   .section_home-hero    — outer wrapper, position: relative
 *   .sticky-hero          — pinned wrapper (will be GSAP-pinned in ref; CSS-sticky fallback)
 *   .hero-outline_wrap    — 1.5em padding cage around the outline ring
 *   .hero-outline         — 1px sage border, 8px radius
 *   .hero                 — flex column, content bottom-left, 100svh height
 *   .callout-wrapper      — top centered "VINCENT VAN GOGH / 1889" caption
 *   .callout-line         — 1px sage vertical divider, 1.5625em tall
 *   .video-container      — full-bleed background video
 *   .video-overlay        — mix-blend-mode darken at 30% black
 *   .hh_content           — content block, 4em padding
 *   .hh_title             — flex column inside .hh_content
 *   .heading-m / .alt-heading — large heading + italic accent span
 *   .paragraph-l          — body paragraph, 0.8 opacity
 */

.wsk-ph {
	position: relative;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	color: #d4c6b9;
	font-family: "Basic Grotesque", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	letter-spacing: -0.01em;
	overflow: hidden;
	background-color: #171c1c;
}

.wsk-ph * { box-sizing: border-box; }

/* ─── .sticky-hero (height container) ──────────────────────────── */

.wsk-ph__sticky {
	position: relative;
	width: 100%;
	height: var(--wsk-ph-min-height, 90vh);
}

/* ─── .hero-outline_wrap + .hero-outline ───────────────────────── */

.wsk-ph__outline-wrap {
	position: absolute;
	inset: 0;
	z-index: 2;
	padding: 1.5em;
	pointer-events: none;
}
.wsk-ph__outline {
	width: 100%;
	height: 100%;
	border: 1px solid var(--wsk-ph-outline-color, rgba(212, 198, 185, 0.4));
	border-radius: 8px;
}

/* ─── .hero (content stage) ───────────────────────────────────── */

.wsk-ph__hero {
	position: absolute;
	inset: 0;
	display: flex;
	flex-flow: column;
	justify-content: flex-end;
	align-items: flex-start;
	overflow: hidden;
	border-radius: 8px;
	z-index: 1;
}

/* ─── .video-container / image / yt background ────────────────── */

.wsk-ph__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}
.wsk-ph__bg--image {
	background-size: cover;
	background-position: center;
}
.wsk-ph__bg--video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.wsk-ph__bg--yt {
	width: 100%;
	height: 100%;
	overflow: hidden;
}
.wsk-ph__bg--yt iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 177.78%;
	height: 177.78%;
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

/* ─── .video-overlay ──────────────────────────────────────────── */

.wsk-ph__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	background-color: var(--wsk-ph-overlay, rgba(0, 0, 0, 0.35));
	mix-blend-mode: darken;
	pointer-events: none;
}

/* ─── .callout-wrapper (top caption) ──────────────────────────── */

.wsk-ph__callout {
	position: absolute;
	z-index: 10;
	bottom: 0;
	top: auto;
	left: 0;
	right: 0;
	width: 100%;
	display: flex;
	flex-flow: column;
	justify-content: flex-end;
	align-items: center;
	gap: 1em;
	pointer-events: none;
}
.wsk-ph__callout-text {
	display: flex;
	flex-flow: column;
	justify-content: flex-end;
	align-items: center;
	gap: 0.25em;
	color: #d4c6b9;
}
.wsk-ph__callout-line {
	font-size: 0.75em;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-weight: 500;
	line-height: 1.4;
}
.wsk-ph__callout-divider {
	width: 1px;
	height: 1.5625em;
	background-color: rgba(212, 198, 185, 0.5);
}

/* ─── .hh_content + .hh_title (bottom-left content block) ─────── */

.wsk-ph__content {
	position: relative;
	z-index: 5;
	width: 100%;
	padding: 4em;
}
.wsk-ph__content-inner {
	display: flex;
	flex-flow: column;
	justify-content: flex-start;
	align-items: flex-start;
	max-width: 60ch;
	gap: 1.5em;
}

/* ─── Title (.heading-m + .alt-heading inline) ────────────────── */

.wsk-ph__title {
	font-size: var(--wsk-ph-title-font-size, clamp(36px, 5vw, 64px)) !important;
	line-height: var(--wsk-ph-title-line-height, 1.05) !important;
	letter-spacing: var(--wsk-ph-title-letter-spacing, -0.02em) !important;
	text-transform: var(--wsk-ph-title-text-transform, none) !important;
	font-weight: var(--wsk-ph-title-font-weight, 500) !important;
	color: var(--wsk-ph-title-color, #d4c6b9) !important;
	text-align: var(--wsk-ph-title-text-align, left) !important;
	margin: 0 !important;
}
.wsk-ph__title .alt-heading {
	font-style: italic;
	font-weight: 400;
}

/* ─── Description (.paragraph-l) ──────────────────────────────── */

.wsk-ph__desc {
	font-size: var(--wsk-ph-desc-font-size, clamp(15px, 1.4vw, 18px)) !important;
	line-height: var(--wsk-ph-desc-line-height, 1.5) !important;
	letter-spacing: var(--wsk-ph-desc-letter-spacing, 0) !important;
	font-weight: var(--wsk-ph-desc-font-weight, 400) !important;
	color: var(--wsk-ph-desc-color, rgba(212, 198, 185, 0.85)) !important;
	margin: 0 !important;
	max-width: 50ch;
	text-wrap: pretty;
}

/* ─── CTA (.btn-animate-chars + .button-icon style) ───────────── */

.wsk-ph__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	height: 2.75em;
	padding: 0 0.375em 0 1.25em;
	background-color: var(--wsk-ph-cta-bg, #7a8b69) !important;
	color: var(--wsk-ph-cta-label-color, #171c1c) !important;
	border-radius: 4px;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.3s cubic-bezier(0.509, 0.188, 0.041, 0.989);
}
.wsk-ph__cta:hover { transform: translateY(-1px); }
.wsk-ph__cta:hover .wsk-ph__cta-arrow { transform: translateX(2px); }
.wsk-ph__cta-label {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	overflow: hidden;
	height: 1.3em;
	line-height: 1.3em;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.01em;
	text-transform: uppercase;
	color: var(--wsk-ph-cta-label-color, #171c1c);
	white-space: nowrap;
	position: relative;
}
.wsk-ph__cta .wsk-ph__char-text {
	display: inline-block;
	height: 1.3em;
	line-height: 1.3em;
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	color: inherit;
}
.wsk-ph__cta:hover .wsk-ph__char-text {
	transform: translateY(-100%);
}
.wsk-ph__cta-arrow {
	flex-shrink: 0;
	width: 2em;
	height: 2em;
	padding: 0.5em;
	background-color: var(--wsk-ph-cta-arrow-bg, #171c1c);
	color: #d4c6b9;
	border-radius: 4px;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

/* ─── Mobile ──────────────────────────────────────────────────── */

@media (max-width: 991px) {
	.wsk-ph__content { padding: 3.5em 1.5em 2.5em; }
	.wsk-ph__outline-wrap { padding: 1em; display: none; }
	.wsk-ph__title { font-size: var(--wsk-ph-title-font-size, clamp(32px, 8vw, 48px)) !important; }
	.wsk-ph__callout { display: none !important; }
}
@media (max-width: 600px) {
	.wsk-ph__content { padding: 2em 1em 1.5em; }
	.wsk-ph__cta { height: 3em; padding: 0 0.5em 0 1em; }
	.wsk-ph__cta-label { font-size: 12px; }
}

/* ─── A11y + reduced motion ───────────────────────────────────── */

.wsk-ph a:focus-visible,
.wsk-ph button:focus-visible {
	outline: 2px solid #7a8b69;
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.wsk-ph__bg--video,
	.wsk-ph__cta {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
	}
}
/*
 * WEPRO Picasso Stacking Cards — values lifted verbatim from reference site.
 *
 * Layout: each card is split 50/50 — INFO (number + title + subline) on left,
 * MEDIA (featured image) on right. Cards are sage-green with subtle border.
 *
 * Stacking trick:
 *   - Each .wsk-psc__card is `position: sticky; top: <i * offset>` so cards
 *     pin at progressively lower top positions, naturally stacking.
 *   - As newer cards approach, OLDER cards scale down to create 3D depth.
 *   - Each card has a different scale + opacity at its sticky-pinned state,
 *     driven by the sticky-stuck position (CSS only, no JS).
 */

.wsk-psc {
	position: relative;
	width: 100%;
	color: #171c1c;
	font-family: "Basic Grotesque", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	letter-spacing: -0.01em;
	padding: 6em 0 8em;
	background-color: var(--wsk-psc-bg, #eee9e4) !important;
}

.wsk-psc * { box-sizing: border-box; }

.wsk-psc__inner {
	max-width: 86em;
	margin: 0 auto;
	padding: 0 3em;
}

/* ─── Header (title + desc + cta) ─────────────────────────────── */

.wsk-psc__header {
	margin: 0 0 5em;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 4em;
	align-items: end;
}
.wsk-psc__header-title {
	display: flex;
	flex-flow: column;
	align-items: flex-start;
}
.wsk-psc__header-aside {
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	gap: 2em;
	padding-bottom: 0.4em;
}

.wsk-psc__title {
	font-size: var(--wsk-psc-title-font-size, clamp(36px, 4.5vw, 56px)) !important;
	line-height: var(--wsk-psc-title-line-height, 1.05) !important;
	letter-spacing: var(--wsk-psc-title-letter-spacing, -0.02em) !important;
	text-transform: var(--wsk-psc-title-text-transform, none) !important;
	font-weight: var(--wsk-psc-title-font-weight, 500) !important;
	color: var(--wsk-psc-title-color, #171c1c) !important;
	text-align: var(--wsk-psc-title-text-align, left) !important;
	margin: 0 !important;
}
.wsk-psc__title .alt-heading {
	font-style: italic;
	font-weight: 400;
	color: #7a8b69;
}

.wsk-psc__desc {
	font-size: var(--wsk-psc-desc-font-size, clamp(15px, 1.4vw, 18px)) !important;
	line-height: var(--wsk-psc-desc-line-height, 1.5) !important;
	font-weight: var(--wsk-psc-desc-font-weight, 400) !important;
	color: var(--wsk-psc-desc-color, rgba(23, 28, 28, 0.75)) !important;
	margin: 0 !important;
	width: 100%;
	text-wrap: pretty;
}

/* CTA — outline editorial button, fills full column width. */
.wsk-psc__cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75em;
	margin-top: 0.5em;
	padding: 0 0.5em 0 1.5em;
	height: 3em;
	width: 100%;
	background-color: transparent;
	border: 1px solid #171c1c;
	color: #171c1c !important;
	border-radius: 4px;
	text-decoration: none;
	cursor: pointer;
	transition: background-color 0.4s ease, color 0.4s ease, transform 0.3s cubic-bezier(0.509, 0.188, 0.041, 0.989);
}
.wsk-psc__cta:hover {
	transform: translateY(-1px);
	background-color: #171c1c;
	color: #f6f7f3 !important;
}
.wsk-psc__cta-label {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	overflow: hidden;
	height: 1.2em;
	line-height: 1.2em;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: inherit;
	white-space: nowrap;
}
.wsk-psc__cta .wsk-psc__char-text {
	display: inline-block;
	height: 1.2em;
	line-height: 1.2em;
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	color: inherit;
}
.wsk-psc__cta:hover .wsk-psc__char-text { transform: translateY(-100%); }
.wsk-psc__cta-arrow {
	flex-shrink: 0;
	width: 2em;
	height: 2em;
	padding: 0.55em;
	background-color: #7a8b69;
	color: #171c1c;
	border-radius: 4px;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.wsk-psc__cta:hover .wsk-psc__cta-arrow { transform: translateX(2px); }

/* ─── Stack container ─────────────────────────────────────────── */

.wsk-psc__stack {
	position: relative;
	display: flex;
	flex-flow: column;
	gap: 1.5em;
}

/* ─── Single card — sage green, split 50/50, sticky-stack ─────── */

.wsk-psc__card {
	position: sticky;
	display: grid;
	grid-template-columns: 65fr 35fr;
	gap: 3em;
	align-items: stretch;
	background-color: var(--wsk-psc-card-bg, #7a8b69) !important;
	border: 1px solid var(--wsk-psc-card-border, #c9a96a);
	border-radius: 12px;
	padding: 2.25em 2.25em 2.25em 2.5em;
	min-height: 30em;
	color: #171c1c;
	text-decoration: none;
	overflow: hidden;
	transform-origin: 50% 0;
	will-change: transform;
	box-shadow: 0 0 0 1px rgba(201, 169, 106, 0.15) inset,
	            0 1px 0 rgba(255, 255, 255, 0.08) inset,
	            0 24px 60px -28px rgba(23, 28, 28, 0.35);

	/* Entry animation. */
	opacity: 0;
	transform: translateY(60px);
	transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1),
	            transform 0.9s cubic-bezier(0.16, 1, 0.3, 1),
	            box-shadow 0.6s ease,
	            border-color 0.4s ease;
}
.wsk-psc__card[href]:hover {
	border-color: #d4b878;
	box-shadow: 0 0 0 1px rgba(212, 184, 120, 0.25) inset,
	            0 2px 0 rgba(255, 255, 255, 0.12) inset,
	            0 32px 80px -28px rgba(23, 28, 28, 0.45);
}
.wsk-psc__card.is-revealed {
	opacity: 1;
	transform: translateY(0);
}

/* Sticky offsets — each card pins slightly lower than the previous.
   The DIFFERENCE between sticky tops creates the visible "step" of stacked cards. */
.wsk-psc__card[data-idx="0"] { top: 4em;  z-index: 1; }
.wsk-psc__card[data-idx="1"] { top: 5.5em; z-index: 2; }
.wsk-psc__card[data-idx="2"] { top: 7em;   z-index: 3; }
.wsk-psc__card[data-idx="3"] { top: 8.5em; z-index: 4; }
.wsk-psc__card[data-idx="4"] { top: 10em;  z-index: 5; }
.wsk-psc__card[data-idx="5"] { top: 11.5em; z-index: 6; }
.wsk-psc__card[data-idx="6"] { top: 13em;  z-index: 7; }
.wsk-psc__card[data-idx="7"] { top: 14.5em; z-index: 8; }

/* 3D depth — each older card scales down a touch when newer ones arrive over it. */
.wsk-psc__stack:has(.wsk-psc__card[data-idx="1"].is-revealed) .wsk-psc__card[data-idx="0"] {
	transform: scale(0.97); opacity: 0.85;
}
.wsk-psc__stack:has(.wsk-psc__card[data-idx="2"].is-revealed) .wsk-psc__card[data-idx="0"] {
	transform: scale(0.94); opacity: 0.7;
}
.wsk-psc__stack:has(.wsk-psc__card[data-idx="2"].is-revealed) .wsk-psc__card[data-idx="1"] {
	transform: scale(0.97); opacity: 0.85;
}
.wsk-psc__stack:has(.wsk-psc__card[data-idx="3"].is-revealed) .wsk-psc__card[data-idx="0"] {
	transform: scale(0.91); opacity: 0.55;
}
.wsk-psc__stack:has(.wsk-psc__card[data-idx="3"].is-revealed) .wsk-psc__card[data-idx="1"] {
	transform: scale(0.94); opacity: 0.7;
}
.wsk-psc__stack:has(.wsk-psc__card[data-idx="3"].is-revealed) .wsk-psc__card[data-idx="2"] {
	transform: scale(0.97); opacity: 0.85;
}
.wsk-psc__stack:has(.wsk-psc__card[data-idx="4"].is-revealed) .wsk-psc__card[data-idx="0"] {
	transform: scale(0.88); opacity: 0.4;
}
.wsk-psc__stack:has(.wsk-psc__card[data-idx="4"].is-revealed) .wsk-psc__card[data-idx="1"] {
	transform: scale(0.91); opacity: 0.55;
}
.wsk-psc__stack:has(.wsk-psc__card[data-idx="4"].is-revealed) .wsk-psc__card[data-idx="2"] {
	transform: scale(0.94); opacity: 0.7;
}
.wsk-psc__stack:has(.wsk-psc__card[data-idx="4"].is-revealed) .wsk-psc__card[data-idx="3"] {
	transform: scale(0.97); opacity: 0.85;
}

/* ─── LEFT half: number + title + subline ─────────────────────── */

.wsk-psc__card-info {
	display: flex;
	flex-flow: column;
	justify-content: space-between;
	align-items: flex-start;
	gap: 2em;
	padding: 0.5em 0;
	height: 100%;
}

.wsk-psc__card-number {
	font-family: "Times New Roman", "Basic Grotesque", serif;
	font-style: italic;
	font-weight: 400;
	font-size: 4.5em;
	line-height: 0.9;
	letter-spacing: -0.02em;
	/* Inherit the card-title color so editor's title-color picker drives both. */
	color: var(--wsk-psc-card-color, rgba(23, 28, 28, 0.92));
	flex-shrink: 0;
}

.wsk-psc__card-text {
	display: flex;
	flex-flow: column;
	gap: 1em;
	max-width: 28em;
	margin-top: auto;
}

.wsk-psc__card-title {
	font-size: var(--wsk-psc-card-font-size, clamp(26px, 2.6vw, 36px)) !important;
	line-height: var(--wsk-psc-card-line-height, 1.1) !important;
	letter-spacing: var(--wsk-psc-card-letter-spacing, -0.015em) !important;
	text-transform: var(--wsk-psc-card-text-transform, none) !important;
	font-weight: var(--wsk-psc-card-font-weight, 500) !important;
	color: var(--wsk-psc-card-color, #171c1c) !important;
	margin: 0 !important;
}
.wsk-psc__card-title .alt-heading {
	font-style: italic;
	font-weight: 400;
}

.wsk-psc__card-subline {
	font-size: var(--wsk-psc-subline-font-size, clamp(14px, 1.1vw, 16px)) !important;
	line-height: var(--wsk-psc-subline-line-height, 1.6) !important;
	font-weight: var(--wsk-psc-subline-font-weight, 400) !important;
	color: var(--wsk-psc-subline-color, rgba(23, 28, 28, 0.72)) !important;
	margin: 0 !important;
	max-width: 36ch;
	text-wrap: pretty;
}

/* ─── RIGHT half: featured image ──────────────────────────────── */

.wsk-psc__card-media {
	position: relative;
	padding: 0.75em;
	border: 1px solid rgba(201, 169, 106, 0.55);
	border-radius: 10px;
	background-color: rgba(23, 28, 28, 0.04);
	overflow: hidden;
}
.wsk-psc__card-media::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 10px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15);
	pointer-events: none;
	z-index: 1;
}
.wsk-psc__card-media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 6px;
	transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.wsk-psc__card[href]:hover .wsk-psc__card-media img {
	transform: scale(1.04);
}

/* ─── Mobile responsive (≤ 991px) ─────────────────────────────── */

@media (max-width: 991px) {
	.wsk-psc { padding: 3em 0; }
	.wsk-psc__inner { padding: 0 1.5em; }
	.wsk-psc__header {
		grid-template-columns: 1fr;
		gap: 1.5em;
		margin: 0 0 2.5em;
		align-items: flex-start;
	}
	.wsk-psc__title { font-size: clamp(28px, 7vw, 40px) !important; }

	.wsk-psc__card {
		grid-template-columns: 1fr;
		gap: 1.5em;
		min-height: 0;
		padding: 2em 1.5em;
	}
	.wsk-psc__card-number { font-size: 4.5em; }
	.wsk-psc__card-info { gap: 1em; }
	.wsk-psc__card-media { aspect-ratio: 16 / 10; }

	/* Mobile: tighter sticky steps. */
	.wsk-psc__card[data-idx="0"] { top: 4em; }
	.wsk-psc__card[data-idx="1"] { top: 5em; }
	.wsk-psc__card[data-idx="2"] { top: 6em; }
	.wsk-psc__card[data-idx="3"] { top: 7em; }
	.wsk-psc__card[data-idx="4"] { top: 8em; }
	.wsk-psc__card[data-idx="5"] { top: 9em; }
	.wsk-psc__card[data-idx="6"] { top: 10em; }
	.wsk-psc__card[data-idx="7"] { top: 11em; }
}

@media (max-width: 600px) {
	.wsk-psc__card { padding: 1.5em 1.25em; }
	.wsk-psc__card-number { font-size: 3.5em; }
	.wsk-psc__card-title { font-size: clamp(22px, 6vw, 28px) !important; }
}

/* ─── A11y + reduced motion ───────────────────────────────────── */

.wsk-psc a:focus-visible,
.wsk-psc button:focus-visible {
	outline: 2px solid #7a8b69;
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.wsk-psc__card {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
		position: static !important;
	}
	.wsk-psc__cta, .wsk-psc__cta-arrow, .wsk-psc__char-text {
		transition-duration: 0.01ms !important;
	}
	.wsk-psc__card[href]:hover .wsk-psc__card-media img {
		transform: none !important;
	}
	.wsk-psc__card-media img { transition: none !important; }
}
/*
 * WEPRO Picasso Stories CTA — values lifted verbatim from reference site:
 *   .stories-cta             — full viewport-height stage, content bottom-aligned
 *   .image-parallax          — absolute full-bleed background, parallax-driven
 *   .image-parallax_image.is-default — height: 125% (gives parallax room)
 *   .fade-bottom-custom      — mask-image gradient bottom fade
 *   .stories-cta_content     — content overlay, heading + paragraph row
 *
 * Layout:
 *   - Section: full viewport width, padding for editorial breathing
 *   - Stage: 100vh, rounded corners, overflow hidden, position relative
 *   - Media: position absolute inset 0, fills the stage (image OR video OR youtube)
 *   - Content: position absolute, bottom-aligned, 2-column grid (heading | desc + cta)
 */

.wsk-pst {
	position: relative;
	width: 100%;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	color: #f6f7f3;
	font-family: "Basic Grotesque", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	letter-spacing: -0.01em;
	padding: 2em 0 3em;
	background-color: var(--wsk-pst-bg, #eee9e4) !important;
	overflow-x: clip;
}

.wsk-pst * { box-sizing: border-box; }

.wsk-pst__inner {
	max-width: 100%;
	margin: 0 auto;
	padding: 0 1.5em;
}

/* ─── Stage — full-bleed media + content overlay ───────────── */

.wsk-pst__stage {
	position: relative;
	width: 100%;
	height: 100vh;
	max-height: 56em;
	min-height: 32em;
	border-radius: 12px;
	overflow: hidden;
	background-color: rgba(23, 28, 28, 0.06);
	border: 1px solid rgba(201, 169, 106, 0.45);

	/* Entry fade-bottom mask. */
	opacity: 0;
	transform: translateY(60px);
	transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1),
	            transform 1.1s cubic-bezier(0.16, 1, 0.3, 1);
}
.wsk-pst.is-revealed .wsk-pst__stage {
	opacity: 1;
	transform: translateY(0);
}

/* Media frame — full-bleed background of the stage. */
.wsk-pst__media-frame {
	position: absolute;
	inset: 0;
	overflow: hidden;
	z-index: 0;
}

.wsk-pst__media-parallax {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 125%;
	will-change: transform;
	-webkit-mask-image: linear-gradient(#000 75%, #0000 100%);
	mask-image: linear-gradient(#000 75%, #0000 100%);
}

.wsk-pst__media {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.wsk-pst__media--image {
	background-size: cover;
	background-position: center;
}
.wsk-pst__media--yt {
	position: relative;
	width: 100%;
	height: 100%;
}
.wsk-pst__media--yt iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 177.78%;
	height: 177.78%;
	min-width: 100%;
	min-height: 100%;
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

.wsk-pst__overlay {
	position: absolute;
	inset: 0;
	background-color: var(--wsk-pst-overlay, rgba(0, 0, 0, 0.25));
	pointer-events: none;
	z-index: 1;
}

/* ─── Content overlay — bottom-aligned, 2-column ───────────── */

.wsk-pst__content {
	position: absolute;
	inset: 0;
	z-index: 2;
	padding: 4em;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 4em;
	align-items: end;

	/* Stagger entry. */
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.2s,
	            transform 0.9s cubic-bezier(0.16, 1, 0.3, 1) 0.2s;
}
.wsk-pst.is-revealed .wsk-pst__content {
	opacity: 1;
	transform: translateY(0);
}

.wsk-pst__content-title {
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	align-self: start;
	margin-top: 4em;
}
.wsk-pst__content-aside {
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	align-self: end;
	gap: 2em;
	margin-bottom: 3em;
	padding-bottom: 0.4em;
}

.wsk-pst__title {
	font-size: var(--wsk-pst-title-font-size, clamp(36px, 4.5vw, 64px)) !important;
	line-height: var(--wsk-pst-title-line-height, 1.05) !important;
	letter-spacing: var(--wsk-pst-title-letter-spacing, -0.02em) !important;
	text-transform: var(--wsk-pst-title-text-transform, none) !important;
	font-weight: var(--wsk-pst-title-font-weight, 500) !important;
	color: var(--wsk-pst-title-color, #f6f7f3) !important;
	text-align: var(--wsk-pst-title-text-align, left) !important;
	margin: 0 !important;
}
.wsk-pst__title .alt-heading {
	font-style: italic;
	font-weight: 400;
	color: #c9a96a;
}

.wsk-pst__desc {
	font-size: var(--wsk-pst-desc-font-size, clamp(16px, 1.4vw, 20px)) !important;
	line-height: var(--wsk-pst-desc-line-height, 1.5) !important;
	font-weight: var(--wsk-pst-desc-font-weight, 400) !important;
	color: var(--wsk-pst-desc-color, rgba(246, 247, 243, 0.85)) !important;
	margin: 0 !important;
	width: 100%;
	text-wrap: pretty;
}

/* CTA — solid sage green pill, beige label, dark icon square (ref's "base" green variant). */
.wsk-pst__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.75em;
	margin-top: 1em;
	padding: 0 0.4em 0 1.25em;
	height: 2.75em;
	background-color: var(--wsk-pst-cta-bg, #7a8b69);
	border: 0;
	color: #f6f7f3 !important;
	border-radius: 4px;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.3s cubic-bezier(0.509, 0.188, 0.041, 0.989), background-color 0.4s ease;
}
.wsk-pst__cta:hover {
	transform: translateY(-1px);
	background-color: var(--wsk-pst-cta-bg-hover, #6e7d5f);
}
.wsk-pst__cta-label {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	overflow: hidden;
	height: 1.2em;
	line-height: 1.2em;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: inherit;
	white-space: nowrap;
}
.wsk-pst__cta .wsk-pst__char-text {
	display: inline-block;
	height: 1.2em;
	line-height: 1.2em;
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	color: inherit;
}
.wsk-pst__cta:hover .wsk-pst__char-text { transform: translateY(-100%); }
.wsk-pst__cta-arrow {
	flex-shrink: 0;
	width: 1.6em;
	height: 1.6em;
	padding: 0.5em;
	background-color: var(--wsk-pst-cta-arrow-bg, #171c1c);
	color: #f6f7f3;
	border-radius: 3px;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.wsk-pst__cta:hover .wsk-pst__cta-arrow { transform: translateX(2px); }

/* ─── Mobile responsive (≤ 991px) ─────────────────────────────── */

@media (max-width: 991px) {
	.wsk-pst { padding: 2em 0; }
	.wsk-pst__inner { padding: 0 1.5em; }
	.wsk-pst__stage { height: 80vh; min-height: 28em; border-radius: 8px; }
	.wsk-pst__content {
		padding: 1.5em;
		grid-template-columns: 1fr;
		gap: 1.5em;
		align-items: flex-start;
	}
	.wsk-pst__title { font-size: clamp(28px, 7vw, 40px) !important; }
}

/* ─── A11y + reduced motion ───────────────────────────────────── */

.wsk-pst a:focus-visible,
.wsk-pst button:focus-visible {
	outline: 2px solid #c9a96a;
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.wsk-pst__stage,
	.wsk-pst__content {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
	.wsk-pst__media-parallax { transform: none !important; }
	.wsk-pst__cta, .wsk-pst__cta-arrow, .wsk-pst__char-text {
		transition-duration: 0.01ms !important;
	}
}
/*
 * WEPRO Picasso Footer — editorial 3-column footer.
 *
 * Layout: full-bleed dark section, max-width inner.
 *   - Top: 3-col grid (left brand+CTA / center menu / right contact+social)
 *   - Disclaimer line (single row)
 *   - Bottom: logo + legal links + divider
 *
 * Animations:
 *   - Columns fade-up via IntersectionObserver (.is-revealed)
 *   - Menu links + CTA: char-anim 2-span (label slides up + duplicate slides in)
 */

.wsk-pf {
	position: relative;
	width: 100vw;
	left: 50%;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	color: #d4c6b9;
	font-family: "Basic Grotesque", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-weight: 400;
	letter-spacing: -0.01em;
	background-color: var(--wsk-pf-bg, #171c1c) !important;
	overflow-x: clip;
	padding: 3.5em 0 1.5em;
	box-sizing: border-box;
}

/* Animated top rule + laser marker (lifted from luxury-footer pattern). */
.wsk-pf__top-rule {
	position: absolute;
	top: 0; left: 0; right: 0;
	height: 1px;
	z-index: 2;
	background: linear-gradient(90deg,
		transparent,
		rgba(122, 139, 105, 0.3) 20%,
		var(--wsk-pf-accent, #7a8b69) 50%,
		rgba(122, 139, 105, 0.3) 80%,
		transparent);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 1.1s cubic-bezier(.2, .8, .2, 1);
}
.wsk-pf.is-revealed .wsk-pf__top-rule { transform: scaleX(1); }
.wsk-pf__top-rule::after {
	content: '';
	position: absolute;
	top: -3px;
	left: 0;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: radial-gradient(circle, #fff 0%, var(--wsk-pf-accent, #7a8b69) 45%, transparent 75%);
	box-shadow: 0 0 16px 4px rgba(122, 139, 105, 0.6);
	opacity: 0;
}
.wsk-pf.is-revealed .wsk-pf__top-rule::after {
	animation: wsk-pf-laser 1.2s cubic-bezier(.3, .1, .2, 1) .3s forwards;
}
@keyframes wsk-pf-laser {
	0%   { left: 0;    opacity: 0; transform: scale(.6); }
	10%  {             opacity: 1;                        }
	85%  { left: 100%; opacity: 1; transform: scale(1);   }
	95%  {             opacity: 1; transform: scale(2.2); }
	100% { left: 100%; opacity: 0; transform: scale(.8);  }
}
.wsk-pf--theme-light {
	color: #171c1c;
	background-color: var(--wsk-pf-bg, #f6f7f3) !important;
}

.wsk-pf * { box-sizing: border-box; }

.wsk-pf__inner {
	max-width: 100%;
	margin: 0 auto;
	padding: 2em 1.5em 0;
}

/* ─── TOP — 3-col grid ────────────────────────────────────────── */

.wsk-pf__top {
	display: grid;
	/* Equal 1fr columns — LEFT column content (kicker + CTA + signature)
	   is naturally narrower than the wider columns of older variants, so
	   uneven fr allocations left visible whitespace between left and
	   center. Equal columns + the grid `gap` give a balanced editorial
	   feel without the dead-zone before the menu. */
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1.25em;
	padding-bottom: 3.5em;
	border-bottom: 1px solid rgba(212, 198, 185, 0.18);
}
.wsk-pf--theme-light .wsk-pf__top {
	border-bottom-color: rgba(23, 28, 28, 0.18);
}

.wsk-pf__col {
	display: flex;
	flex-flow: column;
	gap: 1.5em;

	/* Entry fade-up. */
	opacity: 0;
	transform: translateY(24px);
	transition: opacity 0.7s cubic-bezier(0.16, 1, 0.3, 1),
	            transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}
.wsk-pf.is-revealed .wsk-pf__col { opacity: 1; transform: translateY(0); }
.wsk-pf.is-revealed .wsk-pf__col--menu  { transition-delay: 0.1s; }
.wsk-pf.is-revealed .wsk-pf__col--right { transition-delay: 0.2s; }

/* ─── LEFT col: kicker + CTA + signature ──────────────────────── */

/* Compact stack: kicker → CTA → signature read as one editorial block.
 * Was 8em (excessive, created two visible "voids" between blocks).
 * 2em matches the right col rhythm. */
.wsk-pf__col--left { gap: 2em; }

.wsk-pf__kicker {
	font-size: var(--wsk-pf-kicker-font-size, clamp(28px, 3vw, 42px)) !important;
	line-height: var(--wsk-pf-kicker-line-height, 1.1) !important;
	letter-spacing: var(--wsk-pf-kicker-letter-spacing, -0.02em) !important;
	font-weight: var(--wsk-pf-kicker-font-weight, 500) !important;
	color: var(--wsk-pf-kicker-color, inherit) !important;
	text-transform: var(--wsk-pf-kicker-text-transform, none) !important;
	text-align: var(--wsk-pf-kicker-text-align, left) !important;
	margin: 0 !important;
	max-width: 14ch;
}
.wsk-pf__kicker em,
.wsk-pf__kicker .alt-heading {
	font-style: italic;
	font-weight: 400;
	color: var(--wsk-pf-accent, #7a8b69);
}

.wsk-pf__signature {
	font-size: var(--wsk-pf-signature-font-size, clamp(15px, 1.2vw, 17px)) !important;
	line-height: var(--wsk-pf-signature-line-height, 1.5) !important;
	font-weight: var(--wsk-pf-signature-font-weight, 400) !important;
	color: var(--wsk-pf-signature-color, rgba(212, 198, 185, 0.7)) !important;
	margin: 0 !important;
	max-width: 32ch;
	text-wrap: pretty;
}
.wsk-pf--theme-light .wsk-pf__signature {
	color: var(--wsk-pf-signature-color, rgba(23, 28, 28, 0.7)) !important;
}

/* CTA pill — sage green, char-anim. */
.wsk-pf__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.75em;
	padding: 0 0.4em 0 1.25em;
	height: 2.75em;
	background-color: var(--wsk-pf-accent, #7a8b69);
	color: #171c1c !important;
	border-radius: 4px;
	text-decoration: none;
	cursor: pointer;
	align-self: flex-start;
	transition: transform 0.3s cubic-bezier(0.509, 0.188, 0.041, 0.989), background-color 0.4s ease;
}
.wsk-pf__cta:hover { transform: translateY(-1px); background-color: color-mix(in srgb, var(--wsk-pf-accent, #7a8b69) 85%, #000 15%); }
.wsk-pf__cta-label {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	overflow: hidden;
	height: 1.2em;
	line-height: 1.2em;
	font-size: var(--wsk-pf-cta-font-size, 14px) !important;
	font-weight: var(--wsk-pf-cta-font-weight, 500) !important;
	letter-spacing: var(--wsk-pf-cta-letter-spacing, 0.04em) !important;
	text-transform: var(--wsk-pf-cta-text-transform, uppercase) !important;
	color: var(--wsk-pf-cta-color, inherit) !important;
	white-space: nowrap;
}
.wsk-pf__cta .wsk-pf__char-text {
	display: inline-block;
	height: 1.2em;
	line-height: 1.2em;
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	color: inherit;
}
.wsk-pf__cta:hover .wsk-pf__char-text { transform: translateY(-100%); }
.wsk-pf__cta-arrow {
	flex-shrink: 0;
	width: 1.6em;
	height: 1.6em;
	padding: 0.5em;
	background-color: #171c1c;
	color: #f6f7f3;
	border-radius: 3px;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.wsk-pf__cta:hover .wsk-pf__cta-arrow { transform: translateX(2px); }

/* ─── CENTER col: nav menu ────────────────────────────────────── */

/* Menu column inherits the grid `gap` for breathing room — no extra
   padding-left needed now that the columns are equal-width (see
   `.wsk-pf__top` grid above). Mobile breakpoints below already reset
   this to 0; the desktop value is now also 0 by absence. */
.wsk-pf__col--menu { padding-left: 0; }
.wsk-pf__menu { width: 100%; }
.wsk-pf__menu-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-flow: column;
	gap: 0.15em;
}
.wsk-pf__menu-item { width: 100%; }
.wsk-pf__menu-link {
	display: inline-block;
	color: inherit;
	text-decoration: none;
	padding: 0.15em 0;
	transition: color 0.4s ease, padding-left 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.wsk-pf__menu-link:hover {
	color: var(--wsk-pf-accent, #7a8b69);
	padding-left: 0.25em;
}
.wsk-pf--theme-light .wsk-pf__menu-link:hover { color: color-mix(in srgb, var(--wsk-pf-accent, #7a8b69) 60%, #000 40%); }
.wsk-pf__menu-label {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	overflow: hidden;
	height: 1.3em;
	line-height: 1.3em;
	font-size: var(--wsk-pf-menu-font-size, clamp(28px, 3vw, 44px)) !important;
	font-weight: var(--wsk-pf-menu-font-weight, 500) !important;
	letter-spacing: var(--wsk-pf-menu-letter-spacing, -0.01em) !important;
	text-transform: var(--wsk-pf-menu-text-transform, none) !important;
	color: var(--wsk-pf-menu-color, inherit) !important;
	white-space: nowrap;
}
.wsk-pf__menu-link .wsk-pf__char-text {
	display: inline-block;
	height: 1.3em;
	line-height: 1.3em;
	transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
	color: inherit;
}
.wsk-pf__menu-link:hover .wsk-pf__char-text { transform: translateY(-100%); }

/* ─── RIGHT col: contact blocks ───────────────────────────────── */

.wsk-pf__col--right { gap: 2em; }

.wsk-pf__block {
	display: flex;
	flex-flow: column;
	gap: 0.5em;
}
.wsk-pf__block-label {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(212, 198, 185, 0.55);
}
.wsk-pf--theme-light .wsk-pf__block-label {
	color: rgba(23, 28, 28, 0.55);
}
.wsk-pf__contact-link {
	display: inline-block;
	color: inherit;
	text-decoration: none;
	font-size: clamp(15px, 1.2vw, 17px);
	line-height: 1.5;
	transition: color 0.4s ease;
}
.wsk-pf__contact-link:hover { color: var(--wsk-pf-accent, #7a8b69); }
.wsk-pf--theme-light .wsk-pf__contact-link:hover { color: color-mix(in srgb, var(--wsk-pf-accent, #7a8b69) 60%, #000 40%); }

.wsk-pf__wapp {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75em;
	height: 2.75em;
	border: 1px solid rgba(212, 198, 185, 0.4);
	border-radius: 4px;
	color: inherit;
	text-decoration: none;
	transition: border-color 0.4s ease, background-color 0.4s ease, color 0.4s ease;
}
.wsk-pf--theme-light .wsk-pf__wapp { border-color: rgba(23, 28, 28, 0.3); }
.wsk-pf__wapp:hover {
	border-color: var(--wsk-pf-accent, #7a8b69);
	background-color: var(--wsk-pf-accent, #7a8b69);
	color: #171c1c;
}

.wsk-pf__socials {
	display: flex;
	gap: 0.5em;
	flex-wrap: wrap;
}
.wsk-pf__social {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5em;
	height: 2.5em;
	border: 1px solid rgba(212, 198, 185, 0.4);
	border-radius: 4px;
	color: inherit;
	text-decoration: none;
	transition: border-color 0.4s ease, background-color 0.4s ease, color 0.4s ease, transform 0.4s ease;
}
.wsk-pf--theme-light .wsk-pf__social { border-color: rgba(23, 28, 28, 0.3); }
.wsk-pf__social:hover {
	border-color: var(--wsk-pf-accent, #7a8b69);
	background-color: var(--wsk-pf-accent, #7a8b69);
	color: #171c1c;
	transform: translateY(-2px);
}

/* ─── DISCLAIMER ──────────────────────────────────────────────── */

.wsk-pf__disclaimer {
	padding: 1.25em 0;
	border-bottom: 1px solid rgba(212, 198, 185, 0.18);
}
.wsk-pf--theme-light .wsk-pf__disclaimer { border-bottom-color: rgba(23, 28, 28, 0.18); }
.wsk-pf__disclaimer p {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
	color: rgba(212, 198, 185, 0.55);
}
.wsk-pf--theme-light .wsk-pf__disclaimer p { color: rgba(23, 28, 28, 0.6); }
.wsk-pf__disclaimer a { color: inherit; }
.wsk-pf__disclaimer a:hover { color: var(--wsk-pf-accent, #7a8b69); }

/* ─── BOTTOM ──────────────────────────────────────────────────── */

.wsk-pf__bottom {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 2em;
	min-height: 6em;
	padding: 1.25em 0;
}

.wsk-pf__bottom-logo { flex-shrink: 0; }
.wsk-pf__logo {
	display: inline-flex;
	align-items: center;
	color: inherit;
	text-decoration: none;
}
.wsk-pf__logo--image img {
	height: 1.5em;
	width: auto;
	display: block;
}
.wsk-pf__logo-text {
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: inherit;
}

.wsk-pf__bottom-links {
	display: flex;
	gap: 2em;
	flex-wrap: wrap;
	align-items: center;
}
.wsk-pf__bottom-link {
	color: rgba(212, 198, 185, 0.6);
	text-decoration: none;
	font-size: 13px;
	letter-spacing: 0.02em;
	transition: color 0.4s ease;
}
.wsk-pf--theme-light .wsk-pf__bottom-link { color: rgba(23, 28, 28, 0.6); }
.wsk-pf__bottom-link:hover { color: var(--wsk-pf-accent, #7a8b69); }

/* ─── Mobile responsive ───────────────────────────────────────── */

/* Tablet: 3-col → stack, looser top, contact grid 2-up. */
@media (max-width: 991px) {
	.wsk-pf { padding: 3em 0 1em; }
	.wsk-pf__inner { padding: 2em 1.5em 0; }
	.wsk-pf__top {
		grid-template-columns: 1fr;
		gap: 3em;
		padding-bottom: 2.5em;
	}
	.wsk-pf__col--left { gap: 2em; }
	.wsk-pf__col--menu { padding-left: 0; padding-top: 0; padding-bottom: 0; }
	.wsk-pf__menu-label { font-size: clamp(28px, 5vw, 36px) !important; }

	/* Right col (contact): 2-up grid like ref `.footer-col.is-fax`.
	   Override the base `display: flex` from .wsk-pf__col. */
	.wsk-pf__col--right {
		display: grid !important;
		grid-template-columns: 1fr 1fr;
		gap: 2em;
	}

	.wsk-pf__signature { max-width: 24em; }
	.wsk-pf__kicker { max-width: 16ch; }

	/* Bottom row mobile layout: links row above logo (centered). */
	.wsk-pf__bottom {
		flex-direction: column-reverse;
		align-items: center;
		justify-content: center;
		gap: 1.25em;
		padding: 1.5em 0;
		min-height: 0;
	}
	.wsk-pf__bottom-links {
		gap: 1.5em 2em;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-self: stretch;
	}
	.wsk-pf__bottom-logo { align-self: center; opacity: 0.5; }
	.wsk-pf__logo-text { font-size: 13px; letter-spacing: 0.06em; }
}

/* Mobile: tighter padding, single-col contact, smaller menu, bottom row 2-col centred. */
@media (max-width: 600px) {
	.wsk-pf { padding: 2.5em 0 0.5em; }
	.wsk-pf__inner { padding: 1.5em 1em 0; }
	.wsk-pf__top {
		gap: 2em;
		padding-bottom: 2em;
	}
	.wsk-pf__col--left { gap: 1.5em; }
	.wsk-pf__col--menu { padding-left: 0; }
	.wsk-pf__menu-label { font-size: clamp(24px, 7vw, 32px) !important; }

	/* Keep 2-up grid on small mobile too — matches ref screenshot. */
	.wsk-pf__col--right { grid-template-columns: 1fr 1fr; gap: 1.75em; }

	.wsk-pf__kicker { max-width: 100%; }

	.wsk-pf__bottom-link { font-size: 12px; }
}

/* Very narrow phones (<340px): tighter inner padding only, keep 2-up grid. */
@media (max-width: 339px) {
	.wsk-pf__inner { padding: 1.5em 0.875em 0; }
	.wsk-pf__col--right { gap: 1.25em; }
}

/* ─── A11y + reduced motion ───────────────────────────────────── */

.wsk-pf a:focus-visible,
.wsk-pf button:focus-visible {
	outline: 2px solid var(--wsk-pf-accent, #7a8b69);
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.wsk-pf__col {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
	.wsk-pf__top-rule {
		transform: scaleX(1) !important;
		transition: none !important;
	}
	.wsk-pf__top-rule::after {
		animation: none !important;
		opacity: 0 !important;
	}
	.wsk-pf__cta, .wsk-pf__cta-arrow, .wsk-pf__char-text,
	.wsk-pf__menu-link, .wsk-pf__contact-link, .wsk-pf__wapp,
	.wsk-pf__social, .wsk-pf__bottom-link {
		transition-duration: 0.01ms !important;
	}
}
/* ============================================================
 * WEPRO: Secret Hero — stacked snap-scroll sections
 * Reference: secretlevel.co IndexScroll component
 * Each section is a full-viewport snap target. Inner content
 * gets a GSAP ScrollTrigger entrance/exit transform applied
 * by JS (yPercent / scale / rotate / opacity).
 * Namespace: .wsk-sh / --wsk-sh-*
 * ============================================================ */

/* Wrapper */
.wsk-sh {
	--wsk-sh-bg: #000;
	--wsk-sh-fg: #fff;
	--wsk-sh-accent: #e3ff39;
	--wsk-sh-vignette-color: 0, 0, 0;
	--wsk-sh-vignette-alpha: 0.9;
	--wsk-sh-content-max: 72ch;
	/* Content sits AFTER the rail (rail-edge 32px + rail-width 80px = 112px) plus breathing gap.
	 * Mobile: rail hidden — small symmetric pad. Desktop: full clearance. */
	--wsk-sh-content-pad-left: clamp(24px, 4vw, 48px);
	--wsk-sh-content-pad-right: clamp(24px, 4vw, 64px);
	--wsk-sh-align: left;

	position: relative;
	width: 100%;
	background: var(--wsk-sh-bg);
	color: var(--wsk-sh-fg);
}

/* ─── Section (one per item) — full-viewport stacked ─── */
.wsk-sh__section {
	position: relative;
	width: 100%;
	min-height: 100vh;
	min-height: 100lvh;
	overflow: hidden;
}

/* Inner — receives the GSAP transform.
 * Server emits with the entrance state already applied (so it doesn't
 * flash unstyled on first paint before JS); JS clears it for sections
 * that are immediately in view. */
.wsk-sh__inner {
	position: relative;
	width: 100%;
	height: 100vh;
	height: 100lvh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	transform-origin: 50% 50%;
	will-change: transform, opacity;
}

/* ─── Background layer (under inner so transform doesn't drag it) ─── */
.wsk-sh__bg {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
	z-index: 1;
}

.wsk-sh__video,
.wsk-sh__img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

.wsk-sh__bg picture {
	display: block;
	width: 100%;
	height: 100%;
}

/* No-image placeholder — opacity-tinted accent backdrop. Renders when the
   source post has no featured image, so the section has a soft visual
   surface instead of a transparent void. */
.wsk-sh__img-placeholder {
	position: absolute;
	inset: 0;
	background: var(--wsk-sh-accent, #e3ff39);
	opacity: 0.12;
	pointer-events: none;
}

/* YouTube cover-fit (viewport-sized). */
.wsk-sh__yt {
	position: absolute;
	inset: 0;
	overflow: hidden;
	pointer-events: none;
}
.wsk-sh__yt iframe {
	position: absolute;
	top: 50%;
	left: 50%;
	width:  max(100vw, calc(100vh * 16 / 9));
	height: max(100vh, calc(100vw * 9 / 16));
	transform: translate(-50%, -50%);
	border: 0;
	pointer-events: none;
}

.wsk-sh__vignette {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: radial-gradient(
		circle,
		rgba(var(--wsk-sh-vignette-color), 0) 0%,
		rgba(var(--wsk-sh-vignette-color), var(--wsk-sh-vignette-alpha)) 100%
	);
}

/* ─── Foreground content ─── */
.wsk-sh__content {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	max-width: 100%;
	padding-left: var(--wsk-sh-content-pad-left);
	padding-right: var(--wsk-sh-content-pad-right);
	text-align: left;
	box-sizing: border-box;
}

/* Desktop ≥769px: rail visible — give the content plenty of clearance
 * past the rail so the headline doesn't visually collide with it. */
@media (min-width: 769px) {
	.wsk-sh {
		/* rail-edge (32px) + rail-thumb (80px) + breathing (40px) = 152px floor */
		--wsk-sh-content-pad-left: clamp(152px, 14vw, 220px);
		--wsk-sh-content-pad-right: clamp(48px, 6vw, 120px);
	}
}

/* Wider viewports: the gap can grow further to match ref proportions. */
@media (min-width: 1280px) {
	.wsk-sh {
		--wsk-sh-content-pad-left: clamp(180px, 16vw, 260px);
		--wsk-sh-content-pad-right: clamp(64px, 8vw, 160px);
	}
}

@media (min-width: 1536px) {
	.wsk-sh {
		--wsk-sh-content-pad-left: clamp(220px, 18vw, 320px);
		--wsk-sh-content-pad-right: clamp(80px, 10vw, 200px);
	}
}

/* Force left-align on every instance (overrides saved center values).
 * Always left — title, subhead, CTAs all flush to content padding edge. */
.wsk-sh .wsk-sh__inner {
	align-items: flex-start !important;
}
.wsk-sh .wsk-sh__content {
	align-items: flex-start !important;
	text-align: left !important;
}
.wsk-sh .wsk-sh__heading,
.wsk-sh .wsk-sh__subtitle {
	text-align: left !important;
}
.wsk-sh .wsk-sh__ctas {
	justify-content: flex-start !important;
}

/* Heading */
.wsk-sh .wsk-sh__heading {
	margin: 0 !important;
	font-family: var(--wsk-sh-heading-font-family, "Helvetica Neue", "Inter", system-ui, -apple-system, "Segoe UI", Arial, sans-serif) !important;
	font-weight: var(--wsk-sh-heading-font-weight, 900) !important;
	font-style: var(--wsk-sh-heading-font-style, normal) !important;
	font-size: var(--wsk-sh-heading-font-size, clamp(1.8rem, 8vw, 9.5rem)) !important;
	line-height: var(--wsk-sh-heading-line-height, 0.95) !important;
	letter-spacing: var(--wsk-sh-heading-letter-spacing, -0.03em) !important;
	text-transform: var(--wsk-sh-heading-text-transform, uppercase) !important;
	color: var(--wsk-sh-heading-color, var(--wsk-sh-fg)) !important;
	text-align: var(--wsk-sh-heading-text-align, left) !important;
	text-wrap: balance;
}

/* Subhead */
.wsk-sh .wsk-sh__subtitle {
	margin: 24px 0 0 !important;
	max-width: var(--wsk-sh-content-max);
	font-family: var(--wsk-sh-subtitle-font-family) !important;
	font-weight: var(--wsk-sh-subtitle-font-weight, 400) !important;
	font-size: var(--wsk-sh-subtitle-font-size, clamp(1rem, 1.2vw, 1.25rem)) !important;
	line-height: var(--wsk-sh-subtitle-line-height, 1.4) !important;
	color: var(--wsk-sh-subtitle-color, rgba(255, 255, 255, 0.85)) !important;
	text-align: var(--wsk-sh-subtitle-text-align, left) !important;
	text-wrap: balance;
}

/* CTAs */
.wsk-sh__ctas {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-top: 32px;
}

.wsk-sh__cta {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	height: 56px;
	padding: 0 8px 0 28px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--wsk-sh-fg);
	background: color-mix(in srgb, var(--wsk-sh-accent, var(--wsk-sh-fg)) 12%, transparent);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid color-mix(in srgb, var(--wsk-sh-accent, var(--wsk-sh-fg)) 20%, transparent);
	transition: background 250ms ease, border-color 250ms ease;
	cursor: pointer;
}
.wsk-sh__cta--secondary { padding: 0 28px; }
.wsk-sh__cta:hover,
.wsk-sh__cta:focus-visible {
	background: color-mix(in srgb, var(--wsk-sh-accent, var(--wsk-sh-fg)) 24%, transparent);
	border-color: color-mix(in srgb, var(--wsk-sh-accent, var(--wsk-sh-fg)) 45%, transparent);
	color: var(--wsk-sh-fg);
}
.wsk-sh__cta:focus-visible { outline: 2px solid var(--wsk-sh-accent); outline-offset: 3px; }

.wsk-sh__cta-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--wsk-sh-accent, var(--wsk-sh-fg)) 22%, transparent);
}

/* Mobile — compact the buttons so primary + secondary fit side-by-side on
   a typical 360-414px phone. flex-wrap stays active, so an unusually long
   label still falls to a 2nd row instead of overflowing. */
@media (max-width: 600px) {
	.wsk-sh__ctas {
		gap: 10px;
	}
	.wsk-sh__cta {
		height: 44px;
		padding: 0 14px;
		font-size: 11px;
		letter-spacing: 0.04em;
		gap: 8px;
	}
	.wsk-sh__cta--primary {
		padding: 0 4px 0 14px;
	}
	.wsk-sh__cta--secondary {
		padding: 0 16px;
	}
	.wsk-sh__cta-icon {
		width: 32px;
		height: 32px;
	}
}

/* ─── Thumbnail rail (fixed, portaled to body by JS) ─── */
.wsk-sh__rail {
	--wsk-sh-accent: #e3ff39;
	--wsk-sh-rail-thumb-w: 80px;
	--wsk-sh-rail-thumb-h: 48px;
	--wsk-sh-rail-gap: 14px;
	--wsk-sh-rail-marker-pad: 5px;
	--wsk-sh-rail-edge: 32px;
	--wsk-sh-rail-top: 28vh;

	position: fixed;
	z-index: 50;
	top: var(--wsk-sh-rail-top);
	left: var(--wsk-sh-rail-edge);
	pointer-events: auto;
	opacity: 1;
	transition: opacity 350ms ease;
}

/* Rail hides when the hero is out of view (scrolled past the last
 * section, or before the first section). Set by JS on scroll. */
.wsk-sh__rail.is-hidden {
	opacity: 0;
	pointer-events: none;
}

.wsk-sh__rail-list {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--wsk-sh-rail-gap);
	margin: 0;
	padding: 0;
	list-style: none;
}

.wsk-sh__rail-item {
	position: relative;
	margin: 0;
	padding: 0;
}

.wsk-sh__rail-btn {
	display: block;
	width: var(--wsk-sh-rail-thumb-w);
	height: var(--wsk-sh-rail-thumb-h);
	padding: 0;
	border: 0;
	border-radius: 4px;
	overflow: hidden;
	/* Subtle gradient fill so empty (no-thumb) buttons still look intentional. */
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
	opacity: 0.5;
	cursor: pointer;
	transition: opacity 300ms ease;
}
/* Empty rail button (post has no featured image) — show as a clean bordered
   placeholder slot, not the gradient fill that suggests "missing content". */
.wsk-sh__rail-btn:not(:has(img)) {
	background: transparent;
	border: 1.5px solid rgba(255, 255, 255, 0.35);
	border-radius: 4px;
}
.wsk-sh__rail-item.is-active .wsk-sh__rail-btn:not(:has(img)),
.wsk-sh__rail-btn:not(:has(img)):hover,
.wsk-sh__rail-btn:not(:has(img)):focus-visible {
	border-color: var(--wsk-sh-accent, #e3ff39);
}
.wsk-sh__rail-btn:hover,
.wsk-sh__rail-btn:focus-visible {
	opacity: 1;
	outline: 2px solid rgba(255, 255, 255, 0.6);
	outline-offset: 2px;
}
.wsk-sh__rail-item.is-active .wsk-sh__rail-btn { opacity: 1; }

.wsk-sh__rail-btn img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wsk-sh__rail-marker {
	position: absolute;
	top: calc(var(--wsk-sh-rail-marker-pad) * -1);
	left: calc(var(--wsk-sh-rail-marker-pad) * -1);
	width: calc(var(--wsk-sh-rail-thumb-w) + var(--wsk-sh-rail-marker-pad) * 2);
	height: calc(var(--wsk-sh-rail-thumb-h) + var(--wsk-sh-rail-marker-pad) * 2);
	border: 2px solid var(--wsk-sh-accent);
	border-radius: 6px;
	pointer-events: none;
	transform: translateY(0);
	transition: transform 600ms cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.4), 0 0 12px rgba(227, 255, 57, 0.4);
	/* Sit ABOVE the thumbnail buttons so the border paints over the image edges. */
	z-index: 5;
}

/* Make sure the rail buttons sit BELOW the marker (default stacking can flip
 * if any ancestor sets z-index, so be explicit). */
.wsk-sh__rail-item { z-index: 1; }

@media (max-width: 768px) {
	.wsk-sh__rail { display: none; }
}

/* ─── Reduced motion ─── */
@media (prefers-reduced-motion: reduce) {
	.wsk-sh__cta,
	.wsk-sh__rail-btn {
		transition: none !important;
	}
	.wsk-sh__inner {
		/* Skip GSAP entrance/exit transforms — element stays at rest pose. */
		transition: none !important;
		transform: none !important;
		opacity: 1 !important;
	}
	.wsk-sh__rail-marker {
		/* Keep position-tracking transform; just disable the smooth animation
		 * so it jumps instantly between active items. */
		transition: none !important;
	}
}
/**
 * WEPRO: Neon Loops Hero
 * Full-bleed WebGL2 spiral-shader background with centered editorial overlay.
 */

[class*="wsk-neon-loops-hero"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	box-sizing: border-box;
}

.wsk-neon-loops-hero {
	--wsk-nlh-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--wsk-nlh-bone: #ffffff;
	--wsk-nlh-ink:  #000011;
	position: relative;
	min-height: var(--wsk-nlh-min-height, 100vh);
	background: var(--wsk-nlh-bg, var(--wsk-nlh-ink));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
}

/* WebGL canvas — full bleed under everything. */
.wsk-neon-loops-hero__canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	display: block;
}

/* Static fallback — rendered when WebGL is unavailable / reduced-motion.
   Recreates the neon-loops vibe with a CSS conic gradient + radial veil. */
.wsk-neon-loops-hero__fallback {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	opacity: 0;
	background:
		radial-gradient(ellipse 60% 80% at 50% 50%, transparent 0%, rgba(0,0,0,0.55) 100%),
		conic-gradient(
			from 180deg at 50% 50%,
			#0033ff 0deg,
			#7a00ff 60deg,
			#ff007a 120deg,
			#ffae00 180deg,
			#00d9ff 240deg,
			#0033ff 360deg
		);
	filter: blur(40px) saturate(1.4);
	transition: opacity 0.6s var(--wsk-nlh-ease-out);
}

.wsk-neon-loops-hero[data-wsk-fallback="1"] .wsk-neon-loops-hero__canvas {
	display: none;
}
.wsk-neon-loops-hero[data-wsk-fallback="1"] .wsk-neon-loops-hero__fallback {
	opacity: 1;
}

/* Dark overlay for legibility. */
.wsk-neon-loops-hero__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
	background:
		radial-gradient(ellipse 80% 60% at 50% 45%, rgba(0,0,0, calc(var(--wsk-nlh-overlay, 0.4) * 0.55)) 0%, rgba(0,0,0, var(--wsk-nlh-overlay, 0.4)) 100%),
		linear-gradient(to bottom, rgba(0,0,0,0.18) 0%, transparent 35%, transparent 70%, rgba(0,0,0,0.32) 100%);
}

/* Centered content. */
.wsk-neon-loops-hero__content {
	position: relative;
	z-index: 2;
	padding: var(--wsk-nlh-padding, 160px 32px 120px);
	text-align: center;
	max-width: 1080px;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}

/* Badge — every visible part picks up the picker color. */
.wsk-neon-loops-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--wsk-nlh-badge-color, var(--wsk-nlh-accent, #C9A87A)) 14%, transparent);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid color-mix(in srgb, var(--wsk-nlh-badge-color, var(--wsk-nlh-accent, #C9A87A)) 45%, transparent);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	color: var(--wsk-nlh-badge-color, rgba(255,255,255,0.85));
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 28px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-nlh-fade 1s var(--wsk-nlh-ease-out) 0.15s forwards;
}

.wsk-neon-loops-hero__badge-dot {
	width: 6px;
	height: 6px;
	background: var(--wsk-nlh-badge-color, var(--wsk-nlh-accent, #C9A87A));
	border-radius: 50%;
	box-shadow: 0 0 10px var(--wsk-nlh-badge-color, var(--wsk-nlh-accent, #C9A87A));
	animation: wsk-nlh-pulse 2.4s ease-in-out infinite;
}

/* Eyebrow — italic serif flanked by accent lines. */
.wsk-neon-loops-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 13px;
	font-style: italic;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--wsk-nlh-accent, #C9A87A);
	margin-bottom: 26px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-nlh-fade 1s var(--wsk-nlh-ease-out) 0.3s forwards;
}

.wsk-neon-loops-hero__eyebrow-line {
	flex: 0 0 40px;
	height: 1px;
	background: currentColor;
	opacity: 0.55;
}

/* Heading — perspective for 3D character entrance. */
.wsk-neon-loops-hero .wsk-neon-loops-hero__heading {
	font-family: var(--wsk-nlh-heading-font-family, "Lora", "Playfair Display", Georgia, serif);
	font-size: var(--wsk-nlh-heading-font-size, clamp(2.75rem, 7.5vw, 6.5rem));
	font-weight: var(--wsk-nlh-heading-font-weight, 400);
	font-style: var(--wsk-nlh-heading-font-style, normal);
	line-height: var(--wsk-nlh-heading-line-height, 1.04);
	letter-spacing: var(--wsk-nlh-heading-letter-spacing, -0.02em);
	text-transform: var(--wsk-nlh-heading-text-transform, none);
	color: var(--wsk-nlh-heading-color, #ffffff);
	text-align: var(--wsk-nlh-heading-text-align, center) !important;
	margin-top: var(--wsk-nlh-heading-margin-top, 0);
	margin-bottom: var(--wsk-nlh-heading-margin-bottom, 32px);
	max-width: 18ch;
	margin-left: auto;
	margin-right: auto;
	perspective: 900px;
	perspective-origin: 50% 60%;
}

.wsk-nlh-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}

.wsk-nlh-space { display: inline; }

.wsk-nlh-char {
	display: inline-block;
	opacity: 0;
	transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg);
	filter: blur(8px);
	transform-origin: center bottom;
	text-shadow:
		0 1px 0 rgba(255,255,255,0.18),
		0 12px 30px rgba(0,0,0,0.55);
	will-change: transform, opacity, filter;
	animation: wsk-nlh-char-in 1.25s var(--wsk-nlh-ease-out) calc(0.45s + var(--wsk-nlh-i, 0) * 0.04s) both;
}

@keyframes wsk-nlh-char-in {
	0%   { opacity: 0; transform: translateY(0.55em) translateZ(-80px) rotateX(-55deg); filter: blur(8px); }
	60%  { opacity: 1; filter: blur(0); }
	100% { opacity: 1; transform: translateY(0) translateZ(0) rotateX(0); filter: blur(0); }
}

/* Accent words — italic gradient sweep using the accent color. */
.wsk-nlh-word--accent,
.wsk-neon-loops-hero__gradient-text {
	font-style: italic;
	font-weight: 500;
}

.wsk-nlh-word--accent .wsk-nlh-char,
.wsk-neon-loops-hero__gradient-text .wsk-nlh-char {
	background: linear-gradient(
		100deg,
		color-mix(in srgb, var(--wsk-nlh-accent, #C9A87A) 50%, #ffffff) 0%,
		var(--wsk-nlh-accent, #C9A87A) 45%,
		color-mix(in srgb, var(--wsk-nlh-accent, #C9A87A) 55%, #ffffff) 70%,
		var(--wsk-nlh-accent, #C9A87A) 100%
	);
	background-size: 200% 100%;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	text-shadow: none;
	animation: wsk-nlh-char-in 1.25s var(--wsk-nlh-ease-out) calc(0.45s + var(--wsk-nlh-i, 0) * 0.04s) both;
}

/* Silk sweep — gated on data-wsk-anim="1" so JS can pause it when off-screen / tab hidden. */
.wsk-neon-loops-hero[data-wsk-anim="1"] .wsk-nlh-word--accent .wsk-nlh-char,
.wsk-neon-loops-hero[data-wsk-anim="1"] .wsk-neon-loops-hero__gradient-text .wsk-nlh-char {
	animation:
		wsk-nlh-char-in 1.25s var(--wsk-nlh-ease-out) calc(0.45s + var(--wsk-nlh-i, 0) * 0.04s) both,
		wsk-nlh-silk 8s ease-in-out 1.6s infinite;
}

@keyframes wsk-nlh-silk {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* Subtext. */
.wsk-neon-loops-hero .wsk-neon-loops-hero__subtext {
	font-family: var(--wsk-nlh-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-nlh-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-nlh-subtext-font-weight, 400);
	font-style: var(--wsk-nlh-subtext-font-style, normal);
	line-height: var(--wsk-nlh-subtext-line-height, 1.65);
	letter-spacing: var(--wsk-nlh-subtext-letter-spacing, 0.005em);
	text-transform: var(--wsk-nlh-subtext-text-transform, none);
	color: var(--wsk-nlh-subtext-color, rgba(255,255,255,0.78));
	text-align: var(--wsk-nlh-subtext-text-align, center) !important;
	margin-top: var(--wsk-nlh-subtext-margin-top, 0);
	margin-bottom: var(--wsk-nlh-subtext-margin-bottom, 52px);
	max-width: 50ch;
	margin-left: auto;
	margin-right: auto;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-nlh-fade 1.1s var(--wsk-nlh-ease-out) 1.0s forwards;
}

/* Nested content — explicit color, never inherits from theme. */
.wsk-neon-loops-hero .wsk-neon-loops-hero__inner,
.wsk-neon-loops-hero .wsk-neon-loops-hero__inner p,
.wsk-neon-loops-hero .wsk-neon-loops-hero__inner a {
	color: var(--wsk-nlh-subtext-color, rgba(255,255,255,0.78)) !important;
}
.wsk-neon-loops-hero__inner {
	margin-top: 8px;
	margin-bottom: 28px;
	max-width: 50ch;
}

/* Buttons. */
.wsk-neon-loops-hero__buttons {
	display: inline-flex;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap;
	justify-content: center;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-nlh-fade 1s var(--wsk-nlh-ease-out) 1.2s forwards;
}

/* Primary — pill that fully recolors via btn1_color. */
.wsk-neon-loops-hero__btn--primary {
	display: inline-flex;
	align-items: center;
	padding: 14px 30px;
	border-radius: 999px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none;
	color: var(--wsk-nlh-bg, var(--wsk-nlh-ink));
	background: var(--wsk-nlh-btn1-color, var(--wsk-nlh-bone));
	border: 1px solid color-mix(in srgb, var(--wsk-nlh-btn1-color, var(--wsk-nlh-bone)) 80%, transparent);
	transition:
		transform 0.5s var(--wsk-nlh-ease-out),
		box-shadow 0.5s var(--wsk-nlh-ease-out);
	box-shadow: 0 8px 24px color-mix(in srgb, var(--wsk-nlh-btn1-color, var(--wsk-nlh-bone)) 25%, transparent);
}
.wsk-neon-loops-hero__btn--primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 36px color-mix(in srgb, var(--wsk-nlh-btn1-color, var(--wsk-nlh-bone)) 35%, transparent);
}

/* Secondary — italic serif link, hover-only chevron runway. */
.wsk-neon-loops-hero__btn--link {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	color: var(--wsk-nlh-btn2-color, rgba(255,255,255,0.9));
	text-decoration: none;
	padding: 10px 4px;
	font-family: "Lora", "Playfair Display", Georgia, serif;
	font-size: 15px;
	font-style: italic;
	font-weight: 500;
	letter-spacing: 0.06em;
	transition:
		color 0.45s var(--wsk-nlh-ease-out),
		letter-spacing 0.6s var(--wsk-nlh-ease-out);
}
.wsk-neon-loops-hero__btn-text { display: inline-block; }

.wsk-neon-loops-hero__btn-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
	width: 28px;
	height: 1px;
	color: currentColor;
	font-size: 0;
	transition: width 0.5s var(--wsk-nlh-ease-out);
	overflow: visible;
}
.wsk-neon-loops-hero__btn-arrow::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.55s var(--wsk-nlh-ease-out);
}
.wsk-neon-loops-hero__btn-arrow::after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	width: 7px;
	height: 7px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: translate(0, -50%) rotate(45deg);
	transition: transform 0.55s var(--wsk-nlh-ease-out);
}
.wsk-neon-loops-hero__btn--link:hover {
	color: var(--wsk-nlh-btn2-hover, var(--wsk-nlh-accent, #C9A87A));
	letter-spacing: 0.085em;
}
.wsk-neon-loops-hero__btn--link:hover .wsk-neon-loops-hero__btn-arrow { width: 44px; }
.wsk-neon-loops-hero__btn--link:hover .wsk-neon-loops-hero__btn-arrow::before { transform: scaleX(1); }
.wsk-neon-loops-hero__btn--link:hover .wsk-neon-loops-hero__btn-arrow::after { transform: translate(2px, -50%) rotate(45deg); }

.wsk-neon-loops-hero__btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

/* Keyframes. */
@keyframes wsk-nlh-fade {
	to { opacity: 1; transform: translateY(0); }
}
@keyframes wsk-nlh-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.45; transform: scale(0.85); }
}

/* Responsive. */
@media (max-width: 1024px) {
	.wsk-neon-loops-hero .wsk-neon-loops-hero__heading {
		font-size: var(--wsk-nlh-heading-font-size-md, var(--wsk-nlh-heading-font-size, clamp(2.4rem, 7vw, 4.5rem)));
	}
}
@media (max-width: 768px) {
	.wsk-neon-loops-hero { min-height: var(--wsk-nlh-min-height, 88vh); }
	.wsk-neon-loops-hero__content { padding: clamp(96px, 14vh, 120px) 22px clamp(80px, 12vh, 110px); }
	.wsk-neon-loops-hero .wsk-neon-loops-hero__heading {
		font-size: var(--wsk-nlh-heading-font-size-sm, clamp(2rem, 9vw, 2.8rem));
		max-width: 100%;
	}
	.wsk-neon-loops-hero .wsk-neon-loops-hero__subtext { font-size: 15px; max-width: 100%; }
	.wsk-neon-loops-hero__badge { font-size: 10px; padding: 7px 14px; margin-bottom: 22px; }
	.wsk-neon-loops-hero__eyebrow { font-size: 11px; gap: 10px; margin-bottom: 18px; }
	.wsk-neon-loops-hero__buttons { gap: 16px; }
}

/* Reduced motion — kill animations, swap to static fallback. */
@media (prefers-reduced-motion: reduce) {
	.wsk-neon-loops-hero__badge,
	.wsk-neon-loops-hero__eyebrow,
	.wsk-neon-loops-hero__subtext,
	.wsk-neon-loops-hero__buttons,
	.wsk-neon-loops-hero__inner,
	.wsk-nlh-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-neon-loops-hero__badge-dot { animation: none !important; opacity: 1 !important; }
	.wsk-nlh-word--accent .wsk-nlh-char,
	.wsk-neon-loops-hero__gradient-text .wsk-nlh-char {
		animation: none !important;
	}
}
/**
 * WEPRO: Antigravity Hero
 * Centered editorial hero with an animated particle-ring orbiting behind the title.
 */

[class*="wsk-antigravity-hero"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	box-sizing: border-box;
}

.wsk-antigravity-hero {
	--wsk-arh-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--wsk-arh-ink:  #121317;
	--wsk-arh-bone: #ffffff;
	position: relative;
	min-height: var(--wsk-arh-min-height, 100vh);
	background: var(--wsk-arh-bg, var(--wsk-arh-bone));
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	isolation: isolate;
}

/* Houdini ring-particles paint surface (Chromium). Firefox/Safari render the
   section with bg_color only — the @supports block below is a no-op there. */
@property --animation-tick   { syntax: '<number>'; inherits: false; initial-value: 0; }
@property --ring-radius      { syntax: '<number>'; inherits: false; initial-value: 150; }
@property --ring-x           { syntax: '<number>'; inherits: false; initial-value: 50; }
@property --ring-y           { syntax: '<number>'; inherits: false; initial-value: 50; }
@property --ring-interactive { syntax: '<number>'; inherits: false; initial-value: 0; }

@keyframes wsk-arh-ripple { 0% { --animation-tick: 0; } 100% { --animation-tick: 1; } }
@keyframes wsk-arh-ring {
	0%   { --ring-radius: var(--wsk-arh-ring-base, 150); }
	100% { --ring-radius: calc(var(--wsk-arh-ring-base, 150) + 100); }
}

@supports (background: paint(something)) {
	.wsk-antigravity-hero {
		--particle-rows: 25;
		--particle-min-alpha: 0.1;
		--particle-max-alpha: 1.0;
		--seed: 200;
		animation:
			wsk-arh-ripple 6s linear infinite,
			wsk-arh-ring   6s ease-in-out infinite alternate;
		transition: --ring-x 3s ease, --ring-y 3s ease;

		/* Worklet paints directly on the section so the inherits:false @property
		   values stay on this element (where the keyframes animate them). */
		background-image: paint(ring-particles);
	}
}

.wsk-antigravity-hero__content {
	position: relative;
	z-index: 2;
	padding: var(--wsk-arh-padding, 160px 32px 120px);
	text-align: var(--wsk-arh-align, center);
	max-width: 1080px;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-left: auto;
	margin-right: auto;
}

/* Badge — fully recolored by badge_color picker. */
.wsk-antigravity-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 8px 18px;
	border-radius: 999px;
	background: color-mix(in srgb, var(--wsk-arh-badge-color, var(--wsk-arh-accent, #3186ff)) 12%, transparent);
	backdrop-filter: blur(16px) saturate(140%);
	-webkit-backdrop-filter: blur(16px) saturate(140%);
	border: 1px solid color-mix(in srgb, var(--wsk-arh-badge-color, var(--wsk-arh-accent, #3186ff)) 40%, transparent);
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 11px;
	color: var(--wsk-arh-badge-color, var(--wsk-arh-accent, #3186ff));
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	margin-bottom: 28px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-arh-fade 1s var(--wsk-arh-ease-out) 0.15s forwards;
}

.wsk-antigravity-hero__badge-dot {
	width: 6px;
	height: 6px;
	background: var(--wsk-arh-badge-color, var(--wsk-arh-accent, #3186ff));
	border-radius: 50%;
	box-shadow: 0 0 10px var(--wsk-arh-badge-color, var(--wsk-arh-accent, #3186ff));
	animation: wsk-arh-pulse 2.4s ease-in-out infinite;
}

/* Eyebrow. */
.wsk-antigravity-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wsk-arh-accent, #3186ff);
	margin-bottom: 26px;
	opacity: 0;
	transform: translateY(10px);
	animation: wsk-arh-fade 1s var(--wsk-arh-ease-out) 0.3s forwards;
}
.wsk-antigravity-hero__eyebrow-line {
	flex: 0 0 40px;
	height: 1px;
	background: currentColor;
	opacity: 0.55;
}

/* Heading — perspective for 3D character entrance. */
.wsk-antigravity-hero .wsk-antigravity-hero__heading {
	font-family: var(--wsk-arh-heading-font-family, "Google Sans Flex", "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-arh-heading-font-size, clamp(2.75rem, 7vw, 6rem));
	font-weight: var(--wsk-arh-heading-font-weight, 500);
	font-style: var(--wsk-arh-heading-font-style, normal);
	line-height: var(--wsk-arh-heading-line-height, 1.04);
	letter-spacing: var(--wsk-arh-heading-letter-spacing, -0.02em);
	text-transform: var(--wsk-arh-heading-text-transform, none);
	color: var(--wsk-arh-heading-color, var(--wsk-arh-ink));
	text-align: var(--wsk-arh-heading-text-align, center) !important;
	margin-top: var(--wsk-arh-heading-margin-top, 0);
	margin-bottom: var(--wsk-arh-heading-margin-bottom, 32px);
	max-width: 18ch;
	margin-left: auto;
	margin-right: auto;
	perspective: 900px;
	perspective-origin: 50% 60%;
	text-wrap: balance;
}

.wsk-arh-word {
	display: inline-block;
	white-space: nowrap;
	transform-style: preserve-3d;
}
.wsk-arh-space { display: inline; }

.wsk-arh-char {
	display: inline-block;
	opacity: 0;
	transform: translateY(0.55em) translateZ(-60px) rotateX(-45deg);
	filter: blur(6px);
	transform-origin: center bottom;
	will-change: transform, opacity, filter;
	animation:
		wsk-arh-char-in 1.2s var(--wsk-arh-ease-out) calc(0.4s + var(--wsk-arh-i, 0) * 0.035s) both,
		wsk-arh-char-drift 7s ease-in-out calc(2s + var(--wsk-arh-i, 0) * 70ms) infinite;
}

/* Subtle perpetual drift — ties the title visually into the breathing ring. */
@keyframes wsk-arh-char-drift {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50%      { transform: translate3d(0, -3px, 0); }
}

@keyframes wsk-arh-char-in {
	0%   { opacity: 0; transform: translateY(0.55em) translateZ(-60px) rotateX(-45deg); filter: blur(6px); }
	60%  { opacity: 1; filter: blur(0); }
	100% { opacity: 1; transform: translateY(0) translateZ(0) rotateX(0); filter: blur(0); }
}

/* Accent words — gradient sweep using the accent color. */
.wsk-arh-word--accent,
.wsk-antigravity-hero__gradient-text {
	font-style: italic;
}

.wsk-arh-word--accent .wsk-arh-char,
.wsk-antigravity-hero__gradient-text .wsk-arh-char {
	background: linear-gradient(
		100deg,
		color-mix(in srgb, var(--wsk-arh-accent, #3186ff) 60%, var(--wsk-arh-ink)) 0%,
		var(--wsk-arh-accent, #3186ff) 45%,
		color-mix(in srgb, var(--wsk-arh-accent, #3186ff) 70%, #ffffff) 70%,
		var(--wsk-arh-accent, #3186ff) 100%
	);
	background-size: 200% 100%;
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	color: transparent;
	animation:
		wsk-arh-char-in 1.2s var(--wsk-arh-ease-out) calc(0.4s + var(--wsk-arh-i, 0) * 0.035s) both,
		wsk-arh-silk 8s ease-in-out 1.6s infinite;
}

@keyframes wsk-arh-silk {
	0%, 100% { background-position: 0% 50%; }
	50%      { background-position: 100% 50%; }
}

/* Subtext. */
.wsk-antigravity-hero .wsk-antigravity-hero__subtext {
	font-family: var(--wsk-arh-subtext-font-family, "Inter", ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-arh-subtext-font-size, clamp(1rem, 1.4vw, 1.15rem));
	font-weight: var(--wsk-arh-subtext-font-weight, 400);
	font-style: var(--wsk-arh-subtext-font-style, normal);
	line-height: var(--wsk-arh-subtext-line-height, 1.65);
	letter-spacing: var(--wsk-arh-subtext-letter-spacing, 0.005em);
	text-transform: var(--wsk-arh-subtext-text-transform, none);
	color: var(--wsk-arh-subtext-color, #45474D);
	text-align: var(--wsk-arh-subtext-text-align, center) !important;
	margin-top: var(--wsk-arh-subtext-margin-top, 0);
	margin-bottom: var(--wsk-arh-subtext-margin-bottom, 52px);
	max-width: 50ch;
	margin-left: auto;
	margin-right: auto;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-arh-fade 1.1s var(--wsk-arh-ease-out) 1.0s forwards;
	text-wrap: pretty;
}

/* Nested content — explicit color, never inherits. */
.wsk-antigravity-hero .wsk-antigravity-hero__inner,
.wsk-antigravity-hero .wsk-antigravity-hero__inner p,
.wsk-antigravity-hero .wsk-antigravity-hero__inner a {
	color: var(--wsk-arh-subtext-color, #45474D) !important;
}
.wsk-antigravity-hero__inner {
	margin-top: 8px;
	margin-bottom: 28px;
	max-width: 50ch;
}

/* Buttons. */
.wsk-antigravity-hero__buttons {
	display: inline-flex;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap;
	justify-content: center;
	opacity: 0;
	transform: translateY(12px);
	animation: wsk-arh-fade 1s var(--wsk-arh-ease-out) 1.2s forwards;
}

/* Primary CTA — frosted dark glass over the ring particles. */
.wsk-antigravity-hero__btn--primary {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 32px;
	border-radius: 999px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-decoration: none;
	color: var(--wsk-arh-bg, var(--wsk-arh-bone));
	background: color-mix(in srgb, var(--wsk-arh-btn1-color, var(--wsk-arh-ink)) 88%, transparent);
	backdrop-filter: blur(20px) saturate(180%);
	-webkit-backdrop-filter: blur(20px) saturate(180%);
	border: 1px solid color-mix(in srgb, var(--wsk-arh-btn1-color, var(--wsk-arh-ink)) 28%, transparent);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.08),
		inset 0 -1px 0 rgba(0,0,0,0.18),
		0 8px 28px color-mix(in srgb, var(--wsk-arh-btn1-color, var(--wsk-arh-ink)) 22%, transparent);
	transition:
		transform 0.5s var(--wsk-arh-ease-out),
		box-shadow 0.5s var(--wsk-arh-ease-out),
		background 0.4s var(--wsk-arh-ease-out),
		border-color 0.4s var(--wsk-arh-ease-out);
}
.wsk-antigravity-hero__btn--primary:hover {
	transform: translateY(-2px);
	background: color-mix(in srgb, var(--wsk-arh-btn1-color, var(--wsk-arh-ink)) 96%, transparent);
	border-color: color-mix(in srgb, var(--wsk-arh-btn1-color, var(--wsk-arh-ink)) 50%, transparent);
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.12),
		inset 0 -1px 0 rgba(0,0,0,0.22),
		0 14px 40px color-mix(in srgb, var(--wsk-arh-btn1-color, var(--wsk-arh-ink)) 36%, transparent);
}

.wsk-antigravity-hero__btn--link {
	display: inline-flex;
	align-items: center;
	gap: 16px;
	color: var(--wsk-arh-btn2-color, var(--wsk-arh-ink));
	text-decoration: none;
	padding: 12px 22px;
	border-radius: 999px;
	font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.04em;
	background: transparent;
	border: 1px solid transparent;
	transition:
		color 0.45s var(--wsk-arh-ease-out),
		letter-spacing 0.6s var(--wsk-arh-ease-out),
		background 0.4s var(--wsk-arh-ease-out),
		border-color 0.4s var(--wsk-arh-ease-out),
		backdrop-filter 0.4s var(--wsk-arh-ease-out);
}
.wsk-antigravity-hero__btn--link:hover {
	background: color-mix(in srgb, var(--wsk-arh-btn2-color, var(--wsk-arh-ink)) 6%, transparent);
	backdrop-filter: blur(14px) saturate(140%);
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	border-color: color-mix(in srgb, var(--wsk-arh-btn2-color, var(--wsk-arh-ink)) 18%, transparent);
}
.wsk-antigravity-hero__btn-text { display: inline-block; }

.wsk-antigravity-hero__btn-arrow {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
	width: 28px;
	height: 1px;
	color: currentColor;
	font-size: 0;
	transition: width 0.5s var(--wsk-arh-ease-out);
	overflow: visible;
}
.wsk-antigravity-hero__btn-arrow::before {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	height: 1px;
	background: currentColor;
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.55s var(--wsk-arh-ease-out);
}
.wsk-antigravity-hero__btn-arrow::after {
	content: '';
	position: absolute;
	right: 0;
	top: 50%;
	width: 7px;
	height: 7px;
	border-top: 1px solid currentColor;
	border-right: 1px solid currentColor;
	transform: translate(0, -50%) rotate(45deg);
	transition: transform 0.55s var(--wsk-arh-ease-out);
}
.wsk-antigravity-hero__btn--link:hover {
	color: var(--wsk-arh-btn2-hover, var(--wsk-arh-accent, #3186ff));
	letter-spacing: 0.07em;
}
.wsk-antigravity-hero__btn--link:hover .wsk-antigravity-hero__btn-arrow { width: 44px; }
.wsk-antigravity-hero__btn--link:hover .wsk-antigravity-hero__btn-arrow::before { transform: scaleX(1); }
.wsk-antigravity-hero__btn--link:hover .wsk-antigravity-hero__btn-arrow::after { transform: translate(2px, -50%) rotate(45deg); }

.wsk-antigravity-hero__btn:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

/* Keyframes. */
@keyframes wsk-arh-fade {
	to { opacity: 1; transform: translateY(0); }
}
@keyframes wsk-arh-pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50%      { opacity: 0.45; transform: scale(0.85); }
}

/* Responsive. */
@media (max-width: 1024px) {
	.wsk-antigravity-hero .wsk-antigravity-hero__heading {
		font-size: var(--wsk-arh-heading-font-size-md, var(--wsk-arh-heading-font-size, clamp(2.4rem, 7vw, 4.5rem)));
	}
}
@media (max-width: 768px) {
	.wsk-antigravity-hero { min-height: var(--wsk-arh-min-height, 88vh); }
	.wsk-antigravity-hero__content { padding: clamp(96px, 14vh, 120px) 22px clamp(80px, 12vh, 110px); }
	.wsk-antigravity-hero .wsk-antigravity-hero__heading {
		font-size: var(--wsk-arh-heading-font-size-sm, clamp(2rem, 9vw, 2.8rem));
		max-width: 100%;
	}
	.wsk-antigravity-hero .wsk-antigravity-hero__subtext { font-size: 15px; max-width: 100%; }
	.wsk-antigravity-hero__badge { font-size: 10px; padding: 7px 14px; margin-bottom: 22px; }
	.wsk-antigravity-hero__eyebrow { font-size: 11px; gap: 10px; margin-bottom: 18px; }
	.wsk-antigravity-hero__buttons { gap: 16px; }
}

/* Reduced motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-antigravity-hero__badge,
	.wsk-antigravity-hero__eyebrow,
	.wsk-antigravity-hero__subtext,
	.wsk-antigravity-hero__buttons,
	.wsk-antigravity-hero__inner,
	.wsk-arh-char {
		animation: none !important;
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
	}
	.wsk-antigravity-hero__badge-dot { animation: none !important; opacity: 1 !important; }
	.wsk-arh-word--accent .wsk-arh-char,
	.wsk-antigravity-hero__gradient-text .wsk-arh-char {
		animation: none !important;
	}
}
/**
 * WEPRO: Six Faces Cube
 * Scroll-driven 3D cube hero with dynamic post faces and alternating text cards.
 *
 * Theme tokens cascade: editor inline override → Avada Global Color → ref default.
 * Fixed-position overlays stay in-flow inside the element container.
 */

[class*="wsk-six-faces-cube"],
[class*="wsk-sfc-"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	box-sizing: border-box;
}

/* Tokens live on the element root. */
.wsk-six-faces-cube {
	--wsk-sfc-bg-dark:      var(--awb-color8, #1c1814);
	--wsk-sfc-fg-dark:      var(--awb-color1, #ede8df);
	--wsk-sfc-muted-dark:   var(--awb-color5, #8a7b6e);
	--wsk-sfc-accent-dark:  var(--awb-color6, #d4a84b);
	--wsk-sfc-bg-light:     var(--awb-color1, #f0ece3);
	--wsk-sfc-fg-light:     var(--awb-color8, #0d0d14);
	--wsk-sfc-muted-light:  var(--awb-color5, #9a9aaa);
	--wsk-sfc-accent-light: var(--awb-color6, #3a6e00);

	--wsk-sfc-bg:     var(--wsk-sfc-bg-dark);
	--wsk-sfc-fg:     var(--wsk-sfc-fg-dark);
	--wsk-sfc-muted:  var(--wsk-sfc-muted-dark);
	--wsk-sfc-accent: var(--wsk-sfc-accent-dark);

	--wsk-sfc-card-bg-default:     rgba(28, 24, 20, 0.82);
	--wsk-sfc-card-border-default: rgba(212, 168, 75, 0.2);
	--wsk-sfc-card-bg-fallback:    var(--wsk-sfc-card-bg, var(--wsk-sfc-card-bg-default));
	--wsk-sfc-card-border-fallback: var(--wsk-sfc-card-border, var(--wsk-sfc-card-border-default));

	--wsk-sfc-hairline:  0.0625rem;
	--wsk-sfc-ui-inset:  2rem;
	--wsk-sfc-nav-x:     calc(var(--wsk-sfc-ui-inset) + 0.125rem);
	--wsk-sfc-reveal-offset: 0.625rem;
	--wsk-sfc-reveal-duration: 0.5s;
	--wsk-sfc-z-ui: 10;
	--wsk-sfc-cube-edge: min(74vw, 74vh, 560px);
}

.wsk-six-faces-cube {
	position: relative;
	background: var(--wsk-sfc-bg);
	color: var(--wsk-sfc-fg);
	transition: background 0.3s ease, color 0.3s ease;
}

/* Belt-and-suspenders for cube sizing: literal fallback + !important so
   ancestor transforms or stacking-context surprises can't collapse it. */
.wsk-sfc-cube {
	width:  var(--wsk-sfc-cube-edge, min(74vw, 74vh, 560px)) !important;
	height: var(--wsk-sfc-cube-edge, min(74vw, 74vh, 560px)) !important;
}

/* Theme override applies on the element root. */
.wsk-six-faces-cube[data-theme="light"] {
	--wsk-sfc-bg:     var(--wsk-sfc-bg-light);
	--wsk-sfc-fg:     var(--wsk-sfc-fg-light);
	--wsk-sfc-muted:  var(--wsk-sfc-muted-light);
	--wsk-sfc-accent: var(--wsk-sfc-accent-light);
	--wsk-sfc-card-bg-default:     rgba(240, 236, 227, 0.08);
	--wsk-sfc-card-border-default: rgba(58, 110, 0, 0.14);
}

/* Empty state. */
.wsk-six-faces-cube--empty {
	padding: 4rem 2rem;
	text-align: center;
	color: var(--wsk-sfc-muted);
	font-family: ui-monospace, monospace;
	font-size: 0.85rem;
}

/* Scene (cube) — fixed inside the element container.
   Hidden by default so fixed overlays don't bleed onto sibling sections;
   JS adds .wsk-six-faces-cube--inview when the container is in the viewport. */
.wsk-sfc-scene,
.wsk-sfc-hud,
.wsk-sfc-strip,
.wsk-sfc-theme-toggle,
.wsk-sfc-caption {
	visibility: hidden;
	opacity: 0;
	transition: opacity 0.25s ease;
}

.wsk-six-faces-cube--inview .wsk-sfc-scene,
.wsk-six-faces-cube--inview .wsk-sfc-hud,
.wsk-six-faces-cube--inview .wsk-sfc-strip,
.wsk-six-faces-cube--inview .wsk-sfc-theme-toggle,
.wsk-six-faces-cube--inview .wsk-sfc-caption {
	visibility: visible;
	opacity: 1;
}

.wsk-sfc-scene {
	position: fixed;
	inset: 0;
	z-index: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	perspective: 1100px;
	pointer-events: none;
}

.wsk-sfc-cube {
	width: var(--wsk-sfc-cube-edge);
	height: var(--wsk-sfc-cube-edge);
	position: relative;
	transform-style: preserve-3d;
	transform: rotateX(90deg) rotateY(0deg);
	will-change: transform;
}

.wsk-sfc-face {
	position: absolute;
	inset: 0;
	overflow: hidden;
	backface-visibility: hidden;
	background:
		repeating-linear-gradient(
			0deg,
			rgba(255, 255, 255, 0.02) 0,
			rgba(255, 255, 255, 0.02) 1px,
			transparent 1px,
			transparent 48px
		),
		repeating-linear-gradient(
			90deg,
			rgba(255, 255, 255, 0.02) 0,
			rgba(255, 255, 255, 0.02) 1px,
			transparent 1px,
			transparent 48px
		),
		var(--wsk-sfc-bg);
}

.wsk-six-faces-cube[data-theme="light"] .wsk-sfc-face {
	background:
		repeating-linear-gradient(
			0deg,
			rgba(0, 0, 0, 0.05) 0,
			rgba(0, 0, 0, 0.05) 1px,
			transparent 1px,
			transparent 48px
		),
		repeating-linear-gradient(
			90deg,
			rgba(0, 0, 0, 0.05) 0,
			rgba(0, 0, 0, 0.05) 1px,
			transparent 1px,
			transparent 48px
		),
		var(--wsk-sfc-bg);
}

.wsk-sfc-face .wsk-sfc-face__img,
.wsk-sfc-face img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	display: block;
}

.wsk-sfc-face:has(img) .wsk-sfc-face__ph {
	display: none;
}

.wsk-sfc-face__ph {
	position: absolute;
	bottom: 1.5rem;
	left: 1.75rem;
	font-family: var(--wsk-sfc-heading-font-family, "Bebas Neue", ui-sans-serif, system-ui, sans-serif);
	font-size: clamp(2rem, 8vw, 5rem);
	letter-spacing: 0.04em;
	color: rgba(255, 255, 255, 0.06);
	pointer-events: none;
	user-select: none;
	text-transform: uppercase;
}

.wsk-six-faces-cube[data-theme="light"] .wsk-sfc-face__ph {
	color: rgba(0, 0, 0, 0.07);
}

.wsk-sfc-face[data-face="front"]  { transform: translateZ(calc(var(--wsk-sfc-cube-edge) / 2)); }
.wsk-sfc-face[data-face="back"]   { transform: rotateY(180deg) translateZ(calc(var(--wsk-sfc-cube-edge) / 2)); }
.wsk-sfc-face[data-face="right"]  { transform: rotateY(90deg) translateZ(calc(var(--wsk-sfc-cube-edge) / 2)); }
.wsk-sfc-face[data-face="left"]   { transform: rotateY(-90deg) translateZ(calc(var(--wsk-sfc-cube-edge) / 2)); }
.wsk-sfc-face[data-face="top"]    { transform: rotateX(-90deg) translateZ(calc(var(--wsk-sfc-cube-edge) / 2)); }
.wsk-sfc-face[data-face="bottom"] { transform: rotateX(90deg) translateZ(calc(var(--wsk-sfc-cube-edge) / 2)); }

/* HUD top-right. */
.wsk-sfc-hud {
	position: fixed;
	top: var(--wsk-sfc-ui-inset);
	right: var(--wsk-sfc-ui-inset);
	z-index: var(--wsk-sfc-z-ui);
	text-align: right;
	font-family: ui-monospace, monospace;
	font-size: 0.65rem;
	letter-spacing: 0.15em;
	color: var(--wsk-sfc-muted);
	text-transform: uppercase;
	pointer-events: none;
}

.wsk-sfc-progress {
	width: 7.5rem;
	height: var(--wsk-sfc-hairline);
	background: var(--wsk-sfc-muted);
	margin-top: 0.5rem;
	margin-left: auto;
	position: relative;
	overflow: hidden;
}

.wsk-sfc-progress__fill {
	position: absolute;
	inset-block: 0;
	left: 0;
	width: 0%;
	background: var(--wsk-sfc-accent);
	transition: width 0.1s linear;
}

.wsk-sfc-hud__label {
	font-size: 0.6rem;
	color: var(--wsk-sfc-accent);
	margin-top: 0.4rem;
	min-height: 0.7rem;
}

/* Scene strip (left). */
.wsk-sfc-strip {
	position: fixed;
	left: var(--wsk-sfc-nav-x);
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: var(--wsk-sfc-z-ui);
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.wsk-sfc-strip__dot {
	position: relative;
	display: block;
	width: 0.25rem;
	height: 0.25rem;
	border-radius: 50%;
	background: var(--wsk-sfc-muted);
	transition: background 0.3s, transform 0.3s;
	cursor: pointer;
	text-decoration: none;
}

.wsk-sfc-strip__dot::before {
	content: "";
	position: absolute;
	inset: -0.5rem;
}

.wsk-sfc-strip__dot--active {
	background: var(--wsk-sfc-accent);
	transform: scale(1.8);
}

.wsk-sfc-strip__dot:focus-visible {
	outline: 2px solid var(--wsk-sfc-accent);
	outline-offset: 4px;
}

/* Theme toggle (bottom-left). */
.wsk-sfc-theme-toggle {
	position: fixed;
	bottom: var(--wsk-sfc-ui-inset);
	left: var(--wsk-sfc-nav-x);
	transform: translate(-50%, 0);
	z-index: var(--wsk-sfc-z-ui);
	width: 2.75rem;
	height: 2.75rem;
	border: none;
	background: color-mix(in srgb, var(--wsk-sfc-muted) 35%, transparent);
	border-radius: 50%;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.3s;
	color: var(--wsk-sfc-accent);
	padding: 0;
}

.wsk-sfc-theme-toggle:hover {
	background: color-mix(in srgb, var(--wsk-sfc-muted) 55%, transparent);
}

.wsk-sfc-theme-toggle:focus-visible {
	outline: 2px solid var(--wsk-sfc-accent);
	outline-offset: 4px;
}

.wsk-sfc-theme-toggle svg {
	width: 0.875rem;
	height: 0.875rem;
	position: absolute;
	transition: opacity 0.3s ease, transform 0.3s ease;
}

.wsk-sfc-icon-sun  { opacity: 1; transform: rotate(0deg); }
.wsk-sfc-icon-moon { opacity: 0; transform: rotate(90deg); }

.wsk-six-faces-cube[data-theme="light"] .wsk-sfc-theme-toggle { color: var(--wsk-sfc-fg); }
.wsk-six-faces-cube[data-theme="light"] .wsk-sfc-icon-sun  { opacity: 0; transform: rotate(-90deg); }
.wsk-six-faces-cube[data-theme="light"] .wsk-sfc-icon-moon { opacity: 1; transform: rotate(0deg); }

/* Face caption (bottom-center). */
.wsk-sfc-caption {
	position: fixed;
	bottom: var(--wsk-sfc-ui-inset);
	left: 50%;
	transform: translate(-50%, 0);
	z-index: var(--wsk-sfc-z-ui);
	text-align: center;
	pointer-events: none;
	user-select: none;
}

.wsk-sfc-caption__num {
	font-family: ui-monospace, monospace;
	font-size: 0.58rem;
	letter-spacing: 0.28em;
	color: var(--wsk-sfc-accent);
	text-transform: uppercase;
	margin-bottom: 0.15rem;
}

.wsk-sfc-caption__name {
	font-family: var(--wsk-sfc-heading-font-family, "Bebas Neue", ui-sans-serif, system-ui, sans-serif);
	font-size: clamp(1.8rem, 5vw, 3.5rem);
	letter-spacing: 0.08em;
	color: var(--wsk-sfc-muted);
	opacity: 0.5;
	line-height: 1;
	text-transform: uppercase;
	min-height: 1em;
}

.wsk-six-faces-cube[data-theme="light"] .wsk-sfc-caption__name { opacity: 0.35; }

/* Scroll container + sections. */
.wsk-sfc-scroll {
	position: relative;
	z-index: 1;
}

.wsk-sfc-section {
	min-height: 100vh;
	display: flex;
	align-items: center;
	padding: 6rem calc(5rem + var(--wsk-sfc-ui-inset)) 6rem 5rem;
}

/* Cards. */
.wsk-sfc-card {
	max-width: 23.75rem;
	padding: 2.25rem 2rem;
	background: var(--wsk-sfc-card-bg-fallback);
	border-left: var(--wsk-sfc-hairline) solid var(--wsk-sfc-card-border-fallback);
	backdrop-filter: blur(6px) saturate(120%);
	-webkit-backdrop-filter: blur(6px) saturate(120%);
	overflow: hidden;
	transition: background 0.3s ease, border-color 0.3s ease;
}

.wsk-sfc-card--right {
	margin-left: auto;
	border-left: none;
	border-right: var(--wsk-sfc-hairline) solid var(--wsk-sfc-card-border-fallback);
	text-align: right;
}

.wsk-sfc-card--right .wsk-sfc-card__hline {
	transform-origin: right;
	margin-left: auto;
}

.wsk-sfc-card--right .wsk-sfc-card__cta-row {
	justify-content: flex-end;
}

/* Eyebrow / tag — typography pulled from --wsk-sfc-eyebrow-* vars. */
.wsk-six-faces-cube .wsk-sfc-card__tag {
	font-family: var(--wsk-sfc-eyebrow-font-family, ui-monospace, monospace);
	font-weight: var(--wsk-sfc-eyebrow-font-weight, 400);
	font-style: var(--wsk-sfc-eyebrow-font-style, normal);
	font-size: var(--wsk-sfc-eyebrow-font-size, 0.6rem);
	line-height: var(--wsk-sfc-eyebrow-line-height, normal);
	letter-spacing: var(--wsk-sfc-eyebrow-letter-spacing, 0.25em);
	text-transform: var(--wsk-sfc-eyebrow-text-transform, uppercase);
	color: var(--wsk-sfc-eyebrow-color, var(--wsk-sfc-accent));
	margin-top: var(--wsk-sfc-eyebrow-margin-top, 0);
	margin-bottom: var(--wsk-sfc-eyebrow-margin-bottom, 1.1rem);
}

.wsk-six-faces-cube .wsk-sfc-card__heading {
	font-family: var(--wsk-sfc-heading-font-family, "Bebas Neue", ui-sans-serif, system-ui, sans-serif);
	font-weight: var(--wsk-sfc-heading-font-weight, 400);
	font-style: var(--wsk-sfc-heading-font-style, normal);
	letter-spacing: var(--wsk-sfc-heading-letter-spacing, 0.03em);
	line-height: var(--wsk-sfc-heading-line-height, 0.92);
	font-size: var(--wsk-sfc-heading-font-size, clamp(2.2rem, 5vw, 4rem));
	text-transform: var(--wsk-sfc-heading-text-transform, uppercase);
	color: var(--wsk-sfc-heading-color, var(--wsk-sfc-fg));
	margin-top: var(--wsk-sfc-heading-margin-top, 0);
	margin-bottom: var(--wsk-sfc-heading-margin-bottom, 0);
}

.wsk-six-faces-cube .wsk-sfc-section[data-i="0"] .wsk-sfc-card__heading {
	font-size: clamp(3rem, 8vw, 6.5rem);
}

.wsk-six-faces-cube .wsk-sfc-card__body {
	font-family: var(--wsk-sfc-body-font-family, "DM Mono", ui-monospace, monospace);
	font-weight: var(--wsk-sfc-body-font-weight, 400);
	font-style: var(--wsk-sfc-body-font-style, normal);
	font-size: var(--wsk-sfc-body-font-size, 0.78rem);
	line-height: var(--wsk-sfc-body-line-height, 1.8);
	letter-spacing: var(--wsk-sfc-body-letter-spacing, 0);
	text-transform: var(--wsk-sfc-body-text-transform, none);
	color: color-mix(in srgb, var(--wsk-sfc-body-color, var(--wsk-sfc-fg)) 55%, transparent);
	margin-top: var(--wsk-sfc-body-margin-top, 1.25rem);
	margin-bottom: var(--wsk-sfc-body-margin-bottom, 0);
}

.wsk-sfc-card__hline {
	width: 3.125rem;
	height: var(--wsk-sfc-hairline);
	background: var(--wsk-sfc-accent);
	margin-bottom: 1.2rem;
	transform-origin: left;
}

.wsk-sfc-card__cta-row {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 0.75rem;
	margin-top: 1.75rem;
	flex-wrap: wrap;
}

.wsk-sfc-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.6rem 1.25rem;
	border: var(--wsk-sfc-hairline) solid var(--wsk-sfc-accent);
	color: var(--wsk-sfc-accent);
	font-family: ui-monospace, monospace;
	font-size: 0.62rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.2s, color 0.2s;
}

.wsk-sfc-card__cta:hover {
	background: var(--wsk-sfc-accent);
	color: var(--wsk-sfc-bg);
}

/* Permalink CTA — filled by default to distinguish from anchor-nav CTA. */
.wsk-sfc-card__cta--permalink {
	background: var(--wsk-sfc-accent);
	color: var(--wsk-sfc-bg);
}

.wsk-sfc-card__cta--permalink:hover {
	background: transparent;
	color: var(--wsk-sfc-accent);
}

.wsk-sfc-card__cta svg,
.wsk-sfc-card__back svg {
	width: 0.6875rem;
	height: 0.6875rem;
}

.wsk-sfc-card__back {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.6rem 1.25rem;
	border: var(--wsk-sfc-hairline) solid color-mix(in srgb, var(--wsk-sfc-muted) 45%, transparent);
	color: var(--wsk-sfc-muted);
	font-family: ui-monospace, monospace;
	font-size: 0.62rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-decoration: none;
	transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.wsk-sfc-card__back:hover {
	background: color-mix(in srgb, var(--wsk-sfc-muted) 12%, transparent);
	border-color: var(--wsk-sfc-muted);
	color: var(--wsk-sfc-fg);
}

.wsk-sfc-card__cta:focus-visible,
.wsk-sfc-card__back:focus-visible {
	outline: 2px solid var(--wsk-sfc-accent);
	outline-offset: 3px;
}

/* Reveal-on-scroll. */
.wsk-sfc-card__tag,
.wsk-six-faces-cube .wsk-sfc-card__heading,
.wsk-six-faces-cube .wsk-sfc-card__body,
.wsk-sfc-card__cta,
.wsk-sfc-card__back {
	opacity: 0;
	transform: translateY(var(--wsk-sfc-reveal-offset));
}

.wsk-six-faces-cube .wsk-sfc-card__heading {
	transform: translateY(1.125rem);
	transition: opacity var(--wsk-sfc-reveal-duration) ease 0.08s,
		transform var(--wsk-sfc-reveal-duration) ease 0.08s;
}

.wsk-sfc-card__tag {
	transition: opacity var(--wsk-sfc-reveal-duration) ease,
		transform var(--wsk-sfc-reveal-duration) ease;
}

.wsk-six-faces-cube .wsk-sfc-card__body {
	transition: opacity var(--wsk-sfc-reveal-duration) ease 0.2s,
		transform var(--wsk-sfc-reveal-duration) ease 0.2s;
}

.wsk-sfc-card__cta,
.wsk-sfc-card__back {
	transition: opacity var(--wsk-sfc-reveal-duration) ease 0.35s,
		transform var(--wsk-sfc-reveal-duration) ease 0.35s,
		background 0.2s, color 0.2s, border-color 0.2s;
}

.wsk-sfc-card__hline {
	opacity: 0;
	transform: scaleX(0);
	transition: opacity 0.4s ease, transform 0.4s ease;
}

.wsk-sfc-card__tag.wsk-sfc-visible,
.wsk-six-faces-cube .wsk-sfc-card__heading.wsk-sfc-visible,
.wsk-six-faces-cube .wsk-sfc-card__body.wsk-sfc-visible,
.wsk-sfc-card__cta.wsk-sfc-visible,
.wsk-sfc-card__back.wsk-sfc-visible {
	opacity: 1;
	transform: translateY(0);
}

.wsk-sfc-card__hline.wsk-sfc-visible {
	opacity: 1;
	transform: scaleX(1);
}

/* Responsive. */
@media (max-width: 56.25em) {
	.wsk-six-faces-cube {
		--wsk-sfc-ui-inset: 1rem;
	}
	.wsk-sfc-hud {
		top: 1rem;
		right: 1rem;
	}
	.wsk-sfc-strip {
		display: none;
	}
	.wsk-sfc-theme-toggle {
		bottom: 1rem;
		left: 1.25rem;
		transform: none;
	}
	.wsk-sfc-caption {
		bottom: 1rem;
	}
	.wsk-sfc-section {
		min-height: 150vh;
		align-items: flex-end;
		padding: 0 1.5rem 3.5rem;
	}
	.wsk-sfc-section[data-i="0"] {
		min-height: 100vh;
		align-items: center;
		padding: 4rem 1.5rem;
	}
	.wsk-sfc-card,
	.wsk-sfc-card--right {
		max-width: 100%;
		padding: 1.5rem 1.25rem;
	}
	.wsk-six-faces-cube .wsk-sfc-card__body {
		line-height: 1.55;
	}
	.wsk-sfc-card__cta-row {
		margin-top: 1.25rem;
	}
}

/* Reduced motion. */
@media (prefers-reduced-motion: reduce) {
	.wsk-sfc-cube {
		transition: none !important;
		transform: rotateX(0deg) rotateY(0deg) !important;
	}
	.wsk-sfc-theme-toggle svg {
		transition: none !important;
	}
	.wsk-sfc-card__tag,
	.wsk-six-faces-cube .wsk-sfc-card__heading,
	.wsk-six-faces-cube .wsk-sfc-card__body,
	.wsk-sfc-card__cta,
	.wsk-sfc-card__back {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
	.wsk-sfc-card__hline {
		opacity: 1 !important;
		transform: scaleX(1) !important;
	}
	.wsk-sfc-progress__fill {
		transition: none !important;
	}
}
/**
 * WEPRO: Liquid Droplets Hero
 * WebGL metaball-refraction hero. Title is rasterized into the canvas
 * background; CTAs and info-hint are DOM overlays above the canvas.
 */

[class*="wsk-liquid-droplets-hero"],
[class*="wsk-ldh-"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	box-sizing: border-box;
}

.wsk-liquid-droplets-hero {
	position: relative;
	width: 100%;
	min-height: var(--wsk-ldh-min-height, 100vh);
	overflow: hidden;
	/* Background sits behind the WebGL canvas (canvas covers full surface);
	   kept transparent so Avada section bg / parent container shows through
	   in the brief moment before the canvas paints its first frame. */
	background: transparent;
	font-family: var(--wsk-ldh-title-font-family, ui-sans-serif, system-ui, sans-serif);
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: center;
	padding: clamp(40px, 6vh, 80px) clamp(16px, 4vw, 64px);
}

.wsk-ldh-canvas-host {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}

.wsk-ldh-canvas-host canvas {
	display: block;
	width: 100% !important;
	height: 100% !important;
	pointer-events: auto;
}

/* Visually-hidden content that's still announced to assistive tech and indexed
   by crawlers. The visible title lives in the canvas as pixels. */
.wsk-ldh-sr {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.wsk-ldh-ctas {
	position: relative;
	z-index: 2;
	display: inline-flex;
	gap: 14px;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: clamp(40px, 6vh, 80px);
}

.wsk-ldh-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 32px;
	border-radius: 999px;
	font-family: var(--wsk-ldh-cta-font-family, ui-sans-serif, system-ui, sans-serif);
	font-size: var(--wsk-ldh-cta-font-size, 14px);
	font-weight: var(--wsk-ldh-cta-font-weight, 500);
	font-style: var(--wsk-ldh-cta-font-style, normal);
	line-height: var(--wsk-ldh-cta-line-height, 1.2);
	letter-spacing: var(--wsk-ldh-cta-letter-spacing, 0.04em);
	text-transform: var(--wsk-ldh-cta-text-transform, none);
	text-decoration: none;
	transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1), background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

.wsk-ldh-cta--primary {
	background: var(--wsk-ldh-cta1-bg, #ffffff);
	color: var(--wsk-ldh-cta1-color, #0a0a12);
	border: 1px solid var(--wsk-ldh-cta1-bg, #ffffff);
}

.wsk-ldh-cta--primary:hover {
	transform: translateY(-2px);
}

.wsk-ldh-cta--ghost {
	background: transparent;
	color: var(--wsk-ldh-cta2-color, #ffffff);
	border: 1px solid color-mix(in srgb, var(--wsk-ldh-cta2-color, #ffffff) 40%, transparent);
}

.wsk-ldh-cta--ghost:hover {
	background: color-mix(in srgb, var(--wsk-ldh-cta2-color, #ffffff) 12%, transparent);
	border-color: var(--wsk-ldh-cta2-color, #ffffff);
}

.wsk-ldh-cta:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

.wsk-ldh-info {
	position: relative;
	z-index: 2;
	font-family: var(--wsk-ldh-subtitle-font-family, ui-sans-serif, system-ui, sans-serif);
	font-size: 12px;
	color: rgba(255, 255, 255, 0.35);
	pointer-events: none;
	text-align: center;
	letter-spacing: 0.04em;
	margin-top: 8px;
}

@media (max-width: 768px) {
	.wsk-liquid-droplets-hero {
		padding: clamp(32px, 5vh, 56px) 18px;
	}
	.wsk-ldh-cta {
		padding: 12px 24px;
		font-size: 13px;
	}
}

/* Reduced motion: stop the WebGL render loop via JS; static frame stays. */
@media (prefers-reduced-motion: reduce) {
	.wsk-ldh-canvas-host canvas {
		pointer-events: none;
	}
}
/**
 * WEPRO: WebGL Shader Hero
 * Raymarched refractive crystal scene + glassmorphic UI overlay.
 *
 * All visual surfaces driven by --wsk-wsh-* CSS vars; PHP supplies defaults
 * via inline-style override-only emits, editor picks override.
 */

[class*="wsk-wsh"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	box-sizing: border-box;
}

.wsk-wsh {
	position: relative;
	width: 100%;
	min-height: var(--wsk-wsh-min-height, 100vh);
	background: var(--wsk-wsh-bg, #000);
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.wsk-wsh__canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	pointer-events: auto;
	z-index: 0;
}

.wsk-wsh__config {
	display: none;
}

.wsk-wsh__content {
	position: relative;
	z-index: 10;
	text-align: center;
	color: #fff;
	pointer-events: none;
	padding: 1rem;
	max-width: 100%;
}

/* Title — gradient + glow pulse. */
.wsk-wsh .wsk-wsh__title {
	font-family: var(--wsk-wsh-title-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif) !important;
	font-size: var(--wsk-wsh-title-font-size, clamp(4.5rem, 13vw, 11rem)) !important;
	font-weight: var(--wsk-wsh-title-font-weight, 900) !important;
	font-style: var(--wsk-wsh-title-font-style, normal) !important;
	line-height: var(--wsk-wsh-title-line-height, 1.0) !important;
	letter-spacing: var(--wsk-wsh-title-letter-spacing, -0.06em) !important;
	text-transform: var(--wsk-wsh-title-text-transform, none) !important;
	text-align: var(--wsk-wsh-title-text-align, center) !important;
	margin: var(--wsk-wsh-title-margin-top, 0) 0 var(--wsk-wsh-title-margin-bottom, 0.5rem) 0 !important;
	background: linear-gradient(
		135deg,
		var(--wsk-wsh-grad-a, #ffffff) 0%,
		var(--wsk-wsh-grad-b, #f0f0f0) 50%,
		var(--wsk-wsh-grad-c, #ffffff) 100%
	);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	color: transparent;
	filter:
		drop-shadow(0 0 40px color-mix(in srgb, var(--wsk-wsh-grad-a, #ffffff) 40%, transparent))
		drop-shadow(0 0 80px color-mix(in srgb, var(--wsk-wsh-glow-a, #8a2be2) 30%, transparent));
	animation: wsk-wsh-glow-pulse 3s ease-in-out infinite alternate;
}

.wsk-wsh .wsk-wsh__title em,
.wsk-wsh .wsk-wsh__title i {
	font-style: italic;
	font-weight: inherit;
}

@keyframes wsk-wsh-glow-pulse {
	from {
		filter:
			drop-shadow(0 0 40px color-mix(in srgb, var(--wsk-wsh-grad-a, #ffffff) 40%, transparent))
			drop-shadow(0 0 80px color-mix(in srgb, var(--wsk-wsh-glow-a, #8a2be2) 30%, transparent));
	}
	to {
		filter:
			drop-shadow(0 0 60px color-mix(in srgb, var(--wsk-wsh-grad-a, #ffffff) 60%, transparent))
			drop-shadow(0 0 120px color-mix(in srgb, var(--wsk-wsh-glow-b, #00bfff) 40%, transparent));
	}
}

/* Tagline. */
.wsk-wsh .wsk-wsh__tagline {
	font-family: var(--wsk-wsh-tagline-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) !important;
	font-size: var(--wsk-wsh-tagline-font-size, clamp(0.9rem, 2vw, 1.2rem)) !important;
	font-weight: var(--wsk-wsh-tagline-font-weight, 300) !important;
	font-style: var(--wsk-wsh-tagline-font-style, normal) !important;
	line-height: var(--wsk-wsh-tagline-line-height, 1.4) !important;
	letter-spacing: var(--wsk-wsh-tagline-letter-spacing, 0.3em) !important;
	text-transform: var(--wsk-wsh-tagline-text-transform, uppercase) !important;
	text-align: var(--wsk-wsh-tagline-text-align, center) !important;
	color: var(--wsk-wsh-tagline-color, rgba(255, 255, 255, 0.9)) !important;
	margin: var(--wsk-wsh-tagline-margin-top, 0) 0 var(--wsk-wsh-tagline-margin-bottom, 0) 0 !important;
	text-shadow:
		0 0 30px color-mix(in srgb, var(--wsk-wsh-grad-a, #ffffff) 50%, transparent),
		0 0 60px color-mix(in srgb, var(--wsk-wsh-glow-a, #8a2be2) 30%, transparent);
}

/* Buttons row. */
.wsk-wsh__buttons {
	display: flex;
	justify-content: center;
	gap: 24px;
	margin-top: 40px;
	flex-wrap: wrap;
	pointer-events: auto;
}

/* Glass button — animated rainbow border + shimmer + hover spotlight. */
.wsk-wsh__btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 16px 40px;
	font-family: var(--wsk-wsh-cta-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
	font-size: var(--wsk-wsh-cta-font-size, 1rem);
	font-weight: var(--wsk-wsh-cta-font-weight, 600);
	font-style: var(--wsk-wsh-cta-font-style, normal);
	line-height: var(--wsk-wsh-cta-line-height, 1.2);
	letter-spacing: var(--wsk-wsh-cta-letter-spacing, 0.08em);
	text-transform: var(--wsk-wsh-cta-text-transform, none);
	color: var(--wsk-wsh-btn-text, #fff);
	background: linear-gradient(135deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.02) 100%);
	border: 1.5px solid transparent;
	border-radius: 40px;
	backdrop-filter: blur(30px);
	-webkit-backdrop-filter: blur(30px);
	box-shadow:
		0 8px 32px rgba(0,0,0,0.2),
		inset 0 1px 0 rgba(255,255,255,0.2),
		inset 0 -1px 0 rgba(255,255,255,0.05);
	overflow: hidden;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: auto;
	isolation: isolate;
}

.wsk-wsh__btn::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 40px;
	padding: 1.5px;
	background: linear-gradient(
		135deg,
		rgba(255,255,255,0.4) 0%,
		color-mix(in srgb, var(--wsk-wsh-glow-a, #8a2be2) 40%, transparent) 25%,
		color-mix(in srgb, var(--wsk-wsh-glow-b, #00bfff) 40%, transparent) 50%,
		color-mix(in srgb, var(--wsk-wsh-btn-glow, #8a2be2) 40%, transparent) 75%,
		rgba(255,255,255,0.4) 100%
	);
	background-size: 200% 200%;
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	animation: wsk-wsh-border-flow 3s linear infinite;
	opacity: 0.6;
	transition: opacity 0.5s ease;
	pointer-events: none;
}

.wsk-wsh__btn::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 40px;
	background: radial-gradient(
		circle at var(--wsk-wsh-spot-x, 50%) var(--wsk-wsh-spot-y, 50%),
		rgba(255,255,255,0.2) 0%,
		transparent 50%
	);
	opacity: 0;
	transition: opacity 0.5s ease;
	pointer-events: none;
}

@keyframes wsk-wsh-border-flow {
	0%   { background-position: 0% 50%; }
	100% { background-position: 200% 50%; }
}

.wsk-wsh__btn:hover {
	background: linear-gradient(135deg, rgba(255,255,255,0.15) 0%, rgba(255,255,255,0.05) 100%);
	box-shadow:
		0 12px 48px color-mix(in srgb, var(--wsk-wsh-btn-glow, #8a2be2) 30%, transparent),
		0 0 80px color-mix(in srgb, var(--wsk-wsh-glow-b, #00bfff) 20%, transparent),
		inset 0 1px 0 rgba(255,255,255,0.3),
		inset 0 -1px 0 rgba(255,255,255,0.1);
	transform: translateY(-3px) scale(1.02);
}

.wsk-wsh__btn:hover::before {
	opacity: 1;
	animation-duration: 2s;
}

.wsk-wsh__btn:hover::after {
	opacity: 1;
}

.wsk-wsh__btn:active {
	transform: translateY(-1px) scale(0.98);
	box-shadow:
		0 6px 24px color-mix(in srgb, var(--wsk-wsh-btn-glow, #8a2be2) 20%, transparent),
		inset 0 1px 0 rgba(255,255,255,0.3);
}

.wsk-wsh__btn:focus-visible {
	outline: 2px solid var(--wsk-wsh-btn-text, #fff);
	outline-offset: 4px;
}

.wsk-wsh__btn-shimmer {
	position: absolute;
	top: -50%;
	left: -50%;
	width: 200%;
	height: 200%;
	background: linear-gradient(
		90deg,
		transparent 0%,
		rgba(255,255,255,0.1) 45%,
		rgba(255,255,255,0.3) 50%,
		rgba(255,255,255,0.1) 55%,
		transparent 100%
	);
	transform: rotate(30deg);
	animation: wsk-wsh-shimmer 3s infinite;
	pointer-events: none;
}

@keyframes wsk-wsh-shimmer {
	0%   { transform: translateX(-100%) rotate(30deg); }
	100% { transform: translateX(100%) rotate(30deg); }
}

.wsk-wsh__btn:hover .wsk-wsh__btn-shimmer {
	animation-duration: 1.5s;
}

.wsk-wsh__btn-label {
	position: relative;
	z-index: 1;
	pointer-events: none;
}

@media (max-width: 768px) {
	.wsk-wsh__buttons {
		gap: 16px;
		margin-top: 28px;
	}
	.wsk-wsh__btn {
		padding: 14px 32px;
		font-size: 0.95rem;
	}
}

/* Reduced motion: stop the WebGL render loop via JS; freeze CSS animations. */
@media (prefers-reduced-motion: reduce) {
	.wsk-wsh .wsk-wsh__title,
	.wsk-wsh__btn::before,
	.wsk-wsh__btn-shimmer {
		animation: none !important;
	}
}
/**
 * WEPRO: Submerge Hero
 * Underwater Three.js scene + editorial HUD overlay.
 *
 * All visual surfaces driven by --wsk-sub-* CSS vars; PHP supplies defaults
 * via inline-style override-only emits, editor picks override.
 */

[class*="wsk-sub"] {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	box-sizing: border-box;
}

.wsk-sub {
	position: relative;
	width: 100%;
	min-height: var(--wsk-sub-min-height, 100vh);
	background: var(--wsk-sub-bg, #000);
	color: var(--wsk-sub-ink, #F0F9FF);
	overflow: hidden;
	isolation: isolate;
}

.wsk-sub__canvas {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 0;
}

.wsk-sub__config {
	display: none;
}

/* HUD container — pointer-events:none so canvas drag works through it. */
.wsk-sub__hud {
	position: absolute;
	inset: 0;
	z-index: 10;
	pointer-events: none;
}

/* Side index — vertical right edge with animated drip. */
.wsk-sub__side-r {
	position: absolute;
	right: 36px;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	pointer-events: none;
}

.wsk-sub__side-r span {
	font-family: "Space Mono", ui-monospace, monospace;
	font-size: 10px;
	letter-spacing: 0.15em;
	color: rgba(255, 255, 255, 0.18);
	writing-mode: vertical-rl;
	text-transform: uppercase;
}

.wsk-sub__side-line {
	width: 1px;
	height: 60px;
	background: rgba(255, 255, 255, 0.07);
	overflow: hidden;
	position: relative;
}

.wsk-sub__side-line::after {
	content: "";
	display: block;
	width: 100%;
	height: 35%;
	background: linear-gradient(to bottom, transparent, var(--wsk-sub-accent, #5EEAD4));
	animation: wsk-sub-drip 3s ease-in-out infinite;
}

@keyframes wsk-sub-drip {
	0%   { transform: translateY(-300%); }
	100% { transform: translateY(500%);  }
}

/* Footer — title block left, coords/hint right. */
.wsk-sub__footer {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 0 36px 32px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: end;
	gap: 24px;
}

.wsk-sub__f-left {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.wsk-sub .wsk-sub__title {
	font-family: var(--wsk-sub-title-font-family, "Syne", ui-sans-serif, system-ui, sans-serif) !important;
	font-size: var(--wsk-sub-title-font-size, clamp(3.5rem, 9vw, 7.5rem)) !important;
	font-weight: var(--wsk-sub-title-font-weight, 800) !important;
	font-style: var(--wsk-sub-title-font-style, normal) !important;
	line-height: var(--wsk-sub-title-line-height, 0.88) !important;
	letter-spacing: var(--wsk-sub-title-letter-spacing, -0.03em) !important;
	text-transform: var(--wsk-sub-title-text-transform, none) !important;
	text-align: var(--wsk-sub-title-text-align, left) !important;
	color: var(--wsk-sub-ink, #F0F9FF);
	margin: 0 !important;
}

.wsk-sub .wsk-sub__title--ghost {
	font-family: var(--wsk-sub-ghost-font-family, "Syne", ui-sans-serif, system-ui, sans-serif) !important;
	font-size: var(--wsk-sub-ghost-font-size, clamp(3.5rem, 9vw, 7.5rem)) !important;
	font-weight: var(--wsk-sub-ghost-font-weight, 400) !important;
	font-style: var(--wsk-sub-ghost-font-style, normal) !important;
	line-height: var(--wsk-sub-ghost-line-height, 0.88) !important;
	letter-spacing: var(--wsk-sub-ghost-letter-spacing, -0.03em) !important;
	text-transform: var(--wsk-sub-ghost-text-transform, none) !important;
	text-align: var(--wsk-sub-ghost-text-align, left) !important;
	color: transparent !important;
	-webkit-text-stroke: 1px var(--wsk-sub-ghost-stroke, rgba(255, 255, 255, 0.2));
}

.wsk-sub__f-meta {
	display: flex;
	align-items: center;
	gap: 16px;
	flex-wrap: wrap;
}

.wsk-sub .wsk-sub__tag {
	font-family: var(--wsk-sub-tag-font-family, "Space Mono", ui-monospace, monospace) !important;
	font-size: var(--wsk-sub-tag-font-size, 11px) !important;
	font-weight: var(--wsk-sub-tag-font-weight, 400) !important;
	font-style: var(--wsk-sub-tag-font-style, normal) !important;
	line-height: var(--wsk-sub-tag-line-height, 1.2) !important;
	letter-spacing: var(--wsk-sub-tag-letter-spacing, 0.15em) !important;
	text-transform: var(--wsk-sub-tag-text-transform, uppercase) !important;
	color: rgba(240, 249, 255, 0.35);
}

.wsk-sub .wsk-sub__tag b,
.wsk-sub .wsk-sub__tag strong {
	color: var(--wsk-sub-accent, #5EEAD4);
	font-weight: 400;
}

.wsk-sub__f-right {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 10px;
	pointer-events: auto;
}

.wsk-sub .wsk-sub__coords {
	font-family: var(--wsk-sub-coords-font-family, "Space Mono", ui-monospace, monospace) !important;
	font-size: var(--wsk-sub-coords-font-size, 16px) !important;
	font-weight: var(--wsk-sub-coords-font-weight, 400) !important;
	letter-spacing: var(--wsk-sub-coords-letter-spacing, 0.04em) !important;
	color: rgba(240, 249, 255, 0.35);
	font-variant-numeric: tabular-nums;
	pointer-events: none;
}

.wsk-sub__hint {
	font-family: "Space Mono", ui-monospace, monospace;
	font-size: 11px;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.18);
	pointer-events: none;
}

.wsk-sub__ctas {
	display: inline-flex;
	gap: 12px;
	margin-top: 6px;
}

.wsk-sub__cta {
	font-family: "Space Mono", ui-monospace, monospace;
	font-size: 11px;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: rgba(240, 249, 255, 0.55);
	border: 1px solid rgba(255, 255, 255, 0.14);
	padding: 9px 18px;
	background: transparent;
	text-decoration: none;
	transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
	pointer-events: auto;
}

.wsk-sub__cta:hover {
	color: var(--wsk-sub-accent, #5EEAD4);
	border-color: var(--wsk-sub-accent, #5EEAD4);
	background: color-mix(in srgb, var(--wsk-sub-accent, #5EEAD4) 6%, transparent);
}

.wsk-sub__cta:focus-visible {
	outline: 2px solid var(--wsk-sub-accent, #5EEAD4);
	outline-offset: 3px;
}

/* Custom cursor — small dot + trailing ring. JS positions both. */
.wsk-sub__cursor {
	position: fixed;
	z-index: 9999;
	pointer-events: none;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--wsk-sub-accent, #5EEAD4);
	mix-blend-mode: exclusion;
	transform: translate(-50%, -50%);
	left: -100px;
	top: -100px;
	opacity: 0;
	transition: opacity 0.2s ease;
}

.wsk-sub__cursor-ring {
	position: fixed;
	z-index: 9998;
	pointer-events: none;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	border: 1px solid color-mix(in srgb, var(--wsk-sub-accent, #5EEAD4) 20%, transparent);
	transform: translate(-50%, -50%);
	left: -100px;
	top: -100px;
	opacity: 0;
	transition: opacity 0.2s ease;
}

.wsk-sub.wsk-sub--cursor-active .wsk-sub__cursor,
.wsk-sub.wsk-sub--cursor-active .wsk-sub__cursor-ring,
.wsk-sub__cursor.wsk-sub--cursor-active,
.wsk-sub__cursor-ring.wsk-sub--cursor-active {
	opacity: 1;
}

/* Hide native cursor inside the section when custom cursor is active. */
.wsk-sub.wsk-sub--cursor-active,
.wsk-sub.wsk-sub--cursor-active * {
	cursor: none;
}

/* Touch devices: never show custom cursor. */
@media (hover: none), (pointer: coarse) {
	.wsk-sub__cursor,
	.wsk-sub__cursor-ring {
		display: none !important;
	}
	.wsk-sub.wsk-sub--cursor-active,
	.wsk-sub.wsk-sub--cursor-active * {
		cursor: auto;
	}
}

/* Responsive. */
@media (max-width: 1100px) {
	.wsk-sub__footer {
		padding: 0 20px 24px;
	}
	.wsk-sub__side-r {
		display: none;
	}
}

@media (max-width: 768px) {
	.wsk-sub__footer {
		grid-template-columns: 1fr;
	}
	.wsk-sub__f-right {
		align-items: flex-start;
	}
	.wsk-sub .wsk-sub__title {
		font-size: clamp(2.4rem, 11vw, 4.5rem) !important;
	}
}

/* Reduced motion: stop the WebGL render loop via JS; freeze decorations. */
@media (prefers-reduced-motion: reduce) {
	.wsk-sub__side-line::after {
		animation: none !important;
	}
}
/* =============================================================================
 * WEPRO Content Engine — section styles
 *
 * Mobile-first. All values use Avada/wepro-design-tokens variables with safe
 * fallbacks. No proprietary palette here — sections render in whatever the
 * theme provides.
 *
 * Cascade plan (low → high):
 *   1. Avada theme defaults (Body Typography, h1-h6 typography, --awb-color-N)
 *   2. --wdt-* design tokens (wepro-design-tokens plugin)
 *   3. --wsk-content-* element vars (this file)
 *   4. Per-section inline style="--wsk-content-<id>-accent: r,g,b" (from
 *      ContentSettings storage, emitted on the <section> wrapper)
 *
 * Phase 0 design language (Enerblock-inspired, font-agnostic):
 *   - Fluid clamp() typography (no breakpoint jumps)
 *   - Eyebrow pretitle + heading + content vertical rhythm
 *   - RGB-triplet accent tokens for alpha layering
 *   - Background variants (neutral / accent / inverse)
 *   - Three breakpoints documented but enforced via @media min-width
 *   - Reveal-on-scroll via [data-wepro-animation="fade_up"|"line_mask"]
 * ========================================================================== */

:root {
  /* Breakpoints (informational — CSS @media uses literal values below) */
  --wsk-bp-sm: 640px;
  --wsk-bp-md: 1024px;
  --wsk-bp-lg: 1280px;

  /* Engine-wide tokens */
  --wsk-content-gap: clamp(1.5rem, 3vw, 2.5rem);
  --wsk-content-max-width: 100%;
  --wsk-content-radius: 0;
  --wsk-content-ease: cubic-bezier(0.53, 0, 0, 1);
  --wsk-content-duration: 480ms;

  /* Card standardization tokens — ensure ALL card-type sections share
   * identical chrome (padding / radius / shadow). Override on :root or
   * .wcl-layout level to tune per-brand. */
  --wsk-card-pad:    clamp(20px, 2.4vw, 28px);
  --wsk-card-radius: 14px;
  --wsk-card-shadow:
    0 1px 2px rgba(20, 18, 12, 0.04),
    0 8px 24px rgba(20, 18, 12, 0.05);

  /* Accent fallback chain — RGB triplets for alpha layering.
   * Per-section override comes via inline style="--wsk-content-<id>-accent: r,g,b". */
  --wsk-content-accent-rgb: 39, 109, 188;

  /* Neutral surfaces */
  --wsk-content-surface: var(--wdt-color-surface, var(--awb-color-2, #f6f8fa));
  --wsk-content-border: var(--wdt-color-border, rgba(0, 0, 0, 0.08));
  --wsk-content-text: var(--wdt-color-text, var(--awb-color-8, #1a1a1a));
  --wsk-content-text-muted: var(--wdt-color-text-muted, rgba(0, 0, 0, 0.6));
}

/* =============================================================================
 * Base <section> wrapper
 * ========================================================================== */

.wepro-content-section {
  /* Section spacing is controlled by the WCL stack gap (main-stack +
   * sidebar-stack both use flex `gap`), not by per-section margin.
   * The prior `margin: 24px 0` on every section doubled the gap on
   * desktop (margin 24px + flex gap 20-32px = 44-56px between
   * sections) and produced a 24px gap on mobile where the main-stack
   * had no gap of its own. Phase 6.1 fix. */
  margin: 0;
  font-family: inherit;
  color: var(--wdt-color-text, var(--awb-color-8, #222));
}

/* Main-stack at mobile — give it the same flex gap behavior the
 * desktop @media block does, so removing the per-section margin
 * doesn't collapse sections into each other below 1024px. */
.wcl-main-stack {
  display: flex;
  flex-direction: column;
  gap: var(--wsk-content-row-gap-mobile, clamp(16px, 3vw, 24px));
  min-width: 0;
}

/* Radius variants — set via data-wepro-radius on the wrapper */
.wepro-content-section[data-wepro-radius="4"]    { border-radius: 4px;  }
.wepro-content-section[data-wepro-radius="8"]    { border-radius: 8px;  }
.wepro-content-section[data-wepro-radius="pill"] { border-radius: 999px; }

/* Background variants */
.wepro-content-section[data-wepro-bg="neutral"] {
  background: var(--wsk-content-surface);
  padding: clamp(1rem, 2.5vw, 2rem);
}
.wepro-content-section[data-wepro-bg="accent"] {
  background: rgb(var(--wsk-content-accent-rgb) / 0.06);
  padding: clamp(1rem, 2.5vw, 2rem);
}
.wepro-content-section[data-wepro-bg="inverse"] {
  background: var(--wsk-content-text);
  color: var(--awb-color-1, #fff);
  padding: clamp(1rem, 2.5vw, 2rem);
}
.wepro-content-section[data-wepro-bg="inverse"] a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.wepro-content-section[data-wepro-bg="inverse"] a:hover {
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.wepro-content-section[data-wepro-bg="inverse"] a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 2px;
  text-decoration-thickness: 2px;
}

/* Legacy h2/h3 inside sections (per-section blocks below override where needed) */

.wepro-content-section h2,
.wepro-content-section h3 {
  font-family: inherit;
  color: var(--wdt-color-text, var(--awb-color-8, #222));
  margin: 0 0 12px;
}

/* Lock the fluid type rhythm with !important so Avada's compiled h2 / h3
 * typography rules (Theme Options → Typography) can't override our clamp().
 * Specificity (0,1,1) already beats Avada's bare `h2` (0,0,1) declarations,
 * but Avada may inject per-page utility rules higher than our specificity.
 *
 * Phase 6.1 Item 8 — editorial serif (Cormorant Garamond) applied to bare
 * body h2/h3 tags inside any content section. Author-written headings via
 * Avada Live Builder come through as bare <h2> (no class), so the bare-tag
 * selector here is what drives the luxury pass for real-page content. */
.wepro-content-section h2 {
  font-family: var(--wsk-lux-serif, 'Cormorant Garamond', 'Playfair Display', Georgia, serif) !important;
  font-weight: 500 !important;
  font-size: clamp(1.65rem, 3vw, 2.4rem) !important;
  line-height: 1.18 !important;
  letter-spacing: var(--wsk-lux-tracking-title, -0.015em) !important;
  color: var(--wdt-color-text, var(--awb-color-8, #14120c)) !important;
}

.wepro-content-section h3 {
  font-family: var(--wsk-lux-serif, 'Cormorant Garamond', 'Playfair Display', Georgia, serif) !important;
  font-weight: 500 !important;
  font-size: clamp(1.4rem, 2.2vw, 1.85rem) !important;
  line-height: 1.22 !important;
  letter-spacing: -0.01em !important;
  color: var(--wdt-color-text, var(--awb-color-8, #14120c)) !important;
}

@media (max-width: 767px) {
  .wepro-content-section h2 {
    font-size: clamp(1.5rem, 6vw, 1.85rem) !important;
    line-height: 1.2 !important;
  }
  .wepro-content-section h3 {
    font-size: clamp(1.25rem, 5vw, 1.5rem) !important;
    line-height: 1.25 !important;
  }
}

/* =============================================================================
 * Phase 6.1 Item 8 — Section header luxury design language
 * Editorial serif (Cormorant Garamond — established project convention via
 * concierge-hero / hero-blur / post-grid-luxury / showcase-scroll), tight
 * tracking, refined weight; gold eyebrow + magazine numeral rhythm.
 * Specificity (0,2,0) beats Avada's bare `h2` and Theme-Options h2 rules.
 * ========================================================================== */

/* --- Tunable design tokens (sites can override at :root) --- */
:root {
  --wsk-lux-gold:        #B89968;
  --wsk-lux-gold-deep:   #8A6F45;
  --wsk-lux-hairline:    rgba(184, 153, 104, 0.45);
  --wsk-lux-serif:       'Cormorant Garamond', 'Playfair Display', Georgia, serif;
  --wsk-lux-tracking-eyebrow: 0.22em;
  --wsk-lux-tracking-title:  -0.015em;
}

/* Header layout: stack with refined rhythm */
.wepro-content-section .wepro-content-section__header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(8px, 1.2vw, 14px);
  margin: 0 0 clamp(16px, 2vw, 22px);
}

/* Index numeral — magazine-style luxury counter (01, 02, …) */
.wepro-content-section .wepro-content-section__index {
  font-family: var(--wsk-lux-serif);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(0.9rem, 1.2vw, 1.05rem);
  letter-spacing: 0.04em;
  color: var(--wsk-lux-gold-deep);
  line-height: 1;
}

/* Eyebrow — small-caps, gold, tracked. Sits above the section title. */
.wepro-content-section .wepro-content-section__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: inherit; /* Inter / Figtree / system sans */
  font-weight: 600;
  font-size: clamp(0.7rem, 0.7vw + 0.55rem, 0.78rem);
  letter-spacing: var(--wsk-lux-tracking-eyebrow);
  text-transform: uppercase;
  color: var(--wsk-lux-gold-deep);
  line-height: 1;
}

/* Hairline rule preceding the eyebrow label (32px gold tick) */
.wepro-content-section .wepro-content-section__eyebrow-mark {
  display: inline-block;
  width: 32px;
  height: 1px;
  background: var(--wsk-lux-hairline);
  flex-shrink: 0;
}

/* Section title — editorial serif, refined weight, tight tracking.
 * Specificity (0,2,0) beats Avada bare h2 (0,0,1). The !important on
 * font-family stays defensive against Theme-Options Typography rules
 * that inject `font-family: ... !important` per page. */
.wepro-content-section .wepro-content-section__title {
  font-family: var(--wsk-lux-serif) !important;
  font-weight: 500;
  letter-spacing: var(--wsk-lux-tracking-title);
  line-height: 1.18 !important;
  color: var(--wdt-color-text, var(--awb-color-8, #14120c));
  margin: 0;
}

/* Per-tag size — h2 dominant, h3/h4 step down preserving rhythm */
h2.wepro-content-section__title {
  font-size: clamp(1.65rem, 3vw, 2.4rem) !important;
}
h3.wepro-content-section__title {
  font-size: clamp(1.4rem, 2.2vw, 1.85rem) !important;
}
h4.wepro-content-section__title {
  font-size: clamp(1.2rem, 1.6vw, 1.45rem) !important;
  letter-spacing: -0.005em;
}

/* Sidebar context — luxury rail uses tighter, smaller heading. The
 * sidebar already has its own gilded surface; the heading shouldn't
 * compete. */
.wcl-section[data-wcl-col="sidebar"] .wepro-content-section__title,
.wcl-sidebar-stack .wepro-content-section__title {
  font-size: clamp(1.1rem, 1.4vw, 1.3rem) !important;
  letter-spacing: -0.005em;
}
.wcl-section[data-wcl-col="sidebar"] .wepro-content-section__eyebrow,
.wcl-sidebar-stack .wepro-content-section__eyebrow {
  font-size: 0.68rem;
  letter-spacing: 0.18em;
}

/* Mobile — tighten header gap + title size for compact viewports */
@media (max-width: 767px) {
  .wepro-content-section .wepro-content-section__header {
    gap: 8px;
    margin-bottom: 14px;
  }
  h2.wepro-content-section__title {
    font-size: clamp(1.5rem, 6vw, 1.85rem) !important;
    line-height: 1.2 !important;
  }
  .wepro-content-section .wepro-content-section__eyebrow {
    gap: 10px;
  }
  .wepro-content-section .wepro-content-section__eyebrow-mark {
    width: 22px;
  }
}

/* =============================================================================
 * AEO Answer — TLDR block at top of post
 * Premium card: surface fill, hairline border, soft luxury shadow, 14px radius.
 * Glass-edge top highlight (1px gradient) — site can override --wsk-aeo-edge
 * at :root to tint the highlight to its brand accent (e.g. champagne).
 * ========================================================================== */
.wepro-content-section--aeo_answer {
  position: relative;
  background: var(--wdt-color-surface, var(--awb-color-2, #ffffff));
  border: 1px solid var(--wdt-color-border, rgba(20, 18, 12, 0.08));
  border-radius: var(--wsk-card-radius, 14px);
  padding: var(--wsk-card-pad, clamp(20px, 2.4vw, 28px));
  margin: 0 0 clamp(28px, 3vw, 32px);
  font-size: clamp(1.125rem, 0.8vw + 0.95rem, 1.25rem);
  line-height: 1.55;
  color: var(--wdt-color-text, var(--awb-color-8, inherit));
  box-shadow: var(--wsk-card-shadow, 0 1px 2px rgba(20, 18, 12, 0.04), 0 8px 24px rgba(20, 18, 12, 0.05));
}

.wepro-content-section--aeo_answer::before {
  content: '';
  position: absolute;
  inset: 0 0 auto 0;
  height: 1px;
  background: var(
    --wsk-aeo-edge,
    linear-gradient(
      90deg,
      transparent 0%,
      rgba(255, 255, 255, 0.9) 8%,
      rgba(255, 255, 255, 0.4) 92%,
      transparent 100%
    )
  );
  border-radius: 14px 14px 0 0;
  pointer-events: none;
}

.wepro-content-section--aeo_answer__label {
  display: inline-block;
  position: relative;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
  margin-bottom: 14px;
  padding-bottom: 8px;
}

.wepro-content-section--aeo_answer__label::after {
  content: '';
  position: absolute;
  inset: auto 0 0 0;
  width: 24px;
  height: 1px;
  background: currentColor;
  opacity: 0.5;
}

/* =============================================================================
 * Reveal animations — CSS-only, JS-optional.
 *
 * Earlier pattern: opacity:0 initial + JS IntersectionObserver adds .is-in-view.
 * Problem: when reveal.js fails to enqueue (Avada Dynamic_JS bundling timing
 * regression observed 2026-05-22), every section with data-wepro-animation
 * stayed permanently invisible. Content visibility cannot depend on JS.
 *
 * Current pattern: CSS @keyframes with animation-fill-mode:both runs once on
 * first paint. Element starts hidden, animates to visible, stays visible.
 * If reveal.js DOES load and adds .is-in-view later, that's a no-op
 * (already at end state).
 * ========================================================================== */

@keyframes wepro-fade-up {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: none; }
}

@keyframes wepro-line-mask {
  from { clip-path: inset(0 0 100% 0); }
  to   { clip-path: inset(0 0 0 0); }
}

.wepro-content-section[data-wepro-animation="fade_up"] {
  animation: wepro-fade-up 0.6s var(--wsk-content-ease) both;
}

.wepro-content-section[data-wepro-animation="line_mask"] {
  animation: wepro-line-mask 0.7s var(--wsk-content-ease) both;
}

/* Respect prefers-reduced-motion — skip the keyframe entirely. */
@media (prefers-reduced-motion: reduce) {
  .wepro-content-section[data-wepro-animation] {
    animation: none;
  }
}

/* =============================================================================
 * Default body element styles inside any section
 * (overridable per-section in the body-styling blocks below)
 * ========================================================================== */

.wepro-content-section ol,
.wepro-content-section ul {
  margin: 0 0 16px 1.4em;
  padding: 0;
}

.wepro-content-section li {
  margin: 0 0 8px;
  line-height: 1.55;
}

/* =============================================================================
 * Term Definition card — editorial dictionary-style, no card chrome
 * ========================================================================== */
.wepro-content-section--term_definition {
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  margin: 0 0 clamp(20px, 2.4vw, 28px);
}
.wepro-content-section--term_definition__phonetic {
  font-style: italic;
  color: var(--wdt-color-text-muted, var(--awb-color-7, #8a857c));
  margin-bottom: 10px;
  font-size: 0.95em;
}
.wepro-content-section--term_definition__definition {
  font-size: inherit;
  line-height: 1.65;
  margin-bottom: 14px;
  color: var(--wdt-color-text, var(--awb-color-8, inherit));
}
.wepro-content-section--term_definition__definition p {
  margin: 0 0 0.65em;
}
.wepro-content-section--term_definition__definition p:last-child {
  margin-bottom: 0;
}
.wepro-content-section--term_definition__meta {
  font-size: 0.875rem;
  color: var(--wdt-color-text-muted, var(--awb-color-7, #8a857c));
  margin-top: 10px;
}

/* =============================================================================
 * Key Facts — editorial spec-sheet (single column, label-left/value-right,
 * hairline-between-rows). Reads like a Baumeister datasheet, not a feature row.
 * Transparent surface — the rhythm of dividers carries the structure.
 * ========================================================================== */
.wepro-content-section--key_facts {
  display: flex;
  flex-direction: column;
  background: transparent;
  border: 0;
  border-radius: 0;
  padding: 0;
  margin: 0 0 clamp(28px, 3vw, 32px);
  position: relative;
}
/* Champagne hairline at the top — establishes the editorial spec-sheet anchor
 * without injecting hardcoded text (which would break i18n). The section's
 * own title (rendered by VSTT / Avada element wrapper) stays above the card. */
.wepro-content-section--key_facts::before {
  content: '';
  display: block;
  width: 32px;
  height: 1px;
  background: var(--wdt-color-accent, var(--awb-color-4, #b89968));
  margin-bottom: 14px;
}
.wepro-content-section--key_facts__item {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px solid var(--wdt-color-border, rgba(20, 18, 12, 0.08));
}
.wepro-content-section--key_facts__item:last-child {
  border-bottom: 0;
}
.wepro-content-section--key_facts__label {
  flex: 0 0 auto;
  font-size: 0.9375rem;
  font-weight: 400;
  letter-spacing: 0;
  text-transform: none;
  color: var(--wdt-color-text-muted, var(--awb-color-7, #8a857c));
}
.wepro-content-section--key_facts__value {
  flex: 1 1 auto;
  text-align: right;
  font-size: 0.9375rem;
  font-weight: 500;
  line-height: 1.4;
  color: var(--wdt-color-text, var(--awb-color-8, #1a1816));
  font-variant-numeric: tabular-nums;
}

/* Hide the disconnected section title above this card — the ::before eyebrow
 * inside the card carries that label, single point of identification. */
.wepro-content-section--key_facts > .wsk-section-title,
.wcl-section--key_facts .wsk-section-title {
  display: none;
}

/* =============================================================================
 * HowTo Steps — numbered vertical timeline; outlined champagne numeral
 * ========================================================================== */
.wepro-content-section--howto_steps__list {
  list-style: none;
  counter-reset: howto-step;
  /* margin-left + padding-left forced to 0 with !important to beat
   * Avada's `.post-content ol` rule (specificity 0,1,1, sets ~1.5em
   * margin-left = 25.2px at inherited font size). Without these the
   * OL gets indented and the cards render narrower than the parent
   * column — visible on BOTH desktop and mobile. */
  margin: 0 0 clamp(28px, 3vw, 32px) 0 !important;
  padding: 0 !important;
}
.wepro-content-section--howto_steps__item {
  counter-increment: howto-step;
  position: relative;
  padding: var(--wsk-card-pad, clamp(20px, 2.4vw, 28px));
  padding-left: clamp(64px, 7vw, 76px);
  background: var(--wdt-color-surface, var(--awb-color-1, #ffffff));
  border: 1px solid var(--wdt-color-border, rgba(20, 18, 12, 0.08));
  border-radius: var(--wsk-card-radius, 14px);
  margin: 0 0 14px;
  box-shadow: var(--wsk-card-shadow, 0 1px 2px rgba(20, 18, 12, 0.03));
}
.wepro-content-section--howto_steps__item::before {
  content: counter(howto-step);
  position: absolute;
  top: clamp(20px, 2.4vw, 28px);
  left: clamp(20px, 2.4vw, 28px);
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: transparent;
  border: 1px solid var(--wdt-color-accent, var(--awb-color-4, #b89968));
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
  letter-spacing: -0.01em;
}
.wepro-content-section--howto_steps__name {
  font-weight: 600;
  font-size: 1.0625rem;
  margin: 0 0 6px;
  color: var(--wdt-color-text, var(--awb-color-8, #1a1816));
  letter-spacing: -0.005em;
}
.wepro-content-section--howto_steps__text {
  font-size: 0.9375rem;
  line-height: 1.55;
  color: var(--wdt-color-text-secondary, var(--awb-color-7, #4a4843));
}

/* =============================================================================
 * Comparison Table — editorial; no card chrome; champagne bottom-border header
 * ========================================================================== */
.wepro-content-section--comparison_table__wrap {
  overflow-x: auto;
  overflow-y: hidden;
  margin: 0 0 clamp(28px, 3vw, 32px);
  -webkit-overflow-scrolling: touch;
  /* Phase 6.0 post-ship polish (2026-05-22): previous scroll-hint
   * `linear-gradient` produced a faint vertical edge on the right side of
   * the comparison table — visible as a gray border. The table now fits
   * the main column (min-width: 480px) on desktop, and mobile collapses
   * to stacked cards (no horizontal scroll), so the hint affordance is
   * vestigial. Removed; no replacement border. */
  background: none;
}
.wepro-content-section--comparison_table__table {
  width: 100%;
  min-width: 560px; /* prevents columns from squeezing too narrow on mobile */
  border-collapse: collapse;
  font-size: 0.9375rem;
  font-variant-numeric: tabular-nums;
}
.wepro-content-section--comparison_table__table th,
.wepro-content-section--comparison_table__table td {
  padding: 14px 16px;
  text-align: left;
  border-bottom: 1px solid var(--wdt-color-border, rgba(20, 18, 12, 0.08));
  vertical-align: top;
}
.wepro-content-section--comparison_table__table thead th {
  background: transparent;
  font-weight: 500;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--wdt-color-text-secondary, var(--awb-color-7, #4a4843));
  border-bottom: 1px solid var(--wdt-color-accent, var(--awb-color-4, #b89968));
  padding-bottom: 12px;
}
.wepro-content-section--comparison_table__table tbody tr:last-child td {
  border-bottom: 0;
}
.wepro-content-section--comparison_table__winner {
  display: inline-block;
  margin-left: 8px;
  padding: 3px 10px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: transparent;
  border: 1px solid var(--wdt-color-accent, var(--awb-color-4, #b89968));
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
  border-radius: 999px;
}
/* Mobile comparison table (Phase 5.3, 2026-05-22): collapse the matrix into
 * one stacked CARD per axis (Criterion). Subject labels surface via
 * ::before { content: attr(data-subject); } on each <td>, so no DOM
 * duplication is needed. Forces zero horizontal scroll. Phase 5.1's
 * 560px min-width table + sticky first-column + scroll wrapper are all
 * overridden here. Desktop matrix layout (>= 768px) stays unchanged. */
@media (max-width: 767px) {
  .wepro-content-section--comparison_table__wrap {
    overflow: visible;
    background: none;
    margin: 0 0 clamp(20px, 3vw, 28px);
  }
  .wepro-content-section--comparison_table__table {
    display: block;
    min-width: 0;
    width: 100%;
    border: 0;
  }
  .wepro-content-section--comparison_table__table thead {
    /* Column headers don't fit on mobile; surface their text via data-subject */
    position: absolute;
    width: 1px; height: 1px;
    margin: -1px; padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
  }
  .wepro-content-section--comparison_table__table tbody,
  .wepro-content-section--comparison_table__table tr {
    display: block;
    width: 100%;
  }
  .wepro-content-section--comparison_table__table tr {
    margin: 0 0 14px;
    padding: 14px 16px;
    background: var(--wdt-color-surface, var(--awb-color-1, #ffffff));
    border: 1px solid var(--wdt-color-border, rgba(20, 18, 12, 0.08));
    border-radius: 12px;
  }
  .wepro-content-section--comparison_table__table tr:last-child {
    margin-bottom: 0;
  }
  .wepro-content-section--comparison_table__table th,
  .wepro-content-section--comparison_table__table td {
    display: block;
    padding: 0;
    border: 0;
    text-align: left;
  }
  .wepro-content-section--comparison_table__table th[scope="row"] {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.3;
    margin: 0 0 10px;
    padding: 0 0 8px;
    border-bottom: 1px solid var(--wdt-color-border, rgba(20, 18, 12, 0.08));
  }
  .wepro-content-section--comparison_table__table td {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 8px 0;
    border-bottom: 1px solid var(--wdt-color-border-soft, rgba(20, 18, 12, 0.04));
    overflow-wrap: anywhere;
  }
  .wepro-content-section--comparison_table__table td:last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }
  .wepro-content-section--comparison_table__table td::before {
    content: attr(data-subject);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--wdt-color-text-secondary, var(--awb-color-7, #4a4843));
  }
  .wepro-content-section--comparison_table__winner {
    /* Badge sits inline next to axis on desktop; on mobile drop to its own line */
    display: inline-block;
    margin-left: 0;
    margin-top: 4px;
  }
}

/* =============================================================================
 * Service Details (WSF 9-block) — minimal wrapper; defers to WSF's own CSS
 * ========================================================================== */
.wepro-content-section--service_details {
  margin: 0 0 28px;
}

/* =============================================================================
 * FAQs — refined accordion; champagne chevron; hairline card; ARIA-aware
 * ========================================================================== */
.wepro-content-section--faqs {
  margin: 0 0 clamp(28px, 3vw, 32px);
}
.wepro-content-section--faqs__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.wepro-content-section--faqs__item {
  border: 1px solid var(--wdt-color-border, rgba(20, 18, 12, 0.08));
  border-radius: var(--wsk-card-radius, 14px);
  overflow: hidden;
  background: var(--wdt-color-surface, var(--awb-color-1, #ffffff));
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.wepro-content-section--faqs__item:hover {
  border-color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
}
.wepro-content-section--faqs__item[data-open="1"] {
  box-shadow: 0 1px 2px rgba(20, 18, 12, 0.04), 0 8px 24px rgba(20, 18, 12, 0.05);
}
.wepro-content-section--faqs__question {
  appearance: none;
  background: none;
  border: 0;
  padding: clamp(18px, 2vw, 22px) clamp(48px, 5vw, 60px) clamp(18px, 2vw, 22px) clamp(20px, 2.4vw, 24px);
  width: 100%;
  text-align: left;
  font-size: clamp(1rem, 0.6vw + 0.88rem, 1.125rem);
  font-weight: 500;
  cursor: pointer;
  color: var(--wdt-color-text, var(--awb-color-8, #1a1816));
  position: relative;
  line-height: 1.45;
  letter-spacing: -0.005em;
}
.wepro-content-section--faqs__question:focus-visible {
  outline: 2px solid var(--wdt-color-accent, var(--awb-color-4, #b89968));
  outline-offset: -2px;
}
.wepro-content-section--faqs__question::after {
  content: '+';
  position: absolute;
  top: 50%;
  right: clamp(20px, 2.4vw, 24px);
  transform: translateY(-50%);
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 1;
  transition: transform 0.25s ease, color 0.25s ease;
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
}
.wepro-content-section--faqs__item[data-open="1"] .wepro-content-section--faqs__question::after {
  content: '−';
}
.wepro-content-section--faqs__answer {
  overflow: hidden;
  height: 0;
  transition: height 0.3s ease;
}
.wepro-content-section--faqs__answer-inner {
  padding: 0 clamp(20px, 2.4vw, 24px) clamp(18px, 2vw, 22px);
  line-height: 1.65;
  color: var(--wdt-color-text-secondary, var(--awb-color-7, #4a4843));
}

/* =============================================================================
 * Pricing
 * ========================================================================== */
.wepro-content-section--pricing {
  margin: 0 0 16px;
}

/* =============================================================================
 * TOC, Related, Glossary, Author/Meister, Contact, Hours, Rating, Reviews,
 * Social, Legal — placeholder rules; wrappers inherit defaults
 * ========================================================================== */
.wepro-content-section--toc,
.wepro-content-section--glossary_autolink,
.wepro-content-section--related_entries,
.wepro-content-section--author_meister,
.wepro-content-section--contact_card,
.wepro-content-section--hours_card,
.wepro-content-section--rating_bar,
.wepro-content-section--featured_reviews,
.wepro-content-section--social_icons,
.wepro-content-section--legal_links {
  margin: 0 0 24px;
}

@media (max-width: 640px) {
  .wepro-content-section--key_facts {
    grid-template-columns: 1fr;
  }
  .wepro-content-section--howto_steps__item {
    padding-left: 52px;
  }
  .wepro-content-section--howto_steps__item::before {
    width: 28px;
    height: 28px;
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .wepro-content-section--faqs__answer,
  .wepro-content-section--faqs__question::after {
    transition: none;
  }
}

/* =============================================================================
 * Phase 5 (1.9.0, 2026-05-22) — 2-column responsive layout structure ONLY.
 *
 * Adds no per-section chrome — sister plugins (Hub, weprocta, WSF, dictionary)
 * paint their own inner cards/typography/spacing as they did before. This
 * layer ONLY provides the 2-col main+sidebar grid that ContentEngine::
 * render_two_col_layout() emits via <div class="wcl-layout"> wrapper.
 *
 * Per-section luxury polish (if/when desired) belongs in each section's
 * NATIVE plugin CSS file, surgical, one section at a time — never as a
 * generic stacked layer over existing CSS.
 * ========================================================================== */

/* Mobile / fallback: single-column flow. Cards stack at the layout gap; the
 * sidebar stack (when present) just behaves as another flex item with its own
 * internal gap rhythm. */
.wcl-layout {
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 4vw, 40px);
  max-width: 1280px;
  margin-inline: auto;
  /* No horizontal padding — the Avada column/container that wraps this grid
   * is the source of truth for inline gutter. Adding padding here would
   * double-pad on every CPT layout. Removed 2026-05-24 (v1.15.1). */
}

.wcl-layout[data-wcl-variant="one_col"] {
  max-width: 880px;
}

.wcl-section {
  margin: 0;
  padding: 0;
}

/* Sidebar stack — single grid child wrapping every data-wcl-col="sidebar"
 * section so we can stick the WRAPPER (not individual cards) on desktop and
 * avoid per-card stacking-context overlap. On mobile this is just a flex
 * column. (Fix 2, 2026-05-22.) */
.wcl-sidebar-stack {
  display: flex;
  flex-direction: column;
  gap: var(--wsk-content-sidebar-gap, 16px);
  margin: 0;
  padding: 0;
}

/* Phase 5.2 layout shape (Fix 6 + Fix 7, 2026-05-22): real <main> + <aside>
 * wrappers as the ONLY two column children of the grid (plus optional
 * full-width breakouts). Phase 5.1's "loose grid children + 999-row spanning
 * sidebar + internal scrollbar" replaced because:
 *   - spanning row + auto row flow produced 1000px empty gaps in main column
 *   - internal max-height + overflow-y: auto produced an unwanted scrollbar
 *     inside the sidebar
 * Sidebar sticks on the wrapper, no scrollbar, no max-height.
 */
@media (min-width: 1024px) {
  .wcl-layout[data-wcl-variant="auto"],
  .wcl-layout[data-wcl-variant="two_col"] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) var(--wsk-content-sidebar-width, 320px);
    column-gap: clamp(28px, 3.5vw, 48px);
    row-gap: var(--wsk-content-row-gap, clamp(20px, 3vw, 32px));
    align-items: start;
  }
  .wcl-layout > .wcl-main-stack {
    grid-column: 1;
    display: flex;
    flex-direction: column;
    gap: var(--wsk-content-row-gap, clamp(20px, 3vw, 32px));
    min-width: 0;
  }
  .wcl-layout > .wcl-sidebar-stack {
    grid-column: 2;
    position: sticky;
    top: var(--wsk-content-sticky-offset, 100px);
    align-self: start;
    /* Explicit "off" for the Phase 5.1 properties: no internal scroll,
     * no max-height, no row-spanning. */
    max-height: none;
    overflow: visible;
  }
  .wcl-layout > .wcl-section[data-wcl-col="full"] {
    grid-column: 1 / -1;
  }
  /* Opt-out: sites that prefer natural flow can flip stickiness off by setting
   * data-wcl-sticky="no" on the .wcl-layout wrapper. */
  .wcl-layout[data-wcl-sticky="no"] > .wcl-sidebar-stack {
    position: static;
  }
}

@media (min-width: 768px) {
  .wcl-layout[data-wcl-variant="two_col"] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) var(--wsk-content-sidebar-width, 320px);
    column-gap: clamp(28px, 3.5vw, 48px);
    row-gap: var(--wsk-content-row-gap, clamp(20px, 3vw, 32px));
    align-items: start;
  }
}

@media print {
  .wcl-layout { display: block; max-width: none; padding: 0; }
  .wcl-sidebar-stack { position: static; }
}

/* =============================================================================
 * Sidebar context overrides — sister-plugin cards rendered in 340px column
 * need different layout/density than their main-column defaults. The starter-
 * kit owns the data-wcl-col contract, so the layout adapter lives here, not
 * in each sister plugin (keeps Hub/weprocta/Dictionary CSS layout-agnostic).
 * ========================================================================== */

/* ── Hub expert-box: compact trust-badge variant ──
 * Main column = full editorial card (96px portrait, bio, contact).
 * Sidebar = stacked compact card (88px portrait, eyebrow + hairline,
 * name + title, divider, "View full profile →" link). No bio, no contact —
 * those compete with the trust-anchor purpose at narrow widths. */
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box {
  padding: clamp(20px, 2.4vw, 24px);
  text-align: center;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__inner {
  flex-direction: column;
  align-items: center;
  gap: 14px;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__photo img {
  width: 88px;
  height: 88px;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__info {
  width: 100%;
  text-align: center;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__label {
  position: relative;
  display: inline-block;
  font-size: 0.625rem;
  letter-spacing: 0.12em;
  margin: 0 0 0.6rem;
  padding-bottom: 8px;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__label::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 24px;
  height: 1px;
  background: currentColor;
  opacity: 0.5;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__name {
  display: block;
  font-size: 1.0625rem;
  line-height: 1.25;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__title {
  font-size: 0.8125rem;
  margin-top: 4px;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__bio,
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__contact {
  display: none;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__profile-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  justify-content: center;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--wdt-color-border, rgba(20, 18, 12, 0.08));
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
  text-decoration: none;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  transition: color 0.2s ease;
}
.wcl-section[data-wcl-col="sidebar"] .wch-expert-box__profile-link:hover {
  color: var(--wdt-color-accent-deep, var(--awb-color-5, #8e7437));
}

/* ─────────────────────────────────────────────────────────────────
   Mobile (≤767px) — profile card switches from stacked-centered to
   horizontal: portrait LEFT (64px) + info block RIGHT (eyebrow +
   name + title, all left-aligned), with "Profil ansehen →" as a
   full-width row below. Saves ~120px of vertical space on phones
   where the sidebar stacks BELOW main content and has room to spread
   horizontally. Applies to both the data-wcl-col="sidebar" selector
   (when explicitly placed in sidebar slot) AND the .wcl-sidebar-stack
   path (auto-stack on mobile).
   ───────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
  .wcl-section[data-wcl-col="sidebar"] .wch-expert-box,
  .wcl-sidebar-stack > .wcl-section .wch-expert-box {
    text-align: left;
  }
  .wcl-section[data-wcl-col="sidebar"] .wch-expert-box__inner,
  .wcl-sidebar-stack > .wcl-section .wch-expert-box__inner {
    flex-direction: row;
    align-items: center;
    gap: 16px;
  }
  .wcl-section[data-wcl-col="sidebar"] .wch-expert-box__photo,
  .wcl-sidebar-stack > .wcl-section .wch-expert-box__photo {
    flex-shrink: 0;
  }
  .wcl-section[data-wcl-col="sidebar"] .wch-expert-box__photo img,
  .wcl-sidebar-stack > .wcl-section .wch-expert-box__photo img {
    width: 64px;
    height: 64px;
  }
  .wcl-section[data-wcl-col="sidebar"] .wch-expert-box__info,
  .wcl-sidebar-stack > .wcl-section .wch-expert-box__info {
    flex: 1 1 auto;
    min-width: 0;
    text-align: left;
  }
  .wcl-section[data-wcl-col="sidebar"] .wch-expert-box__label,
  .wcl-sidebar-stack > .wcl-section .wch-expert-box__label {
    display: block;
    margin: 0 0 4px;
    padding-bottom: 0;
  }
  .wcl-section[data-wcl-col="sidebar"] .wch-expert-box__label::after,
  .wcl-sidebar-stack > .wcl-section .wch-expert-box__label::after {
    /* Hide the gold underline tick — the horizontal layout doesn't need it. */
    display: none;
  }
  .wcl-section[data-wcl-col="sidebar"] .wch-expert-box__profile-link,
  .wcl-sidebar-stack > .wcl-section .wch-expert-box__profile-link {
    width: 100%;
    justify-content: flex-start;
    margin-top: 12px;
    padding-top: 12px;
  }

  /* Tighten the card padding at mobile so the horizontal layout sits
   * compactly. Desktop keeps the airier 20-24px. */
  .wcl-section[data-wcl-col="sidebar"] .wch-expert-box,
  .wcl-sidebar-stack > .wcl-section .wch-expert-box {
    padding: 14px;
  }
}

/* ─────────────────────────────────────────────────────────────────
   Pricing card — wraps PricingSection's [wpd_price] output so the
   sidebar always shows a framed card with a "Preis" label instead
   of naked "Auf Anfrage" text. The skip-on-body-shortcode rule in
   PricingSection::render() guarantees this never double-renders
   when the editor placed [wpd_price] inline in post_content.
   ───────────────────────────────────────────────────────────────── */
.wcl-pricing-card {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 16px 18px;
  background: var(--wsk-content-card-bg, rgba(255, 255, 255, 0.04));
  border: 1px solid var(--wsk-content-card-border, rgba(0, 0, 0, 0.08));
  border-radius: var(--wsk-content-card-radius, 12px);
}
.wcl-pricing-card__label {
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  opacity: 0.7;
}
.wcl-pricing-card__value {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.3;
}
.wcl-pricing-card__value a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* =============================================================================
 * Phase 5.3 — Mobile responsive baseline (2026-05-22)
 *
 * Functional repair only. Stops viewport horizontal-overflow on 390px / 430px
 * devices and prevents H2/H3 cropping inside WEPRO output. Visual / luxury
 * heading style belongs in the design phase that follows; this is the neutral
 * baseline that lets us hand off a usable mobile build first.
 *
 * Conservative scope: targets ONLY content INSIDE the WEPRO layout
 * (`.wcl-layout`, `.wcl-main-stack`, `.wsk-wepro-content__body`,
 * `.wepro-content-section`). Avada theme typography and other plugins'
 * heading rules stay untouched.
 * ========================================================================== */
@media (max-width: 767px) {
  /* Outer layout: kill any inherited padding that pushes inner content past
   * the viewport edge, and force the wrapper to never overflow horizontally. */
  .wcl-layout,
  .wcl-main-stack {
    max-width: 100%;
    min-width: 0;
    overflow-x: clip;
  }

  /* Typography baseline — headings inside the body + sections. Aggressive
   * clamps so 36-44px desktop headings drop to readable, non-cropping mobile
   * sizes. overflow-wrap: anywhere catches very long compound German nouns
   * (Eu-Bauproduktenverordnung, Glasfertigungstechnik, etc.) that otherwise
   * push the column wider than the viewport. */
  /* Phase 6.1.0b mobile heading rescale (2026-05-22): user flagged H2 too
   * big at 390px after the mobile padding tightening. Previous Phase 5.3
   * baseline targeted 28-38px H2 which felt heavy in tighter body cards.
   * New editorial-luxury mobile scale: H1 ~24-30px, H2 ~22-26px, H3 ~18-21px,
   * H4 ~16-18px. Still uses clamp() so it scales smoothly to tablet, but the
   * mobile MAX caps are pulled down ~30%. line-height tightened slightly. */
  .wcl-main-stack h1,
  .wsk-wepro-content__body h1,
  .wepro-content-section h1 {
    font-size: clamp(1.6rem, 5.5vw, 1.95rem);
    line-height: 1.2;
    overflow-wrap: anywhere;
    word-break: normal;
  }
  .wcl-main-stack h2,
  .wsk-wepro-content__body h2,
  .wepro-content-section h2 {
    font-size: clamp(1.4rem, 5vw, 1.7rem);
    line-height: 1.25;
    overflow-wrap: anywhere;
    word-break: normal;
  }
  .wcl-main-stack h3,
  .wsk-wepro-content__body h3,
  .wepro-content-section h3 {
    font-size: clamp(1.15rem, 4vw, 1.35rem);
    line-height: 1.3;
    overflow-wrap: anywhere;
    word-break: normal;
  }
  .wcl-main-stack h4,
  .wsk-wepro-content__body h4,
  .wepro-content-section h4 {
    font-size: clamp(1rem, 3.5vw, 1.15rem);
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

  /* Long body links and inline code shouldn't trigger horizontal scroll. */
  .wcl-main-stack a,
  .wsk-wepro-content__body a,
  .wepro-content-section a {
    overflow-wrap: anywhere;
  }

  /* Generic widget overflow guard — every WEPRO section card stays inside
   * the viewport even when its content has long unbreakable strings. */
  .wepro-content-section {
    max-width: 100%;
    min-width: 0;
  }
  .wepro-content-section > * {
    max-width: 100%;
    min-width: 0;
  }

  /* Per-widget overflow fixes (the 8 named in Phase 5.3 spec) ---------- */

  /* key_facts: label/value pair rows can wrap on tight widths */
  .wepro-content-section--key_facts {
    overflow: hidden;
  }
  .wepro-content-section--key_facts dl,
  .wepro-content-section--key_facts ul,
  .wepro-content-section--key_facts ol {
    margin-left: 0;
    padding-left: 0;
  }
  .wepro-content-section--key_facts dt,
  .wepro-content-section--key_facts dd {
    overflow-wrap: anywhere;
  }

  /* pricing: card already responsive via flex; ensure value text wraps */
  .wcl-pricing-card,
  .wepro-content-section--pricing {
    max-width: 100%;
  }
  .wcl-pricing-card__value {
    overflow-wrap: anywhere;
  }

  /* author_meister: photo + text card; let inner blocks wrap properly */
  .wepro-content-section--author_meister {
    overflow: hidden;
  }
  .wepro-content-section--author_meister * {
    min-width: 0;
    max-width: 100%;
  }

  /* contact_card: tel/email anchors are notorious for forcing horizontal
   * scroll because they're one long unbreakable token. */
  .wepro-content-section--contact_card,
  .wepro-content-section--contact_card a {
    overflow-wrap: anywhere;
  }

  /* service_details: the WSF 9-block aggregator — protect every nested block */
  .wepro-content-section--service_details {
    overflow: hidden;
  }
  .wepro-content-section--service_details img,
  .wepro-content-section--service_details video,
  .wepro-content-section--service_details iframe {
    max-width: 100%;
    height: auto;
  }

  /* faqs: accordion items can have long answer text; wrap aggressively */
  .wepro-content-section--faqs {
    overflow: hidden;
  }
  .wepro-content-section--faqs * {
    overflow-wrap: anywhere;
  }

  /* howto_steps: numbered steps can have long German step titles */
  .wepro-content-section--howto_steps {
    overflow: hidden;
  }
  .wepro-content-section--howto_steps__name,
  .wepro-content-section--howto_steps__text {
    overflow-wrap: anywhere;
  }
  /* Cards should match the full column width of post-body / service_details
   * sections. Phase 5.3 added padding-left: 1.25rem here as a generic list
   * indent, but the cards are visually-bordered blocks (not bulleted list
   * items) and the numbered circle is INSIDE each card via float — so the
   * outer list indent only made cards look narrower + asymmetric (left-
   * indented but right-flush) vs normal content sections. */
  .wepro-content-section--howto_steps__list {
    padding-left: 0;
    margin-left: 0;
  }

  /* Post body coming from the editor (Avada Builder / Gutenberg / classic):
   * tables, pre, code, embeds — all common horizontal-overflow culprits */
  .wcl-section--post-body img,
  .wsk-wepro-content__body img,
  .wcl-section--post-body video,
  .wsk-wepro-content__body video {
    max-width: 100%;
    height: auto;
  }
  .wcl-section--post-body pre,
  .wsk-wepro-content__body pre,
  .wcl-section--post-body code,
  .wsk-wepro-content__body code {
    overflow-wrap: anywhere;
    white-space: pre-wrap;
  }
  /* Avada-builder tables and editor tables that aren't the comparison_table:
   * allow inner horizontal scroll instead of pushing the page wider */
  .wcl-section--post-body > table,
  .wsk-wepro-content__body > table,
  .wcl-section--post-body figure.wp-block-table,
  .wsk-wepro-content__body figure.wp-block-table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* =============================================================================
 * Phase 6.0 — Sidebar rail + H2/H3 baseline + comparison polish (2026-05-22)
 *
 * Three combined fixes:
 *   Fix 10: Sidebar rail shared rhythm (mobile + desktop) with inner-widget
 *           normalization to prevent double-card chrome
 *   Fix 14: Restrained editorial H2/H3 baseline (not luxury, not marketing)
 *   Fix 15: Comparison table desktop visual polish (mobile cards unchanged)
 *
 * Phase 6.0 = clean / German / responsive / non-duplicated. Full luxury
 * design language ships in Phase 6.1.
 * ========================================================================== */

/* ── Fix 10: Sidebar rail — shared rhythm at every viewport ─────────────
 *
 * Two-layer rule (per Codex review):
 *   Layer A: shared rhythm on `.wcl-sidebar-stack > .wcl-section`
 *            (padding + border + radius + surface — the "family")
 *   Layer B: inner-widget normalization — null out the embedded
 *            border/padding/background on `.wcl-pricing-card`,
 *            `.wch-expert-box`, contact card so they inherit the outer
 *            rhythm instead of double-framing.
 */
.wcl-sidebar-stack > .wcl-section {
  padding: clamp(16px, 2vw, 20px);
  background: var(--wsk-content-card-bg, rgba(255, 255, 255, 0.96));
  border: 1px solid var(--wsk-content-card-border, rgba(20, 18, 12, 0.08));
  border-radius: var(--wsk-content-card-radius, 12px);
  box-shadow: 0 1px 3px rgba(20, 18, 12, 0.02);
}

/* Layer C — Phase 6.1 Sidebar Widget System (Codex spec, 2026-05-22):
 * "all sidebar widgets must share one luxury visual language."
 * Many content sections add their own padding + background via
 * `data-wepro-bg="neutral"` (author_meister, contact_card, etc.) — when
 * rendered inside a `.wcl-sidebar-stack` wrapper that ALREADY provides the
 * card chrome (padding + bg + border + radius from Layer A above), the
 * inner bg-neutral rule double-pads and competes for surface color.
 * Strip the inner chrome so the OUTER sidebar wrapper is the only frame.
 * This unifies every sidebar widget under one consistent luxury system. */
.wcl-sidebar-stack > .wcl-section .wepro-content-section,
.wcl-sidebar-stack > .wcl-section .wepro-content-section[data-wepro-bg],
.wcl-sidebar-stack > .wcl-section .wepro-content-section[data-wepro-radius] {
  background: transparent;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin: 0;
}

/* Layer B — inner-widget normalization to prevent double-frame */
.wcl-sidebar-stack > .wcl-section .wcl-pricing-card {
  border: 0;
  padding: 0;
  background: transparent;
  border-radius: 0;
}
.wcl-sidebar-stack > .wcl-section .wch-expert-box {
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.wcl-sidebar-stack > .wcl-section .wch-expert-box__inner {
  padding: 0;
}
/* Compact author portrait in sidebar (overrides earlier 88px tightening) */
.wcl-sidebar-stack > .wcl-section .wch-expert-box__photo img {
  max-width: 64px;
  height: auto;
}

/* Vertical rhythm between cards stays controlled by .wcl-sidebar-stack
 * own `gap` (set in the Phase 5.2 block — var(--wsk-content-sidebar-gap)). */

/* ── Fix 14: Editorial H2/H3 baseline (restrained, not luxury) ──────────
 *
 * Scoped INSIDE `.wcl-main-stack`, `.wsk-wepro-content__body`,
 * `.wepro-content-section` only — Avada theme typography stays untouched.
 * Smaller than current site defaults, better vertical spacing, optional
 * thin accent line on H2 only.
 */
@media (min-width: 768px) {
  .wcl-main-stack h2,
  .wsk-wepro-content__body h2,
  .wepro-content-section h2 {
    font-size: clamp(1.6rem, 2.2vw, 2rem);
    line-height: 1.25;
    margin: 1.8em 0 0.5em;
    font-weight: 600;
  }
  .wcl-main-stack h3,
  .wsk-wepro-content__body h3,
  .wepro-content-section h3 {
    font-size: clamp(1.25rem, 1.6vw, 1.45rem);
    line-height: 1.3;
    margin: 1.4em 0 0.4em;
    font-weight: 600;
  }
  /* Thin accent line ONLY on H2 in the post body (skip section headings
   * that already have their own eyebrow chrome to avoid double accent). */
  .wcl-section--post-body h2,
  .wsk-wepro-content__body h2 {
    border-left: 2px solid var(--wdt-color-accent, var(--awb-color-4, #b89968));
    padding-left: 0.6em;
  }
  /* First heading inside the body shouldn't push the 1.8em top margin
   * (it would create a visible gap between body start and first H2). */
  .wcl-section--post-body > *:first-child,
  .wsk-wepro-content__body > *:first-child {
    margin-top: 0;
  }
}

/* ── Fix 15: Comparison table desktop polish ────────────────────────────
 *
 * Desktop matrix: thinner separators, lighter accent, slightly tighter
 * cells. Mobile stacked cards (Phase 5.3) unchanged.
 */
@media (min-width: 768px) {
  .wepro-content-section--comparison_table__table {
    /* Slightly narrower min-width so it fits the 2-col main column without
     * triggering the horizontal-scroll affordance just below desktop. */
    min-width: 480px;
  }
  .wepro-content-section--comparison_table__table th,
  .wepro-content-section--comparison_table__table td {
    /* Tighter cells for elegant density */
    padding: 12px 14px;
    border-bottom: 1px solid rgba(20, 18, 12, 0.05);
  }
  .wepro-content-section--comparison_table__table thead th {
    /* Softer accent under the header row — eyebrow style without shouting */
    border-bottom: 1px solid var(--wdt-color-accent-soft, rgba(184, 153, 104, 0.4));
    padding-bottom: 10px;
  }
  .wepro-content-section--comparison_table__table tbody tr:first-child td,
  .wepro-content-section--comparison_table__table tbody tr:first-child th {
    padding-top: 14px;
  }
}

/* =============================================================================
 * Phase 6.0b — Pre-ship visual cleanup (2026-05-22)
 *
 * After browser review:
 *   - Floating weprocta-ww WhatsApp widget overlapped sidebar links + content
 *     → add safe-area bottom padding on .wcl-layout so content never sits
 *       inside the widget's viewport zone
 *   - Raw .wpd-cta-block inline HTML (26 author-pasted blocks across the
 *     site) lacked responsive guards / professional spacing → normalize via
 *     scoped CSS without touching the author-typed inline styles (which we
 *     can't safely strip post-bulk-edit)
 *   - Border-overflow guard: box-sizing + max-width on every card/section
 *     descendant so nested wch-* / weprocta-* inner styles can't escape
 *     their container
 *   - Sidebar polish pass: tighter author portrait, no double frame on
 *     hours / contact / pricing
 * ========================================================================== */

/* ── Floating widget safe-area clearance ──────────────────────────────
 * weprocta-ww (WhatsApp bubble) is position:fixed at bottom-right of the
 * viewport. Without clearance, sidebar/main last cards can sit underneath
 * it. Padding the .wcl-layout bottom pushes content above the widget zone
 * uniformly across all CPTs. */
.wcl-layout {
  padding-block-end: clamp(96px, 12vh, 144px);
}
@media (max-width: 767px) {
  .wcl-layout {
    /* Mobile widget is smaller (~4.5em → ~72px). Padding can shrink too. */
    padding-block-end: clamp(80px, 10vh, 112px);
  }
}

/* ── Raw .wpd-cta-block normalization ──────────────────────────────────
 * 26 author-pasted blocks across the site use the same inline-styled
 * pattern:
 *   <div class="wpd-cta-block" style="margin:32px 0 24px;padding:24px;
 *      background:#f8f8f8;border:1px solid #e2e2e2"> ... </div>
 *
 * The inline styles can't be stripped without rewriting 26 posts (out of
 * scope). Use scoped CSS to neutralize the harshest parts AND add
 * responsive / button-wrap guards. !important is required to beat the
 * inline style attributes (since they're more specific than any selector).
 * Phase 6.1 design pass can replace these blocks with native weprocta CTA
 * elements; this rule keeps them legible in the meantime. */
.wepro-content-section .wpd-cta-block,
.wcl-section--post-body .wpd-cta-block,
.wsk-wepro-content__body .wpd-cta-block {
  background: var(--wsk-cta-soft-bg, rgba(247, 247, 245, 0.6)) !important;
  border: 1px solid var(--wsk-cta-soft-border, rgba(20, 18, 12, 0.08)) !important;
  border-radius: var(--wsk-content-card-radius, 12px) !important;
  padding: clamp(16px, 2vw, 22px) !important;
  margin: clamp(20px, 3vw, 28px) 0 !important;
  max-width: 100% !important;
  box-sizing: border-box;
  overflow: hidden;
}
.wepro-content-section .wpd-cta-block * {
  max-width: 100%;
  box-sizing: border-box;
}
/* Inline anchors / buttons inside the CTA blocks: wrap on mobile so they
 * don't overflow the card horizontally */
.wepro-content-section .wpd-cta-block a,
.wcl-section--post-body .wpd-cta-block a {
  overflow-wrap: anywhere;
  word-break: normal;
}
/* If an editor used inline color (e.g. harsh red/pink button), soften via
 * a hover safety net but DON'T override the editor's intent for emergency
 * CTAs — only attenuate when no link role is present (= decorative box) */
.wepro-content-section .wpd-cta-block > p:first-child {
  margin-top: 0 !important;
}
.wepro-content-section .wpd-cta-block > p:last-child {
  margin-bottom: 0 !important;
}

/* ── Border-overflow guard for every section/card descendant ───────────
 * Defends against nested wch-* / weprocta-* / vstt-* widgets emitting a
 * child element with width:Npx that escapes a narrow sidebar card. */
.wcl-section,
.wcl-section *,
.wcl-sidebar-stack,
.wcl-sidebar-stack * {
  box-sizing: border-box;
  max-width: 100%;
}
.wcl-section img,
.wcl-section video,
.wcl-section iframe,
.wcl-section svg {
  height: auto;
}

/* ── Sidebar polish: ensure all cards align to same edge ───────────────
 * Outer frame from Phase 6.0 already sets padding/border/radius; this
 * adds an explicit width:100% on every direct article child so they all
 * occupy the same column width regardless of inner content (e.g. an
 * inner widget that defaults to width:auto wouldn't stretch). */
.wcl-sidebar-stack > .wcl-section {
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

/* ── Mobile final responsive guard: prevent layout from forcing a
 * horizontal scroll if any descendant overflows ─────────────────────── */
@media (max-width: 767px) {
  .wcl-layout,
  .wcl-main-stack,
  .wcl-sidebar-stack {
    overflow-x: clip;
  }
}

/* ─────────────────────────────────────────────────────────────────
 * Phase 6.0c (post-browser-review refinements, 2026-05-22)
 *
 * Browser pass turned up four follow-ups not visible to curl:
 *   (1) author/expert card bottom gap was huge (52px+) because
 *       .wch-expert-box defaults `margin: 2rem 0` and Phase 6.0
 *       only null'd its padding, not its margin
 *   (2) comparison table thead border extended past the right edge
 *       on desktop (per-th border-bottom + col padding artefact)
 *   (3) /vergleiche/ body prose ("Kurzantwort: Floatglas …") looked
 *       orphaned next to the structured comparison_table section —
 *       no chrome, just naked paragraph text
 *   (4) Hub expert-box internal margins added more vertical air
 *       between name/title/profile-link than necessary in sidebar
 * ───────────────────────────────────────────────────────────────── */

/* (1) + (4) — Hub expert-box density in sidebar context
 * Phase 6.0 null'd padding + border + background. Now also null the
 * outer 2rem margin (the visible bottom-of-card gap) and tighten the
 * internal name/title/profile-link rhythm. Keeps the card readable
 * but removes the floating-in-empty-space look from the screenshot. */
.wcl-sidebar-stack > .wcl-section .wch-expert-box {
  margin: 0;
}
.wcl-sidebar-stack > .wcl-section .wch-expert-box__bio,
.wcl-sidebar-stack > .wcl-section .wch-expert-box__contact {
  margin-top: 0.5rem;
}
.wcl-sidebar-stack > .wcl-section .wch-expert-box__profile-link {
  margin: 0.75rem 0 0;
  padding-bottom: 0;
}
.wcl-sidebar-stack > .wcl-section .wch-expert-box__title {
  margin-top: 0.15rem;
}
/* Inner sep line directly above profile-link can be tight too */
.wcl-sidebar-stack > .wcl-section .wch-expert-box__sep {
  margin: 0.6rem 0;
}

/* (2) — Comparison table thead border: move the gold accent to a
 * single bottom border on the FIRST tbody row instead of per-th, so
 * the line aligns to the table's natural inside-edge instead of
 * extending past the last column cell's right padding. */
.wepro-content-section--comparison_table__table thead th {
  border-bottom: 0; /* Cancel Phase 6.0 per-th rule that bled out */
}
.wepro-content-section--comparison_table__table tbody tr:first-child td,
.wepro-content-section--comparison_table__table tbody tr:first-child th {
  border-top: 1px solid var(--wdt-color-accent-soft, rgba(184, 153, 104, 0.4));
}

/* ─────────────────────────────────────────────────────────────────
 * Phase 6.1.0 — Sidebar rail editorial / Awwwards luxury pass
 * (2026-05-22, post-1.11.0 polish, user-confirmed scope)
 *
 * Promotes the sidebar from utility-grade Phase 6.0 baseline to a
 * coherent editorial trust rail. Applies to all 4 typical sidebar
 * cards as one family:
 *   1. .wepro-content-section--key_facts    (label/value rows)
 *   2. .wch-expert-box                       (author/Meister)
 *   3. .wch-contact                          (phone/email/whatsapp/address)
 *   4. .wcl-pricing-card                     (PREIS + value)
 *
 * Design vocabulary:
 *   - Hairline dividers between rows (rgba(20,18,12,0.06))
 *   - Generous whitespace
 *   - Uppercase tracked eyebrows (11px / .12em)
 *   - Gold accent strictly on icons + eyebrow underlines + link arrows
 *   - Refined typographic hierarchy per card
 *   - No box shadow on individual cards (the outer .wcl-section frame
 *     from Phase 6.0 already carries the surface treatment)
 *
 * Mobile preserves the same family (single-column stack).
 * ───────────────────────────────────────────────────────────────── */

/* Outer rail rhythm — refine the Phase 6.0 baseline */
.wcl-sidebar-stack > .wcl-section {
  padding: clamp(22px, 2.4vw, 28px);
  background: var(--wsk-content-card-bg, #ffffff);
  border: 1px solid rgba(20, 18, 12, 0.07);
  border-radius: 14px;
  box-shadow: none;
}

/* ── Shared eyebrow pattern (re-used by all 4 cards) ─────────────── */
.wcl-sidebar-stack .wepro-content-section--key_facts > .wepro-content-section--key_facts__title,
.wcl-sidebar-stack .wch-expert-box__label,
.wcl-sidebar-stack .wcl-pricing-card__label {
  display: block;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--wdt-color-text-secondary, var(--awb-color-7, #6b6864));
  margin: 0 0 14px;
  padding: 0 0 12px;
  border-bottom: 1px solid var(--wdt-color-accent, var(--awb-color-4, #b89968));
}

/* ── (1) KeyFactsSection — refined label/value rows ──────────────── */
.wcl-sidebar-stack .wepro-content-section--key_facts__item {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid rgba(20, 18, 12, 0.06);
}
.wcl-sidebar-stack .wepro-content-section--key_facts__item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.wcl-sidebar-stack .wepro-content-section--key_facts__item:first-of-type {
  padding-top: 0;
}
.wcl-sidebar-stack .wepro-content-section--key_facts__label {
  font-size: 14px;
  font-weight: 400;
  color: var(--wdt-color-text, #1a1a1a);
  flex-shrink: 0;
}
.wcl-sidebar-stack .wepro-content-section--key_facts__value {
  font-size: 14px;
  font-weight: 600;
  color: var(--wdt-color-text, #1a1a1a);
  text-align: right;
  overflow-wrap: anywhere;
}

/* ── (2) Hub expert-box — Meister card with refined hierarchy ────── */
.wcl-sidebar-stack .wch-expert-box__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 0;
}
.wcl-sidebar-stack .wch-expert-box__photo {
  margin: 0 0 18px;
}
.wcl-sidebar-stack .wch-expert-box__photo img {
  width: 84px;
  height: 84px;
  max-width: 84px;
  border-radius: 50%;
  object-fit: cover;
  filter: grayscale(0.15) contrast(1.02);
}
.wcl-sidebar-stack .wch-expert-box__info {
  width: 100%;
}
/* The eyebrow ("IHR GLASERMEISTER IN BERLIN") inherits the shared pattern */
.wcl-sidebar-stack .wch-expert-box__name,
.wcl-sidebar-stack a.wch-expert-box__name {
  display: block;
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 0;
  color: var(--wdt-color-text, #1a1a1a);
  text-decoration: none;
  margin: 0;
  line-height: 1.3;
}
.wcl-sidebar-stack a.wch-expert-box__name:hover {
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
}
.wcl-sidebar-stack .wch-expert-box__title {
  font-size: 13px;
  font-style: italic;
  color: var(--wdt-color-text-secondary, var(--awb-color-7, #6b6864));
  margin: 4px 0 0;
}
.wcl-sidebar-stack .wch-expert-box__sep {
  width: 32px;
  height: 1px;
  border: 0;
  background: var(--wdt-color-accent, var(--awb-color-4, #b89968));
  margin: 18px auto;
  opacity: 0.6;
}
.wcl-sidebar-stack .wch-expert-box__profile-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
  text-decoration: none;
  margin: 0;
  padding: 0;
  border: 0;
  transition: gap 0.2s ease, color 0.2s ease;
}
.wcl-sidebar-stack .wch-expert-box__profile-link:hover {
  gap: 10px;
  color: var(--wdt-color-accent-deep, var(--awb-color-5, #8e7437));
}

/* ── (3) Hub contact — phone/email/whatsapp/address row stack ────── */
.wcl-sidebar-stack .wch-contact {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
}
.wcl-sidebar-stack .wch-contact__item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(20, 18, 12, 0.06);
  font-size: 14px;
  line-height: 1.45;
  color: var(--wdt-color-text, #1a1a1a);
}
.wcl-sidebar-stack .wch-contact__item:first-child {
  padding-top: 0;
}
.wcl-sidebar-stack .wch-contact__item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.wcl-sidebar-stack .wch-contact__icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  margin-top: 2px;
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
  opacity: 0.85;
}
.wcl-sidebar-stack .wch-contact__item a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(20, 18, 12, 0.12);
  padding-bottom: 1px;
  transition: border-color 0.2s ease, color 0.2s ease;
}
.wcl-sidebar-stack .wch-contact__item a:hover {
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
  border-bottom-color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
}
/* Address — multi-line, no underline (it's not a link target by default) */
.wcl-sidebar-stack .wch-contact__item--address {
  align-items: flex-start;
}

/* ── (4) Pricing card — eyebrow + display value ──────────────────── */
.wcl-sidebar-stack .wcl-pricing-card {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
}
.wcl-sidebar-stack .wcl-pricing-card__value {
  display: block;
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -0.01em;
  line-height: 1.2;
  color: var(--wdt-color-text, #1a1a1a);
}
.wcl-sidebar-stack .wcl-pricing-card__value a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid var(--wdt-color-accent, var(--awb-color-4, #b89968));
  padding-bottom: 2px;
  transition: color 0.2s ease;
}
.wcl-sidebar-stack .wcl-pricing-card__value a:hover {
  color: var(--wdt-color-accent, var(--awb-color-4, #b89968));
}

/* ── Mobile: same family, no sticky, full-width cards ────────────── */
@media (max-width: 1023.98px) {
  .wcl-sidebar-stack > .wcl-section {
    padding: clamp(20px, 4vw, 24px);
  }
}

/* ─────────────────────────────────────────────────────────────────
 * Phase 6.1.0a — Mobile padding tightening (2026-05-22)
 *
 * User browser-flagged on mobile (~390px viewport): body card had
 * ~80px+ of side eat (layout 40px + body card 40px), leaving body
 * text columns squished to ~310px. HowTo step cards even tighter
 * (~64px left for numbered circle + 20px right + 80px layer = 164px
 * eat → ~226px text). Numbered circle felt oversized for small
 * viewport. Tightens uniformly across all card-bearing surfaces.
 *
 * Two breakpoints: 767px (general mobile) + 480px (true small mobile).
 * 70ch reading max-width on body content uncapped on mobile so the
 * available width is actually used.
 * ───────────────────────────────────────────────────────────────── */
@media (max-width: 767px) {
  /* Layout itself — no inline padding (Avada column owns the gutter).
   * Removed 2026-05-24 (v1.15.1). */
  /* Body chrome cards (post-body + service_details) — tighter padding */
  .wcl-section.wcl-section--post-body,
  .wcl-section.wcl-section--service_details {
    padding: clamp(14px, 3vw, 18px);
  }
  /* Body inner: uncap 70ch reading max-width — let mobile use full width */
  .wcl-section.wcl-section--post-body .wsk-wepro-content__body,
  .wcl-section.wcl-section--service_details .wepro-content-section--service_details {
    max-width: none;
  }
  /* Sidebar cards — tighter padding (4 sidebar card variants share this) */
  .wcl-sidebar-stack > .wcl-section {
    padding: clamp(16px, 3.5vw, 20px);
  }
  /* HowTo step cards — Phase 6.1.0c (2026-05-22, user-chosen "inline
   * with title only" pattern): drop the 46px left carve-out; instead
   * float the numbered circle into the upper-left of the card and let
   * the title wrap to its right. Body text gets `clear: left` so it
   * always starts BELOW the floated circle and uses the full card
   * width. Net effect: ~30px reading-width gain on every body line. */
  .wepro-content-section--howto_steps__item {
    padding: clamp(14px, 3vw, 18px);
  }
  .wepro-content-section--howto_steps__item::before {
    position: static;
    float: left;
    margin: 3px 10px 0 0;
    width: 24px;
    height: 24px;
    font-size: 12px;
  }
  .wepro-content-section--howto_steps__name {
    /* Title wraps to the right of the floated circle on first line(s),
     * extends to full width if it overruns the circle's height. */
    margin-top: 0;
  }
  .wepro-content-section--howto_steps__text {
    /* Body always clears the float — full card width. */
    clear: left;
    margin-top: 8px;
  }
}

@media (max-width: 480px) {
  /* True small mobile — final tightening pass for cramped viewports.
   * .wcl-layout no longer carries inline padding (Avada column handles it).
   * Removed 2026-05-24 (v1.15.1). */
  .wcl-section.wcl-section--post-body,
  .wcl-section.wcl-section--service_details {
    padding: 14px;
  }
  .wcl-sidebar-stack > .wcl-section {
    padding: 16px;
  }
  .wepro-content-section--howto_steps__item {
    padding: 14px;
  }
  .wepro-content-section--howto_steps__item::before {
    margin-right: 8px;
    width: 22px;
    height: 22px;
    font-size: 11px;
  }
}

/* Phase 6.1.0d (.wpd-cta-block editorial-soft mobile) was REVERTED before
 * 1.11.1 ship per user directive: starter-kit should not CSS-override
 * author-pasted manual content (the .wpd-cta-block instances are author-
 * authored, not starter-kit-generated). Per-article CTA disposition is
 * tracked as Phase 6.1 backlog item #3 — handled at the content layer
 * (or via a future dedicated WEPRO CTA section), not as a blanket CSS
 * override from this plugin. */

/* (3) — Body prose chrome on body-providing sections
 * Without this rule the body article is naked paragraphs with no surface
 * treatment, while every neighboring WEPRO section sits inside a card.
 * Adds the same soft surface used by the pricing/sidebar cards so the
 * body reads as part of the same family. Editorial body keeps a generous
 * internal max-width for reading line-length.
 *
 * Targets BOTH variants of body delivery:
 *   - .wcl-section--post-body : virtual section for article/faq/education/
 *     comparison/term/about CPTs (no body-provider section)
 *   - .wcl-section--service_details : the body-provider for service /
 *     wpd_product where ServiceDetailsSection renders the post body
 *
 * Phase 6.1 may swap the surface for the luxury palette. */
.wcl-section.wcl-section--post-body,
.wcl-section.wcl-section--service_details {
  padding: clamp(20px, 2.4vw, 32px);
  background: var(--wsk-content-card-bg, rgba(255, 255, 255, 0.96));
  border: 1px solid var(--wsk-content-card-border, rgba(20, 18, 12, 0.08));
  border-radius: var(--wsk-content-card-radius, 12px);
  box-shadow: 0 1px 3px rgba(20, 18, 12, 0.02);
}
.wcl-section.wcl-section--post-body .wsk-wepro-content__body,
.wcl-section.wcl-section--service_details .wepro-content-section--service_details {
  max-width: 70ch;
  margin-inline: auto;
}

/* Body H2/H3 accent on BOTH body-delivery variants — Phase 6.0 originally
 * only targeted .wcl-section--post-body H2, leaving service / wpd_product
 * headings without the gold-accent treatment. Extend to service_details
 * so headings inside the service body get the same vertical accent line. */
@media (min-width: 768px) {
  .wcl-section--post-body h2,
  .wcl-section--service_details h2,
  .wsk-wepro-content__body h2,
  .wepro-content-section--service_details__full h2 {
    border-left: 2px solid var(--wdt-color-accent, var(--awb-color-4, #b89968));
    padding-left: 0.6em;
  }
  .wcl-section--post-body > *:first-child,
  .wcl-section--service_details > *:first-child,
  .wsk-wepro-content__body > *:first-child,
  .wepro-content-section--service_details__full > *:first-child {
    margin-top: 0;
  }
}

/* =============================================================================
 * QUOTE CTA — Phase 6.2 v1.5 (2026-05-22) — Sidebar widget rail vocabulary
 * Belongs to the sidebar luxury rail family (same chrome as Author, Hours,
 * Contact, Pricing cards). Slightly slimmer per Codex spec but visually one
 * with the rail: same surface + border + radius, sans-serif uppercase
 * tracked label, gold hairline underline + gold arrow as the action accents.
 * No serif italic, no border-only "magazine block" — the card chrome IS the
 * frame.
 * ========================================================================== */

/* Card chrome is inherited from .wcl-sidebar-stack > .wcl-section base
 * (clamp 16-20px padding on mobile, 22-28px desktop, 14px radius, hairline
 * border, neutral surface). We just tighten padding slightly — Codex spec
 * allows "slimmer but must belong". */
.wcl-section.wcl-section--quote_cta {
  /* Override only padding — keep all other sidebar-card chrome (border,
   * radius, surface, no shadow). Slimmer = action element, but still in
   * the same family. */
  padding: clamp(16px, 2vw, 20px);
}

.wsk-quote-cta {
  display: block;
}

.wsk-quote-cta__btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;

  /* Sans-serif uppercase tracked — same family as sidebar Author name + the
   * other sidebar widget labels. NO serif, NO italic (Codex spec). */
  font-family: inherit;
  font-size: 0.8125rem;             /* 13px — same scale as Author title */
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  line-height: 1.35;
  color: var(--wdt-color-text, var(--awb-color-8, #14120c)) !important;
  text-decoration: none !important;
  cursor: pointer;
}

/* Animated gold underline under the label — static at rest (signals
 * action affordance), retracts to the right on hover. Matches the
 * gold-accent system used on sidebar eyebrows and the Author profile-link. */
.wsk-quote-cta__label {
  flex: 1 1 auto;
  min-width: 0;
  padding-bottom: 4px;
  background-image: linear-gradient(
    var(--wdt-color-accent, #b89968),
    var(--wdt-color-accent, #b89968)
  );
  background-repeat: no-repeat;
  background-position: 0 100%;
  background-size: 100% 1px;
  transition: background-size 0.5s cubic-bezier(0.2, 0.7, 0.2, 1),
              background-position 0s 0.5s;
}

.wsk-quote-cta__btn:hover .wsk-quote-cta__label,
.wsk-quote-cta__btn:focus-visible .wsk-quote-cta__label {
  background-size: 0% 1px;
  background-position: 100% 100%;
  transition: background-size 0.4s cubic-bezier(0.2, 0.7, 0.2, 1),
              background-position 0s;
}

.wsk-quote-cta__arrow {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  align-self: center;
  color: var(--wdt-color-accent, #b89968); /* matches the underline accent */
  transition: transform 0.4s cubic-bezier(0.2, 0.7, 0.2, 1),
              color 0.4s ease;
}
.wsk-quote-cta__btn:hover .wsk-quote-cta__arrow,
.wsk-quote-cta__btn:focus-visible .wsk-quote-cta__arrow {
  transform: translateX(4px);
  color: var(--wdt-color-accent-deep, #8a6f45);
}

.wsk-quote-cta__btn:focus-visible {
  outline: 1px solid var(--wdt-color-accent, #b89968);
  outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
  .wsk-quote-cta__label,
  .wsk-quote-cta__arrow { transition: none; }
}

@media (max-width: 767px) {
  .wcl-section.wcl-section--quote_cta {
    padding: clamp(14px, 3vw, 18px);
  }
  .wsk-quote-cta__btn {
    font-size: 0.75rem;             /* 12px — still legible at .16em tracking */
  }
}

/* =============================================================================
 * Phase 6.2 — three new content-section wrappers (2026-05-22)
 *   - route_map         : wraps [company_map] / [vstt_map] / [partner_route_map]
 *   - share_buttons     : wraps [wepro_share]
 *   - freshness_signal  : INTERNAL pill (ev_last_reviewed + ev_freshness_score)
 * ========================================================================== */

/* Route map — full-width container; the wrapped shortcode brings its own
 * iframe / canvas dimensions. Just ensure no horizontal overflow. */
.wepro-content-section--route_map {
  max-width: 100%;
  overflow: hidden;
}
.wepro-content-section--route_map iframe,
.wepro-content-section--route_map img,
.wepro-content-section--route_map canvas {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Share buttons — flex row that wraps on narrow viewports so no horizontal
 * scroll appears when the share plugin emits many icons. */
.wepro-content-section--share_buttons {
  /* The wrapped [wepro_share] markup decides its own visual treatment;
   * just provide layout guard-rails. */
}
.wepro-content-section--share_buttons > * {
  max-width: 100%;
}

/* Freshness signal — compact gold-accent pill row. INTERNAL render emits
 * .wsk-freshness with .wsk-freshness__item children separated by a thin
 * mid-dot separator. */
.wsk-freshness {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 14px;
  padding: 8px 14px;
  background: color-mix(in srgb, var(--wdt-color-accent, #b89968) 5%, transparent);
  border: 1px solid var(--wdt-color-border, rgba(184, 153, 104, 0.25));
  border-radius: 999px;
  font-family: inherit;
  font-size: 0.8125rem;
  line-height: 1.3;
  color: var(--wdt-color-text-secondary, var(--awb-color-7, #4a4843));
}
.wsk-freshness__item {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
}
.wsk-freshness__label {
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 0.6875rem;
  color: var(--wdt-color-accent-deep, var(--awb-color-5, #8a6f45));
}
.wsk-freshness__value {
  font-weight: 600;
  color: var(--wdt-color-text, var(--awb-color-8, #14120c));
  font-variant-numeric: tabular-nums;
}
.wsk-freshness__sep {
  color: var(--wdt-color-border, rgba(184, 153, 104, 0.4));
  font-weight: 400;
  align-self: center;
}

@media (max-width: 480px) {
  .wsk-freshness {
    padding: 7px 12px;
    font-size: 0.75rem;
    gap: 6px 10px;
  }
  .wsk-freshness__label {
    font-size: 0.625rem;
  }
}
/**
 * WEPRO: Form — wrapper styles for VPF (vstt-property-forms) embed element.
 *
 * The element renders VPF's [vpf_form] shortcode inside `.wsk-form__body`.
 * VPF owns the form's internal styling (.vpf-form-wrapper and friends);
 * this stylesheet only controls the wrapper chrome:
 *   - variants: card / inline / minimal
 *   - alignment within the parent column
 *   - max-width, background, border, radius, padding overrides
 *   - optional title block (driven by wsk_text_css_vars('title','form',…))
 *   - accent bridge: re-scopes --vpf-accent inside .wsk-form
 *
 * Inline CSS-var overrides (ADR-5) only emit when the editor changed a
 * default — the var() fallback below is the cascade floor.
 */

/* =============================================================
   Wrapper — base
   ============================================================= */
.wsk-form {
	display: block;
	width: 100%;
	max-width: var(--wsk-form-max-width, 720px);
	box-sizing: border-box;

	background: var(--wsk-form-bg, transparent);
	border: 0 solid var(--wsk-form-border-color, var(--wdt-color-border-subtle, #e5e7eb));
	border-radius: var(--wsk-form-border-radius, 0);
	padding: var(--wsk-form-padding, 0);

	/* Default alignment = center (left/center/right modifiers override). */
	margin-left: auto;
	margin-right: auto;
}

/* =============================================================
   Alignment modifiers
   ============================================================= */
.wsk-form--align-left {
	margin-left: 0;
	margin-right: auto;
	text-align: left;
}
.wsk-form--align-center {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.wsk-form--align-right {
	margin-left: auto;
	margin-right: 0;
	text-align: right;
}

/* =============================================================
   Variants — each sets variant defaults for the CSS vars consumed
   by the base rule above. Editor color/border/radius/padding
   params override these via inline --wsk-form-* declarations.
   ============================================================= */

/* CARD — boxed, soft shadow, generous padding. */
.wsk-form--card {
	--wsk-form-bg: var(--wdt-color-surface, #ffffff);
	--wsk-form-border-radius: 16px;
	--wsk-form-padding: clamp(20px, 4vw, 40px);

	border-width: 1px;
	box-shadow: 0 8px 32px rgba(15, 23, 42, 0.06);
}

/* INLINE — no chrome, just spacing. */
.wsk-form--inline {
	--wsk-form-bg: transparent;
	--wsk-form-border-radius: 0;
	--wsk-form-padding: 0;

	border-width: 0;
	box-shadow: none;
}

/* MINIMAL — subtle hairline border, compact padding. */
.wsk-form--minimal {
	--wsk-form-bg: transparent;
	--wsk-form-border-radius: 8px;
	--wsk-form-padding: clamp(12px, 2vw, 20px);

	border-width: 1px;
	box-shadow: none;
}

/* =============================================================
   Title block — full Avada-typography stack via wsk_text_css_vars
   (prefix='title', el_prefix='form'). Variables only set when
   editor changed them; otherwise stylesheet defaults apply.
   ============================================================= */
.wsk-form__title {
	margin-top: var(--wsk-form-title-margin-top, 0);
	margin-bottom: var(--wsk-form-title-margin-bottom, 16px);

	font-family: var(--wsk-form-title-font-family);
	font-size: var(--wsk-form-title-font-size, inherit);
	font-weight: var(--wsk-form-title-font-weight);
	font-style: var(--wsk-form-title-font-style);
	line-height: var(--wsk-form-title-line-height, 1.2);
	letter-spacing: var(--wsk-form-title-letter-spacing);
	text-transform: var(--wsk-form-title-text-transform);
	color: var(--wsk-form-title-color, var(--wdt-color-heading, inherit));

	/* Title alignment honours the wrapper alignment unless the
	   typography control explicitly overrides it. */
	text-align: var(--wsk-form-title-text-align, inherit);
}

/* =============================================================
   Body — wraps the VPF shortcode output. Hairline gap so the
   first VPF field doesn't kiss the title.
   ============================================================= */
.wsk-form__body {
	display: block;
}
.wsk-form__title + .wsk-form__body {
	margin-top: 8px;
}

/* The VPF wrapper inherits --vpf-accent from our inline style on
   .wsk-form when the editor sets form_accent. This selector is
   intentionally low-specificity — VPF's own internal rules win
   for anything beyond the accent token. */
.wsk-form .vpf-form-wrapper {
	/* Form-panel background override (form_inner_bg). VPF paints the panel via
	   `.vpf-form-wrapper { background: var(--vpf-navy, #06162E) }` — `--vpf-navy`
	   is a :root-declared token consumed ONLY here, so we mirror its fallback to
	   preserve VPF's default (or its per-site Palette --vpf-form-bg value) when
	   the editor leaves the control empty. Specificity 0,2,0 already beats VPF's
	   0,1,0 rule; !important is the WSK locked-inline-var convention and removes
	   any enqueue-order doubt between this stylesheet and VPF's. */
	background: var(--wsk-form-inner-bg, var(--vpf-navy, #06162E)) !important;
}

/* =============================================================
   Editor / admin-only notice (rendered when VPF inactive or no
   template selected; visitors see empty output instead).
   ============================================================= */
.wsk-form--unavailable {
	padding: 16px 20px;
	background: rgba(220, 53, 69, 0.06);
	border: 1px dashed rgba(220, 53, 69, 0.4);
	border-radius: 8px;
	color: rgba(220, 53, 69, 0.95);
	font-style: italic;
	text-align: left;
}

/* =============================================================
   Responsive — title text-align ladder mirrors wsk_text_css_vars
   responsive output (medium = tablet, small = mobile).
   ============================================================= */
@media (max-width: 1024px) {
	.wsk-form__title {
		text-align: var(--wsk-form-title-text-align-md, var(--wsk-form-title-text-align, inherit));
		font-size: var(--wsk-form-title-font-size-md, var(--wsk-form-title-font-size, inherit));
	}
}
@media (max-width: 640px) {
	.wsk-form__title {
		text-align: var(--wsk-form-title-text-align-sm, var(--wsk-form-title-text-align-md, var(--wsk-form-title-text-align, inherit)));
		font-size: var(--wsk-form-title-font-size-sm, var(--wsk-form-title-font-size-md, var(--wsk-form-title-font-size, inherit)));
	}

	/* Card padding tightens on narrow viewports for breathing room. */
	.wsk-form--card {
		--wsk-form-padding: clamp(16px, 5vw, 24px);
	}
}

/* =============================================================
   Reduced motion — strip every transition / animation we (or any
   inherited VPF rule) introduced. VPF has its own rmotion block
   for form internals; this covers the WSK wrapper only.
   ============================================================= */
@media (prefers-reduced-motion: reduce) {
	.wsk-form,
	.wsk-form * {
		transition-duration: 0.001ms !important;
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
	}
}
.fusion-tb-header{background-color:var(--awb_header_bg_color,transparent)}.clearfix,.container,.container-fluid,.row{clear:both}.clearfix,.container,.container-fluid,.fusion-clearfix,.row{clear:both}.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.fusion-clearfix:after,.fusion-clearfix:before,.row:after,.row:before{content:" ";display:table}.clearfix:after,.container-fluid:after,.container:after,.fusion-clearfix:after,.row:after{clear:both}.alignleft,.fusion-alignleft{display:inline;float:left;margin-right:15px}.alignright,.fusion-alignright{display:inline;float:right;margin-left:15px}.aligncenter,.fusion-aligncenter{clear:both;display:block;margin-left:auto;margin-right:auto;text-align:center}.aligncenter .fontawesome-icon,.fusion-aligncenter .fontawesome-icon{float:none}.create-block-format-context{display:inline-block;clear:both;margin-bottom:40px;width:100%}.create-block-format-context:after,.create-block-format-context:before{content:" ";display:table}.create-block-format-context:after{clear:both}.create-block-format-context:after,.create-block-format-context:before{content:" ";display:table}.create-block-format-context:after{clear:both}.fusion-columns{margin:0 -15px}.fusion-columns-5 .col-lg-2,.fusion-columns-5 .col-md-2,.fusion-columns-5 .col-sm-2,.fusion-columns-5 .col-xs-2{width:20%}.fusion-columns-5 .fusion-column:nth-of-type(5n+1),.fusion-columns-5 .fusion-flip-box-wrapper:nth-of-type(5n+1){clear:both}.fusion-columns-6 .fusion-column:nth-of-type(6n+1),.fusion-columns-6 .fusion-flip-box-wrapper:nth-of-type(6n+1){clear:both}.fusion-columns-4 .fusion-column:nth-of-type(4n+1),.fusion-columns-4 .fusion-flip-box-wrapper:nth-of-type(4n+1){clear:both}.fusion-columns-3 .fusion-column:nth-of-type(3n+1),.fusion-columns-3 .fusion-flip-box-wrapper:nth-of-type(3n+1){clear:both}.fusion-columns-2 .fusion-column:nth-of-type(odd),.fusion-columns-2 .fusion-flip-box-wrapper:nth-of-type(odd){clear:both}.fusion-builder-row>p{display:none}.fusion-builder-row{width:100%;margin:0 auto}.fusion-builder-row.fusion-builder-row-inner{max-width:100%!important}.fusion-builder-row:after{clear:both;content:" ";display:table}.row:after{clear:both;content:" ";display:table}.fusion-fullwidth{position:relative}.fusion-fullwidth .fusion-row{position:relative;z-index:10}.fusion-fullwidth .fullwidth-video{position:absolute;top:0;left:0;z-index:1;min-height:100%;min-width:100%;-webkit-transform-style:preserve-3d;overflow:hidden}.fusion-fullwidth .fullwidth-video video{position:absolute;top:0;left:0;z-index:1;min-height:100%;min-width:100%}.fusion-fullwidth .fullwidth-overlay{position:absolute;top:0;left:0;z-index:5;height:100%;width:100%}.fusion-fullwidth.faded-background .fullwidth-faded{position:absolute;top:0;left:0;z-index:1;min-height:100%;min-width:100%}.fullwidth-box.video-background .fullwidth-video-image{display:none}.ua-mobile .fullwidth-box.video-background .fullwidth-video-image{width:100%;height:100%;display:block;z-index:2;background-size:cover;background-position:center center;position:absolute;top:0;left:0}.fusion-overflow-visible{overflow:visible!important}.fusion-column-first{clear:left}.fusion-column-no-min-height .fusion-column-content-centered,.fusion-column-no-min-height .fusion-column-wrapper{min-height:0!important}.fusion-builder-column.fusion-column-last{margin-right:0}.fusion-builder-placeholder,.fusion-builder-placeholder:active,.fusion-builder-placeholder:hover,.fusion-builder-placeholder:visited{display:block;background:rgba(42,48,53,.5);color:rgba(255,255,255,.9);text-align:center;padding:30px;font-size:18px;margin:5px 0}.fusion-image-wrapper{overflow:hidden;z-index:1;position:relative}.fusion-image-wrapper:hover .fusion-rollover{opacity:1;transform:translateX(0)}.no-csstransforms .fusion-image-wrapper:hover .fusion-rollover{display:block}.fusion-image-wrapper.fusion-video{display:block}.fusion-image-size-fixed{display:inline-block;max-width:100%;vertical-align:top}.fusion-rollover{display:flex;align-items:center;justify-content:space-around;opacity:0;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;line-height:normal;text-align:center;background-image:linear-gradient(to top,#aad75d,#d1e990);transform:translateX(-100%);transition:all .3s ease-in-out;-webkit-transform-style:preserve-3d}.no-csstransforms .fusion-rollover{display:none}.fusion-rollover a{text-decoration:none;box-shadow:none!important}.fusion-rollover-content{padding:10px;width:90%;box-sizing:border-box}.fusion-rollover-content .fusion-rollover-categories,.fusion-rollover-content .fusion-rollover-title{margin:0;line-height:normal;font-size:13px;color:#333}.fusion-rollover-content .fusion-rollover-title{margin-bottom:3px;margin-top:10px;padding-top:0}.fusion-rollover-content .fusion-rollover-categories{z-index:99;position:relative}.fusion-rollover-content .fusion-rollover-categories a{font-size:11px}.fusion-rollover-content .fusion-rollover-categories a:hover{color:#444}.fusion-rollover-content .fusion-link-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;cursor:pointer;z-index:1}.fusion-rollover-sep{display:inline-block;vertical-align:middle;height:36px;width:5px}.fusion-rollover-gallery,.fusion-rollover-link{display:inline-block;opacity:.9;position:relative;vertical-align:middle;margin:0;height:36px;width:35px;text-indent:-10000px;background-color:#333;border-radius:50%;background-clip:padding-box;z-index:99}.fusion-rollover-gallery:hover,.fusion-rollover-link:hover{opacity:1}.fusion-rollover-gallery:before,.fusion-rollover-link:before{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-indent:0;line-height:normal;text-shadow:none;font-family:awb-icons;font-size:15px;color:#fff;-webkit-font-smoothing:antialiased}.fusion-rollover-link:before{content:"\e619"}.fusion-rollover-gallery:before{content:"\f002"}.fusion-read-more{box-shadow:none!important;position:relative}.fusion-read-more:after{content:"\f105";top:50%;right:-10px;padding-left:5px;font-size:14px;font-family:awb-icons;position:absolute;transform:translateY(-50%)}.fusion-text-no-margin>p{margin-top:0}.fusion-text-no-margin>p:last-child{margin-bottom:0}.fusion-blog-pagination .pagination .pagination-next:hover:after,.fusion-blog-pagination .pagination .pagination-prev:hover:before,.fusion-date-and-formats .fusion-format-box,.fusion-dropcap,.fusion-filters .fusion-filter.fusion-active a,.fusion-login-box a:hover,.fusion-popover,.tooltip-shortcode{color:var(--primary_color)}.fusion-blog-pagination .fusion-hide-pagination-text .pagination-next:hover,.fusion-blog-pagination .fusion-hide-pagination-text .pagination-prev:hover,.fusion-blog-pagination .pagination .current,.fusion-blog-pagination .pagination a.inactive:hover,.fusion-date-and-formats .fusion-date-box,.fusion-filters .fusion-filter.fusion-active a,.fusion-hide-pagination-text .fusion-blog-pagination .pagination .pagination-next:hover,.fusion-hide-pagination-text .fusion-blog-pagination .pagination .pagination-prev:hover,.fusion-login-box a:hover .reading-box,.fusion-tabs.classic .nav-tabs > li.active .tab-link,.fusion-tabs.classic .nav-tabs > li.active .tab-link:focus,.fusion-tabs.classic .nav-tabs > li.active .tab-link:hover,.fusion-tabs.vertical-tabs.classic .nav-tabs > li.active .tab-link,.table-2 table thead{border-color:var(--primary_color)}.fusion-blog-pagination .fusion-hide-pagination-text .pagination-next:hover,.fusion-blog-pagination .fusion-hide-pagination-text .pagination-prev:hover,.fusion-blog-pagination .pagination .current,.fusion-date-and-formats .fusion-date-box,.table-2 table thead{background-color:var(--primary_color)}.products .product-list-view .fusion-product-wrapper{padding-left:var(--timeline_bg_color-20px-transparent);padding-right:var(--timeline_bg_color-20px-transparent)}.products li.product .fusion-product-wrapper{background-color:var(--timeline_bg_color)}.container{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}@media (min-width:0px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{margin-right:auto;margin-left:auto;padding-left:15px;padding-right:15px}.row{margin-left:-15px;margin-right:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-left:15px;padding-right:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:0}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:0}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:0px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:0}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:0}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:0}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:0}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:0}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:0}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}.awb-background-pattern{position:absolute;top:0;left:0;z-index:6;min-height:100%;min-width:100%}.awb-background-mask{position:absolute;top:0;left:0;z-index:6;min-height:100%;min-width:100%;background-size:cover;background-position:center}.awb-background-slider{--awb-image-position:center;position:absolute;top:0;left:0;z-index:6;height:100%;width:100%;overflow:hidden;pointer-events:none}.awb-background-slider img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--awb-image-position)}.fusion-social-networks .fusion-social-networks-wrapper{margin:0 -10px}.fusion-social-networks .fusion-social-network-icon{display:inline-block;margin:0 10px 10px;font-size:16px;color:#46494a;text-decoration:none;box-shadow:none!important;line-height:1}.fusion-social-networks .fusion-social-network-icon:before{color:inherit}.fusion-social-networks.boxed-icons .fusion-social-networks-wrapper{margin:0 -5px}.fusion-social-networks.boxed-icons .fusion-social-network-icon{margin:0 5px 10px;padding:8px;background-color:#46494a;border-radius:3px;background-clip:inherit;border:1px solid #46494a;color:#fff;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.fusion-social-links{--awb-margin-top:0;--awb-margin-right:0;--awb-margin-bottom:0;--awb-margin-left:0;--awb-alignment:inherit;--awb-box-border-top:0;--awb-box-border-right:0;--awb-box-border-bottom:0;--awb-box-border-left:0;--awb-box-padding-top:var(--social_links_boxed_padding, 8px);--awb-box-padding-right:var(--social_links_boxed_padding, 8px);--awb-box-padding-bottom:var(--social_links_boxed_padding, 8px);--awb-box-padding-left:var(--social_links_boxed_padding, 8px);margin-top:var(--awb-margin-top);margin-right:var(--awb-margin-right);margin-bottom:var(--awb-margin-bottom);margin-left:var(--awb-margin-left);text-align:var(--awb-alignment)}.fusion-social-links .fusion-social-networks a{font-size:var(--social_links_font_size)}.fusion-social-links .fusion-social-networks .fusion-social-networks-wrapper{margin:-10px}.fusion-social-links .fusion-social-networks .fusion-social-networks-wrapper .fusion-social-network-icon{margin:10px}.fusion-social-links .fusion-social-networks.boxed-icons .fusion-social-network-icon{padding-top:var(--awb-box-padding-top);padding-right:var(--awb-box-padding-right);padding-bottom:var(--awb-box-padding-bottom);padding-left:var(--awb-box-padding-left);background-color:#46494a;border:1px solid #46494a;color:#fff}.fusion-social-links .fusion-social-networks.boxed-icons .fusion-social-networks-wrapper{margin:-5px}.fusion-social-links .fusion-social-networks.boxed-icons .fusion-social-networks-wrapper .fusion-social-network-icon{margin:5px}.fusion-social-links .fusion-social-networks.color-type-custom.boxed-icons .fusion-social-network-icon{border-top-width:var(--awb-box-border-top);border-right-width:var(--awb-box-border-right);border-bottom-width:var(--awb-box-border-bottom);border-left-width:var(--awb-box-border-left);border-color:var(--awb-box-border-color)!important}.fusion-social-links .fusion-social-networks.color-type-custom.boxed-icons .fusion-social-network-icon.hover,.fusion-social-links .fusion-social-networks.color-type-custom.boxed-icons .fusion-social-network-icon:hover{background-color:var(--awb-box-colors-hover)!important;border-color:var(--awb-box-border-color-hover)!important}.fusion-social-links .fusion-social-networks.color-type-custom .fusion-social-network-icon.hover,.fusion-social-links .fusion-social-networks.color-type-custom .fusion-social-network-icon:hover{color:var(--awb-icon-colors-hover)!important}.fusion-social-links .boxed-icons .fusion-social-networks-wrapper .fusion-social-network-icon{box-sizing:content-box;width:var(--social_links_font_size)}.fusion-social-links-footer{display:table-cell;vertical-align:middle;width:40%;text-align:right}.fusion-social-links-footer .fusion-social-networks{margin-top:10px}.widget .fusion-social-networks .fusion-social-networks-wrapper{margin:0 -5.5px}.widget .fusion-social-networks .fusion-social-network-icon{margin:0 5.5px 14px}.widget .fusion-social-networks.boxed-icons .fusion-social-networks-wrapper{margin:0 -3.5px}.widget .fusion-social-networks.boxed-icons .fusion-social-network-icon{margin:0 3.5px 10px}.fusion-flexslider{--awb-arrow-position-vertical:50%;--awb-arrow-position-horizontal:0;--awb-arrow-size:var(--slider_arrow_size);--awb-arrow-bgcolor:var(--carousel_nav_color);--awb-arrow-color:#fff;--awb-arrow-hover-bgcolor:var(--carousel_hover_color);--awb-arrow-hover-color:var(--awb-arrow-color);--awb-arrow-border-sizes-top:0;--awb-arrow-border-sizes-right:0;--awb-arrow-border-sizes-bottom:0;--awb-arrow-border-sizes-left:0;--awb-arrow-border-color:transparent;--awb-arrow-border-radius-top-left:0;--awb-arrow-border-radius-top-right:0;--awb-arrow-border-radius-bottom-right:0;--awb-arrow-border-radius-bottom-left:0;--awb-arrow-border-style:none;--awb-arrow-border-hover-color:var(--awb-arrow-border-color);--awb-dots-color:#000;--awb-dots-active-color:var(--carousel_nav_color);--awb-dots-align:center;--awb-dots-size:8px;--awb-dots-active-size:8px;--awb-dots-position-vertical:0;--awb-dots-spacing:4px;position:relative;margin-bottom:0;padding:0;background-color:transparent;overflow:hidden}.fusion-flexslider .flex-control-nav,.fusion-flexslider .flex-direction-nav,.fusion-flexslider .slides{z-index:100;margin:0;padding:0;list-style:none}.fusion-flexslider .slides{overflow:hidden;float:left}.fusion-flexslider .slides li{display:none;margin:0}.fusion-flexslider .slides img{display:block;width:100%;box-shadow:none;border-radius:0}.fusion-flexslider.fusion-flexslider-loading .slides>li:first-child{display:block;opacity:1!important}.fusion-flexslider.fusion-post-slideshow .slides{float:none}.woocommerce-container .images .fusion-flexslider.fusion-flexslider-loading .slides>li:first-child{float:left}.fusion-flexslider .flex-control-nav{position:absolute;bottom:0;width:100%;text-align:center}.fusion-flexslider .flex-direction-nav{list-style:none}.fusion-flexslider .flex-direction-nav a{z-index:100;position:absolute;top:50%;overflow:hidden;width:30px;height:30px;text-align:center;line-height:30px;background-color:rgba(0,0,0,.5);background-repeat:no-repeat;cursor:pointer;opacity:0;font-size:14px;font-weight:400;font-family:awb-icons;-webkit-font-smoothing:none;color:#fff;transition:all .3s ease;transform:translateY(-50%)}.fusion-flexslider .flex-direction-nav .flex-next,.fusion-flexslider .flex-direction-nav .flex-prev{background-color:var(--carousel_nav_color)}.fusion-flexslider .flex-direction-nav .flex-next:hover,.fusion-flexslider .flex-direction-nav .flex-prev:hover{background-color:var(--carousel_hover_color)}.fusion-flexslider .flex-direction-nav .flex-next{right:0}.fusion-flexslider .flex-direction-nav .flex-prev{left:0}.fusion-flexslider:hover .flex-direction-nav .flex-next,.fusion-flexslider:hover .flex-direction-nav .flex-prev{opacity:.8}.fusion-flexslider:hover .flex-direction-nav .flex-next:hover,.fusion-flexslider:hover .flex-direction-nav .flex-prev:hover{opacity:1}.fusion-flexslider:hover .flex-direction-nav .flex-disabled{display:none;opacity:0;cursor:default}.fusion-flexslider.flexslider-attachments{overflow:visible}.fusion-flexslider.flexslider-attachments .flex-direction-nav a{width:30px;height:30px;text-align:center;line-height:30px}.fusion-flexslider.flexslider-attachments .flex-direction-nav a:before{color:#fff}.fusion-flexslider.flexslider-attachments .flex-control-thumbs li{width:60px;margin:5px;float:none}.fusion-flexslider.flexslider-default .flex-direction-nav a{width:60px;height:60px;text-align:center;line-height:60px;font-size:30px}.fusion-flexslider.flexslider-posts .flex-direction-nav a{width:30px;height:30px;text-align:center;line-height:30px}.fusion-flexslider.flexslider-posts .slide-excerpt{position:absolute;bottom:20%}.fusion-flexslider.flexslider-posts .slide-excerpt h2{color:#fff;background:rgba(0,0,0,.8);padding:10px 15px;margin:0}.fusion-flexslider.flexslider-posts .slide-excerpt h2 a{color:#fff}.fusion-flexslider.flexslider-posts .slide-excerpt p{color:#fff;background:rgba(0,0,0,.8);padding:15px}.fusion-flexslider.flexslider-posts-with-excerpt .flex-direction-nav a{background-color:rgba(0,0,0,.5);width:30px;height:30px;text-align:center;line-height:30px}.fusion-flexslider.flexslider-posts-with-excerpt .slide-excerpt{position:absolute;left:0;top:0;bottom:0;padding:5%;width:30%;box-sizing:content-box;background:rgba(0,0,0,.7);color:#fff}.fusion-flexslider.flexslider-posts-with-excerpt .slide-excerpt .excerpt-container{overflow:hidden;height:100%}.fusion-flexslider.flexslider-posts-with-excerpt .slide-excerpt h2{color:#fff;padding:10px 15px;margin:0}.fusion-flexslider.flexslider-posts-with-excerpt .slide-excerpt h2 a{color:#fff}.fusion-flexslider.flexslider-posts-with-excerpt .slide-excerpt p{color:#fff;padding:15px}.flexslider-attachments .flex-control-nav{position:relative;margin-top:10px}.page .post-slideshow{margin-bottom:30px}.flex-container a:active,.flex-container a:focus,.flexslider a:active,.flexslider a:focus{outline:0}.flex-control-nav,.flex-direction-nav,.flexslider .slides{margin:0;padding:0;list-style:none;z-index:2}.flexslider{padding:0;background-color:transparent;position:relative}.fusion-slider-sc:not(.fusion-has-margin) .flexslider{margin:0 0 60px}.fusion-slider-sc.fusion-has-margin .flexslider{margin:0}.flexslider .slides{overflow:hidden}.flexslider .slides li{display:none;-webkit-backface-visibility:hidden;margin:0}.flexslider .slides img{width:100%;max-width:100%;display:block;-webkit-user-select:none;user-select:none}.flexslider .slides .video-shortcode{margin-bottom:0}.flex-pauseplay span{text-transform:capitalize}.flexslider .slides:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}html[xmlns] .flexslider .slides{display:block}* html .flexslider .slides{height:1%}.flex-viewport{max-height:2000px;transition:all 1s ease}.loading .flex-viewport{max-height:300px}.carousel li{margin-right:5px}.flex-direction-nav{height:0;list-style:none!important}.flex-direction-nav a{font-family:awb-icons;width:30px;height:30px;margin:0;background-color:rgba(0,0,0,.5);background-repeat:no-repeat;position:absolute;top:50%;transform:translateY(-50%);cursor:pointer;opacity:0;z-index:100;overflow:hidden;text-align:center;line-height:30px;font-size:16px;font-weight:400;-webkit-font-smoothing:none;color:#fff;text-decoration:none}.flex-direction-nav a:hover{color:#fff}.sidebar .widget .flex-direction-nav a,.sidebar .widget .flex-direction-nav a:hover{color:#fff}.no-opacity .flex-direction-nav a{display:none}.no-opacity .flexslider:hover .flex-direction-nav a{display:block}.flex-direction-nav .flex-next{right:0;text-indent:2px}.flex-direction-nav .flex-prev{left:0;text-indent:-2px}.flexslider:hover .flex-next{opacity:.8;right:0}.flexslider:hover .flex-prev{opacity:.8;left:0}.flexslider:hover .flex-next:hover,.flexslider:hover .flex-prev:hover{opacity:1}.flex-direction-nav .flex-disabled,.main-flex:hover .flex-direction-nav .flex-disabled{opacity:0;cursor:default;display:none;visibility:hidden}.flex-control-nav{width:100%;position:absolute;bottom:0;text-align:center}.flex-control-nav li{margin:0 6px;display:inline-block}.flex-control-paging li a{display:block;width:11px;height:11px;background:rgba(0,0,0,.5);cursor:pointer;text-indent:-9999px;border-radius:20px;box-shadow:inset 0 0 3px rgba(0,0,0,.3)}.flex-control-paging li a:hover{background:#333;background:rgba(0,0,0,.7)}.flex-control-paging li a.flex-active{background:var(--awb-dots-active-color);cursor:default}.flex-control-thumbs{margin:5px 0 0;position:static;overflow:hidden}.flex-control-thumbs li{width:25%;float:left;margin:0}.flex-control-thumbs img{width:100%;display:block;opacity:.7;cursor:pointer}.flex-control-thumbs img:hover{opacity:1}.flex-control-thumbs .flex-active{opacity:1;cursor:default}.flex-caption{position:absolute;background:rgba(0,0,0,.6);width:96%;padding:2%;color:#fff;left:0;bottom:0;margin:0}.main-flex{margin-bottom:0}@media screen and (max-width:860px){.flex-direction-nav .flex-prev{opacity:1;left:0}.flex-direction-nav .flex-next{opacity:1;right:0}}.col .flexslider{margin:0}.fusion-flexslider .flex-direction-nav a,.fusion-flexslider.flexslider-attachments .flex-direction-nav a,.fusion-flexslider.flexslider-posts .flex-direction-nav a,.fusion-flexslider.flexslider-posts-with-excerpt .flex-direction-nav a,.fusion-slider-sc .flex-direction-nav a{width:var(--slider_nav_box_dimensions-width);height:var(--slider_nav_box_dimensions-height);line-height:var(--slider_nav_box_dimensions-height);font-size:var(--awb-arrow-size)}.woocommerce-product-gallery .flex-direction-nav a{width:var(--slider_nav_box_dimensions-width)}.fusion-fullwidth{--awb-background-color:var(--full_width_bg_color);--awb-background-image:none;--awb-background-position:center center;--awb-background-size:auto;--awb-background-repeat:no-repeat;--awb-background-blend-mode:none;--awb-background-size:initial;--awb-box-shadow:none;--awb-border-sizes-top:var(--full_width_border_sizes_top);--awb-border-sizes-right:var(--full_width_border_sizes_right);--awb-border-sizes-bottom:var(--full_width_border_sizes_bottom);--awb-border-sizes-left:var(--full_width_border_sizes_left);--awb-border-color:var(--full_width_border_color);--awb-border-style:solid;--awb-border-radius-top-left:0;--awb-border-radius-top-right:0;--awb-border-radius-bottom-left:0;--awb-border-radius-bottom-right:0;--awb-padding-top:var(--container_padding_default_top, 0px);--awb-padding-right:var(--container_padding_default_right, 0px);--awb-padding-bottom:var(--container_padding_default_bottom, 0px);--awb-padding-left:var(--container_padding_default_left, 0px);--awb-margin-top:0;--awb-margin-bottom:0;--awb-min-height:0;--awb-overflow:visible;--awb-z-index:auto;--awb-sticky-background-color:var(--awb-background-color);--awb-sticky-height:var(--awb-min-height);--awb-filter:none;--awb-filter-hover:none;--awb-filter-transition:all;--awb-position-top:auto;--awb-position-right:auto;--awb-position-bottom:auto;--awb-position-left:auto;--awb-cv-intrinsic-size:500px;background-color:var(--awb-background-color);background-image:var(--awb-background-image);background-position:var(--awb-background-position);background-repeat:var(--awb-background-repeat);background-blend-mode:var(--awb-background-blend-mode);background-size:var(--awb-background-size);box-shadow:var(--awb-box-shadow);border-width:var(--awb-border-sizes-top) var(--awb-border-sizes-right) var(--awb-border-sizes-bottom) var(--awb-border-sizes-left);border-color:var(--awb-border-color);border-style:var(--awb-border-style);border-radius:var(--awb-border-radius-top-left) var(--awb-border-radius-top-right) var(--awb-border-radius-bottom-right) var(--awb-border-radius-bottom-left);padding:var(--awb-padding-top) var(--awb-padding-right) var(--awb-padding-bottom) var(--awb-padding-left);margin-top:var(--awb-margin-top);margin-bottom:var(--awb-margin-bottom);min-height:var(--awb-min-height);overflow:var(--awb-overflow);z-index:var(--awb-z-index);top:var(--awb-position-top);right:var(--awb-position-right);bottom:var(--awb-position-bottom);left:var(--awb-position-left);filter:var(--awb-filter);transition:var(--awb-filter-transition)}.fusion-fullwidth:hover{filter:var(--awb-filter-hover)}.awb-off-canvas .fusion-fullwidth,.fusion-tb-footer .fusion-fullwidth,.fusion-tb-header .fusion-fullwidth,.fusion-tb-page-title-bar .fusion-fullwidth,.width-100 .fusion-fullwidth{--awb-padding-top:var(--container_padding_100_top, 0px);--awb-padding-right:var(--container_padding_100_right, var(--hundredp_padding));--awb-padding-bottom:var(--container_padding_100_bottom, 0px);--awb-padding-left:var(--container_padding_100_left, var(--hundredp_padding))}.fusion-fullwidth.fusion-animated{--awb-z-index:2000}.fullwidth-box.video-background{position:relative}.fullwidth-box.video-background .fullwidth-overlay{position:absolute;top:0;left:0;z-index:5;height:100%;width:100%}.fullwidth-box.video-background .fullwidth-video{position:absolute;top:0;left:0;z-index:1;min-height:100%;min-width:100%;-webkit-transform-style:preserve-3d}.fullwidth-box.video-background .fullwidth-video video{position:absolute;top:50%;left:50%;z-index:1;min-height:100%;min-width:100%;height:auto;width:auto;object-fit:cover;transform:translate(-50%,-50%)}.fullwidth-box.video-background .fusion-row{position:relative;z-index:10}.fullwidth-box.video-background .fullwidth-video-image{display:none}.ua-mobile .fullwidth-box.video-background .fullwidth-video-image{width:100%;height:100%;display:block;z-index:2;background-size:cover;background-position:center center;position:absolute;top:0;left:0}.fullwidth-box.faded-background{position:relative;--awb-overflow:hidden}.fullwidth-box.faded-background .fullwidth-faded{position:absolute;top:0;left:0;z-index:1;min-height:100%;min-width:100%;background-color:var(--awb-background-color);background-image:var(--awb-background-image);background-repeat:var(--awb-background-repeat);background-position:var(--awb-background-position);background-blend-mode:var(--awb-background-blend-mode);background-size:var(--awb-background-size)}.fullwidth-box.faded-background .fusion-row{position:relative;z-index:10}.hundred-percent-fullwidth .fusion-row{max-width:none!important}.hundred-percent-fullwidth .fusion-row .nonhundred-percent-fullwidth .fusion-row{max-width:var(--site_width)!important}#wrapper #main .fullwidth-box .fusion-row{padding-left:0;padding-right:0}.ua-safari .fullwidth-box.faded-background .fullwidth-faded{-webkit-transform:translate3d(0,0,0)}.ua-safari.ua-mobile .fullwidth-box.faded-background .fullwidth-faded{-webkit-transform:none}.hundred-percent-height{--awb-z-index:1;--awb-overflow:hidden;height:100vh}.fusion-fullwidth-center-content{display:flex;align-items:center;height:100%}.fusion-scroll-section{position:relative}.fusion-scroll-section.active .fusion-scroll-section-nav{display:block;opacity:1}.fusion-scroll-section-element{opacity:0;transition:opacity .45s ease 0s}.fusion-scroll-section-element.active{--awb-z-index:1;z-index:var(--awb-z-index);opacity:1}.fusion-scroll-section-mobile-disabled .fusion-scroll-section-element{opacity:1!important}.fusion-scroll-section-element .fusion-fullwidth{-webkit-transform:translate3d(0,0,0)}.awb-swiper-full-sections{height:calc(100vh - var(--adminbar-height));margin-left:var(--hundredp_padding-hundred_percent_negative_margin)!important;margin-right:var(--hundredp_padding-hundred_percent_negative_margin)!important;width:auto!important;perspective:0px}.awb-swiper-full-sections .swiper-wrapper{display:none}.awb-swiper-full-sections.swiper-ready .swiper-wrapper{display:flex}.awb-swiper-full-sections.swiper-initialized .fusion-scroll-section-nav{display:block;opacity:1}.awb-swiper-full-sections.fusion-full-scroll-disabled{height:auto}.awb-swiper-full-sections.fusion-full-scroll-disabled>.swiper-wrapper{display:block!important}.awb-swiper-full-sections .fusion-fullwidth{margin-right:0;margin-left:0}.awb-swiper-full-sections .hundred-percent-height{height:calc(100vh - var(--adminbar-height))}.fusion-scroll-section-nav{display:none;opacity:0;--awb-z-index:10000;z-index:var(--awb-z-index);position:fixed;top:50%;transform:translateY(-50%);margin:0;padding:0;background-color:var(--container_scroll_nav_bg_color);border-radius:15px;transition:opacity .4s ease 0s}.fusion-scroll-section-nav.scroll-navigation-left{left:20px}.fusion-scroll-section-nav.scroll-navigation-right{right:20px}.fusion-scroll-section-mobile-disabled .fusion-scroll-section-nav{display:none!important}.fusion-scroll-section-nav ul{list-style:outside none none;margin:10px 0;padding:0}.fusion-scroll-section-link{display:block;box-sizing:content-box;opacity:.35;position:relative;padding:10px 12px;transition:all .2s ease 0s}.fusion-scroll-section-link.active,.fusion-scroll-section-link:hover{opacity:.8}.fusion-scroll-section-link[data-name=""]:before{display:none}.fusion-scroll-section-link:hover:before{pointer-events:auto;opacity:1;transform:translate3d(-22px,-50%,0);transition:all .2s ease 0s}.fusion-scroll-section-link:before{display:inline-block;content:attr(data-name);position:absolute;top:50%;padding:2px 10px;background-color:rgba(0,0,0,.2);border-radius:15px;color:#fff;transition:all .2s ease 0s;white-space:nowrap;opacity:0;pointer-events:none}.scroll-navigation-left .fusion-scroll-section-link:before{left:65px;transform:translate3d(45px,-50%,0)}.scroll-navigation-right .fusion-scroll-section-link:before{right:20px;transform:translate3d(-40px,-50%,0)}.fusion-parallax-fixed{backface-visibility:hidden}.fusion-scroll-section-link-bullet{display:block;height:9px;width:9px;border-radius:50%;background-color:var(--container_scroll_nav_bullet_color)}#boxed-wrapper.safari-overflow{overflow-x:visible}.safari-overflow .fusion-fullwidth{overflow-x:var(--awb-overflow)}.safari-overflow .fusion-fullwidth .fusion-fullwidth,.safari-overflow .fusion-fullwidth.has-sticky{overflow-x:visible}.fusion-fullwidth.awb-cv-visible{content-visibility:visible}.fusion-fullwidth.awb-cv-auto{content-visibility:auto;contain-intrinsic-size:auto var(--awb-cv-intrinsic-size)}.fusion-fullwidth.awb-cv-hidden{content-visibility:hidden}@media print{.fusion-fullwidth.awb-cv-auto{content-visibility:visible}}.post-content:not(.fusion-post-content),.single-fusion_tb_section .fusion-tb-header,body:not(.side-header) #wrapper{position:relative}.fusion-tb-page-title-bar .fusion-fullwidth.fusion-absolute-container:not(.fusion-custom-z-index):not(.fusion-container-stuck){--awb-z-index:11}body.fusion-no-absolute-containers .fusion-absolute-container{position:relative!important}.fusion-flex-container{--awb-content-wrap:var(--awb-flex-wrap, wrap);display:flex;justify-content:center}.fusion-flex-container .fusion-row{flex-wrap:wrap;display:flex;flex:1;width:100%}.fusion-flex-container .fusion-row .fusion-builder-row-inner{flex:auto;flex-grow:initial;flex-shrink:initial;--awb-min-height:auto;--awb-max-height:none;--awb-overflow:visible;--awb-flex-grow:0;--awb-flex-shrink:0;min-height:var(--awb-min-height);max-height:var(--awb-max-height);flex-grow:var(--awb-flex-grow);flex-shrink:var(--awb-flex-shrink);overflow:var(--awb-overflow)}.fusion-flex-container .fusion-row .fusion-builder-row-inner.fusion-flex-content-wrap{flex-wrap:var(--awb-flex-wrap,var(--awb-content-wrap))}.fusion-flex-container .fusion-row:after,.fusion-flex-container .fusion-row:before{content:none}.fusion-flex-container .fusion-row.fusion-flex-content-wrap{flex-wrap:var(--awb-content-wrap)}.fusion-flex-container .fusion-row .fusion-flex-column{display:flex}.fusion-flex-container .fusion-row .fusion-flex-column .fusion-column-wrapper{width:100%}.fusion-flex-container .fusion-row .fusion-flex-column .fusion-column-inner-bg{width:auto;height:auto;left:0;right:0;top:0;bottom:0}.fusion-flex-container .fusion-row .fusion-flex-column .fusion-column-inner-bg .fusion-column-anchor{display:block}.fusion-flex-container .fusion-row .fusion-flex-column .fusion-column-inner-bg .fusion-column-anchor .fusion-column-inner-bg-image{display:block;position:static}.fusion-flex-container .fusion-row .fusion-flex-column .fusion-column-wrapper:not(.fusion-flex-column-wrapper-legacy){display:flex}.fusion-flex-container .fusion-row .fusion-flex-column .fusion-column-wrapper:not(.fusion-flex-column-wrapper-legacy).fusion-content-layout-column{flex-direction:column}.fusion-flex-container .fusion-row .fusion-flex-column .fusion-column-wrapper:not(.fusion-flex-column-wrapper-legacy).fusion-content-layout-row{flex-direction:row;flex-wrap:wrap}.fusion-flex-container .fusion-row .fusion-flex-column .fusion-column-wrapper:not(.fusion-flex-column-wrapper-legacy).fusion-content-layout-row.fusion-content-nowrap{flex-wrap:nowrap}.fusion-flex-container .fusion-row .fusion-flex-column .fusion-column-wrapper:not(.fusion-flex-column-wrapper-legacy).fusion-content-layout-block{display:block}.fusion-flex-container .fusion-flex-align-self-auto{align-self:auto}.fusion-flex-container .fusion-flex-align-self-flex-start{align-self:flex-start}.fusion-flex-container .fusion-flex-align-self-center{align-self:center}.fusion-flex-container .fusion-flex-align-self-flex-end{align-self:flex-end}.fusion-flex-container .fusion-flex-align-self-stretch{align-self:stretch}.fusion-flex-container .fusion-flex-align-self-baseline{align-self:baseline}.fusion-flex-container .fusion-flex-align-items-auto{align-items:auto}.fusion-flex-container .fusion-flex-align-items-flex-start{align-items:flex-start}.fusion-flex-container .fusion-flex-align-items-center{align-items:center}.fusion-flex-container .fusion-flex-align-items-flex-end{align-items:flex-end}.fusion-flex-container .fusion-flex-justify-content-normal{justify-content:normal}.fusion-flex-container .fusion-flex-justify-content-flex-start{justify-content:flex-start}.fusion-flex-container .fusion-flex-justify-content-center{justify-content:center}.fusion-flex-container .fusion-flex-justify-content-flex-end{justify-content:flex-end}.fusion-flex-container .fusion-flex-justify-content-space-between{justify-content:space-between}.fusion-flex-container .fusion-flex-justify-content-space-around{justify-content:space-around}.fusion-flex-container .fusion-flex-justify-content-space-evenly{justify-content:space-evenly}.fusion-flex-container .fusion-flex-align-content-flex-start{align-content:flex-start}.fusion-flex-container .fusion-flex-align-content-center{align-content:center}.fusion-flex-container .fusion-flex-align-content-flex-end{align-content:flex-end}.fusion-flex-container .fusion-flex-align-content-space-between{align-content:space-between}.fusion-flex-container .fusion-flex-align-content-space-around{align-content:space-around}.fusion-flex-container .fusion-flex-align-content-space-evenly{align-content:space-evenly}.fusion-sticky-container:not(.fusion-sticky-spacer){transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,min-height .1s ease-in-out;-webkit-backface-visibility:hidden}.fusion-sticky-container:not(.fusion-sticky-spacer):not(.fusion-custom-z-index){--awb-z-index:10010}.fusion-tb-header .fusion-sticky-container:not(.fusion-sticky-spacer):not(.fusion-custom-z-index){--awb-z-index:10011}.fusion-sticky-container.fusion-sticky-spacer{pointer-events:none;visibility:hidden;opacity:0}.fusion-sticky-container .fusion-imageframe{transition:max-width .1s ease-in-out}.fusion-sticky-container:not(.fusion-sticky-transition) .fusion-display-sticky-only{display:none}.fusion-sticky-container.fusion-sticky-transition{background-color:var(--awb-sticky-background-color);transition:background .3s,border .3s,border-radius .3s,box-shadow .3s,min-height .3s ease-in-out;min-height:var(--awb-sticky-height)}.fusion-scrolling-active .fusion-sticky-container.fusion-sticky-transition{transition:background .3s,border .3s,border-radius .3s,box-shadow .3s ease-in-out}.fusion-sticky-container.fusion-sticky-transition .fusion-menu-element-list{transition:min-height .3s ease-in-out}.fusion-sticky-container.fusion-sticky-transition .fusion-display-normal-only{display:none}.fusion-sticky-container.fusion-sticky-transition .fusion-imageframe{transition:max-width .3s ease-in-out}.fusion-sticky-container.fusion-sticky-scroll-transition.fusion-scrolling-down{opacity:0;transform:translateY(-100%);transition:opacity .3s,transform .3s,background .3s,border .3s,border-radius .3s,box-shadow .3s ease-in-out;pointer-events:none}.fusion-sticky-container.fusion-sticky-scroll-transition.fusion-scrolling-up{opacity:1;transform:translateY(0);transition:opacity .3s,transform .3s,background .3s,border .3s,border-radius .3s,box-shadow .3s ease-in-out;pointer-events:normal}.fusion-sticky-container:not(.fusion-container-stuck)+.fusion-sticky-spacer{display:none!important}.fusion-image-hovers .hover-type-zoomin{overflow:hidden;-webkit-transform:translate3d(0,0,0)}.fusion-image-hovers .hover-type-zoomin .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-zoomin .fusion-masonry-element-container,.fusion-image-hovers .hover-type-zoomin .tribe-events-event-image,.fusion-image-hovers .hover-type-zoomin img{opacity:1;transition:opacity 1s,transform 1s}.fusion-image-hovers .hover-type-zoomin.hover .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-zoomin.hover .fusion-masonry-element-container,.fusion-image-hovers .hover-type-zoomin.hover .tribe-events-event-image,.fusion-image-hovers .hover-type-zoomin.hover img,.fusion-image-hovers .hover-type-zoomin:hover .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-zoomin:hover .fusion-masonry-element-container,.fusion-image-hovers .hover-type-zoomin:hover .tribe-events-event-image,.fusion-image-hovers .hover-type-zoomin:hover img{opacity:.9;transform:scale3d(1.1,1.1,1)}.fusion-image-hovers .hover-type-zoomout{overflow:hidden;-webkit-transform:translate3d(0,0,0)}.fusion-image-hovers .hover-type-zoomout .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-zoomout .fusion-masonry-element-container,.fusion-image-hovers .hover-type-zoomout .tribe-events-event-image,.fusion-image-hovers .hover-type-zoomout img{opacity:1;transform:scale(1.12);transition:opacity 1s,transform 1s}.fusion-image-hovers .hover-type-zoomout.hover .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-zoomout.hover .fusion-masonry-element-container,.fusion-image-hovers .hover-type-zoomout.hover .tribe-events-event-image,.fusion-image-hovers .hover-type-zoomout.hover img,.fusion-image-hovers .hover-type-zoomout:hover .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-zoomout:hover .fusion-masonry-element-container,.fusion-image-hovers .hover-type-zoomout:hover .tribe-events-event-image,.fusion-image-hovers .hover-type-zoomout:hover img{opacity:.9;transform:scale(1)}.fusion-image-hovers .element-bottomshadow .hover-type-zoomin.hover img,.fusion-image-hovers .element-bottomshadow .hover-type-zoomin:hover img,.fusion-image-hovers .element-bottomshadow .hover-type-zoomout.hover img,.fusion-image-hovers .element-bottomshadow .hover-type-zoomout:hover img{opacity:1}.fusion-image-hovers .imageframe-liftup{display:inline-block;position:relative;max-width:100%}.fusion-image-hovers .imageframe-liftup.fusion-imageframe-liftup-left{float:left;margin-right:25px}.fusion-image-hovers .imageframe-liftup.fusion-imageframe-liftup-right{float:right;margin-left:25px}.fusion-image-hovers .imageframe-liftup span,.fusion-image-hovers .imageframe-liftup>div{opacity:1;transform:perspective(1000px) scale(1);transition:transform .35s}.fusion-image-hovers .imageframe-liftup span.hover,.fusion-image-hovers .imageframe-liftup span:hover,.fusion-image-hovers .imageframe-liftup>div.hover,.fusion-image-hovers .imageframe-liftup>div:hover{transform:perspective(1000px) scale(1.03)}.fusion-image-hovers .imageframe-liftup .person-image-container{position:relative}.fusion-image-hovers .imageframe-liftup:before{position:absolute;top:0;left:0;z-index:1;width:100%;height:100%;content:"";transition:opacity .35s,transform .35s;box-shadow:0 3px 15px rgba(0,0,0,.4);opacity:0}.fusion-image-hovers .imageframe-liftup.hover:before,.fusion-image-hovers .imageframe-liftup:hover:before{opacity:1;transform:scale(1.02)}.fusion-image-hovers .hover-type-liftup{position:relative;display:inline-block;overflow:visible}.fusion-image-hovers .hover-type-liftup .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-liftup .fusion-masonry-element-container,.fusion-image-hovers .hover-type-liftup .person-image-container.element-bottomshadow,.fusion-image-hovers .hover-type-liftup .tribe-events-event-image,.fusion-image-hovers .hover-type-liftup .tribe-events-list-event-title>a,.fusion-image-hovers .hover-type-liftup img{transform:perspective(1000px) scale(1);transition:transform .35s;position:relative;z-index:1}.fusion-image-hovers .hover-type-liftup .person-image-container.element-bottomshadow img{transform:none;transition:all 0s ease 0s}.fusion-image-hovers .hover-type-liftup.fusion-column-inner-bg{position:absolute}.fusion-image-hovers .hover-type-liftup.fusion-column-inner-bg.hover,.fusion-image-hovers .hover-type-liftup.fusion-column-inner-bg:hover{z-index:2}.fusion-image-hovers .hover-type-liftup.fusion-column-inner-bg .fusion-column-inner-bg-image{position:absolute}.fusion-image-hovers .hover-type-liftup.fusion-column-inner-bg.hover .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-liftup.fusion-column-inner-bg:hover .fusion-column-inner-bg-image{position:absolute}.fusion-image-hovers .hover-type-liftup.hover .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-liftup.hover .fusion-masonry-element-container,.fusion-image-hovers .hover-type-liftup.hover .person-image-container.element-bottomshadow,.fusion-image-hovers .hover-type-liftup.hover .tribe-events-event-image,.fusion-image-hovers .hover-type-liftup.hover .tribe-events-list-event-title>a,.fusion-image-hovers .hover-type-liftup.hover img,.fusion-image-hovers .hover-type-liftup:hover .fusion-column-inner-bg-image,.fusion-image-hovers .hover-type-liftup:hover .fusion-masonry-element-container,.fusion-image-hovers .hover-type-liftup:hover .person-image-container.element-bottomshadow,.fusion-image-hovers .hover-type-liftup:hover .tribe-events-event-image,.fusion-image-hovers .hover-type-liftup:hover .tribe-events-list-event-title>a,.fusion-image-hovers .hover-type-liftup:hover img{transform:perspective(1000px) scale(1.03)}.fusion-image-hovers .hover-type-liftup.hover .person-image-container.element-bottomshadow img,.fusion-image-hovers .hover-type-liftup:hover .person-image-container.element-bottomshadow img{transform:none}.fusion-image-hovers .hover-type-liftup:before{position:absolute;top:0;left:0;z-index:1;width:100%;height:100%;content:"";transition:opacity .35s,transform .35s;box-shadow:0 3px 15px rgba(0,0,0,.4);opacity:0;pointer-events:none}.fusion-image-hovers .hover-type-liftup.hover:before,.fusion-image-hovers .hover-type-liftup:hover:before{opacity:1;transform:scale(1.03)}.fusion-image-hovers .flexslider-hover-type-liftup{overflow:visible!important}.fusion-image-hovers .flexslider-hover-type-liftup .slides{overflow:visible!important}.fusion-image-hovers .flexslider-hover-type-liftup li{overflow:visible}.isotope-item{z-index:2}.isotope-hidden.isotope-item{z-index:1}.isotope,.isotope .isotope-item{transition-duration:.8s}.isotope{transition-property:height,width}.isotope .isotope-item{transition-property:transform,opacity}.isotope .isotope-item.no-transition,.isotope.no-transition,.isotope.no-transition .isotope-item{transition-duration:0s}#wrapper #posts-container .fusion-grid-sizer,#wrapper .fusion-grid-sizer{margin:0;padding:0;height:0;min-height:0;visibility:hidden}.fusion-masonry-element-container{background-size:cover;background-position:center center}.fusion-element-grid .fusion-masonry-element-container{padding-top:80%}.fusion-element-landscape .fusion-masonry-element-container{padding-top:40%}.fusion-element-portrait .fusion-masonry-element-container{padding-top:160%}.fusion-masonry-element-container .fusion-image-wrapper>img,.fusion-masonry-element-container .fusion-placeholder-image,.fusion-masonry-element-container>img{display:none}.fusion-layout-column.fusion-events-post,.fusion_builder_column,.fusion_builder_column_inner{--awb-z-index:auto;--awb-z-index-hover:var(--awb-z-index);--awb-absolute-top:auto;--awb-absolute-right:auto;--awb-absolute-bottom:auto;--awb-absolute-left:auto;--awb-container-position:relative;--awb-overflow:visible;--awb-inner-bg-overflow:visible;--awb-bg-color:transparent;--awb-bg-color-hover:var(--awb-bg-color);--awb-inner-bg-color:transparent;--awb-bg-position:left top;--awb-inner-bg-position:left top;--awb-bg-image:none;--awb-inner-bg-image:none;--awb-bg-blend:none;--awb-inner-bg-blend:none;--awb-bg-repeat:no-repeat;--awb-inner-bg-repeat:no-repeat;--awb-bg-size:auto auto;--awb-inner-bg-size:auto auto;--awb-border-top:0;--awb-border-right:0;--awb-border-bottom:0;--awb-border-left:0;--awb-border-color:initial;--awb-border-color-hover:var(--awb-border-color);--awb-border-style:solid;--awb-inner-border-top:0;--awb-inner-border-right:0;--awb-inner-border-bottom:0;--awb-inner-border-left:0;--awb-inner-border-color:initial;--awb-inner-border-color-hover:var(--awb-inner-border-color);--awb-inner-border-style:solid;--awb-border-radius:0;--awb-inner-bg-border-radius:0;--awb-liftup-border-radius:0;--awb-box-shadow:none;--awb-inner-bg-box-shadow:none;--awb-padding-top:0;--awb-padding-right:0;--awb-padding-bottom:0;--awb-padding-left:0;--awb-transform:none;--awb-transform-hover:var(--awb-transform);--awb-transform-parent-hover:var(--awb-transform);--awb-transform-origin:50% 50%;--awb-transition:transform 300ms ease,filter 300ms ease,background-color 300ms ease,border-color 300ms ease;--awb-filter:none;--awb-filter-hover:var(--awb-filter);--awb-filter-parent-hover:var(--awb-filter);--awb-col-width:var(--awb-width-large, 33.3333%);--awb-col-order:var(--awb-order-large, 0);--awb-margin-top-large:var(--col_margin-top, 0);--awb-margin-bottom-large:var(--col_margin-bottom, 20px);--awb-spacing-left-large:var(--col_spacing, 4%);--awb-spacing-right-large:var(--col_spacing, 4%);--awb-margin-top:var(--awb-margin-top-large);--awb-margin-bottom:var(--awb-margin-bottom-large);--awb-spacing-left:var(--awb-spacing-left-large);--awb-spacing-right:var(--awb-spacing-right-large);--awb-col-flex-grow:var(--awb-flex-grow, 0);--awb-col-flex-shrink:var(--awb-flex-shrink, 0);--awb-column-gap:var(--awb-column-gap-large);--awb-row-gap:var(--awb-row-gap-large);--awb-max-height:none}.fusion-layout-column.fusion-events-post.fusion-animated,.fusion_builder_column.fusion-animated,.fusion_builder_column_inner.fusion-animated{--awb-z-index:2000}.fusion-layout-column.fusion-events-post{--awb-spacing-left-large:0;--awb-spacing-right-large:0}.fusion-post-cards .fusion_builder_column.post-card,.fusion-post-cards-grid-column.fusion_builder_column,.fusion-post-cards-grid-column.fusion_builder_column_inner{--awb-spacing-left:0;--awb-spacing-right:0}.fusion-layout-column{position:var(--awb-container-position);float:left;margin-top:var(--awb-margin-top);margin-bottom:var(--awb-margin-bottom);z-index:var(--awb-z-index);top:var(--awb-absolute-top);right:var(--awb-absolute-right);bottom:var(--awb-absolute-bottom);left:var(--awb-absolute-left);filter:var(--awb-filter);transition:var(--awb-transition);width:var(--awb-col-width);order:var(--awb-col-order);flex-grow:var(--awb-col-flex-grow);flex-shrink:var(--awb-col-flex-shrink)}.fusion-layout-column:hover{filter:var(--awb-filter-hover);z-index:var(--awb-z-index-hover)}.fusion-layout-column.fusion-column-hover-type-liftup:hover{--awb-z-index:2001}.fusion-layout-column.fusion-column-liftup-border:not(:hover) .fusion-column-inner-bg-image{border-color:transparent!important;transition:transform .35s,border-color 0s linear .35s}.fusion-layout-column.fusion-column-liftup-border .fusion-column-wrapper{transition:border-color 0s linear .35s,border-radius 0s linear .15s}.fusion-layout-column.fusion-column-liftup-border:hover .fusion-column-wrapper{border-color:transparent!important;border-radius:0!important;transition:border-color 0s,border-radius 0s}.fusion-layout-column .fusion-column-wrapper{background-image:var(--awb-bg-image);background-color:var(--awb-bg-color);background-position:var(--awb-bg-position);background-blend-mode:var(--awb-bg-blend);background-repeat:var(--awb-bg-repeat);background-size:var(--awb-bg-size);border-width:var(--awb-border-top) var(--awb-border-right) var(--awb-border-bottom) var(--awb-border-left);border-color:var(--awb-border-color);border-style:var(--awb-border-style);border-radius:var(--awb-border-radius);box-shadow:var(--awb-box-shadow);padding:var(--awb-padding-top) var(--awb-padding-right) var(--awb-padding-bottom) var(--awb-padding-left);overflow:var(--awb-overflow);transition:var(--awb-transition);transform:var(--awb-transform);transform-origin:var(--awb-transform-origin);min-height:1px;min-width:0;margin-left:var(--awb-spacing-left);margin-right:var(--awb-spacing-right);column-gap:var(--awb-column-gap);row-gap:var(--awb-row-gap);max-height:var(--awb-max-height)}.fusion-layout-column .fusion-column-wrapper.hover,.fusion-layout-column .fusion-column-wrapper:hover{background-color:var(--awb-bg-color-hover);border-color:var(--awb-border-color-hover)}.fusion-layout-column .fusion-flex-column-wrapper-legacy{--awb-spacing-left:0;--awb-spacing-right:0}.fusion-layout-column .fusion-column-inner-bg-image{background-color:var(--awb-inner-bg-color);background-image:var(--awb-inner-bg-image);background-position:var(--awb-inner-bg-position);background-blend-mode:var(--awb-inner-bg-blend);background-repeat:var(--awb-inner-bg-repeat);background-size:var(--awb-inner-bg-size);border-width:var(--awb-inner-border-top) var(--awb-inner-border-right) var(--awb-inner-border-bottom) var(--awb-inner-border-left);border-color:var(--awb-inner-border-color);border-style:var(--awb-inner-border-style);border-radius:var(--awb-border-radius);box-shadow:var(--awb-inner-bg-box-shadow);transition:var(--awb-transition)}.fusion-layout-column .fusion-column-inner-bg-image.hover,.fusion-layout-column .fusion-column-inner-bg-image:hover{background-color:var(--awb-inner-bg-color-hover);border-color:var(--awb-inner-border-color-hover)}.fusion-layout-column .fusion-column-inner-bg.hover+.fusion-column-wrapper,.fusion-layout-column .fusion-column-inner-bg:hover+.fusion-column-wrapper{background-color:var(--awb-bg-color-hover);border-color:var(--awb-border-color-hover)}.fusion-layout-column.fusion_builder_column_auto{--awb-col-width:auto}.fusion-layout-column.fusion-one-full{float:none;clear:both;--awb-col-width:100%}.fusion-layout-column.fusion-one-sixth{--awb-col-width:16.6666%}.fusion-layout-column.fusion-five-sixth{--awb-col-width:83.3333%}.fusion-layout-column.fusion-one-fifth{--awb-col-width:20%}.fusion-layout-column.fusion-two-fifth{--awb-col-width:40%}.fusion-layout-column.fusion-three-fifth{--awb-col-width:60%}.fusion-layout-column.fusion-four-fifth{--awb-col-width:80%}.fusion-layout-column.fusion-one-fourth{--awb-col-width:25%}.fusion-layout-column.fusion-three-fourth{--awb-col-width:75%}.fusion-layout-column.fusion-one-third{--awb-col-width:33.3333%}.fusion-layout-column.fusion-two-third{--awb-col-width:66.6666%}.fusion-layout-column.fusion-one-half{--awb-col-width:50%}.fusion-layout-column.fusion-column-last{margin-left:0;margin-right:0}.fusion-layout-column.fusion-spacing-yes{margin-right:4%}.fusion-layout-column.fusion-spacing-yes.fusion-one-sixth{--awb-col-width:13.3333%}.fusion-layout-column.fusion-spacing-yes.fusion-five-sixth{--awb-col-width:82.6666%}.fusion-layout-column.fusion-spacing-yes.fusion-one-fifth{--awb-col-width:16.8%}.fusion-layout-column.fusion-spacing-yes.fusion-two-fifth{--awb-col-width:37.6%}.fusion-layout-column.fusion-spacing-yes.fusion-three-fifth{--awb-col-width:58.4%}.fusion-layout-column.fusion-spacing-yes.fusion-four-fifth{--awb-col-width:79.2%}.fusion-layout-column.fusion-spacing-yes.fusion-one-fourth{--awb-col-width:22%}.fusion-layout-column.fusion-spacing-yes.fusion-three-fourth{--awb-col-width:74%}.fusion-layout-column.fusion-spacing-yes.fusion-one-third{--awb-col-width:30.6666%}.fusion-layout-column.fusion-spacing-yes.fusion-two-third{--awb-col-width:65.3333%}.fusion-layout-column.fusion-spacing-yes.fusion-one-half{--awb-col-width:48%}.fusion-layout-column.fusion-spacing-yes.fusion-column-last{margin-left:0;margin-right:0}.fusion-layout-column .fusion-column-content-centered{display:flex;justify-content:center;align-items:center}.fusion-layout-column .fusion-column-content-centered .fusion-column-content{flex:1;max-width:100%}.fusion-layout-column .fusion-empty-dims-img-placeholder-medium,.fusion-layout-column .fusion-empty-dims-img-placeholder-small{display:none}.fusion-column-inner-bg-wrapper .fusion-column-wrapper{position:relative;z-index:3;pointer-events:none}.fusion-column-inner-bg{width:100%;height:100%;position:absolute;top:0;left:0;border-radius:var(--awb-inner-bg-border-radius);overflow:var(--awb-inner-bg-overflow);transform:var(--awb-transform);transform-origin:var(--awb-transform-origin);transition:var(--awb-transition);margin-left:var(--awb-spacing-left);margin-right:var(--awb-spacing-right)}.fusion-column-inner-bg.hover-type-liftup:before{border-radius:var(--awb-liftup-border-radius)}.fusion-column-inner-bg .fusion-column-anchor{width:100%;height:100%}.fusion-column-inner-bg .fusion-column-anchor span{width:100%;height:100%;position:absolute;top:0;left:0}body:not(.fusion-builder-live-preview) .fusion-column-inner-bg:hover,body:not(.fusion-builder-live-preview) .fusion-column-inner-bg:hover~.fusion-column-wrapper,body:not(.fusion-builder-live-preview) .fusion-column-wrapper:hover{transform:var(--awb-transform-hover)}body:not(.fusion-builder-live-preview) .fusion-builder-row:hover>.fusion_builder_column>.fusion-column-inner-bg,body:not(.fusion-builder-live-preview) .fusion-builder-row:hover>.fusion_builder_column>.fusion-column-wrapper,body:not(.fusion-builder-live-preview) .fusion-column-inner-bg:hover~.fusion-column-wrapper>.fusion-builder-row-inner>.fusion_builder_column_inner>.fusion-column-inner-bg,body:not(.fusion-builder-live-preview) .fusion-column-inner-bg:hover~.fusion-column-wrapper>.fusion-builder-row-inner>.fusion_builder_column_inner>.fusion-column-wrapper,body:not(.fusion-builder-live-preview) .fusion-column-wrapper:hover>.fusion-builder-row-inner>.fusion_builder_column_inner>.fusion-column-inner-bg,body:not(.fusion-builder-live-preview) .fusion-column-wrapper:hover>.fusion-builder-row-inner>.fusion_builder_column_inner>.fusion-column-wrapper{transform:var(--awb-transform-parent-hover)}body:not(.fusion-builder-live-preview) .fusion-builder-row:hover>.fusion_builder_column>.fusion-column-inner-bg:hover,body:not(.fusion-builder-live-preview) .fusion-builder-row:hover>.fusion_builder_column>.fusion-column-wrapper:hover,body:not(.fusion-builder-live-preview) .fusion-column-inner-bg:hover~.fusion-column-wrapper>.fusion-builder-row-inner>.fusion_builder_column_inner>.fusion-column-inner-bg:hover,body:not(.fusion-builder-live-preview) .fusion-column-inner-bg:hover~.fusion-column-wrapper>.fusion-builder-row-inner>.fusion_builder_column_inner>.fusion-column-wrapper:hover,body:not(.fusion-builder-live-preview) .fusion-column-wrapper:hover>.fusion-builder-row-inner>.fusion_builder_column_inner>.fusion-column-inner-bg:hover,body:not(.fusion-builder-live-preview) .fusion-column-wrapper:hover>.fusion-builder-row-inner>.fusion_builder_column_inner>.fusion-column-wrapper:hover{transform:var(--awb-transform-hover)}body:not(.fusion-builder-live-preview) .fusion-builder-row:hover>.fusion_builder_column>.fusion-column-inner-bg:hover~.fusion-column-wrapper,body:not(.fusion-builder-live-preview) .fusion-column-wrapper:hover>.fusion-builder-row-inner>.fusion_builder_column_inner>.fusion-column-inner-bg:hover~.fusion-column-wrapper{transform:var(--awb-transform-hover)}body:not(.fusion-builder-live-preview) .fusion-column-inner-bg:hover+.fusion-column-wrapper>.fusion-builder-row>.fusion_builder_column_inner,body:not(.fusion-builder-live-preview) .fusion-column-wrapper:hover>.fusion-builder-row>.fusion_builder_column_inner{filter:var(--awb-filter-parent-hover)}body:not(.fusion-builder-live-preview) .fusion-column-inner-bg:hover+.fusion-column-wrapper>.fusion-builder-row>.fusion_builder_column_inner:hover,body:not(.fusion-builder-live-preview) .fusion-column-wrapper:hover>.fusion-builder-row>.fusion_builder_column_inner:hover{filter:var(--awb-filter-hover)}.fusion-builder-row:hover>.fusion_builder_column{filter:var(--awb-filter-parent-hover)}.fusion-builder-row:hover>.fusion_builder_column:hover{filter:var(--awb-filter-hover)}.awb-column__background-slider{position:absolute;top:0;left:var(--awb-spacing-left);right:var(--awb-spacing-right);height:100%;z-index:1}.awb-column__background-slider{border-radius:var(--awb-border-radius)}.awb-column__background-slider .awb-background-slider{border-radius:inherit;border-width:var(--awb-border-top) var(--awb-border-right) var(--awb-border-bottom) var(--awb-border-left);border-color:var(--awb-border-color);border-style:var(--awb-border-style)}.awb-column__content{z-index:10}.fusion-column-anchor .awb-column__background-slider{width:100%;left:0}.fusion-column-anchor .awb-background-slider{position:static}.fusion-body .fusion-pagination-tb{--awb-font-size:var(--body_typography-font-size);--awb-height:36px;--awb-preview-wrapper-width:500px;--awb-preview-width:20px;--awb-preview-height:90px;--awb-border-color:var(--sep_color);--awb-border-size:1px;--awb-bg-color:transparent;--awb-box-shadow:none;--awb-text-color:var(--link_color);--awb-text-hover-color:var(--link_hover_color);--awb-preview-text-color:var(--link_color);--awb-preview-font-size:var(--body_typography-font-size);--awb-z-index:100;--awb-margin-bottom:0;--awb-margin-left:0;--awb-margin-right:0;--awb-margin-top:0;position:relative;font-size:var(--awb-font-size);margin-top:var(--awb-margin-top);margin-bottom:var(--awb-margin-bottom);margin-right:var(--awb-margin-right);margin-left:var(--awb-margin-left)}.fusion-body .fusion-pagination-tb:not(.layout-sticky){display:flex;justify-content:space-between;line-height:normal;min-height:var(--awb-height)}.fusion-body .fusion-pagination-tb:not(.layout-sticky) a{margin:0}.fusion-body .fusion-pagination-tb:not(.layout-sticky) a[rel=prev]{padding-left:1em}.fusion-body .fusion-pagination-tb:not(.layout-sticky) a[rel=prev]:before{left:0}.fusion-body .fusion-pagination-tb:not(.layout-sticky) a[rel=next]{padding-right:1em}.fusion-body .fusion-pagination-tb:not(.layout-sticky) a[rel=next]:after{right:0}.fusion-body .fusion-pagination-tb:not(.layout-sticky).clearfix:after,.fusion-body .fusion-pagination-tb:not(.layout-sticky).clearfix:before{display:none}.fusion-body .fusion-pagination-tb:not(.layout-sticky).align-left{justify-content:flex-start}.fusion-body .fusion-pagination-tb:not(.layout-sticky).align-left a[rel=prev]{margin-right:1em}.fusion-body .fusion-pagination-tb:not(.layout-sticky).align-right{justify-content:flex-end}.fusion-body .fusion-pagination-tb:not(.layout-sticky).align-right a[rel=next]{margin-left:1em}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-pagination-preview-wrapper{background-color:#fff;position:absolute;z-index:1000;visibility:hidden;opacity:0;top:100%;transition:opacity .1s ease-in .1s,visibility .1s ease-in .1s;animation:fadeOutLeft .1s ease-in .1s both;display:flex;align-items:center;flex-direction:row;pointer-events:none}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-pagination-preview-wrapper .fusion-item-title{padding:.5em .75em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-pagination-preview-wrapper .fusion-item-media img,.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-pagination-preview-wrapper .fusion-item-media svg{max-width:90px}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-pagination-preview-wrapper .fusion-item-media svg{min-width:90px;min-height:90px;background:#eaecef;display:block}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview.has-box-shadow .fusion-pagination-preview-wrapper{box-shadow:0 0 5px rgba(0,0,0,.2)}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-tb-next:hover .fusion-pagination-preview-wrapper,.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-tb-previous:hover .fusion-pagination-preview-wrapper{visibility:visible;opacity:1;transition:opacity .3s ease-out,visibility .3s ease-out;animation:fadeInLeft .3s ease-out both}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-tb-next .fusion-pagination-preview-wrapper{flex-direction:row-reverse;right:0;animation:fadeOutRight .1s ease-out .1s both}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-tb-next .fusion-pagination-preview-wrapper a{flex-direction:row-reverse}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-tb-next .fusion-pagination-preview-wrapper a .fusion-item-title{flex:1;text-align:left}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-tb-next:hover .fusion-pagination-preview-wrapper{animation:fadeInRight .3s ease-out both}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview.align-left .fusion-tb-next .fusion-pagination-preview-wrapper{right:auto}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview.align-right .fusion-tb-previous .fusion-pagination-preview-wrapper{right:auto}.fusion-body .fusion-pagination-tb:not(.layout-sticky).layout-preview.align-right .fusion-pagination-preview-wrapper{right:0!important}.fusion-body .fusion-pagination-tb:not(.layout-sticky).position-top .fusion-pagination-preview-wrapper{top:auto;bottom:100%}.fusion-body .fusion-pagination-tb.layout-sticky{z-index:var(--awb-z-index)}.fusion-body .fusion-pagination-tb.layout-sticky.has-box-shadow .fusion-control-navigation:before{content:"";box-shadow:0 0 5px rgba(0,0,0,.2);position:absolute;left:0;right:0;top:0;bottom:0;pointer-events:none}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation{width:auto;max-width:50vw;height:var(--awb-preview-height);min-width:var(--awb-preview-wrapper-width);position:fixed;right:0;top:50%;display:flex;align-items:center;justify-content:space-between;background:#fff}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation .fusion-item-title{text-align:center;flex:1;display:flex;align-items:center;width:min-content;position:relative}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation .fusion-item-title p{margin:0;display:-webkit-box;-webkit-line-clamp:2;overflow:hidden}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation .fusion-item-title i{position:absolute;left:1em;margin:0;top:50%;transform:translateY(-50%)}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation.prev{border-left:0;left:0;right:auto;transform:translate(calc(max(-1 * var(--awb-preview-wrapper-width),-50vw) + var(--awb-preview-width)),-50%);transition:transform .3s ease-in}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation.prev:hover{transform:translate(0,-50%)!important;transition:transform .3s ease-out}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation.prev .fusion-item-title{padding-right:1em;padding-left:2em}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation.next{border-right:0;right:0;transform:translate(calc(min(var(--awb-preview-wrapper-width),50vw) - var(--awb-preview-width)),-50%);transition:transform .3s ease-in}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation.next:before{transform:rotateY(180deg)}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation.next:hover{transform:translate(0,-50%)!important;transition:transform .3s ease-out}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation.next .fusion-item-title{justify-content:flex-end;padding-left:1em;padding-right:2em}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation.next .fusion-item-media img{margin-right:auto;margin-left:0}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation.next i{left:auto;right:1em}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation .fusion-item-media{height:inherit;display:flex}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation .fusion-item-media img,.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation .fusion-item-media svg{display:block;max-width:fit-content;height:inherit;width:auto;margin-left:auto}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation .fusion-item-media svg{max-width:150px;height:inherit;background:#eaecef}.fusion-body .fusion-pagination-tb.layout-sticky .fusion-control-navigation a{display:flex;flex:1;justify-content:space-between;height:inherit}.fusion-body .fusion-pagination-tb .fusion-item-title{transition-property:color;transition-duration:.2s;transition-timing-function:linear}.fusion-body .fusion-pagination-tb .fusion-tb-next,.fusion-body .fusion-pagination-tb .fusion-tb-previous{display:flex;align-items:center}.fusion-body .fusion-pagination-tb.single-navigation:not(.layout-sticky){border-color:var(--awb-border-color);border-width:var(--awb-border-size)}.fusion-body .fusion-pagination-tb.single-navigation.position-top.layout-preview .fusion-pagination-preview-wrapper{margin-bottom:calc(var(--awb-border-size) + 1px)}.fusion-body .fusion-pagination-tb.single-navigation.position-bottom.layout-preview .fusion-pagination-preview-wrapper{margin-top:calc(var(--awb-border-size) + 1px)}.fusion-body .fusion-pagination-tb.layout-sticky:not(.layoout-text) .fusion-control-navigation{background:var(--awb-bg-color)}.fusion-body .fusion-pagination-tb.layout-sticky:not(.layoout-text) .fusion-control-navigation.has-box-shadow .fusion-control-navigation:before{box-shadow:var(--awb-box-shadow)!important}.fusion-body .fusion-pagination-tb:not(.layout-sticky):not(.layoout-text).layout-preview .fusion-pagination-preview-wrapper{background:var(--awb-bg-color)}.fusion-body .fusion-pagination-tb:not(.layout-sticky):not(.layoout-text).layout-preview.has-box-shadow .fusion-pagination-preview-wrapper{box-shadow:var(--awb-box-shadow)!important}.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.single-navigation:not(.layout-sticky) a{color:var(--awb-text-color)!important}.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.single-navigation:not(.layout-sticky) a:after,.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.single-navigation:not(.layout-sticky) a:before{color:var(--awb-text-color)!important}.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.single-navigation:not(.layout-sticky) a.hover,.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.single-navigation:not(.layout-sticky) a:hover{color:var(--awb-text-hover-color)!important}.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.single-navigation:not(.layout-sticky) a.hover:after,.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.single-navigation:not(.layout-sticky) a.hover:before,.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.single-navigation:not(.layout-sticky) a:hover:after,.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.single-navigation:not(.layout-sticky) a:hover:before{color:var(--awb-text-hover-color)!important}.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb.layout-sticky .fusion-control-navigation a{color:var(--awb-preview-text-color);font-size:var(--awb-preview-font-size)}.fusion-body .fusion-fullwidth .fusion-builder-row.fusion-row .fusion-pagination-tb:not(.layout-sticky).layout-preview .fusion-pagination-preview-wrapper .fusion-item-title{color:var(--awb-preview-text-color);font-size:var(--awb-preview-font-size)}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-previous a,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-previous a,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-previous a,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-previous a{padding-right:1em;padding-left:0}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-previous a:before,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-previous a:before,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-previous a:before,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-previous a:before{left:auto;right:0}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-previous .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-previous .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-previous .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-previous .fusion-pagination-preview-wrapper{animation:fadeOutRight .1s ease-in .1s both}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-previous .fusion-pagination-preview-wrapper a,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-previous .fusion-pagination-preview-wrapper a,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-previous .fusion-pagination-preview-wrapper a,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-previous .fusion-pagination-preview-wrapper a{padding-left:1em;padding-right:0;flex-direction:inherit}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-previous:hover .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-previous:hover .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-previous:hover .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-previous:hover .fusion-pagination-preview-wrapper{animation:fadeInRight .1s ease-out .1s both}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-next .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-next .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-next .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-next .fusion-pagination-preview-wrapper{right:auto;left:0;animation:fadeOutLeft .1s ease-in .1s both}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-next .fusion-pagination-preview-wrapper a,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-next .fusion-pagination-preview-wrapper a,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-next .fusion-pagination-preview-wrapper a,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-next .fusion-pagination-preview-wrapper a{flex-direction:row-reverse;padding-left:0;padding-right:1em}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-next a,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-next a,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-next a,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-next a{padding-left:1em;padding-right:0}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-next a:after,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-next a:after,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-next a:after,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-next a:after{left:0}.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.align-left) .fusion-tb-next:hover .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.layout-preview:not(.layout-sticky) .fusion-tb-next:hover .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text:not(.align-left) .fusion-tb-next:hover .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text:not(.layout-sticky) .fusion-tb-next:hover .fusion-pagination-preview-wrapper{animation:fadeInLeft .1s ease-out .1s both}.fusion-body.rtl .fusion-pagination-tb.layout-preview.align-left .fusion-tb-previous a,.fusion-body.rtl .fusion-pagination-tb.text.align-left .fusion-tb-previous a{margin-right:0;margin-left:1em}.fusion-body.rtl .fusion-pagination-tb.layout-preview.align-left .fusion-tb-previous .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text.align-left .fusion-tb-previous .fusion-pagination-preview-wrapper{right:0}.fusion-body.rtl .fusion-pagination-tb.layout-preview.align-left .fusion-tb-next .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text.align-left .fusion-tb-next .fusion-pagination-preview-wrapper{right:0}.fusion-body.rtl .fusion-pagination-tb.layout-preview.align-right .fusion-tb-next a,.fusion-body.rtl .fusion-pagination-tb.text.align-right .fusion-tb-next a{margin-left:0;margin-right:1em}.fusion-body.rtl .fusion-pagination-tb.layout-preview.align-right .fusion-tb-next .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text.align-right .fusion-tb-next .fusion-pagination-preview-wrapper{left:0;right:auto!important}.fusion-body.rtl .fusion-pagination-tb.layout-preview.align-right .fusion-tb-previous .fusion-pagination-preview-wrapper,.fusion-body.rtl .fusion-pagination-tb.text.align-right .fusion-tb-previous .fusion-pagination-preview-wrapper{left:0;right:auto!important}.fusion-body.rtl .fusion-pagination-tb.layout-sticky .fusion-control-navigation.next{left:0;right:auto;transform:translate(calc(max(-1 * var(--awb-preview-wrapper-width),-50vw) + var(--awb-preview-width)),-50%)!important;transition:transform .3s ease-in}.fusion-body.rtl .fusion-pagination-tb.layout-sticky .fusion-control-navigation.next .fusion-item-media img{margin-left:auto;margin-right:0}.fusion-body.rtl .fusion-pagination-tb.layout-sticky .fusion-control-navigation.next:hover{transform:translate(0,-50%)!important;transition:transform .3s ease-in}.fusion-body.rtl .fusion-pagination-tb.layout-sticky .fusion-control-navigation.prev{right:0;left:auto;transform:translate(calc(min(var(--awb-preview-wrapper-width),50vw) - var(--awb-preview-width)),-50%)!important;transition:transform .3s ease-in}.fusion-body.rtl .fusion-pagination-tb.layout-sticky .fusion-control-navigation.prev .fusion-item-media img{margin-right:auto;margin-left:0}.fusion-body.rtl .fusion-pagination-tb.layout-sticky .fusion-control-navigation.prev:hover{transform:translate(0,-50%)!important;transition:transform .3s ease-in}.fusion-body.fusion-builder-live:not(.fusion-builder-preview-mode) .fusion-pagination-tb.layout-sticky:not(.show-live){display:none}.fusion-image-wrapper .fusion-rollover{background-image:linear-gradient(to top,var(--image_gradient_bottom_color) 0,var(--image_gradient_top_color) 100%)}.fusion-image-wrapper .fusion-rollover .fusion-rollover-gallery:before,.fusion-image-wrapper .fusion-rollover .fusion-rollover-link:before{font-size:var(--image_rollover_icon_size);color:var(--image_rollover_icon_color)}.avada-image-rollover-circle-no .fusion-image-wrapper .fusion-rollover .fusion-rollover-gallery,.avada-image-rollover-circle-no .fusion-image-wrapper .fusion-rollover .fusion-rollover-link{width:calc((var(--image_rollover_icon_size)) * 1.5);height:calc((var(--image_rollover_icon_size)) * 1.5);background-color:transparent}.avada-image-rollover-circle-yes .fusion-image-wrapper .fusion-rollover .fusion-rollover-gallery,.avada-image-rollover-circle-yes .fusion-image-wrapper .fusion-rollover .fusion-rollover-link{width:calc((var(--image_rollover_icon_size)) * 2.41);height:calc((var(--image_rollover_icon_size)) * 2.41);background-color:var(--image_rollover_text_color)}.fusion-woo-product-design-clean .products .fusion-rollover-content .fusion-product-buttons,.fusion-woo-product-design-clean .products .fusion-rollover-content .fusion-product-buttons a,.fusion-woo-product-design-clean .products .fusion-rollover-content .fusion-rollover-linebreak,.fusion-woo-slider .fusion-product-buttons,.fusion-woo-slider .fusion-product-buttons .fusion-rollover-linebreak,.fusion-woo-slider .fusion-product-buttons a{color:var(--image_rollover_text_color)}body:not(.avada-image-rollover-direction-left) .fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-product-buttons a:before,body:not(.avada-image-rollover-direction-left) .fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories,body:not(.avada-image-rollover-direction-left) .fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-categories a,body:not(.avada-image-rollover-direction-left) .fusion-image-wrapper .fusion-rollover .fusion-rollover-content .fusion-rollover-title a,body:not(.avada-image-rollover-direction-left) .fusion-image-wrapper .fusion-rollover .fusion-rollover-content .price *,body:not(.avada-image-rollover-direction-left) .fusion-image-wrapper .fusion-rollover .fusion-rollover-content a,body:not(.avada-image-rollover-direction-left) .fusion-rollover .fusion-rollover-content .fusion-rollover-title{color:var(--image_rollover_text_color)}.fusion-woo-product-design-clean .products .fusion-rollover .star-rating span:before,.fusion-woo-product-design-clean .products .fusion-rollover .star-rating:before{color:var(--image_rollover_icon_color)}.awb-swiper{--awb-arrow-position-vertical:50%;--awb-arrow-position-horizontal:0;--awb-arrow-position-vertical-transform:translateY(-50%);--awb-arrow-size:var(--slider_arrow_size);--awb-arrow-box-width:var(--slider_nav_box_dimensions-width);--awb-arrow-box-height:var(--slider_nav_box_dimensions-height);--awb-arrow-bgcolor:var(--carousel_nav_color);--awb-arrow-color:#fff;--awb-arrow-hover-bgcolor:var(--carousel_hover_color);--awb-arrow-hover-color:var(--awb-arrow-color);--awb-arrow-border-radius-top-left:0;--awb-arrow-border-radius-top-right:0;--awb-arrow-border-radius-bottom-right:0;--awb-arrow-border-radius-bottom-left:0;--awb-dots-color:var(--carousel_hover_color);--awb-dots-active-color:var(--carousel_nav_color);--awb-dots-align:center;--awb-dots-size:8px;--awb-dots-active-size:8px;--awb-dots-position-bottom:10px;--awb-progress-bar-size:4px;--awb-dots-spacing:4px;--awb-dots-margin-top:0;--awb-dots-margin-bottom:0;--awb-columns:5;--awb-column-spacing:13px;margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;width:100%;min-width:0;min-height:0;z-index:1}.awb-swiper.fusion-post-cards{--awb-columns:4;--awb-column-spacing:40px}.fusion-woo-featured-products-slider .awb-swiper{--awb-column-spacing:10px}.related-posts .awb-swiper{--awb-columns:var(--related_posts_columns);--awb-column-spacing:var(--related_posts_column_spacing)}.awb-swiper.awb-swiper-carousel:not(.swiper-initialized) .swiper-slide,.awb-swiper.awb-swiper-coverflow:not(.swiper-initialized) .swiper-slide,.awb-swiper.awb-swiper-marquee:not(.swiper-initialized) .swiper-slide{margin-right:var(--awb-column-spacing);max-width:calc((100% - ((var(--awb-columns) - 1) * var(--awb-column-spacing)))/ var(--awb-columns))}.fusion-image-carousel-fixed .awb-swiper .fusion-image-wrapper img{max-height:115px;width:auto}.awb-swiper .fusion-carousel-item-wrapper{line-height:normal;vertical-align:middle}.awb-swiper .fusion-carousel-item-wrapper:not(.fusion-column-wrapper){text-align:center}.awb-swiper .fusion-carousel-title{margin:.6818em 0 .1363em}.awb-swiper .fusion-image-wrapper{display:inline-block}.awb-swiper .fusion-image-wrapper.hover-type-none{display:inline-flex}.awb-swiper .has-aspect-ratio .fusion-image-wrapper{display:block}.awb-swiper:not(.swiper-fade):not([data-slide-effect=swipe_vert]):not([data-slide-effect=slide_vert]) .swiper-wrapper{padding:8px 0}.awb-swiper:not(.swiper-fade) .swiper-wrapper .swiper-slide{transition:transform .45s ease,opacity .45s ease}.awb-swiper:not(.swiper-fade) .swiper-wrapper.is-touch-start .swiper-slide{transform:scale(.97)}.awb-swiper.awb-swiper-dots-position-top .swiper-pagination{bottom:auto;top:calc(var(--awb-dots-position-bottom) + 8px)}.awb-swiper.awb-swiper-dots-position-above,.awb-swiper.awb-swiper-dots-position-below{display:flex;flex-direction:column}.awb-swiper.awb-swiper-dots-position-above .swiper-pagination,.awb-swiper.awb-swiper-dots-position-below .swiper-pagination{bottom:auto;position:relative;margin-top:var(--awb-dots-margin-top);margin-bottom:var(--awb-dots-margin-bottom)}.awb-swiper.awb-swiper-dots-position-above .swiper-pagination{order:-1}.awb-swiper .fusion-carousel-price{margin-top:8px}.awb-swiper-slider{--awb-arrow-hover-bgcolor:var(--awb-arrow-bgcolor)}.awb-swiper-slider .swiper-slide img{display:block;width:100%}.awb-swiper-slider .awb-swiper-button{opacity:0}.awb-swiper-slider .awb-swiper-button:hover{background-color:var(--awb-arrow-hover-bgcolor)}.awb-swiper-slider:hover .awb-swiper-button{opacity:.8}.awb-swiper-slider:hover .awb-swiper-button:hover{opacity:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{transition-property:transform,height}.swiper-autoheight:not(.fusion-post-cards) .swiper-wrapper:not(.awb-image-carousel-wrapper){align-items:flex-start}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:"";flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.awb-swiper-button-next,.awb-swiper-button-prev{align-items:center;cursor:pointer;display:flex;font-size:var(--awb-arrow-size);position:absolute;width:var(--awb-arrow-box-width);height:var(--awb-arrow-box-height);z-index:10;justify-content:center;color:var(--awb-arrow-color);background-color:var(--awb-arrow-bgcolor);top:var(--awb-arrow-position-vertical);transform:var(--awb-arrow-position-vertical-transform);border-radius:var(--awb-arrow-border-radius-top-left) var(--awb-arrow-border-radius-top-right) var(--awb-arrow-border-radius-bottom-right) var(--awb-arrow-border-radius-bottom-left);transition:all .3s ease;opacity:.8}.awb-swiper-button-next:hover,.awb-swiper-button-prev:hover{background-color:var(--awb-arrow-hover-bgcolor);color:var(--awb-arrow-hover-color);opacity:1}.awb-swiper-button-next.swiper-button-disabled,.awb-swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:auto}.awb-swiper-button-next.swiper-button-hidden,.awb-swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .awb-swiper-button-next,.swiper-navigation-disabled .awb-swiper-button-prev{display:none!important}.awb-swiper-button-prev,.swiper-rtl .awb-swiper-button-next{left:var(--awb-arrow-position-horizontal);right:auto}.awb-swiper-button-next,.swiper-rtl .awb-swiper-button-prev{right:var(--awb-arrow-position-horizontal);left:auto}.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:auto}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--awb-dots-position-bottom);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--awb-dots-size);height:var(--awb-dots-size);display:inline-block;border-radius:50%;background:var(--awb-dots-color);transition:width .2s,height .2s,background-color .2s}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{background:var(--awb-dots-active-color);width:var(--awb-dots-active-size);height:var(--awb-dots-active-size)}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 calc(var(--awb-dots-spacing)/ 2)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-horizontal.swiper-pagination-bullets{display:flex;align-items:center;justify-content:var(--awb-dots-align)}.swiper-pagination-progressbar{background:var(--awb-dots-color);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--awb-dots-active-color);position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--awb-progress-bar-size);left:0}.awb-swiper-progress-position-above .swiper-horizontal>.swiper-pagination-progressbar,.awb-swiper-progress-position-above .swiper-pagination-progressbar.swiper-pagination-horizontal,.awb-swiper-progress-position-above .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.awb-swiper-progress-position-above .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{order:-1}.awb-swiper-progress-position-top .swiper-horizontal>.swiper-pagination-progressbar,.awb-swiper-progress-position-top .swiper-pagination-progressbar.swiper-pagination-horizontal,.awb-swiper-progress-position-top .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.awb-swiper-progress-position-top .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{top:0}.awb-swiper-progress-position-bottom .swiper-horizontal>.swiper-pagination-progressbar,.awb-swiper-progress-position-bottom .swiper-pagination-progressbar.swiper-pagination-horizontal,.awb-swiper-progress-position-bottom .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.awb-swiper-progress-position-bottom .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{bottom:0}.swiper-coverflow.awb-swiper.awb-swiper-progress-position-top .swiper-horizontal>.swiper-pagination-progressbar,.swiper-coverflow.awb-swiper.awb-swiper-progress-position-top .swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-coverflow.awb-swiper.awb-swiper-progress-position-top .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-coverflow.awb-swiper.awb-swiper-progress-position-top .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{top:1.5%}.swiper-coverflow.awb-swiper.awb-swiper-progress-position-bottom .swiper-horizontal>.swiper-pagination-progressbar,.swiper-coverflow.awb-swiper.awb-swiper-progress-position-bottom .swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-coverflow.awb-swiper.awb-swiper-progress-position-bottom .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-coverflow.awb-swiper.awb-swiper-progress-position-bottom .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{bottom:2%}.awb-swiper-progress-position-above .swiper-horizontal>.swiper-pagination-progressbar,.awb-swiper-progress-position-above .swiper-pagination-progressbar.swiper-pagination-horizontal,.awb-swiper-progress-position-above .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.awb-swiper-progress-position-above .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.awb-swiper-progress-position-below .swiper-horizontal>.swiper-pagination-progressbar,.awb-swiper-progress-position-below .swiper-pagination-progressbar.swiper-pagination-horizontal,.awb-swiper-progress-position-below .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.awb-swiper-progress-position-below .swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{position:relative;margin-top:var(--awb-dots-margin-top);margin-bottom:var(--awb-dots-margin-bottom)}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--awb-progress-bar-size);height:100%;left:0;top:0}.awb-swiper.awb-swiper-progress-position-above[data-pagination=progressbar],.fusion-wrapper .awb-swiper.awb-swiper-progress-position-below[data-pagination=progressbar]{display:flex;flex-direction:column}.fusion-wrapper .awb-swiper.awb-swiper-progress-position-above[data-pagination=progressbar] .swiper-wrapper,.fusion-wrapper .awb-swiper.awb-swiper-progress-position-top[data-pagination=progressbar] .swiper-wrapper{padding-top:0}.fusion-wrapper .awb-swiper.awb-swiper-progress-position-below[data-pagination=progressbar] .swiper-wrapper,.fusion-wrapper .awb-swiper.awb-swiper-progress-position-bottom[data-pagination=progressbar] .swiper-wrapper{padding-bottom:0}.awb-swiper[data-pagination=progressbar] .fusion-carousel-item-wrapper{line-height:1}.swiper-pagination-lock{display:none}.awb-swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-creative .swiper-slide{backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-coverflow{padding:1% 0}.swiper-cards{overflow:visible;width:85%}.awb-cursor-nav-helper{--awb-cursor-color:#fff;position:fixed;z-index:400;left:-8px;top:-8px;pointer-events:none;width:16px;height:16px;mix-blend-mode:difference;will-change:transform}.awb-cursor-nav-helper.color-custom,.awb-cursor-nav-helper.color-dark,.awb-cursor-nav-helper.color-light{mix-blend-mode:normal}.awb-cursor-nav-helper.color-dark:before{border:2px solid #000}.awb-cursor-nav-helper.color-dark i{color:#000}.awb-cursor-nav-helper:before{border:2px solid var(--awb-cursor-color);width:100%;height:100%;display:block;content:"";position:absolute;left:-2px;top:-2px;opacity:0;border-radius:50%;transition:transform .45s ease,opacity .3s ease}.awb-cursor-nav-helper span{position:absolute;top:50%;left:0;display:block;width:100%;text-align:center;transform:translateY(-50%)}.awb-cursor-nav-helper i{top:0;color:var(--awb-cursor-color);font-size:16px;opacity:0;position:absolute;transition:transform .2s ease,opacity .2s ease}.awb-cursor-nav-helper i.awb-cursor-nav-left{left:-22px;top:-9px}.awb-cursor-nav-helper i.awb-cursor-nav-right{right:-22px;top:-9px}.awb-cursor-nav-helper--visible i{transition:transform .45s ease,opacity .3s ease;transform:scale(1.5)}.awb-cursor-nav-helper--visible i,.awb-cursor-nav-helper--visible:before{opacity:1}.awb-cursor-nav-helper--touch-start:before{background:var(--awb-cursor-color);transform:scale(.6);transition:transform .25s ease-out,opacity .3s ease}.awb-cursor-nav-helper--touch-start .awb-cursor-nav-left{transform:translateX(8px)}.awb-cursor-nav-helper--touch-start .awb-cursor-nav-right{transform:translateX(-8px)}.awb-cursor-nav-helper--touch-start.color-dark:before{background:#000}@keyframes fusionSonarEffect{0%{opacity:.3}40%{opacity:.5}100%{transform:scale(1.5);opacity:0}}@keyframes fusionToRightFromLeft{49%{transform:translate(100%)}50%{opacity:0;transform:translate(-100%)}51%{opacity:1}100%{opacity:1}}@keyframes fusionExpandAndShow{0%{transform:scale(.5);opacity:1}100%{transform:scale(1);opacity:1}}@keyframes fusionExpandWidth{0%{width:0}100%{width:99%}}@keyframes fusionExpandHeight{0%{height:0}100%{height:100%}}.icon-hover-animation-slide .fontawesome-icon.circle-yes{overflow:hidden}.icon-hover-animation-slide .fontawesome-icon:before{display:block;opacity:1}.icon-hover-animation-fade .fontawesome-icon{transition:background-color .3s,color .3s}.link-area-box-hover.icon-hover-animation-fade .fontawesome-icon,.link-area-link-icon-hover.icon-hover-animation-fade .fontawesome-icon{transition:background-color .3s,color .3s}.link-area-box-hover.icon-hover-animation-slide .fontawesome-icon:before,.link-area-link-icon-hover.icon-hover-animation-slide .fontawesome-icon:before{display:block;animation:fusionToRightFromLeft .3s forwards}.fusion-content-boxes .link-area-box-hover.icon-hover-animation-pulsate .heading,.fusion-content-boxes .link-area-link-icon-hover.icon-hover-animation-pulsate .heading{overflow:visible}.link-area-box-hover.icon-hover-animation-pulsate .fontawesome-icon,.link-area-link-icon-hover.icon-hover-animation-pulsate .fontawesome-icon{transition:background-color .3s,color .3s;transform:scale(.93)}.link-area-box-hover.icon-hover-animation-pulsate .fontawesome-icon:after,.link-area-link-icon-hover.icon-hover-animation-pulsate .fontawesome-icon:after{pointer-events:none;position:absolute;width:100%;height:100%;border-radius:inherit;content:"";box-sizing:content-box;top:0;left:0;padding:0;z-index:-1;box-shadow:0 0 0 2px rgba(255,255,255,.1);opacity:0;transform:scale(.9);display:inline-block;animation:fusionSonarEffect 1.3s ease-out 75ms}@-moz-document url-prefix(){.link-area-box-hover.icon-hover-animation-pulsate .fontawesome-icon:after,.link-area-link-icon-hover.icon-hover-animation-pulsate .fontawesome-icon:after{animation-iteration-count:infinite}}.fusion-content-boxes .link-area-box-hover.icon-wrapper-hover-animation-pulsate .heading,.fusion-content-boxes .link-area-link-icon-hover.icon-wrapper-hover-animation-pulsate .heading{overflow:visible}.link-area-box-hover.icon-wrapper-hover-animation-pulsate .fontawesome-icon,.link-area-link-icon-hover.icon-wrapper-hover-animation-pulsate .fontawesome-icon{transition:background-color .3s,color .3s}.link-area-box-hover.icon-wrapper-hover-animation-pulsate .icon span,.link-area-link-icon-hover.icon-wrapper-hover-animation-pulsate .icon span{transform:scale(.93)}.link-area-box-hover.icon-wrapper-hover-animation-pulsate .icon span:after,.link-area-link-icon-hover.icon-wrapper-hover-animation-pulsate .icon span:after{pointer-events:none;position:absolute;width:100%;height:100%;border-radius:inherit;content:"";box-sizing:content-box;top:0;left:0;padding:0;z-index:-1;box-shadow:0 0 0 2px rgba(255,255,255,.1);opacity:0;transform:scale(.9);display:inline-block;animation:fusionSonarEffect 1.3s ease-out 75ms}@keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}@keyframes shake{0%,100%{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-10px)}20%,40%,60%,80%{transform:translateX(10px)}}@keyframes bounce{0%,100%,20%,50%,80%{transform:translateY(0)}40%{transform:translateY(-30px)}60%{transform:translateY(-15px)}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}100%{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}100%{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-20px)}100%{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(20px)}100%{opacity:1;transform:translateX(0)}}@keyframes fadeInUpBig{0%{opacity:0;transform:translateY(2000px)}100%{opacity:1;transform:translateY(0)}}@keyframes fadeInDownBig{0%{opacity:0;transform:translateY(-2000px)}100%{opacity:1;transform:translateY(0)}}@keyframes fadeInLeftBig{0%{opacity:0;transform:translateX(-2000px)}100%{opacity:1;transform:translateX(0)}}@keyframes fadeInRightBig{0%{opacity:0;transform:translateX(2000px)}100%{opacity:1;transform:translateX(0)}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOutUp{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-20px)}}@keyframes fadeOutDown{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(20px)}}@keyframes fadeOutLeft{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(-20px)}}@keyframes fadeOutRight{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(20px)}}@keyframes fadeOutUpBig{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-2000px)}}@keyframes fadeOutDownBig{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(2000px)}}@keyframes fadeOutLeftBig{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(-2000px)}}@keyframes fadeOutRightBig{0%{opacity:1;transform:translateX(0)}100%{opacity:0;transform:translateX(2000px)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-2000px)}100%{transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(2000px)}100%{transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-2000px)}100%{transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(2000px)}100%{transform:translateX(0)}}@keyframes slideOutUp{0%{transform:translateY(0)}100%{opacity:0;transform:translateY(-2000px)}}@keyframes slideOutDown{0%{transform:translateY(0)}100%{opacity:0;transform:translateY(2000px)}}@keyframes slideOutLeft{0%{transform:translateX(0)}100%{opacity:0;transform:translateX(-2000px)}}@keyframes slideOutRight{0%{transform:translateX(0)}100%{opacity:0;transform:translateX(2000px)}}@keyframes slideShortInDown{0%{opacity:0;transform:translateY(-100%)}100%{transform:translateY(0)}}@keyframes slideShortInUp{0%{opacity:0;transform:translateY(100%)}100%{transform:translateY(0)}}@keyframes slideShortInLeft{0%{opacity:0;transform:translateX(-100%)}100%{transform:translateX(0)}}@keyframes slideShortInRight{0%{opacity:0;transform:translateX(100%)}100%{transform:translateX(0)}}@keyframes slideShortOutUp{0%{transform:translateY(0)}100%{opacity:0;transform:translateY(-100%)}}@keyframes slideShortOutDown{0%{transform:translateY(0)}100%{opacity:0;transform:translateY(100%)}}@keyframes slideShortOutLeft{0%{transform:translateX(0)}100%{opacity:0;transform:translateX(-100%)}}@keyframes slideShortOutRight{0%{transform:translateX(0)}100%{opacity:0;transform:translateX(100%)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}100%{transform:scale(1)}}@keyframes bounceInUp{0%{opacity:0;transform:translateY(2000px)}60%{opacity:1;transform:translateY(-30px)}80%{transform:translateY(10px)}100%{transform:translateY(0)}}@keyframes bounceInDown{0%{opacity:0;transform:translateY(-2000px)}60%{opacity:1;transform:translateY(30px)}80%{transform:translateY(-10px)}100%{transform:translateY(0)}}@keyframes bounceInLeft{0%{opacity:0;transform:translateX(-2000px)}60%{opacity:1;transform:translateX(30px)}80%{transform:translateX(-10px)}100%{transform:translateX(0)}}@keyframes bounceInRight{0%{opacity:0;transform:translateX(2000px)}60%{opacity:1;transform:translateX(-30px)}80%{transform:translateX(10px)}100%{transform:translateX(0)}}@keyframes bounceOut{0%{transform:scale(1)}25%{transform:scale(.95)}50%{opacity:1;transform:scale(1.1)}100%{opacity:0;transform:scale(.3)}}@keyframes bounceOutUp{0%{transform:translateY(0)}20%{opacity:1;transform:translateY(20px)}100%{opacity:0;transform:translateY(-2000px)}}@keyframes bounceOutDown{0%{transform:translateY(0)}20%{opacity:1;transform:translateY(-20px)}100%{opacity:0;transform:translateY(2000px)}}@keyframes bounceOutLeft{0%{transform:translateX(0)}20%{opacity:1;transform:translateX(20px)}100%{opacity:0;transform:translateX(-2000px)}}@keyframes bounceOutRight{0%{transform:translateX(0)}20%{opacity:1;transform:translateX(-20px)}100%{opacity:0;transform:translateX(2000px)}}@keyframes lightSpeedIn{0%{transform:translateX(100%) skewX(-30deg);opacity:0}60%{transform:translateX(-20%) skewX(30deg);opacity:1}80%{transform:translateX(0) skewX(-15deg);opacity:1}100%{transform:translateX(0) skewX(0);opacity:1}}@keyframes lightSpeedOut{0%{transform:translateX(0) skewX(0);opacity:1}100%{transform:translateX(100%) skewX(-30deg);opacity:0}}@keyframes rubberBand{0%{transform:scale3d(1,1,1)}30%{transform:scale3d(1.25,.75,1)}40%{transform:scale3d(.75,1.25,1)}50%{transform:scale3d(1.15,.85,1)}65%{transform:scale3d(.95,1.05,1)}75%{transform:scale3d(1.05,.95,1)}100%{transform:scale3d(1,1,1)}}@keyframes zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes zoomInDown{0%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,60px,0);animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}@keyframes zoomInLeft{0%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(10px,0,0);animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}@keyframes zoomInRight{0%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}@keyframes zoomInUp{0%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}60%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}100%{opacity:0}}@keyframes zoomOutDown{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}100%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform-origin:center bottom;animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}@keyframes zoomOutLeft{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}100%{opacity:0;transform:scale(.1) translate3d(-2000px,0,0);transform-origin:left center}}@keyframes zoomOutRight{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}100%{opacity:0;transform:scale(.1) translate3d(2000px,0,0);transform-origin:right center}}@keyframes zoomOutUp{40%{opacity:1;transform:scale3d(.475,.475,.475) translate3d(0,60px,0);animation-timing-function:cubic-bezier(0.55,0.055,0.675,0.19)}100%{opacity:0;transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform-origin:center bottom;animation-timing-function:cubic-bezier(0.175,0.885,0.32,1)}}@keyframes flipInX{from{transform:perspective(400px) rotate3d(1,0,0,90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotate3d(1,0,0,-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotate3d(1,0,0,10deg);opacity:1}80%{transform:perspective(400px) rotate3d(1,0,0,-5deg)}to{transform:perspective(400px)}}@keyframes flipInY{from{transform:perspective(400px) rotate3d(0,1,0,90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotate3d(0,1,0,-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotate3d(0,1,0,10deg);opacity:1}80%{transform:perspective(400px) rotate3d(0,1,0,-5deg)}to{transform:perspective(400px)}}@keyframes flipOutX{from{transform:perspective(400px)}30%{transform:perspective(400px) rotate3d(1,0,0,-20deg);opacity:1}to{transform:perspective(400px) rotate3d(1,0,0,90deg);opacity:0}}@keyframes flipOutY{from{transform:perspective(400px)}30%{transform:perspective(400px) rotate3d(0,1,0,-15deg);opacity:1}to{transform:perspective(400px) rotate3d(0,1,0,90deg);opacity:0}}@keyframes revealInLeft{0%{left:0;right:auto;width:0%}45%{left:0;right:auto;width:100%}55%{left:auto;right:0;width:100%}100%{left:auto;right:0;width:0%}}@keyframes revealInRight{0%{left:auto;right:0;width:0%}45%{left:auto;right:0;width:100%}55%{left:0;right:auto;width:100%}100%{left:0;right:auto;width:0%}}@keyframes revealInDown{0%{top:0;bottom:auto;height:0%}45%{top:0;bottom:auto;height:100%}55%{top:auto;bottom:0;height:100%}100%{top:auto;bottom:0;height:0%}}@keyframes revealInUp{0%{top:auto;bottom:0;height:0%}45%{top:auto;bottom:0;height:100%}55%{top:0;bottom:auto;height:100%}100%{top:0;bottom:auto;height:0%}}@keyframes revealContent{0%{visibility:hidden}50%{visibility:hidden}50.1%{visibility:visible}}.fusion-animated{visibility:hidden}.dont-animate .fusion-animated{visibility:visible}.do-animate .fusion-animated{animation-fill-mode:both;animation-duration:1s}.do-animate .fusion-animated.hinge{animation-duration:1s}.do-animate .flash{animation-name:flash}.do-animate .flipinx{backface-visibility:visible!important;animation-name:flipInX}.do-animate .flipiny{backface-visibility:visible!important;animation-name:flipInY}.do-animate .flipOutX{animation-name:flipOutX;backface-visibility:visible!important}.do-animate .flipOutY{backface-visibility:visible!important;animation-name:flipOutY}.do-animate .shake{animation-name:shake}.do-animate .bounce{animation-name:bounce}.do-animate .fadeIn{animation-name:fadeIn}.do-animate .fadeInUp{animation-name:fadeInUp}.do-animate .fadeInDown{animation-name:fadeInDown}.do-animate .fadeInLeft{animation-name:fadeInLeft}.do-animate .fadeInRight{animation-name:fadeInRight}.do-animate .fadeInUpBig{animation-name:fadeInUpBig}.do-animate .fadeInDownBig{animation-name:fadeInDownBig}.do-animate .fadeInLeftBig{animation-name:fadeInLeftBig}.do-animate .fadeInRightBig{animation-name:fadeInRightBig}.do-animate .fadeOut{animation-name:fadeOut}.do-animate .fadeOutUp{animation-name:fadeOutUp}.do-animate .fadeOutDown{animation-name:fadeOutDown}.do-animate .fadeOutLeft{animation-name:fadeOutLeft}.do-animate .fadeOutRight{animation-name:fadeOutRight}.do-animate .fadeOutUpBig{animation-name:fadeOutUpBig}.do-animate .fadeOutDownBig{animation-name:fadeOutDownBig}.do-animate .fadeOutLeftBig{animation-name:fadeOutLeftBig}.do-animate .fadeOutRightBig{animation-name:fadeOutRightBig}.do-animate .slideInDown{animation-name:slideInDown}.do-animate .slideInUp{animation-name:slideInUp}.do-animate .slideIn,.do-animate .slideInLeft{animation-name:slideInLeft}.do-animate .slideInRight{animation-name:slideInRight}.do-animate .slideShortInDown{animation-name:slideShortInDown}.do-animate .slideShortInUp{animation-name:slideShortInUp}.do-animate .slideShortInLeft{animation-name:slideShortInLeft}.do-animate .slideShortInRight{animation-name:slideShortInRight}.do-animate .slideOutUp{animation-name:slideOutUp}.do-animate .slideOutDown{animation-name:slideOutDown}.do-animate .slideOut,.do-animate .slideOutLeft{animation-name:slideOutLeft}.do-animate .slideOutRight{animation-name:slideOutRight}.do-animate .slideShortOutUp{animation-name:slideShortOutUp}.do-animate .slideShortOutDown{animation-name:slideShortOutDown}.do-animate .slideShortOutLeft{animation-name:slideShortOutLeft}.do-animate .slideShortOutRight{animation-name:slideShortOutRight}.do-animate .bounceIn{animation-name:bounceIn}.do-animate .bounceInUp{animation-name:bounceInUp}.do-animate .bounceInDown{animation-name:bounceInDown}.do-animate .bounceInLeft{animation-name:bounceInLeft}.do-animate .bounceInRight{animation-name:bounceInRight}.do-animate .bounceOut{animation-name:bounceOut}.do-animate .bounceOutUp{color:red;animation-name:bounceOutUp}.do-animate .bounceOutDown{animation-name:bounceOutDown}.do-animate .bounceOutLeft{animation-name:bounceOutLeft}.do-animate .bounceOutRight{animation-name:bounceOutRight}.do-animate .lightSpeedIn,.do-animate .lightspeedin{animation-name:lightSpeedIn;animation-timing-function:ease-out}.do-animate .lightSpeedOut{animation-name:lightSpeedOut;animation-timing-function:ease-in}.do-animate .rubberBand{animation-name:rubberBand}.do-animate .zoomIn{animation-name:zoomIn}.do-animate .zoomInDown{animation-name:zoomInDown}.do-animate .zoomInLeft{animation-name:zoomInLeft}.do-animate .zoomInRight{animation-name:zoomInRight}.do-animate .zoomInUp{animation-name:zoomInUp}.do-animate .zoomOut{animation-name:zoomOut}.do-animate .zoomOutDown{animation-name:zoomOutDown}.do-animate .zoomOutLeft{animation-name:zoomOutLeft}.do-animate .zoomOutRight{animation-name:zoomOutRight}.do-animate .zoomOutUp{animation-name:zoomOutUp}.do-animate .revealIn,.do-animate .revealInDown,.do-animate .revealInLeft,.do-animate .revealInRight,.do-animate .revealInUp{--awb-animation-color:var(--primary_color);animation-name:revealContent;animation-timing-function:cubic-bezier(0.1,0.5,0.5,0.9)}.do-animate .revealIn *,.do-animate .revealInDown *,.do-animate .revealInLeft *,.do-animate .revealInRight *,.do-animate .revealInUp *{visibility:inherit!important}.do-animate .revealIn:after,.do-animate .revealInDown:after,.do-animate .revealInLeft:after,.do-animate .revealInRight:after,.do-animate .revealInUp:after{content:"";display:block!important;position:absolute;background-color:var(--awb-animation-color);visibility:visible;animation-duration:inherit;animation-delay:inherit;animation-timing-function:inherit;z-index:10}.do-animate .revealIn:after,.do-animate .revealInLeft:after{top:0;bottom:0;animation-name:revealInLeft}.do-animate .revealInRight:after{top:0;bottom:0;animation-name:revealInRight}.do-animate .revealInDown:after{left:0;right:0;animation-name:revealInDown}.do-animate .revealInUp:after{left:0;right:0;animation-name:revealInUp}.ilightbox-holder,.ilightbox-holder .ilightbox-container,.ilightbox-holder .ilightbox-container .ilightbox-caption,.ilightbox-holder .ilightbox-container .ilightbox-social,.ilightbox-holder .ilightbox-container .ilightbox-social *,.ilightbox-holder .ilightbox-container img.ilightbox-image,.ilightbox-loader,.ilightbox-loader *,.ilightbox-overlay,.ilightbox-thumbnails,.ilightbox-thumbnails *,.ilightbox-toolbar,.ilightbox-toolbar *{float:none;margin:0;padding:0;border:0;font-size:100%;line-height:100%;vertical-align:baseline;background:0 0;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.fusion-disable-outline .ilightbox-holder,.fusion-disable-outline .ilightbox-holder .ilightbox-container,.fusion-disable-outline .ilightbox-holder .ilightbox-container .ilightbox-caption,.fusion-disable-outline .ilightbox-holder .ilightbox-container .ilightbox-social,.fusion-disable-outline .ilightbox-holder .ilightbox-container .ilightbox-social *,.fusion-disable-outline .ilightbox-holder .ilightbox-container img.ilightbox-image,.fusion-disable-outline .ilightbox-loader,.fusion-disable-outline .ilightbox-loader *,.fusion-disable-outline .ilightbox-overlay,.fusion-disable-outline .ilightbox-thumbnails,.fusion-disable-outline .ilightbox-thumbnails *,.fusion-disable-outline .ilightbox-toolbar,.fusion-disable-outline .ilightbox-toolbar *{outline:0}.ilightbox-holder .ilightbox-container .ilightbox-caption,.ilightbox-holder .ilightbox-container .ilightbox-social,.ilightbox-loader,.ilightbox-loader *,.ilightbox-overlay,.ilightbox-thumbnails,.ilightbox-thumbnails *,.ilightbox-toolbar{-webkit-transform:translateZ(0);-moz-transform:translateZ(0)}.ilightbox-noscroll{overflow:hidden}.ilightbox-closedhand *{cursor:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/closedhand.cur),default!important}.ilightbox-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;z-index:100000}.ilightbox-loader{position:fixed;z-index:100005;top:45%;left:-192px;padding-left:30px;opacity:.9;border-radius:0 100px 100px 0}.ilightbox-loader div{width:72px;height:72px;border-radius:0 100px 100px 0}.ilightbox-loader.horizontal{left:45%;top:-192px;padding:0;padding-top:30px;border-radius:0 0 100px 100px}.ilightbox-loader.horizontal div{border-radius:0 0 100px 100px}.ilightbox-toolbar{display:none;position:fixed;z-index:100010}.ilightbox-toolbar a{float:left;cursor:pointer}.ilightbox-toolbar .ilightbox-next-button,.ilightbox-toolbar .ilightbox-prev-button{display:none}.ilightbox-thumbnails{display:block;position:fixed;z-index:100009}.ilightbox-thumbnails.ilightbox-horizontal{bottom:0;left:0;width:100%;height:100px}.ilightbox-thumbnails.ilightbox-vertical{top:0;right:0;width:140px;height:100%;overflow:hidden}.ilightbox-thumbnails .ilightbox-thumbnails-container{display:block;position:relative}.ilightbox-thumbnails.ilightbox-horizontal .ilightbox-thumbnails-container{width:100%;height:100px}.ilightbox-thumbnails.ilightbox-vertical .ilightbox-thumbnails-container{width:140px;height:100%}.ilightbox-thumbnails .ilightbox-thumbnails-grid{display:block;position:absolute;-webkit-transform:translateZ(0);-moz-transform:translateZ(0)}.ilightbox-thumbnails .ilightbox-thumbnails-grid .ilightbox-thumbnail{display:block;cursor:pointer;padding:0;margin:5px;position:relative}.ilightbox-thumbnails .ilightbox-thumbnails-grid .ilightbox-thumbnail img{width:100%;height:100%;border-radius:2px}.ilightbox-thumbnails .ilightbox-thumbnails-grid .ilightbox-thumbnail .ilightbox-thumbnail-icon{width:100%;height:100%;position:absolute;top:0;left:0;opacity:.7}.ilightbox-thumbnails .ilightbox-thumbnails-grid .ilightbox-thumbnail .ilightbox-thumbnail-icon:hover{opacity:1}.ilightbox-holder{display:none;position:fixed;z-index:100003;-webkit-transform:none;-moz-transform:none}.ilightbox-holder.ilightbox-next,.ilightbox-holder.ilightbox-prev{cursor:pointer}.ilightbox-holder div.ilightbox-container{position:relative;width:100%;height:100%;overflow:hidden}.ilightbox-holder.supportTouch div.ilightbox-container{overflow:scroll;-webkit-overflow-scrolling:touch}.ilightbox-holder img.ilightbox-image{width:100%;height:100%;transition:transform .2s ease}.ilightbox-holder .ilightbox-container .ilightbox-caption{display:none;position:absolute;left:30px;right:30px;bottom:0;max-width:100%;padding:5px 10px;margin:0 auto;font-size:12px;line-height:150%;word-wrap:break-word;z-index:20003;box-sizing:border-box;border-radius:3px 3px 0 0}.ilightbox-holder .ilightbox-container .ilightbox-social{display:none;position:absolute;right:10px;top:10px;padding:5px;padding-left:0;z-index:20003;height:26px}.ilightbox-holder .ilightbox-container .ilightbox-social ul{float:left;list-style:none;height:26px}.ilightbox-holder .ilightbox-container .ilightbox-social ul li{display:inline}.ilightbox-holder .ilightbox-container .ilightbox-social ul li a{float:left;margin-left:5px;width:16px;height:16px;line-height:16px;font-size:14px;text-align:center;background-repeat:no-repeat;background-position:50%;color:#fff}.ilightbox-holder .ilightbox-container .ilightbox-social ul li a:before{color:inherit}.ilightbox-holder .ilightbox-alert{display:block;position:absolute;left:0;right:0;top:0;bottom:0;text-align:center;padding-top:100px;margin:auto;width:300px;height:50px}.ilightbox-holder .ilightbox-wrapper{width:100%;height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.ilightbox-holder .ilightbox-inner-toolbar{position:relative;z-index:100}.ilightbox-holder .ilightbox-inner-toolbar .ilightbox-toolbar{position:absolute}.ilightbox-button{position:fixed;z-index:100008;cursor:pointer}.ilightbox-button.ilightbox-next-button.disabled,.ilightbox-button.ilightbox-prev-button.disabled{visibility:hidden;opacity:0}.isMobile .ilightbox-button,.isMobile .ilightbox-thumbnails{display:none!important}.isMobile .ilightbox-toolbar .ilightbox-next-button,.isMobile .ilightbox-toolbar .ilightbox-prev-button{display:block}.ilightbox-title{line-height:20px}.ilightbox-overlay.metro-white{background:#fff}.ilightbox-loader.metro-white{box-shadow:rgba(0,0,0,.3) 0 0 55px}.ilightbox-loader.metro-white div{background:#fff url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/preloader.gif) no-repeat center}.ilightbox-holder.metro-white{padding:3px;background:#fff;box-shadow:0 0 45px rgba(0,0,0,.2)}.ilightbox-holder.metro-white .ilightbox-container .ilightbox-caption{background:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/caption-bg.png) repeat-x bottom;background-size:100% 100%;left:0;right:0;color:#000;text-shadow:0 1px 1px rgba(0,0,0,.3);padding-top:15px}.ilightbox-holder.metro-white .ilightbox-container .ilightbox-social{background:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/social-bg.png);border-radius:2px}.ilightbox-holder.metro-white .ilightbox-alert{background:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/alert.png) no-repeat center top;color:#89949b}.ilightbox-holder.metro-white .ilightbox-container .ilightbox-social ul li a{color:#333}.ilightbox-toolbar.metro-white{top:8px;left:8px;height:25px}.admin-bar:not(.isMobile) .ilightbox-toolbar.metro-white{top:40px}.ilightbox-toolbar.metro-white a{width:27px;height:25px;background:#fff url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/buttons.png) no-repeat 7px 6px}.ilightbox-toolbar.metro-white a:hover{background-color:#51b7ff}.ilightbox-toolbar.metro-white a.disabled{opacity:.2;cursor:default;background-color:#fff}.ilightbox-toolbar.metro-white a.ilightbox-close:hover{background-color:#d94947;background-position:-30px 6px}.ilightbox-toolbar.metro-white a.ilightbox-fullscreen{background-position:6px -31px}.ilightbox-toolbar.metro-white a.ilightbox-fullscreen:hover{background-position:-29px -31px}.ilightbox-toolbar.metro-white a.ilightbox-play{background-position:8px -55px}.ilightbox-toolbar.metro-white a.ilightbox-play:hover{background-position:-30px -55px}.ilightbox-toolbar.metro-white a.ilightbox-pause{background-position:8px -81px}.ilightbox-toolbar.metro-white a.ilightbox-pause:hover{background-position:-30px -81px}.isMobile .ilightbox-toolbar.metro-white{background:#fff;top:auto;bottom:0;left:0;width:100%;height:40px;text-align:center;box-shadow:0 0 25px rgba(0,0,0,.2)}.isMobile .ilightbox-toolbar.metro-white a,.isMobile .ilightbox-toolbar.metro-white a:hover{display:inline-block;float:none;width:50px;height:40px;background-size:50%;background-position:50%}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-fullscreen{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/fullscreen-icon-64.png)}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-fullscreen:hover{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/fullscreen-hover-icon-64.png)}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-close{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/x-mark-icon-64.png)}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-close:hover{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/x-mark-hover-icon-64.png)}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-next-button{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/arrow-next-icon-64.png);background-position:52% 50%}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-next-button:hover{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/arrow-next-hover-icon-64.png)}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-next-button.disabled{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/arrow-next-icon-64.png);background-position:52% 50%}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-prev-button{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/arrow-prev-icon-64.png);background-position:48% 50%}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-prev-button:hover{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/arrow-prev-hover-icon-64.png)}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-prev-button.disabled{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/arrow-prev-icon-64.png);background-position:48% 50%}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-play{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/play-icon-64.png)}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-play:hover{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/play-hover-icon-64.png)}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-pause{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/pause-icon-64.png)}.isMobile .ilightbox-toolbar.metro-white a.ilightbox-pause:hover{background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/pause-hover-icon-64.png)}.ilightbox-thumbnails.metro-white.ilightbox-horizontal{height:104px}.ilightbox-thumbnails.metro-white.ilightbox-horizontal .ilightbox-thumbnails-container{height:104px}.ilightbox-thumbnails.metro-white.ilightbox-vertical{width:144px}.ilightbox-thumbnails.metro-white.ilightbox-vertical .ilightbox-thumbnails-container{width:144px}.ilightbox-thumbnails.metro-white .ilightbox-thumbnails-grid .ilightbox-thumbnail img{border:2px solid #fff;box-shadow:0 0 10px rgba(0,0,0,.2);border-radius:0}.ilightbox-thumbnails.metro-white .ilightbox-thumbnails-grid .ilightbox-thumbnail .ilightbox-thumbnail-video{background:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/thumb-overlay-play.png) no-repeat center}.ilightbox-holder.metro-white .ilightbox-inner-toolbar .ilightbox-title{font-size:18px;padding:10px 12px;padding-right:60px;color:#535352}.ilightbox-holder.metro-white .ilightbox-inner-toolbar .ilightbox-toolbar{left:auto;top:5px;right:5px}.ilightbox-holder.metro-white .ilightbox-inner-toolbar .ilightbox-toolbar a{float:right}.ilightbox-button.metro-white.disabled{opacity:.1;cursor:default}.ilightbox-button.metro-white span{display:block;width:100%;height:100%}.ilightbox-button.ilightbox-next-button.metro-white,.ilightbox-button.ilightbox-prev-button.metro-white{bottom:0;right:0;left:0;width:30%;height:100px;margin:auto;background:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/arrows_vertical.png) no-repeat 50% -100px;background-color:#fff;background-color:rgba(255,255,255,.6)}.ilightbox-button.ilightbox-prev-button.metro-white{top:0;bottom:auto;background-position:50% 0}.ilightbox-button.ilightbox-next-button.metro-white.horizontal,.ilightbox-button.ilightbox-prev-button.metro-white.horizontal{right:0;left:auto;top:0;bottom:0;width:100px;height:30%;background-image:url(https://theater28.de/wp-content/plugins/fusion-builder/assets/images/iLightbox/metro-white-skin/arrows_horizontal.png);background-position:-93px 50%}.ilightbox-button.ilightbox-prev-button.metro-white.horizontal{right:auto;left:0;background-position:-7px 50%}.fusion-builder-row.fusion-row{max-width:var(--site_width);}.fusion-separator.sep-dashed,.fusion-separator.sep-dotted,.fusion-separator.sep-double,.fusion-separator.sep-single{border-color:var(--awb-color3);}.fusion-body .fusion-content-sep:not([class*="sep-"]){border-top-width:1px;border-bottom-width:1px;}@media only screen and (max-width: 800px){.wsk-counter-bar__list{grid-template-columns:1fr 1fr;}.wsk-counter-bar__stat{padding:16px 12px;}.wsk-gradient-cta{padding:60px 16px;}.wsk-gradient-cta__heading{font-size:clamp(1.8rem, 5vw, 3rem);}.wsk-particle-hero{min-height:60vh;}.wsk-particle-hero__content{padding:60px 16px 40px;}.wsk-typewriter-hero{min-height:80vh;}.wsk-typewriter-hero__content{padding:80px 20px 60px;}.wsk-morph-text-hero{min-height:80vh;}.wsk-morph-text-hero__content{padding:80px 20px 60px;}.wsk-parallax-hero{min-height:80vh;}.wsk-parallax-hero__content{padding:80px 20px 60px;}.wsk-gradient-hero{min-height:86vh;}.wsk-gradient-hero__content{padding:96px 20px 72px;}.wsk-spotlight-hero{min-height:85vh;}.wsk-spotlight-hero__content{padding:96px 20px 64px;}.wsk-logo-showcase--grid .wsk-logo-showcase__grid{grid-template-columns:repeat(2, 1fr);}.wsk-logo-showcase__item{padding:16px;}.wsk-post-grid__grid{grid-template-columns:1fr;}.wsk-sc__grid{grid-template-columns:1fr;}}