/* /case-studies/<slug> - hand-written layer over css/case-study-elementor.css
   and css/case-study/post-<id>.css (see inc/case-study/page.php). */

/* Poppins exactly as live's Elementor kit declares it: there is NO 600 face and
   weight 700 is the SemiBold file, so 600 and 700 both render SemiBold. */
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 100; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-Thin.woff2) format('woff2'), url(../assets/fonts/Poppins/Poppins-Thin.ttf) format('truetype'); unicode-range: U+018F, U+0192, U+01FC-01FD, U+0218-021B, U+0259, U+02C7, U+02C9, U+02D8-02D9, U+02DB, U+02DD, U+03C0, U+0901-0903, U+0905-090D, U+090F-0911, U+0913-0928, U+092A-0933, U+0935-0939, U+093C-0945, U+0947-0949, U+094B-094D, U+0950, U+0958-095E, U+0960-0970, U+0972, U+1E80-1E85, U+1EBC-1EBD, U+1EF2-1EF3, U+1EF8-1EF9, U+20A8, U+20BA, U+20BD, U+2113, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+25CC, U+FB01-FB02; }@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 100; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-Thin-latin.woff2) format('woff2'); unicode-range: U+0020-007E, U+00A0-0107, U+010A-011B, U+011E-0123, U+0128-0131, U+0136-0137, U+0139-0148, U+014C-015B, U+015E-0165, U+0168-017E, U+02BC, U+02C6, U+02DA, U+02DC, U+200C-200D, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+20B9, U+2122, U+2212, U+2215; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 200; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-ExtraLight.woff2) format('woff2'), url(../assets/fonts/Poppins/Poppins-ExtraLight.ttf) format('truetype'); unicode-range: U+018F, U+0192, U+01FC-01FD, U+0218-021B, U+0259, U+02C7, U+02C9, U+02D8-02D9, U+02DB, U+02DD, U+03C0, U+0901-0903, U+0905-090D, U+090F-0911, U+0913-0928, U+092A-0933, U+0935-0939, U+093C-0945, U+0947-0949, U+094B-094D, U+0950, U+0958-095E, U+0960-0970, U+0972, U+1E80-1E85, U+1EBC-1EBD, U+1EF2-1EF3, U+1EF8-1EF9, U+20A8, U+20BA, U+20BD, U+2113, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+25CC, U+FB01-FB02; }@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 200; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-ExtraLight-latin.woff2) format('woff2'); unicode-range: U+0020-007E, U+00A0-0107, U+010A-011B, U+011E-0123, U+0128-0131, U+0136-0137, U+0139-0148, U+014C-015B, U+015E-0165, U+0168-017E, U+02BC, U+02C6, U+02DA, U+02DC, U+200C-200D, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+20B9, U+2122, U+2212, U+2215; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 300; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-Light.woff2) format('woff2'), url(../assets/fonts/Poppins/Poppins-Light.ttf) format('truetype'); unicode-range: U+018F, U+0192, U+01FC-01FD, U+0218-021B, U+0259, U+02C7, U+02C9, U+02D8-02D9, U+02DB, U+02DD, U+03C0, U+0901-0903, U+0905-090D, U+090F-0911, U+0913-0928, U+092A-0933, U+0935-0939, U+093C-0945, U+0947-0949, U+094B-094D, U+0950, U+0958-095E, U+0960-0970, U+0972, U+1E80-1E85, U+1EBC-1EBD, U+1EF2-1EF3, U+1EF8-1EF9, U+20A8, U+20BA, U+20BD, U+2113, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+25CC, U+FB01-FB02; }@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 300; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-Light-latin.woff2) format('woff2'); unicode-range: U+0020-007E, U+00A0-0107, U+010A-011B, U+011E-0123, U+0128-0131, U+0136-0137, U+0139-0148, U+014C-015B, U+015E-0165, U+0168-017E, U+02BC, U+02C6, U+02DA, U+02DC, U+200C-200D, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+20B9, U+2122, U+2212, U+2215; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 400; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-Regular.woff2) format('woff2'), url(../assets/fonts/Poppins/Poppins-Regular.ttf) format('truetype'); unicode-range: U+018F, U+0192, U+01FC-01FD, U+0218-021B, U+0259, U+02C7, U+02C9, U+02D8-02D9, U+02DB, U+02DD, U+03C0, U+0901-0903, U+0905-090D, U+090F-0911, U+0913-0928, U+092A-0933, U+0935-0939, U+093C-0945, U+0947-0949, U+094B-094D, U+0950, U+0958-095E, U+0960-0970, U+0972, U+1E80-1E85, U+1EBC-1EBD, U+1EF2-1EF3, U+1EF8-1EF9, U+20A8, U+20BA, U+20BD, U+2113, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+25CC, U+FB01-FB02; }@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 400; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-Regular-latin.woff2) format('woff2'); unicode-range: U+0020-007E, U+00A0-0107, U+010A-011B, U+011E-0123, U+0128-0131, U+0136-0137, U+0139-0148, U+014C-015B, U+015E-0165, U+0168-017E, U+02BC, U+02C6, U+02DA, U+02DC, U+200C-200D, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+20B9, U+2122, U+2212, U+2215; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 500; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-Medium.woff2) format('woff2'), url(../assets/fonts/Poppins/Poppins-Medium.ttf) format('truetype'); unicode-range: U+018F, U+0192, U+01FC-01FD, U+0218-021B, U+0259, U+02C7, U+02C9, U+02D8-02D9, U+02DB, U+02DD, U+03C0, U+0901-0903, U+0905-090D, U+090F-0911, U+0913-0928, U+092A-0933, U+0935-0939, U+093C-0945, U+0947-0949, U+094B-094D, U+0950, U+0958-095E, U+0960-0970, U+0972, U+1E80-1E85, U+1EBC-1EBD, U+1EF2-1EF3, U+1EF8-1EF9, U+20A8, U+20BA, U+20BD, U+2113, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+25CC, U+FB01-FB02; }@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 500; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-Medium-latin.woff2) format('woff2'); unicode-range: U+0020-007E, U+00A0-0107, U+010A-011B, U+011E-0123, U+0128-0131, U+0136-0137, U+0139-0148, U+014C-015B, U+015E-0165, U+0168-017E, U+02BC, U+02C6, U+02DA, U+02DC, U+200C-200D, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+20B9, U+2122, U+2212, U+2215; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-SemiBold.woff2) format('woff2'), url(../assets/fonts/Poppins/Poppins-SemiBold.ttf) format('truetype'); unicode-range: U+018F, U+0192, U+01FC-01FD, U+0218-021B, U+0259, U+02C7, U+02C9, U+02D8-02D9, U+02DB, U+02DD, U+03C0, U+0901-0903, U+0905-090D, U+090F-0911, U+0913-0928, U+092A-0933, U+0935-0939, U+093C-0945, U+0947-0949, U+094B-094D, U+0950, U+0958-095E, U+0960-0970, U+0972, U+1E80-1E85, U+1EBC-1EBD, U+1EF2-1EF3, U+1EF8-1EF9, U+20A8, U+20BA, U+20BD, U+2113, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+25CC, U+FB01-FB02; }@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 700; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-SemiBold-latin.woff2) format('woff2'); unicode-range: U+0020-007E, U+00A0-0107, U+010A-011B, U+011E-0123, U+0128-0131, U+0136-0137, U+0139-0148, U+014C-015B, U+015E-0165, U+0168-017E, U+02BC, U+02C6, U+02DA, U+02DC, U+200C-200D, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+20B9, U+2122, U+2212, U+2215; }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 900; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-ExtraBold.woff2) format('woff2'), url(../assets/fonts/Poppins/Poppins-ExtraBold.ttf) format('truetype'); unicode-range: U+018F, U+0192, U+01FC-01FD, U+0218-021B, U+0259, U+02C7, U+02C9, U+02D8-02D9, U+02DB, U+02DD, U+03C0, U+0901-0903, U+0905-090D, U+090F-0911, U+0913-0928, U+092A-0933, U+0935-0939, U+093C-0945, U+0947-0949, U+094B-094D, U+0950, U+0958-095E, U+0960-0970, U+0972, U+1E80-1E85, U+1EBC-1EBD, U+1EF2-1EF3, U+1EF8-1EF9, U+20A8, U+20BA, U+20BD, U+2113, U+2126, U+212E, U+2202, U+2206, U+220F, U+2211, U+2219-221A, U+221E, U+222B, U+2248, U+2260, U+2264-2265, U+25CA, U+25CC, U+FB01-FB02; }@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 900; font-display: swap; src: url(../assets/fonts/Poppins/woff2/Poppins-ExtraBold-latin.woff2) format('woff2'); unicode-range: U+0020-007E, U+00A0-0107, U+010A-011B, U+011E-0123, U+0128-0131, U+0136-0137, U+0139-0148, U+014C-015B, U+015E-0165, U+0168-017E, U+02BC, U+02C6, U+02DA, U+02DC, U+200C-200D, U+2013-2014, U+2018-201A, U+201C-201E, U+2020-2022, U+2026, U+2030, U+2039-203A, U+2044, U+20AC, U+20B9, U+2122, U+2212, U+2215; }

/* Theme (Astra) defaults come from the generated sheet; this wrapper only
   supplies what live's <body> carries. */
.zcs { overflow-x: clip; --zcs-rem: 16px; padding-top: 100px; }   /* clears the fixed 100px site header, as .zmit does (live's header is in-flow, same 100px) */
@media (max-width: 921px) { .zcs { --zcs-rem: 14.592px; } }   /* Astra: html{font-size:91.2%} */
/* site sheets style bare elements that live leaves alone
   (home-page.css: mobile p{font-size:15px;line-height:23px}) */
:where(.zcs) p, :where(.zcs) li { line-height: inherit; }
/* bootstrap reboot: `ul ul, ol ul, ... { margin-bottom: 0 }` outranks Astra's
   `ul { margin: 0 0 1.5em 3em }`; only a DIRECT li > ul drops it on live */
.zcs ol ol, .zcs ol ul, .zcs ul ol, .zcs ul ul { margin-bottom: 1.5em; }
.zcs li > ol, .zcs li > ul { margin-bottom: 0; }
/* live's WordPress "Additional CSS" (wp-custom-css), the rules that reach post content */
.zcs .e-con { max-width: 100%; }
.zcs a:has(> picture:first-child) { width: 100% !important; }
.zcs .elementor-button-icon svg { width: auto !important; }

/* Elementor Pro sticky (JS on live, offset 0) -> CSS sticky. Two differences
   forced by our chrome: the site header is fixed, so the bar sticks just under
   it (--zcs-top, set by inc/case-study/page.php), and the site sheets give body
   overflow-x:hidden, which turns body into a scroll container that sticky can
   never stick in - clip hides the same overflow without that side effect. */
body { overflow-x: clip; }
.zcs .zcs-sticky { position: sticky; top: var(--zcs-top, 0px); z-index: 99; }
/* tab links jump to these sections: land them BELOW the fixed header + sticky
   bar (live lands them under its 66px bar, hiding the heading - not copied) */
.zcs [id] { scroll-margin-top: calc(var(--zcs-top, 100px) + var(--zcs-bar, 0px)); }

/* footer wrapper (inc/case-study/page.php): .zmit brings the footer's scoped
   styles; its 100px header offset belongs to the content, not the footer */
.zmit.zcs-foot { padding-top: 0; }
