ghost 5.66.1 → 5.67.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/tryghost-adapter-cache-memory-ttl-5.67.0.tgz +0 -0
- package/components/{tryghost-adapter-cache-redis-5.66.1.tgz → tryghost-adapter-cache-redis-5.67.0.tgz} +0 -0
- package/components/tryghost-adapter-manager-5.67.0.tgz +0 -0
- package/components/tryghost-announcement-bar-settings-5.67.0.tgz +0 -0
- package/components/tryghost-api-framework-5.67.0.tgz +0 -0
- package/components/tryghost-api-version-compatibility-service-5.67.0.tgz +0 -0
- package/components/tryghost-audience-feedback-5.67.0.tgz +0 -0
- package/components/tryghost-bookshelf-repository-5.67.0.tgz +0 -0
- package/components/{tryghost-bootstrap-socket-5.66.1.tgz → tryghost-bootstrap-socket-5.67.0.tgz} +0 -0
- package/components/tryghost-collections-5.67.0.tgz +0 -0
- package/components/tryghost-constants-5.67.0.tgz +0 -0
- package/components/{tryghost-custom-theme-settings-service-5.66.1.tgz → tryghost-custom-theme-settings-service-5.67.0.tgz} +0 -0
- package/components/{tryghost-data-generator-5.66.1.tgz → tryghost-data-generator-5.67.0.tgz} +0 -0
- package/components/tryghost-domain-events-5.67.0.tgz +0 -0
- package/components/tryghost-donations-5.67.0.tgz +0 -0
- package/components/tryghost-dynamic-routing-events-5.67.0.tgz +0 -0
- package/components/tryghost-email-analytics-provider-mailgun-5.67.0.tgz +0 -0
- package/components/{tryghost-email-analytics-service-5.66.1.tgz → tryghost-email-analytics-service-5.67.0.tgz} +0 -0
- package/components/tryghost-email-content-generator-5.67.0.tgz +0 -0
- package/components/tryghost-email-events-5.67.0.tgz +0 -0
- package/components/{tryghost-email-service-5.66.1.tgz → tryghost-email-service-5.67.0.tgz} +0 -0
- package/components/tryghost-email-suppression-list-5.67.0.tgz +0 -0
- package/components/tryghost-event-aware-cache-wrapper-5.67.0.tgz +0 -0
- package/components/tryghost-express-dynamic-redirects-5.67.0.tgz +0 -0
- package/components/tryghost-external-media-inliner-5.67.0.tgz +0 -0
- package/components/tryghost-extract-api-key-5.67.0.tgz +0 -0
- package/components/{tryghost-html-to-plaintext-5.66.1.tgz → tryghost-html-to-plaintext-5.67.0.tgz} +0 -0
- package/components/tryghost-i18n-5.67.0.tgz +0 -0
- package/components/tryghost-importer-handler-content-files-5.67.0.tgz +0 -0
- package/components/tryghost-importer-revue-5.67.0.tgz +0 -0
- package/components/{tryghost-in-memory-repository-5.66.1.tgz → tryghost-in-memory-repository-5.67.0.tgz} +0 -0
- package/components/{tryghost-job-manager-5.66.1.tgz → tryghost-job-manager-5.67.0.tgz} +0 -0
- package/components/{tryghost-link-redirects-5.66.1.tgz → tryghost-link-redirects-5.67.0.tgz} +0 -0
- package/components/tryghost-link-replacer-5.67.0.tgz +0 -0
- package/components/{tryghost-link-tracking-5.66.1.tgz → tryghost-link-tracking-5.67.0.tgz} +0 -0
- package/components/tryghost-magic-link-5.67.0.tgz +0 -0
- package/components/{tryghost-mail-events-5.66.1.tgz → tryghost-mail-events-5.67.0.tgz} +0 -0
- package/components/{tryghost-mailgun-client-5.66.1.tgz → tryghost-mailgun-client-5.67.0.tgz} +0 -0
- package/components/{tryghost-member-attribution-5.66.1.tgz → tryghost-member-attribution-5.67.0.tgz} +0 -0
- package/components/tryghost-member-events-5.67.0.tgz +0 -0
- package/components/{tryghost-members-api-5.66.1.tgz → tryghost-members-api-5.67.0.tgz} +0 -0
- package/components/{tryghost-members-csv-5.66.1.tgz → tryghost-members-csv-5.67.0.tgz} +0 -0
- package/components/{tryghost-members-events-service-5.66.1.tgz → tryghost-members-events-service-5.67.0.tgz} +0 -0
- package/components/tryghost-members-importer-5.67.0.tgz +0 -0
- package/components/{tryghost-members-offers-5.66.1.tgz → tryghost-members-offers-5.67.0.tgz} +0 -0
- package/components/tryghost-members-payments-5.67.0.tgz +0 -0
- package/components/tryghost-members-ssr-5.67.0.tgz +0 -0
- package/components/{tryghost-members-stripe-service-5.66.1.tgz → tryghost-members-stripe-service-5.67.0.tgz} +0 -0
- package/components/tryghost-mentions-email-report-5.67.0.tgz +0 -0
- package/components/tryghost-milestones-5.67.0.tgz +0 -0
- package/components/tryghost-minifier-5.67.0.tgz +0 -0
- package/components/tryghost-model-to-domain-event-interceptor-5.67.0.tgz +0 -0
- package/components/tryghost-mw-api-version-mismatch-5.67.0.tgz +0 -0
- package/components/tryghost-mw-cache-control-5.67.0.tgz +0 -0
- package/components/{tryghost-mw-error-handler-5.66.1.tgz → tryghost-mw-error-handler-5.67.0.tgz} +0 -0
- package/components/tryghost-mw-session-from-token-5.67.0.tgz +0 -0
- package/components/tryghost-mw-update-user-last-seen-5.67.0.tgz +0 -0
- package/components/tryghost-mw-version-match-5.67.0.tgz +0 -0
- package/components/tryghost-mw-vhost-5.67.0.tgz +0 -0
- package/components/tryghost-nql-filter-expansions-5.67.0.tgz +0 -0
- package/components/tryghost-oembed-service-5.67.0.tgz +0 -0
- package/components/tryghost-package-json-5.67.0.tgz +0 -0
- package/components/{tryghost-post-events-5.66.1.tgz → tryghost-post-events-5.67.0.tgz} +0 -0
- package/components/tryghost-post-revisions-5.67.0.tgz +0 -0
- package/components/tryghost-posts-service-5.67.0.tgz +0 -0
- package/components/tryghost-recommendations-5.67.0.tgz +0 -0
- package/components/tryghost-referrers-5.67.0.tgz +0 -0
- package/components/{tryghost-security-5.66.1.tgz → tryghost-security-5.67.0.tgz} +0 -0
- package/components/tryghost-session-service-5.67.0.tgz +0 -0
- package/components/{tryghost-settings-path-manager-5.66.1.tgz → tryghost-settings-path-manager-5.67.0.tgz} +0 -0
- package/components/tryghost-slack-notifications-5.67.0.tgz +0 -0
- package/components/tryghost-staff-service-5.67.0.tgz +0 -0
- package/components/tryghost-stats-service-5.67.0.tgz +0 -0
- package/components/tryghost-tiers-5.67.0.tgz +0 -0
- package/components/{tryghost-update-check-service-5.66.1.tgz → tryghost-update-check-service-5.67.0.tgz} +0 -0
- package/components/tryghost-verification-trigger-5.67.0.tgz +0 -0
- package/components/tryghost-version-notifications-data-service-5.67.0.tgz +0 -0
- package/components/tryghost-webmentions-5.67.0.tgz +0 -0
- package/content/themes/casper/assets/css/screen.css +0 -4
- package/content/themes/source/LICENSE +22 -0
- package/content/themes/source/README.md +65 -0
- package/content/themes/source/assets/built/screen.css +2 -0
- package/content/themes/source/assets/built/screen.css.map +1 -0
- package/content/themes/source/assets/built/source.js +2 -0
- package/content/themes/source/assets/built/source.js.map +1 -0
- package/content/themes/source/assets/css/screen.css +3206 -0
- package/content/themes/source/assets/fonts/eb-garamond-italic.woff2 +0 -0
- package/content/themes/source/assets/fonts/eb-garamond-roman.woff2 +0 -0
- package/content/themes/source/assets/fonts/inter-roman.woff2 +0 -0
- package/content/themes/source/assets/fonts/jetbrains-mono-italic.woff2 +0 -0
- package/content/themes/source/assets/fonts/jetbrains-mono-roman.woff2 +0 -0
- package/content/themes/source/assets/images/default-skin.png +0 -0
- package/content/themes/source/assets/images/default-skin.svg +1 -0
- package/content/themes/source/assets/images/preloader.gif +0 -0
- package/content/themes/source/assets/js/casper.js +46 -0
- package/content/themes/source/assets/js/dropdown.js +86 -0
- package/content/themes/source/assets/js/lib/imagesloaded.pkgd.min.js +7 -0
- package/content/themes/source/assets/js/lib/photoswipe-ui-default.min.js +4 -0
- package/content/themes/source/assets/js/lib/photoswipe.min.js +4 -0
- package/content/themes/source/assets/js/lib/reframe.min.js +1 -0
- package/content/themes/source/assets/js/lightbox.js +103 -0
- package/content/themes/source/assets/js/pagination.js +95 -0
- package/content/themes/source/author.hbs +43 -0
- package/content/themes/source/default.hbs +65 -0
- package/content/themes/source/gulpfile.js +174 -0
- package/content/themes/source/home.hbs +12 -0
- package/content/themes/source/index.hbs +6 -0
- package/content/themes/source/package.json +202 -0
- package/content/themes/source/page.hbs +26 -0
- package/content/themes/source/partials/components/cta.hbs +25 -0
- package/content/themes/source/partials/components/featured.hbs +14 -0
- package/content/themes/source/partials/components/footer.hbs +35 -0
- package/content/themes/source/partials/components/header-content.hbs +81 -0
- package/content/themes/source/partials/components/header.hbs +19 -0
- package/content/themes/source/partials/components/navigation.hbs +53 -0
- package/content/themes/source/partials/components/post-list.hbs +114 -0
- package/content/themes/source/partials/email-subscription.hbs +8 -0
- package/content/themes/source/partials/feature-image.hbs +16 -0
- package/content/themes/source/partials/icons/arrow.hbs +1 -0
- package/content/themes/source/partials/icons/avatar.hbs +1 -0
- package/content/themes/source/partials/icons/burger.hbs +1 -0
- package/content/themes/source/partials/icons/checkmark.hbs +24 -0
- package/content/themes/source/partials/icons/close.hbs +1 -0
- package/content/themes/source/partials/icons/facebook.hbs +1 -0
- package/content/themes/source/partials/icons/fire.hbs +3 -0
- package/content/themes/source/partials/icons/loader.hbs +17 -0
- package/content/themes/source/partials/icons/lock.hbs +5 -0
- package/content/themes/source/partials/icons/rss.hbs +1 -0
- package/content/themes/source/partials/icons/search.hbs +1 -0
- package/content/themes/source/partials/icons/twitter.hbs +1 -0
- package/content/themes/source/partials/lightbox.hbs +41 -0
- package/content/themes/source/partials/post-card.hbs +37 -0
- package/content/themes/source/partials/search-toggle.hbs +3 -0
- package/content/themes/source/post.hbs +76 -0
- package/content/themes/source/tag.hbs +22 -0
- package/core/built/admin/assets/admin-x-settings/{CodeEditorView-b1c6a306.mjs → CodeEditorView-1643e910.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/admin-x-settings.js +2 -2
- package/core/built/admin/assets/admin-x-settings/{index-02567620.mjs → index-b4c2ef5b.mjs} +2248 -2187
- package/core/built/admin/assets/admin-x-settings/{limit-service-bf02ec54.mjs → limit-service-c343d244.mjs} +2 -2
- package/core/built/admin/assets/admin-x-settings/modals-8b0aeacd.mjs +23887 -0
- package/core/built/admin/assets/{chunk.143.6ae91642f45fce60949c.js → chunk.143.da2301d9edb6ad0b5496.js} +5 -5
- package/core/built/admin/assets/{chunk.178.4842a4a973bb574d843b.js → chunk.178.efec05ab07e1e216d657.js} +4 -4
- package/core/built/admin/assets/{chunk.555.ba02d5a0095b4c4a7700.js → chunk.940.b09a2c2049ed9c373dd0.js} +55 -62
- package/core/built/admin/assets/{ghost-b24dd6efffe76ca031de95be6e91b543.js → ghost-193c98abe66483968da753e54917e87a.js} +114 -107
- package/core/built/admin/assets/ghost-9e454659c8c0896ed10336b640d1b1eb.css +1 -0
- package/core/built/admin/assets/ghost-dark-1d24186396fe74946c926faa9faa247b.css +1 -0
- package/core/built/admin/assets/img/themes/Source-Magazine-176385eb99561485ce6385598f7599b0.png +0 -0
- package/core/built/admin/assets/img/themes/Source-Newsletter-bb1a8611a326edb78f9ecb8bc1838c81.png +0 -0
- package/core/built/admin/assets/img/themes/Source-f29c6d6abe774ea7d5940a7431069fce.png +0 -0
- package/core/built/admin/assets/{vendor-5aa07b661eeb443bf7dd2c1de3b3f387.js → vendor-71d23939faaa5d1478ead73d917111b9.js} +48 -40
- package/core/built/admin/index.html +6 -6
- package/core/server/api/endpoints/recommendations.js +2 -1
- package/core/server/data/migrations/versions/5.67/2023-10-03-00-32-32-rollback-source-theme.js +40 -0
- package/core/server/data/schema/default-settings/default-settings.json +1 -1
- package/core/server/services/auth/setup.js +3 -3
- package/core/server/services/recommendations/RecommendationServiceWrapper.js +5 -4
- package/core/server/services/themes/storage.js +7 -7
- package/package.json +154 -154
- package/yarn.lock +221 -255
- package/components/tryghost-adapter-cache-memory-ttl-5.66.1.tgz +0 -0
- package/components/tryghost-adapter-manager-5.66.1.tgz +0 -0
- package/components/tryghost-announcement-bar-settings-5.66.1.tgz +0 -0
- package/components/tryghost-api-framework-5.66.1.tgz +0 -0
- package/components/tryghost-api-version-compatibility-service-5.66.1.tgz +0 -0
- package/components/tryghost-audience-feedback-5.66.1.tgz +0 -0
- package/components/tryghost-bookshelf-repository-5.66.1.tgz +0 -0
- package/components/tryghost-collections-5.66.1.tgz +0 -0
- package/components/tryghost-constants-5.66.1.tgz +0 -0
- package/components/tryghost-domain-events-5.66.1.tgz +0 -0
- package/components/tryghost-donations-5.66.1.tgz +0 -0
- package/components/tryghost-dynamic-routing-events-5.66.1.tgz +0 -0
- package/components/tryghost-email-analytics-provider-mailgun-5.66.1.tgz +0 -0
- package/components/tryghost-email-content-generator-5.66.1.tgz +0 -0
- package/components/tryghost-email-events-5.66.1.tgz +0 -0
- package/components/tryghost-email-suppression-list-5.66.1.tgz +0 -0
- package/components/tryghost-event-aware-cache-wrapper-5.66.1.tgz +0 -0
- package/components/tryghost-express-dynamic-redirects-5.66.1.tgz +0 -0
- package/components/tryghost-external-media-inliner-5.66.1.tgz +0 -0
- package/components/tryghost-extract-api-key-5.66.1.tgz +0 -0
- package/components/tryghost-i18n-5.66.1.tgz +0 -0
- package/components/tryghost-importer-handler-content-files-5.66.1.tgz +0 -0
- package/components/tryghost-importer-revue-5.66.1.tgz +0 -0
- package/components/tryghost-link-replacer-5.66.1.tgz +0 -0
- package/components/tryghost-magic-link-5.66.1.tgz +0 -0
- package/components/tryghost-member-events-5.66.1.tgz +0 -0
- package/components/tryghost-members-importer-5.66.1.tgz +0 -0
- package/components/tryghost-members-payments-5.66.1.tgz +0 -0
- package/components/tryghost-members-ssr-5.66.1.tgz +0 -0
- package/components/tryghost-mentions-email-report-5.66.1.tgz +0 -0
- package/components/tryghost-milestones-5.66.1.tgz +0 -0
- package/components/tryghost-minifier-5.66.1.tgz +0 -0
- package/components/tryghost-model-to-domain-event-interceptor-5.66.1.tgz +0 -0
- package/components/tryghost-mw-api-version-mismatch-5.66.1.tgz +0 -0
- package/components/tryghost-mw-cache-control-5.66.1.tgz +0 -0
- package/components/tryghost-mw-session-from-token-5.66.1.tgz +0 -0
- package/components/tryghost-mw-update-user-last-seen-5.66.1.tgz +0 -0
- package/components/tryghost-mw-version-match-5.66.1.tgz +0 -0
- package/components/tryghost-mw-vhost-5.66.1.tgz +0 -0
- package/components/tryghost-nql-filter-expansions-5.66.1.tgz +0 -0
- package/components/tryghost-oembed-service-5.66.1.tgz +0 -0
- package/components/tryghost-package-json-5.66.1.tgz +0 -0
- package/components/tryghost-post-revisions-5.66.1.tgz +0 -0
- package/components/tryghost-posts-service-5.66.1.tgz +0 -0
- package/components/tryghost-recommendations-5.66.1.tgz +0 -0
- package/components/tryghost-referrers-5.66.1.tgz +0 -0
- package/components/tryghost-session-service-5.66.1.tgz +0 -0
- package/components/tryghost-slack-notifications-5.66.1.tgz +0 -0
- package/components/tryghost-staff-service-5.66.1.tgz +0 -0
- package/components/tryghost-stats-service-5.66.1.tgz +0 -0
- package/components/tryghost-tiers-5.66.1.tgz +0 -0
- package/components/tryghost-verification-trigger-5.66.1.tgz +0 -0
- package/components/tryghost-version-notifications-data-service-5.66.1.tgz +0 -0
- package/components/tryghost-webmentions-5.66.1.tgz +0 -0
- package/core/built/admin/assets/admin-x-settings/modals-d2fd552b.mjs +0 -11622
- package/core/built/admin/assets/ghost-dark-54c925ac8f527d36132c18af7bef116e.css +0 -1
- package/core/built/admin/assets/ghost-f1a535bfec933b08a7a45f607cc245b1.css +0 -1
- /package/core/built/admin/assets/{chunk.555.ba02d5a0095b4c4a7700.js.LICENSE.txt → chunk.940.b09a2c2049ed9c373dd0.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["screen.css"],"names":[],"mappings":"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","file":"screen.css","sourcesContent":["/* Table of contents\n/* ------------------------------------------------------------\n\nThis is a development CSS file which is built to a minified\nproduction stylesheet in assets/built/screen.css\n\n1. Variables\n2. Fonts\n3. Resets\n4. Globals\n5. Layout\n6. Navigation\n 6.1. Navigation styles\n 6.2. Navigation layouts\n 6.3. Dropdown menu\n 6.4. Mobile menu\n7. Card\n8. Header\n 8.1. Magazine layout\n 8.2. Highlight layout\n 8.3. Classic layout\n9. CTA\n10. Featured posts\n11. Container\n 11.1. With sidebar\n 11.2. Without sidebar\n12. Post list\n 12.1. List style\n 12.2. Grid style\n 12.3. No image list\n13. Sidebar\n14. Post/page\n 14.1. Article\n 14.2. Page template\n 14.3. Page without header\n15. Content\n16. Cards\n17. Comments\n18. Recent posts\n19. Archive\n20. Design settings\n21. Footer\n 21.1. Footer styles\n 21.2. Footer bar\n 21.3. Footer signup\n22. Lightbox\n\n*/\n\n/* 1. Variables\n/* ---------------------------------------------------------- */\n\n:root {\n --color-white: #fff;\n --color-lighter-gray: rgb(0 0 0 / 0.05);\n --color-light-gray: #e6e6e6;\n --color-mid-gray: #ccc;\n --color-dark-gray: #444;\n --color-darker-gray: #15171a;\n --color-black: #000;\n --color-primary-text: var(--color-darker-gray);\n --color-secondary-text: rgb(0 0 0 / 0.5);\n --color-border: rgb(0 0 0 / 0.08);\n --color-dark-border: rgb(0 0 0 / 0.5);\n --font-sans: Inter, -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\", sans-serif;\n --font-serif: \"EB Garamond\", Georgia, Times, serif;\n --font-serif-alt: Georgia, Times, serif;\n --font-mono: \"JetBrains Mono\", Menlo, Consolas, Monaco, \"Liberation Mono\", \"Lucida Console\", monospace;\n --container-width: 1320px;\n --container-gap: clamp(24px, 1.7032rem + 1.9355vw, 48px);\n --grid-gap: 42px;\n}\n\n:root.has-light-text,\n:is(.gh-navigation, .gh-footer).has-accent-color {\n --color-lighter-gray: rgb(255 255 255 / 0.1);\n --color-darker-gray: #fff;\n --color-secondary-text: rgb(255 255 255 / 0.64);\n --color-border: rgb(255 255 255 / 0.15);\n --color-dark-border: rgb(255 255 255 / 0.5);\n}\n\n/* 2. Fonts\n/* ---------------------------------------------------------- */\n\n@font-face {\n font-family: \"Inter\";\n font-style: normal;\n font-weight: 100 900;\n font-display: swap;\n src: url(/assets/fonts/inter-roman.woff2) format(\"woff2\");\n 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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n font-family: \"EB Garamond\";\n font-style: normal;\n font-weight: 400 800;\n font-display: swap;\n src: url(/assets/fonts/eb-garamond-roman.woff2) format(\"woff2\");\n 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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n font-family: \"EB Garamond\";\n font-style: italic;\n font-weight: 400 800;\n font-display: swap;\n src: url(/assets/fonts/eb-garamond-italic.woff2) format(\"woff2\");\n 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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n font-family: \"JetBrains Mono\";\n font-style: normal;\n font-weight: 100 800;\n font-display: swap;\n src: url(/assets/fonts/jetbrains-mono-roman.woff2) format(\"woff2\");\n 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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n@font-face {\n font-family: \"JetBrains Mono\";\n font-style: italic;\n font-weight: 100 800;\n font-display: swap;\n src: url(/assets/fonts/jetbrains-mono-italic.woff2) format(\"woff2\");\n 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+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n\n/* 3. Resets\n/* ---------------------------------------------------------- */\n\n*, *::before, *::after {\n box-sizing: border-box;\n}\n\n* {\n margin: 0;\n}\n\nhtml {\n font-size: 62.5%;\n}\n\nbody {\n line-height: 1.6;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\nimg, picture, video, canvas, svg {\n display: block;\n height: auto;\n max-width: 100%;\n}\n\niframe {\n display: block;\n}\n\ninput, button, textarea, select {\n font: inherit;\n}\n\np, h1, h2, h3, h4, h5, h6 {\n overflow-wrap: break-word;\n}\n\nh1, h2, h3, h4, h5, h6 {\n line-height: 1.2;\n}\n\n/* 4. Globals\n/* ---------------------------------------------------------- */\n\nbody {\n font-family: var(--font-sans);\n font-size: 1.6rem;\n background-color: var(--background-color);\n color: var(--color-primary-text);\n}\n\na {\n color: var(--color-darker-gray);\n text-decoration: none;\n}\n\na:hover {\n opacity: 0.8;\n}\n\n.gh-button {\n display: inline-flex;\n gap: 0.4em;\n align-items: center;\n justify-content: center;\n padding: 0.8em 1.4em;\n font-size: 1.5rem;\n font-weight: 600;\n letter-spacing: -0.004em;\n line-height: 1;\n color: var(--color-white);\n cursor: pointer;\n background-color: var(--ghost-accent-color);\n border: 0;\n border-radius: 100px;\n}\n\n.gh-button:hover {\n opacity: 0.95;\n}\n\n.gh-icon-button {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n padding: 0;\n color: var(--color-darker-gray);\n cursor: pointer;\n background-color: transparent;\n border: 0;\n outline: none;\n}\n\n.gh-icon-button:hover :is(svg, span) {\n opacity: 0.8;\n}\n\n.gh-icon-button svg {\n width: 20px;\n height: 20px;\n}\n\n.gh-form {\n display: flex;\n align-items: center;\n position: relative;\n overflow: hidden;\n max-width: 560px;\n width: 100%;\n height: 56px;\n font-size: 1.7rem;\n font-weight: 450;\n letter-spacing: -0.008em;\n border-radius: 40px;\n background-color: var(--color-lighter-gray);\n transition: background-color 0.2s ease;\n}\n\n.gh-form.success {\n pointer-events: none;\n}\n\n.gh-form.error {\n box-shadow: 0 0 0 1px red;\n}\n\n.gh-form:hover {\n background-color: rgb(0 0 0 / 0.065);\n}\n\n.has-light-text .gh-form:hover,\n.gh-footer.has-accent-color .gh-form:hover {\n background-color: rgb(255 255 255 / 0.15);\n}\n\n.gh-form-input {\n position: absolute;\n inset: 0;\n padding-inline: 26px;\n width: 100%;\n height: 100%;\n font-size: inherit;\n letter-spacing: inherit;\n line-height: 1.1;\n border: 0;\n background-color: transparent;\n outline: none;\n transition: 0.3s ease-in-out;\n}\n\n.gh-form-input::placeholder,\nbutton.gh-form-input {\n color: rgb(0 0 0 / 0.3);\n}\n\n:is(.has-serif-title, .has-mono-title) .gh-form-input {\n padding-inline: 20px;\n}\n\n.gh-form.gh-form.success .gh-form-input {\n opacity: 0.5;\n}\n\n.has-light-text .gh-form-input,\n.gh-footer.has-accent-color .gh-form-input {\n color: #fff;\n}\n\n.has-light-text .gh-form-input::placeholder,\n.has-light-text button.gh-form-input,\n.gh-footer.has-accent-color .gh-form-input::placeholder {\n color: rgb(255 255 255 / 0.55);\n}\n\n.gh-header.is-classic.has-image .gh-form-input {\n color: #15171a;\n}\n\n.gh-header.is-classic.has-image .gh-form-input::placeholder,\n.gh-header.is-classic.has-image button.gh-form-input,\n.gh-header.is-classic.has-image .gh-form > svg {\n color: rgb(0 0 0 / 0.5);\n}\n\nbutton.gh-form-input {\n padding-inline-start: 56px;\n text-align: left;\n color: var(--color-secondary-text);\n cursor: pointer;\n}\n\n:is(.has-serif-title,.has-mono-title) button.gh-form-input {\n padding-inline-start: 50px;\n}\n\n.gh-form .gh-button {\n position: absolute;\n right: 6px;\n padding-inline: 32px;\n height: 44px;\n font-size: inherit;\n}\n\n.gh-form > svg {\n position: relative;\n left: 22px;\n width: 20px;\n height: 20px;\n color: var(--color-secondary-text);\n}\n\n:is(.has-serif-title,.has-mono-title) .gh-form > svg {\n left: 16px;\n}\n\n.gh-form .gh-button svg {\n display: none;\n position: absolute;\n margin-top: 1px;\n}\n\n.gh-form:is(.loading, .success) .gh-button span {\n visibility: hidden;\n}\n\n.gh-form.loading .gh-button svg:first-of-type {\n display: block;\n}\n\n.gh-form.success .gh-button svg:last-of-type {\n display: block;\n}\n\n@media (max-width: 576px) {\n .gh-form {\n font-size: 1.6rem;\n }\n \n .gh-form .gh-button {\n padding-inline: 12px;\n }\n\n .gh-form .gh-button span span {\n display: none;\n }\n\n .gh-form .gh-button span svg {\n display: inline;\n position: static;\n margin-top: 2px;\n width: 20px;\n height: 20px;\n }\n}\n\n/* 5. Layout\n/* ---------------------------------------------------------- */\n\n.gh-viewport {\n position: relative;\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n}\n\n.gh-outer {\n padding: 0 max(4vmin, 20px);\n}\n\n.gh-outer .gh-outer {\n padding: 0;\n}\n\n.gh-inner {\n margin: 0 auto;\n max-width: var(--container-width);\n width: 100%;\n}\n\n.gh-main {\n flex-grow: 1;\n}\n\n.gh-canvas,\n.kg-width-full.kg-content-wide {\n --main: min(var(--content-width, 720px), 100% - var(--container-gap) * 2);\n --wide: minmax(0, calc((var(--container-width, 1200px) - var(--content-width, 720px)) / 2));\n --full: minmax(var(--container-gap), 1fr);\n\n display: grid;\n grid-template-columns:\n [full-start] var(--full)\n [wide-start] var(--wide)\n [main-start] var(--main) [main-end]\n var(--wide) [wide-end]\n var(--full) [full-end];\n}\n\n.gh-canvas > * {\n grid-column: main;\n}\n\n.kg-width-wide,\n.kg-content-wide > div {\n grid-column: wide;\n}\n\n.kg-width-full {\n grid-column: full;\n}\n\n/* 6. Navigation\n/* ---------------------------------------------------------- */\n\n.gh-navigation {\n height: 100px;\n font-size: 1.5rem;\n font-weight: 550;\n background-color: var(--background-color);\n color: var(--color-darker-gray);\n}\n\n.gh-navigation :is(.gh-navigation-logo, a:not(.gh-button), .gh-icon-button) {\n color: inherit;\n}\n\n.gh-navigation-inner {\n display: grid;\n grid-auto-flow: row dense;\n column-gap: 24px;\n align-items: center;\n height: 100%;\n}\n\n.gh-navigation-brand {\n line-height: 1;\n}\n\n.gh-navigation-logo {\n position: relative;\n font-size: calc(2.4rem * var(--factor, 1));\n font-weight: 725;\n letter-spacing: -0.015em;\n white-space: nowrap;\n}\n\n.gh-navigation-logo img {\n max-height: 40px;\n}\n\n.gh-navigation-menu {\n display: flex;\n gap: 24px;\n align-items: center;\n}\n\n.gh-navigation .nav {\n display: inline-flex;\n gap: 28px;\n align-items: center;\n padding: 0;\n margin: 0;\n white-space: nowrap;\n list-style: none;\n}\n\n.gh-navigation .gh-more-toggle {\n position: relative;\n margin: 0 -6px;\n font-size: inherit;\n text-transform: inherit;\n}\n\n.gh-navigation .gh-more-toggle svg {\n width: 24px;\n height: 24px;\n}\n\n.gh-navigation-actions {\n display: flex;\n gap: 24px;\n align-items: center;\n justify-content: flex-end;\n}\n\n.gh-navigation-members {\n display: flex;\n gap: 20px;\n align-items: center;\n white-space: nowrap;\n}\n\n.gh-navigation-members .gh-button {\n font-size: inherit;\n font-weight: 600;\n}\n\n.gh-search {\n margin-right: -2px;\n margin-left: -2px;\n}\n\n@media (max-width: 767px) {\n .gh-navigation-logo {\n white-space: normal;\n }\n\n .gh-navigation-members {\n flex-direction: column-reverse;\n gap: 16px;\n width: 100%;\n }\n\n .gh-navigation-actions .gh-search {\n display: none;\n }\n}\n\n@media (min-width: 768px) {\n .gh-navigation-brand .gh-search {\n display: none;\n }\n\n .gh-navigation:not(.is-dropdown-loaded) .gh-navigation-menu .nav > li {\n opacity: 0;\n }\n}\n\n/* 6.1. Navigation styles */\n\n.gh-navigation.has-accent-color {\n background-color: var(--ghost-accent-color);\n}\n\n.gh-navigation.has-accent-color .gh-button {\n background-color: #fff;\n color: #15171a;\n}\n\n/* 6.2. Navigation layouts */\n\n/*\n======================================================================\nLOGO Home About Collection Author Portal Login Subscribe\n======================================================================\n*/\n\n.gh-navigation.is-left-logo .gh-navigation-inner {\n grid-template-columns: auto 1fr auto;\n}\n\n@media (min-width: 768px) {\n .gh-navigation.is-left-logo .gh-navigation-logo:not(:has(img)) {\n top: -2px;\n }\n}\n\n@media (min-width: 992px) {\n .gh-navigation.is-left-logo .gh-navigation-menu {\n margin-right: 100px;\n margin-left: 16px;\n }\n}\n\n/*\n======================================================================\nHome About Collection LOGO Login Subscribe\n======================================================================\n*/\n\n.gh-navigation.is-middle-logo .gh-navigation-inner {\n grid-template-columns: 1fr auto 1fr;\n}\n\n.gh-navigation.is-middle-logo .gh-navigation-brand {\n grid-column-start: 2;\n}\n\n.gh-navigation.is-middle-logo .gh-navigation-actions {\n gap: 28px;\n}\n\n@media (min-width: 992px) {\n .gh-navigation.is-middle-logo .gh-navigation-menu {\n margin-right: 64px;\n }\n}\n\n/*\n======================================================================\nSearch LOGO Login Subscribe\n Home About Collection Author Portal\n======================================================================\n*/\n\n.gh-navigation.is-stacked {\n position: relative;\n height: auto;\n}\n\n.gh-navigation.is-stacked .gh-navigation-inner {\n grid-template-columns: 1fr auto 1fr;\n}\n\n.gh-navigation.is-stacked .gh-navigation-brand {\n display: flex;\n align-items: center;\n grid-row-start: 1;\n grid-column-start: 2;\n min-height: 80px;\n}\n\n@media (max-width: 767px) {\n .gh-navigation.is-stacked .gh-navigation-brand {\n min-height: unset;\n }\n}\n\n@media (min-width: 992px) {\n .gh-navigation.is-stacked .gh-navigation-inner {\n padding: 0;\n }\n\n .gh-navigation.is-stacked .gh-navigation-brand {\n display: flex;\n align-items: center;\n height: 80px;\n }\n\n .gh-navigation.is-stacked .gh-navigation-menu {\n grid-row-start: 2;\n grid-column: 1 / 4;\n justify-content: center;\n height: 60px;\n margin: 0 48px;\n }\n\n .gh-navigation.is-stacked .gh-navigation-menu::before,\n .gh-navigation.is-stacked .gh-navigation-menu::after {\n position: absolute;\n top: 80px;\n left: 0;\n width: 100%;\n height: 1px;\n content: \"\";\n background-color: var(--color-border);\n }\n\n .gh-navigation.is-stacked .gh-navigation-menu::after {\n top: 140px;\n }\n\n .gh-navigation.is-stacked .gh-navigation-actions {\n grid-row-start: 1;\n grid-column: 1 / 4;\n justify-content: space-between;\n }\n\n .gh-navigation.is-stacked .gh-navigation-actions .gh-search {\n display: flex;\n gap: 10px;\n width: auto;\n }\n}\n\n/* 6.3. Dropdown menu */\n\n.gh-dropdown {\n position: absolute;\n top: 100%;\n right: -16px;\n z-index: 90;\n width: 200px;\n padding: 12px 0;\n margin-top: 24px;\n text-align: left;\n visibility: hidden;\n background-color: #fff;\n border-radius: 5px;\n box-shadow: 0 0 0 1px rgb(0 0 0 / 0.04), 0 7px 20px -5px rgb(0 0 0 / 0.15);\n opacity: 0;\n transition: opacity 0.3s, transform 0.2s;\n transform: translate3d(0, 6px, 0);\n}\n\n.is-middle-logo .gh-dropdown {\n right: auto;\n left: -24px;\n}\n\n.is-dropdown-mega .gh-dropdown {\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-auto-flow: column;\n column-gap: 40px;\n width: auto;\n padding: 20px 32px;\n}\n\n.is-dropdown-open .gh-dropdown {\n visibility: visible;\n opacity: 1;\n transform: translateY(0);\n}\n\n.gh-dropdown li a {\n display: block;\n padding: 7px 20px;\n line-height: 1.5;\n white-space: normal;\n color: #15171a !important;\n}\n\n.is-dropdown-mega .gh-dropdown li a {\n padding: 8px 0;\n}\n\n/* 6.4. Mobile menu */\n\n.gh-burger {\n display: flex;\n justify-content: center;\n align-items: center;\n position: relative;\n display: none;\n margin-right: -7px;\n margin-left: 4px;\n}\n\n.gh-burger svg {\n width: 24px;\n height: 24px;\n}\n\n.gh-burger svg:last-child {\n display: none;\n}\n\n.is-open .gh-burger svg:first-child {\n display: none;\n}\n\n.is-open .gh-burger svg:last-child {\n display: block;\n}\n\n@media (max-width: 767px) {\n .gh-burger {\n display: flex;\n }\n\n #gh-navigation {\n height: 64px;\n }\n\n #gh-navigation .gh-navigation-inner {\n grid-template-rows: auto 1fr auto;\n grid-template-columns: 1fr;\n gap: 48px;\n }\n\n #gh-navigation .gh-navigation-brand {\n display: grid;\n grid-template-columns: 1fr auto auto;\n grid-column-start: 1;\n align-items: center;\n height: 64px;\n }\n\n #gh-navigation .gh-navigation-logo {\n font-size: 2.2rem;\n }\n\n #gh-navigation .gh-navigation-menu,\n #gh-navigation .gh-navigation-actions {\n position: fixed;\n justify-content: center;\n visibility: hidden;\n opacity: 0;\n }\n\n #gh-navigation .gh-navigation-menu {\n transition: none;\n transform: translateY(0);\n }\n\n #gh-navigation .nav {\n gap: 20px;\n align-items: center;\n line-height: 1.4;\n }\n\n #gh-navigation .nav a {\n font-size: 1.75rem;\n font-weight: 600;\n text-transform: none;\n }\n\n #gh-navigation .nav li {\n opacity: 0;\n transform: translateY(-4px);\n }\n\n #gh-navigation .gh-navigation-actions {\n text-align: center;\n }\n\n #gh-navigation :is(.gh-button, a[data-portal=\"signin\"]) {\n opacity: 0;\n transform: translateY(8px);\n }\n\n #gh-navigation .gh-button {\n width: 100%;\n font-size: 1.75rem;\n text-transform: none;\n }\n\n #gh-navigation a[data-portal=\"signin\"] {\n font-size: 1.75rem;\n }\n\n #gh-main {\n transition: opacity 0.4s;\n }\n\n .is-open#gh-navigation {\n position: fixed;\n inset: 0;\n z-index: 3999999;\n height: 100%;\n overflow-y: scroll;\n -webkit-overflow-scrolling: touch;\n }\n\n .is-open#gh-navigation .gh-navigation-menu,\n .is-open#gh-navigation .gh-navigation-actions {\n position: static;\n visibility: visible;\n opacity: 1;\n }\n\n .is-open#gh-navigation .nav {\n display: flex;\n flex-direction: column;\n }\n\n .is-open#gh-navigation .nav li {\n opacity: 1;\n transition: transform 0.2s, opacity 0.2s;\n transform: translateY(0);\n }\n\n .is-open#gh-navigation .gh-navigation-actions {\n position: sticky;\n right: 0;\n bottom: 0;\n left: 0;\n display: inline-flex;\n flex-direction: column;\n gap: 12px;\n align-items: center;\n padding: var(--container-gap) 0;\n }\n\n .is-open#gh-navigation :is(.gh-button, a[data-portal=\"signin\"]) {\n opacity: 1;\n transition: transform 0.4s, opacity 0.4s;\n transition-delay: 0.2s;\n transform: translateY(0);\n }\n\n .is-open#gh-navigation a[data-portal=\"signin\"] {\n transition-delay: 0.4s;\n }\n\n .is-open#gh-main {\n opacity: 0;\n }\n}\n\n/* 7. Card\n/* ---------------------------------------------------------- */\n\n.gh-card {\n position: relative;\n}\n\n.gh-card-link {\n display: flex;\n flex-direction: column;\n gap: 20px;\n}\n\n.gh-card-link:hover {\n opacity: 1;\n}\n\n.gh-card-image {\n position: relative;\n flex-shrink: 0;\n aspect-ratio: 16 / 9;\n}\n\n.gh-card-image img {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.gh-card-wrapper {\n flex-grow: 1;\n}\n\n.gh-card-tag {\n display: none;\n margin-bottom: 4px;\n font-size: 1.2rem;\n font-weight: 500;\n letter-spacing: 0.01em;\n text-transform: uppercase;\n}\n\n.gh-card-title {\n font-size: calc(1.9rem * var(--factor, 1));\n font-weight: 725;\n letter-spacing: -0.014em;\n line-height: 1.3;\n}\n\n.gh-card-link:hover .gh-card-title {\n opacity: 0.8;\n}\n\n.gh-card-excerpt {\n display: -webkit-box;\n overflow-y: hidden;\n margin-top: 8px;\n max-width: 720px;\n font-size: 1.45rem;\n line-height: 1.4;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n\n.gh-card-meta {\n display: flex;\n gap: 4px;\n flex-wrap: wrap;\n padding-bottom: 1px;\n font-size: 1.25rem;\n font-weight: 500;\n line-height: 1.05;\n letter-spacing: -0.004em;\n color: var(--color-secondary-text);\n}\n\n.gh-card-meta:not(:empty) {\n margin-top: 12px;\n}\n\n.gh-card-author + .gh-card-date::before {\n content: \"—\";\n margin-right: 4px;\n}\n\n/* 8. Header\n/* ---------------------------------------------------------- */\n\n.gh-header {\n position: relative;\n margin-top: 40px;\n}\n\n.gh-header-inner {\n position: relative;\n overflow: hidden;\n}\n\n/* 8.1. Magazine layout */\n\n.gh-header.is-magazine .gh-header-inner {\n display: grid;\n grid-template-columns: repeat(16, 1fr);\n gap: var(--grid-gap);\n}\n\n.gh-header.is-magazine .gh-header-inner > div {\n display: flex;\n flex-direction: column;\n gap: var(--grid-gap);\n grid-row: 1;\n}\n\n.gh-header.is-magazine .gh-header-left {\n grid-column: 1 / span 4;\n}\n\n.gh-header.is-magazine .gh-header-inner > .gh-card {\n position: relative;\n grid-column: 5 / span 8;\n}\n\n.gh-header.is-magazine .gh-header-right {\n grid-column: 13 / -1;\n}\n\n.gh-header.is-magazine .gh-header-inner > .gh-card .gh-card-link {\n gap: 28px;\n}\n\n.gh-header.is-magazine .gh-header-inner > .gh-card .gh-card-image {\n aspect-ratio: 1.618033;\n}\n\n.gh-header.is-magazine .gh-header-inner > .gh-card .gh-card-tag {\n display: block;\n margin-bottom: 12px;\n}\n\n.gh-header.is-magazine .gh-header-inner > .gh-card .gh-card-title {\n font-size: clamp(2.8rem, 1.36vw + 2.25rem, 4rem);\n font-weight: 700;\n line-height: 1.1;\n letter-spacing: -0.022em;\n}\n\n.gh-header.is-magazine .gh-header-inner > .gh-card .gh-card-excerpt {\n margin-top: clamp(12px, 0.45vw + 10.18px, 16px);\n font-size: 1.8rem;\n letter-spacing: -0.02em;\n max-width: 90%;\n}\n\n.gh-header.is-magazine .gh-header-inner > .gh-card .gh-card-meta:not(:empty) {\n margin-top: 14px;\n}\n\n.gh-header.is-magazine :is(.gh-header-left, .gh-header-right) .gh-card:last-child .gh-card-image {\n display: none;\n}\n\n.gh-header.is-magazine .gh-header-inner > div .gh-card-excerpt {\n display: none;\n}\n\n.gh-header.is-magazine .gh-header-inner > .gh-card::before,\n.gh-header.is-magazine .gh-header-inner > .gh-card::after {\n position: absolute;\n top: 0;\n left: calc(var(--grid-gap) / -2);\n content: \"\";\n width: 1px;\n height: 100%;\n background-color: var(--color-border);\n}\n\n.gh-header.is-magazine .gh-header-inner > .gh-card::after {\n right: calc(var(--grid-gap) / -2);\n left: auto;\n}\n\n.gh-header.is-magazine .gh-header-inner > div .gh-card + .gh-card::before {\n position: absolute;\n top: calc(var(--grid-gap) / -2);\n left: 0;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: var(--color-border);\n}\n\n@media (max-width: 1199px) {\n .gh-header.is-magazine .gh-header-inner {\n grid-template-columns: repeat(12, 1fr);\n }\n\n .gh-header.is-magazine .gh-header-inner > .gh-card {\n grid-column: 1 / span 8;\n }\n\n .gh-header.is-magazine .gh-header-left {\n grid-column: 9 / -1;\n }\n\n .gh-header.is-magazine .gh-header-inner > div.gh-header-right {\n grid-column: 1 / -1;\n grid-row: 2;\n flex-direction: row;\n }\n\n .gh-header.is-magazine .gh-header-right .gh-card {\n flex: 1;\n }\n\n .gh-header.is-magazine .gh-header-right .gh-card:last-child .gh-card-image {\n display: block;\n }\n\n .gh-header.is-magazine .gh-header-right {\n position: relative;\n }\n\n .gh-header.is-magazine .gh-header-right::before {\n position: absolute;\n top: calc(var(--grid-gap) / -2);\n left: 0;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: var(--color-border);\n }\n\n .gh-header.is-magazine .gh-header-right .gh-card::before {\n display: none;\n }\n\n .gh-header.is-magazine .gh-header-right .gh-card::after {\n position: absolute;\n top: 0;\n right: calc(var(--grid-gap) / -2);\n content: \"\";\n width: 1px;\n height: 100%;\n background-color: var(--color-border);\n }\n}\n\n@media (max-width: 991px) {\n .gh-header.is-magazine .gh-header-left .gh-card:nth-child(2) .gh-card-image {\n display: none;\n }\n}\n\n@media (max-width: 767px) {\n .gh-header.is-magazine .gh-header-inner {\n display: flex;\n flex-direction: column;\n gap: var(--grid-gap);\n }\n\n .gh-header.is-magazine .gh-header-inner > div.gh-header-right {\n flex-direction: column;\n }\n\n .gh-header.is-magazine .gh-card-image {\n display: block !important;\n }\n\n .gh-header.is-magazine .gh-card::before {\n display: block !important;\n position: absolute;\n top: calc(var(--grid-gap) / -2);\n left: 0;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: var(--color-border);\n }\n}\n\n/* 8.2. Highlight layout */\n\n.gh-header.is-highlight .gh-header-inner {\n display: grid;\n grid-template-columns: repeat(16, 1fr);\n gap: var(--grid-gap);\n}\n\n.gh-header.is-highlight .gh-header-left {\n position: relative;\n grid-column: span 8;\n}\n\n.gh-header.is-highlight .gh-header-left .gh-card {\n grid-column: span 8;\n grid-row: span 3;\n}\n\n.gh-header.is-highlight .gh-header-left .gh-card .gh-card-link {\n gap: 28px;\n}\n\n.gh-header.is-highlight .gh-header-left .gh-card .gh-card-image {\n aspect-ratio: 3 / 2;\n}\n\n.gh-header.is-highlight .gh-header-left .gh-card .gh-card-tag {\n display: block;\n margin-bottom: 12px;\n}\n\n.gh-header.is-highlight .gh-header-left .gh-card .gh-card-title {\n font-size: clamp(2.8rem, 1.36vw + 2.25rem, 4rem);\n font-weight: 700;\n line-height: 1.1;\n letter-spacing: -0.022em;\n}\n\n.gh-header.is-highlight .gh-header-left .gh-card .gh-card-excerpt {\n margin-top: clamp(12px, 0.45vw + 10.18px, 16px);\n font-size: 1.8rem;\n}\n\n.gh-header.is-highlight .gh-header-left .gh-card .gh-card-meta:not(:empty) {\n margin-top: 14px;\n}\n\n.gh-header.is-highlight .gh-header-middle {\n position: relative;\n display: flex;\n flex-direction: column;\n gap: var(--grid-gap);\n grid-column: 9 / span 4;\n}\n\n.gh-header.is-highlight .gh-header-middle .gh-card:last-child .gh-card-image {\n display: none;\n}\n\n.gh-header.is-highlight .gh-header-middle .gh-card .gh-card-excerpt {\n display: none;\n}\n\n.gh-header.is-highlight .gh-header-right {\n grid-column: 13 / -1;\n}\n\n.gh-header.is-highlight .gh-featured {\n margin-top: 0;\n padding: 0;\n}\n\n.gh-header.is-highlight .gh-featured-feed {\n display: flex;\n flex-direction: column;\n}\n\n.gh-header.is-highlight .gh-featured-feed .gh-card-title {\n font-size: clamp(1.4rem, 0.23vw + 1.31rem, 1.6rem);\n}\n\n.gh-header.is-highlight .gh-header-left::after,\n.gh-header.is-highlight .gh-header-middle::after {\n position: absolute;\n top: 0;\n right: calc(var(--grid-gap) / -2);\n content: \"\";\n width: 1px;\n height: 100%;\n background-color: var(--color-border);\n}\n\n.gh-header.is-highlight .gh-card::before {\n position: absolute;\n top: calc(var(--grid-gap) / -2);\n left: 0;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: var(--color-border);\n}\n\n.gh-header.is-highlight .gh-featured .gh-card:first-child::before {\n display: none;\n}\n\n@media (max-width: 1199px) {\n .gh-header.is-highlight .gh-header-inner {\n grid-template-columns: repeat(9, 1fr);\n }\n\n .gh-header.is-highlight .gh-header-left {\n grid-column: span 6;\n }\n\n .gh-header.is-highlight .gh-header-middle {\n grid-column: 7 / -1;\n }\n\n .gh-header.is-highlight .gh-header-right {\n grid-column: 1 / -1;\n }\n\n .gh-header.is-highlight .gh-featured-feed {\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n }\n\n .gh-header.is-highlight .gh-featured-feed .gh-card:before {\n width: calc(100% + var(--grid-gap));\n }\n\n .gh-header.is-highlight .gh-featured-feed .gh-card::after {\n position: absolute;\n top: 0;\n left: calc(var(--grid-gap) / -2);\n content: \"\";\n width: 1px;\n height: 100%;\n background-color: var(--color-border);\n }\n}\n\n@media (max-width: 991px) {\n .gh-header.is-highlight .gh-header-middle .gh-card:nth-child(2) .gh-card-image {\n display: none;\n }\n}\n\n@media (max-width: 767px) {\n .gh-header.is-highlight .gh-header-inner {\n display: flex;\n flex-direction: column;\n }\n\n .gh-header.is-highlight .gh-featured-feed {\n display: flex;\n /* gap: var(--grid-gap); */\n }\n\n .gh-header.is-highlight .gh-card-image {\n display: block !important;\n }\n\n .gh-header.is-highlight .gh-header-middle .gh-card .gh-card-excerpt {\n display: -webkit-box;\n }\n}\n\n/* 8.3. Classic layout */\n\n.gh-header.is-classic {\n display: flex;\n margin-top: 0;\n padding-block: 160px;\n}\n\n.gh-header.is-classic .gh-header-inner {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 48px;\n margin: auto;\n max-width: 1020px;\n text-align: center;\n}\n\n.gh-header.is-classic .gh-header-title {\n font-size: calc(clamp(3rem, 1.82vw + 2.27rem, 4.6rem) * var(--factor, 1));\n line-height: 1.1;\n letter-spacing: -0.028em;\n}\n\n.gh-header.is-classic.has-image {\n margin-top: 0;\n}\n\n.gh-header.is-classic.has-image::before {\n position: absolute;\n inset: 0;\n content: \"\";\n opacity: 0.3;\n background-color: var(--color-black);\n transition: opacity 1.5s ease;\n}\n\n.gh-header.is-classic.has-image .gh-header-inner {\n color: #fff;\n}\n\n.gh-header.is-classic.has-image .gh-header-image {\n position: absolute;\n inset: 0;\n z-index: -1;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.gh-header.is-classic.has-image .gh-form {\n background-color: #fff;\n}\n\n/* 9. CTA\n/* ---------------------------------------------------------- */\n\n.gh-cta {\n display: none;\n margin-top: max(4vw, 40px);\n}\n\n.gh-header:is(.is-highlight, .is-magazine) + .gh-cta {\n display: block;\n}\n\n.gh-cta-inner {\n position: relative;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 36px;\n padding: clamp(48px, 3.64vw + 33.45px, 80px) clamp(40px, 2.73vw + 29.09px, 64px);\n text-align: center;\n background-color: var(--color-lighter-gray);\n}\n\n.gh-cta-content {\n max-width: 640px;\n}\n\n.gh-cta-title {\n font-size: clamp(2.8rem,1.36vw + 2.25rem,4rem);\n font-weight: 700;\n line-height: 1.1;\n letter-spacing: -0.021em;\n}\n\n.gh-cta-description {\n margin-top: 12px;\n font-size: 1.8rem;\n line-height: 1.4;\n letter-spacing: -0.015em;\n}\n\n/* 10. Featured posts\n/* ---------------------------------------------------------- */\n\n.gh-featured {\n margin-top: 100px;\n}\n\n.gh-navigation + .gh-featured {\n margin-top: 64px;\n}\n\n.gh-header.is-classic:not(.has-image) + .gh-featured {\n margin-top: 0;\n}\n\n.gh-featured-inner {\n overflow: hidden;\n}\n\n.gh-featured-title {\n margin-bottom: 20px;\n padding-bottom: 12px;\n font-size: 1.2rem;\n font-weight: 550;\n letter-spacing: 0.025em;\n text-transform: uppercase;\n border-bottom: 1px solid var(--color-border);\n}\n\n.gh-featured-feed {\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: var(--grid-gap);\n}\n\n.gh-featured-feed .gh-card {\n container-type: inline-size;\n container-name: featured-card;\n}\n\n.gh-featured-feed .gh-card-link {\n display: flex;\n flex-direction: row-reverse;\n align-items: flex-start;\n}\n\n.gh-featured-feed .gh-card-image {\n width: 72px;\n aspect-ratio: 1;\n}\n\n@container featured-card (width < 240px) {\n .gh-featured-feed .gh-card-image {\n display: none;\n }\n}\n\n@container featured-card (240px <= width <= 270px) {\n .gh-featured-feed .gh-card-image {\n width: 64px;\n }\n}\n\n.gh-featured-feed .gh-card-wrapper {\n container-type: inline-size;\n container-name: featured-card-wrapper;\n}\n\n.gh-featured-feed .gh-card-title {\n font-size: 1.6rem;\n font-weight: 650;\n letter-spacing: -0.011em;\n}\n\n@container featured-card-wrapper (width < 170px) {\n .gh-featured-feed .gh-card-title {\n font-size: 1.6rem;\n }\n}\n\n.gh-featured-feed .gh-card-excerpt {\n display: none;\n}\n\n.gh-featured-feed .gh-card-meta:not(:empty) {\n margin-top: 10px;\n}\n\n.gh-featured-feed .gh-card::before {\n position: absolute;\n top: 0;\n left: calc(var(--grid-gap) / -2);\n content: \"\";\n width: 1px;\n height: 100%;\n background-color: var(--color-border);\n}\n\n@media (max-width: 1199px) {\n .gh-viewport > .gh-featured .gh-featured-feed {\n grid-template-columns: repeat(3, 1fr);\n }\n\n .gh-viewport > .gh-featured .gh-featured-feed .gh-card:nth-child(4) {\n display: none;\n }\n}\n\n@media (max-width: 767px) {\n .gh-viewport > .gh-featured .gh-featured-feed {\n display: flex;\n flex-direction: column;\n }\n}\n\n/* 11. Container\n/* ---------------------------------------------------------- */\n\n.gh-container {\n flex-grow: 1;\n margin-top: 64px;\n}\n\n.gh-container-inner {\n display: grid;\n grid-template-columns: repeat(16, 1fr);\n column-gap: var(--grid-gap);\n}\n\n:is(.gh-featured, .gh-cta) + .gh-container {\n margin-top: max(4vw, 40px);\n}\n\n.gh-header.is-classic:not(.has-image) + .gh-container {\n margin-top: 0;\n}\n\n.gh-navigation + .gh-container .gh-container-title,\n:is(.paged, .tag-template, .author-template) .gh-container:not(.has-sidebar) .gh-container-title {\n display: none;\n}\n\n.gh-more {\n display: none;\n grid-column: 1 / -1;\n margin-top: 48px;\n font-size: calc(1.9rem * var(--factor, 1));\n font-weight: 725;\n letter-spacing: -0.014em;\n}\n\n.gh-container.has-sidebar .gh-more {\n grid-column: span 12;\n}\n\n.home-template .gh-more {\n display: block;\n}\n\n.gh-more a {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n\n.gh-more svg {\n margin-top: -1px;\n width: 18px;\n height: 18px;\n}\n\n.has-serif-title .gh-more svg {\n margin-top: 0;\n}\n\n/* 11.1. With sidebar */\n\n.gh-container.has-sidebar .gh-main {\n grid-column: 1 / span 12;\n position: relative;\n}\n\n.gh-container.has-sidebar .gh-sidebar {\n grid-column: 13 / -1;\n}\n\n.gh-container.has-sidebar .gh-main::after {\n position: absolute;\n top: 0;\n right: calc(var(--grid-gap) / -2);\n content: \"\";\n width: 1px;\n height: 100%;\n background-color: var(--color-border);\n}\n\n/* 11.2. Without sidebar */\n\n.gh-container:not(.has-sidebar) :is(.gh-container-title, .gh-main, .gh-more) {\n grid-column: 3 / span 12;\n}\n\n.gh-container.is-list.no-image:not(.has-sidebar) :is(.gh-container-title, .gh-main, .gh-more) {\n grid-column: 4 / span 10;\n}\n\n.gh-header:is(.is-highlight, .is-magazine) ~ .gh-container.is-grid:not(.has-sidebar) :is(.gh-container-title, .gh-main, .gh-more) {\n grid-column: 1 / -1;\n}\n\n@media (max-width: 1199px) {\n .gh-container-inner {\n display: block;\n overflow: hidden;\n }\n\n .gh-container.has-sidebar .gh-sidebar {\n display: none;\n }\n}\n\n/* 12. Post list\n/* ---------------------------------------------------------- */\n\n.gh-container-title {\n grid-column: 1 / -1;\n margin-bottom: calc(var(--grid-gap) / 2);\n padding-bottom: 12px;\n font-size: 1.2rem;\n font-weight: 550;\n letter-spacing: 0.025em;\n text-transform: uppercase;\n border-bottom: 1px solid var(--color-border);\n}\n\n.gh-container:not(:has(.gh-card)) .gh-container-title {\n display: none;\n}\n\n.gh-container .gh-feed {\n gap: var(--grid-gap);\n}\n\n.gh-container .gh-card-meta:not(:empty) {\n margin-top: 16px;\n}\n\n/* 12.1. List style */\n\n.gh-container.is-list .gh-feed {\n display: flex;\n flex-direction: column;\n container-type: inline-size;\n container-name: list-feed;\n}\n\n.gh-container.is-list .gh-card-link {\n flex-direction: row;\n align-items: center;\n gap: 24px;\n}\n\n.gh-container.is-list .no-image .gh-card-link {\n padding-block: 20px;\n}\n\n.gh-container.is-list .gh-card-image {\n flex-shrink: 0;\n width: 220px;\n aspect-ratio: 1.618033;\n}\n\n@container list-feed (width < 600px) {\n .gh-container.is-list .gh-card-image {\n width: 160px;\n }\n}\n\n.gh-container.is-list .gh-card:not(.no-image) .gh-card-wrapper {\n max-width: 600px;\n}\n\n.gh-container.is-list .gh-card-title {\n --factor: 1.05;\n}\n\n.gh-container.is-list .no-image .gh-card-title {\n --factor: 1.2;\n}\n\n.gh-container.is-list .gh-card-excerpt {\n margin-top: 6px;\n}\n\n.gh-container.is-list .gh-card + .gh-card::before {\n position: absolute;\n top: calc(var(--grid-gap) / -2);\n left: 0;\n content: \"\";\n width: 100%;\n height: 1px;\n background-color: var(--color-border);\n}\n\n.home-template .gh-container.is-list .gh-card:first-child:before {\n display: none;\n}\n\n@media (max-width: 767px) {\n .gh-container.is-list .gh-card-link {\n flex-direction: column;\n align-items: flex-start;\n }\n\n .gh-container.is-list .gh-card-image {\n width: 100%;\n }\n}\n\n/* 12.2. Grid style */\n\n.gh-container.is-grid .gh-feed {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(248px, 1fr));\n row-gap: calc(var(--grid-gap) * 1.5);\n overflow: hidden;\n}\n\n.gh-container.is-grid .gh-card::before {\n position: absolute;\n top: calc(var(--grid-gap) / -2);\n right: calc(var(--grid-gap) / -2);\n left: calc(var(--grid-gap) / -2);\n content: \"\";\n height: 1px;\n background-color: var(--color-border);\n}\n\n.gh-container.is-grid .gh-card::after {\n position: absolute;\n top: 0;\n left: calc(var(--grid-gap) / -2);\n content: \"\";\n width: 1px;\n height: 100%;\n background-color: var(--color-border);\n}\n\n@media (max-width: 767px) {\n .gh-container.is-grid .gh-feed {\n grid-template-columns: repeat(2, 1fr);\n }\n}\n\n@media (max-width: 576px) {\n .gh-container.is-grid .gh-feed {\n display: flex;\n flex-direction: column;\n }\n}\n\n/* 12.3. No image list */\n\n.gh-container.is-list.no-image .gh-card-image {\n display: none;\n}\n\n/* 13. Sidebar\n/* ---------------------------------------------------------- */\n\n.gh-about {\n position: sticky;\n top: calc(var(--grid-gap) / 2);\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n padding: 48px 24px;\n min-height: 400px;\n text-align: center;\n background-color: var(--color-lighter-gray);\n}\n\n.gh-about-icon {\n margin-bottom: 24px;\n width: 60px;\n height: 60px;\n border-radius: 50%;\n}\n\n.gh-about-title {\n font-size: calc(2.4rem * var(--factor, 1));\n font-weight: 700;\n letter-spacing: -0.019em;\n}\n\n.gh-about-description {\n margin-top: 12px;\n font-size: 1.45rem;\n line-height: 1.4;\n}\n\n.gh-about .gh-button {\n margin-top: 32px;\n}\n\n/* 14. Post/page\n/* ---------------------------------------------------------- */\n\n/* 14.1. Article */\n\n.gh-article {\n --container-width: 1120px;\n\n word-break: break-word;\n}\n\n.gh-article-header {\n margin: clamp(40px, 3.64vw + 25.45px, 72px) 0 40px;\n}\n\n.gh-article-tag {\n margin-bottom: 12px;\n font-size: 1.3rem;\n font-weight: 500;\n letter-spacing: 0.01em;\n text-transform: uppercase;\n color: var(--ghost-accent-color);\n}\n\n.gh-article-title {\n font-size: calc(clamp(3.4rem, 1.36vw + 2.85rem, 4.6rem) * var(--factor, 1));\n line-height: 1.1;\n letter-spacing: -0.022em;\n}\n\n.gh-article-excerpt {\n margin-top: clamp(12px, 0.45vw + 10.18px, 16px);\n max-width: 720px;\n font-size: clamp(1.5rem, 0.45vw + 1.32rem, 1.9rem);\n line-height: 1.4;\n letter-spacing: -0.018em;\n}\n\n.gh-article-meta {\n display: flex;\n align-items: center;\n gap: 8px;\n margin-top: 20px;\n margin-left: 6px;\n}\n\n.gh-article-author-image {\n display: flex;\n margin-right: 8px;\n}\n\n.gh-article-author-image a {\n position: relative;\n margin: 0 -8px;\n width: 56px;\n height: 56px;\n overflow: hidden;\n background-color: var(--color-light-gray);\n border-radius: 50%;\n border: 3px solid var(--background-color);\n}\n\n.gh-article-author-image a:first-child {\n z-index: 10;\n}\n\n.gh-article-author-image a:nth-child(2) {\n z-index: 9;\n}\n\n.gh-article-author-image a:nth-child(3) {\n z-index: 8;\n}\n\n.gh-article-author-image :is(img, svg) {\n position: absolute;\n inset: 0;\n object-fit: cover;\n}\n\n.gh-article-meta-wrapper {\n display: flex;\n flex-direction: column;\n gap: 4px;\n}\n\n.gh-article-author-name {\n font-size: 1.6rem;\n font-weight: 650;\n letter-spacing: -0.013em;\n}\n\n.gh-article-meta-content {\n font-size: 1.35rem;\n font-weight: 500;\n line-height: 1.2;\n letter-spacing: -0.006em;\n color: var(--color-secondary-text);\n}\n\n.gh-article-image {\n grid-column: wide;\n margin-top: 40px;\n}\n\n.gh-article-image img {\n width: 100%;\n}\n\n/* 14.2. Page template */\n\n.page-template .gh-article-header {\n margin-block: 72px 32px;\n}\n\n/* 14.3. Page without header */\n\n.page-template .gh-content:only-child > *:first-child:not(.kg-width-full) {\n margin-top: 64px;\n}\n\n.page-template .gh-content > *:last-child:not(.kg-width-full) {\n margin-bottom: 6vw;\n}\n\n.page-template .gh-footer {\n margin-top: 0;\n}\n\n/* 15. Content\n/* ---------------------------------------------------------- */\n\n/* Content refers to styling all page and post content that is\ncreated within the Ghost editor. The main content handles\nheadings, text, images and lists. We deal with cards lower down. */\n\n.gh-content {\n font-size: var(--content-font-size, 1.7rem);\n letter-spacing: -0.01em;\n}\n\n/* Default vertical spacing */\n.gh-content > * + * {\n margin-top: calc(28px * var(--content-spacing-factor, 1));\n margin-bottom: 0;\n}\n\n/* Remove space between full-width cards */\n.gh-content > .kg-width-full + .kg-width-full:not(.kg-width-full.kg-card-hascaption + .kg-width-full) {\n margin-top: 0;\n}\n\n/* Add back a top margin to all headings,\nunless a heading is the very first element in the post content */\n.gh-content > [id]:not(:first-child) {\n margin-top: calc(56px * var(--content-spacing-factor, 1));\n}\n\n/* Add a small margin between a heading and paragraph after it */\n.gh-content > [id] + p {\n margin-top: calc(12px * var(--content-spacing-factor, 1));\n}\n\n/* A larger margin before/after dividers, blockquotes and embeds */\n.gh-content > :is(hr, blockquote, iframe) {\n position: relative;\n margin-top: calc(48px * var(--content-spacing-factor, 1)) !important;\n}\n\n.gh-content > :is(hr, blockquote, iframe) + * {\n margin-top: calc(48px * var(--content-spacing-factor, 1)) !important;\n}\n\n/* Now the content typography styles */\n.gh-content h2 {\n font-size: calc(1.6em * var(--factor, 1));\n letter-spacing: -0.02em;\n}\n\n.gh-content h3 {\n font-size: calc(1.3em * var(--factor, 1));\n letter-spacing: -0.017em;\n}\n\n.gh-content a {\n color: var(--ghost-accent-color);\n text-decoration: underline;\n}\n\n.gh-content .kg-callout-card .kg-callout-text,\n.gh-content .kg-toggle-card .kg-toggle-content > :is(ul, ol, p) {\n font-size: 0.95em;\n}\n\n.has-serif-body .gh-content > blockquote,\n.has-serif-body .gh-content > ol,\n.has-serif-body .gh-content > ul,\n.has-serif-body .gh-content > dl,\n.has-serif-body .gh-content > p,\n.has-serif-body .gh-content .kg-callout-text,\n.has-serif-body .gh-content .kg-toggle-content > ol,\n.has-serif-body .gh-content .kg-toggle-content > ul,\n.has-serif-body .gh-content .kg-toggle-content > p {\n font-family: var(--font-serif-alt);\n}\n\n.gh-content :is(ul, ol) {\n padding-left: 28px;\n}\n\n.gh-content :is(li + li, li :is(ul, ol)) {\n margin-top: 8px;\n}\n\n.gh-content ol ol li {\n list-style-type: lower-alpha;\n}\n\n.gh-content ol ol ol li {\n list-style-type: lower-roman;\n}\n\n.gh-content hr {\n width: 100%;\n height: 1px;\n background-color: var(--color-border);\n border: 0;\n}\n\n.gh-content table:not(.gist table) {\n display: inline-block;\n width: auto;\n max-width: 100%;\n overflow-x: auto;\n font-family: var(--font-sans);\n font-size: 1.6rem;\n white-space: nowrap;\n vertical-align: top;\n border-spacing: 0;\n border-collapse: collapse;\n -webkit-overflow-scrolling: touch;\n background: radial-gradient(ellipse at left, rgb(0 0 0 / 0.2) 0%, rgb(0 0 0 / 0) 75%) 0 center, radial-gradient(ellipse at right, rgb(0 0 0 / 0.2) 0%, rgb(0 0 0 / 0) 75%) 100% center;\n background-repeat: no-repeat;\n background-attachment: scroll, scroll;\n background-size: 10px 100%, 10px 100%;\n}\n\n.gh-content table:not(.gist table) td:first-child {\n background-image: linear-gradient(to right, rgb(255 255 255 / 1) 50%, rgb(255 255 255 / 0) 100%);\n background-repeat: no-repeat;\n background-size: 20px 100%;\n}\n\n.gh-content table:not(.gist table) td:last-child {\n background-image: linear-gradient(to left, rgb(255 255 255 / 1) 50%, rgb(255 255 255 / 0) 100%);\n background-repeat: no-repeat;\n background-position: 100% 0;\n background-size: 20px 100%;\n}\n\n.gh-content table:not(.gist table) th {\n font-size: 1.2rem;\n font-weight: 700;\n color: var(--color-darkgrey);\n text-align: left;\n text-transform: uppercase;\n letter-spacing: 0.2px;\n background-color: var(--color-white);\n}\n\n.gh-content table:not(.gist table) th,\n.gh-content table:not(.gist table) td {\n padding: 6px 12px;\n border: 1px solid var(--color-light-gray);\n}\n\n/* 16. Cards\n/* ---------------------------------------------------------- */\n\n/* Add extra margin before/after any cards, except for when immediately preceeded by a heading */\n\n.gh-content :not(.kg-card):not(table):not([id]) + :is(.kg-card, table) {\n margin-top: calc(48px * var(--content-spacing-factor, 1));\n}\n\n.gh-content :is(.kg-card, table) + :not(.kg-card):not(table):not([id]) {\n margin-top: calc(48px * var(--content-spacing-factor, 1));\n}\n\n.gh-content :not(.kg-card):not([id]) + .kg-card.kg-width-full {\n margin-top: calc(68px * var(--content-spacing-factor, 1));\n}\n\n.gh-content .kg-card.kg-width-full + :not(.kg-card):not([id]) {\n margin-top: calc(68px * var(--content-spacing-factor, 1));\n}\n\n/* Image */\n\n.kg-image {\n margin-right: auto;\n margin-left: auto;\n}\n\n/* Embed */\n\n.kg-embed-card {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n}\n\n/* Gallery */\n\n.kg-image[width][height],\n.kg-gallery-image {\n cursor: pointer;\n}\n\n.kg-image-card a:hover,\n.kg-gallery-image a:hover {\n opacity: 1 !important;\n}\n\n/* Toggle */\n\n.kg-card.kg-toggle-card .kg-toggle-heading-text {\n font-size: 2rem;\n font-weight: 700;\n}\n\n.has-serif-title .kg-toggle-card .kg-toggle-heading-text {\n font-family: var(--font-serif);\n}\n\n.has-mono-title .kg-toggle-card .kg-toggle-heading-text {\n font-family: var(--font-mono);\n}\n\n/* Callout */\n\n.kg-callout-card.kg-card {\n border-radius: 0.25em;\n}\n\n.kg-callout-card-accent a {\n text-decoration: underline;\n}\n\n/* Blockquote */\n\nblockquote:not([class]) {\n padding-left: 2rem;\n border-left: 4px solid var(--ghost-accent-color);\n}\n\nblockquote.kg-blockquote-alt {\n font-style: normal;\n font-weight: 400;\n color: var(--color-secondary-text);\n}\n\n/* Button */\n\n.kg-card.kg-button-card .kg-btn {\n font-size: 1em;\n}\n\n/* Header */\n\n.has-serif-title .kg-card.kg-header-card h2.kg-header-card-header {\n font-family: var(--font-serif);\n}\n\n.has-mono-title .kg-card.kg-header-card h2.kg-header-card-header {\n font-family: var(--font-mono);\n}\n\n.has-serif-body .kg-header-card h3.kg-header-card-subheader {\n font-family: var(--font-serif);\n}\n\n/* Bookmark */\n\n.kg-bookmark-card .kg-bookmark-container {\n border-radius: 0.25em !important;\n}\n\n.kg-bookmark-card .kg-bookmark-container:hover {\n opacity: 1;\n}\n\n.kg-bookmark-card .kg-bookmark-content {\n padding: 1.15em;\n}\n\n.kg-bookmark-card .kg-bookmark-title {\n font-size: 0.9em;\n}\n\n.kg-bookmark-card .kg-bookmark-description {\n max-height: none;\n margin-top: 0.3em;\n font-size: 0.8em;\n}\n\n.kg-bookmark-card .kg-bookmark-metadata {\n font-size: 0.8em;\n}\n\n.kg-bookmark-card .kg-bookmark-thumbnail img {\n border-radius: 0 0.2em 0.2em 0;\n}\n\n/* Product */\n\n.kg-product-card.kg-card .kg-product-card-image {\n margin-bottom: 12px;\n}\n\n.kg-product-card.kg-card a.kg-product-card-button {\n height: 2.8em;\n margin-top: 12px;\n}\n\n.has-serif-title .kg-product-card.kg-card .kg-product-card-title {\n font-family: var(--font-serif);\n}\n\n.has-mono-title .kg-product-card.kg-card .kg-product-card-title {\n font-family: var(--font-mono);\n}\n\n.has-serif-body .kg-product-card-description :is(p, ul, ol) {\n font-family: var(--font-serif-alt);\n}\n\n/* File */\n\n.kg-file-card.kg-card .kg-file-card-container {\n padding: 0.6em;\n}\n\n.kg-file-card.kg-card .kg-file-card-contents {\n margin: 4px 8px 6px;\n}\n\n.kg-file-card.kg-card .kg-file-card-metadata {\n font-size: 0.9em;\n}\n\n.kg-file-card.kg-card .kg-file-card-filesize::before {\n margin-right: 6px;\n margin-left: 6px;\n}\n\n/* Caption */\n\nfigcaption {\n margin-top: 12px;\n font-size: 1.4rem;\n text-align: center;\n}\n\n.kg-card.kg-width-full figcaption {\n padding: 0 16px;\n}\n\nfigcaption a {\n color: var(--ghost-accent-color);\n text-decoration: underline;\n}\n\n/* 17. Comments\n/* ---------------------------------------------------------- */\n\n.gh-comments {\n margin-top: 48px;\n}\n\n/* 18. Recent posts\n/* ---------------------------------------------------------- */\n\n.post-template .gh-container {\n margin-top: 120px;\n}\n\n.post-template .gh-container-inner {\n display: block;\n}\n\n.post-template .gh-container.is-grid .gh-feed {\n grid-template-columns: repeat(4, 1fr);\n}\n\n.post-template .gh-container .gh-container-title {\n display: block;\n}\n\n/* 19. Archive\n/* ---------------------------------------------------------- */\n\n.gh-archive {\n display: grid;\n grid-template-columns: repeat(16, 1fr);\n gap: var(--grid-gap);\n margin-block: 80px 24px;\n}\n\n.gh-archive.has-image {\n margin-top: 48px;\n}\n\n.gh-archive-inner {\n display: grid;\n grid-template-columns: 1fr 1fr;\n gap: var(--grid-gap);\n grid-column: 1 / -1;\n padding-bottom: clamp(40px, 2.73vw + 29.09px, 64px);\n border-bottom: 1px solid var(--color-border);\n}\n\n.gh-archive.has-image .gh-archive-inner {\n align-items: center;\n grid-column: 1 / -1;\n}\n\n.gh-archive:not(.has-sidebar):not(.has-image) .gh-archive-inner {\n grid-column: 3 / span 12;\n}\n\n.gh-archive .gh-article-image {\n grid-column: auto;\n margin-top: 0;\n}\n\n:is(.tag-template, .author-template) .gh-container {\n margin-top: 0;\n}\n\n.author-template .gh-archive-inner {\n display: flex;\n flex-direction: row-reverse;\n justify-content: flex-end;\n gap: 24px;\n}\n\n.author-template .gh-article-image {\n margin-top: 0;\n width: 120px;\n height: 120px;\n border-radius: 50%;\n}\n\n.author-template .gh-article-title {\n font-size: 3.6rem;\n}\n\n.gh-author-meta {\n display: flex;\n gap: 10px;\n margin-top: 14px;\n font-size: 1.5rem;\n font-weight: 550;\n color: var(--color-secondary-text);\n}\n\n.gh-author-meta a {\n color: inherit;\n}\n\n.gh-author-social {\n display: flex;\n gap: 10px;\n align-items: center;\n padding-left: 3px;\n}\n\n.gh-author-social svg {\n width: 20px;\n height: 20px;\n}\n\n@media (max-width: 1199px) {\n .gh-archive {\n display: block;\n }\n}\n\n@media (max-width: 767px) {\n .gh-archive-inner {\n display: flex;\n flex-direction: column-reverse;\n align-items: flex-start;\n }\n\n .author-template .gh-archive-inner {\n flex-direction: column-reverse;\n }\n}\n\n/* 20. Design settings\n/* ---------------------------------------------------------- */\n\n.has-serif-title {\n --factor: 1.15;\n}\n\n.has-mono-title {\n --factor: 1.1;\n}\n\n.has-sans-title :is(.is-title, .gh-content :is(h2, h3)) {\n font-family: var(--font-sans);\n}\n\n.has-serif-title :is(.is-title, .gh-content :is(h2, h3)) {\n font-family: var(--font-serif);\n font-weight: 550;\n}\n\n.has-mono-title :is(.is-title, .gh-content :is(h2, h3)) {\n font-family: var(--font-mono);\n}\n\n.has-sans-body .is-body {\n font-family: var(--font-sans);\n}\n\n.has-serif-body .is-body {\n font-family: var(--font-serif-alt);\n}\n\n.has-serif-title .gh-header.is-classic .gh-header-title {\n font-weight: 550;\n letter-spacing: -0.015em;\n}\n\n.has-mono-title .gh-header.is-classic .gh-header-title {\n letter-spacing: -0.01em;\n}\n\n.has-serif-title .gh-form {\n border-radius: 0;\n}\n\n.has-serif-title .gh-card-title {\n line-height: 1.15;\n letter-spacing: -0.006em;\n font-size: calc(2.0rem*var(--factor, 1))\n}\n\n.has-serif-title .gh-featured-feed .gh-card-title {\n font-size: calc(1.6rem*var(--factor, 1))\n}\n\n.has-mono-title .gh-featured-feed .gh-card-title {\n font-size: calc(1.5rem*var(--factor, 1));\n letter-spacing: 0;\n}\n\n.has-serif-title .gh-header.is-highlight .gh-featured-feed .gh-card-title {\n font-size: clamp(1.6rem, 0.23vw + 1.51rem, 1.8rem);\n}\n\n.has-mono-title .gh-card-title {\n font-size: calc(1.8rem*var(--factor, 1));\n line-height: 1.2;\n}\n\n.has-serif-title .gh-about-title {\n letter-spacing: -0.009em;\n}\n\n.has-serif-title .gh-footer-signup-header {\n letter-spacing: -0.019em;\n}\n\n.has-serif-title .gh-article-title {\n letter-spacing: -0.019em;\n}\n\n.has-serif-body {\n --content-font-size: 1.9rem;\n}\n\n.has-serif-body .gh-card-excerpt {\n font-size: 1.65rem;\n line-height: 1.4;\n letter-spacing: 0.0005em;\n}\n\n.has-serif-body .gh-header.is-magazine .gh-header-inner > .gh-card .gh-card-excerpt,\n.has-serif-body .gh-header.is-highlight .gh-card:first-child .gh-card-excerpt {\n font-size: 1.8rem;\n letter-spacing: -0.001em;\n}\n\n.has-serif-title .gh-header.is-magazine .gh-header-inner>.gh-card .gh-card-title,\n.has-serif-title .gh-header.is-highlight .gh-header-left .gh-card-title {\n font-weight: 550;\n font-size: clamp(3.2rem,1.82vw + 2.47rem,4.9rem)\n}\n\n.has-serif-body .gh-about-description {\n font-size: 1.6rem;\n}\n\n.has-serif-body .gh-article-excerpt {\n letter-spacing: 0;\n}\n\n.has-serif-body .gh-footer-signup-subhead {\n letter-spacing: 0;\n}\n\n.has-serif-title :is(.gh-button, .gh-form) {\n border-radius: 0;\n}\n\n.has-mono-title :is(.gh-button) {\n border-radius: 0;\n}\n\n.has-mono-title :is(.gh-form) {\n border-radius: 0;\n}\n\n.has-serif-title .gh-cta-title {\n font-size: 4.8rem;\n}\n\n/* 21. Footer\n/* ---------------------------------------------------------- */\n\n.gh-footer {\n margin-top: 12vw;\n font-size: 1.5rem;\n color: var(--color-darker-gray);\n}\n\n.gh-footer a:not(.gh-button) {\n color: inherit;\n}\n\n/* 21.1 Footer styles */\n\n.gh-footer.has-accent-color {\n background-color: var(--ghost-accent-color);\n}\n\n.gh-footer.has-accent-color .gh-footer-bar {\n border-top: 0;\n}\n\n.gh-footer.has-accent-color .gh-button {\n background-color: #fff;\n color: #15171a;\n}\n\n/* 21.2. Footer bar */\n\n.gh-footer-bar {\n display: grid;\n grid-template-columns: 1fr auto 1fr;\n align-items: center;\n column-gap: 32px;\n margin-bottom: 100px;\n padding-block: 28px;\n font-weight: 550;\n border-block: 1px solid var(--color-border);\n}\n\n.gh-footer-logo {\n position: relative;\n font-size: calc(2.4rem * var(--factor, 1));\n font-weight: 725;\n letter-spacing: -0.015em;\n white-space: nowrap;\n}\n\n.gh-footer-logo img {\n max-height: 40px;\n}\n\n.gh-footer-menu .nav {\n display: flex;\n justify-content: center;\n gap: 8px 28px;\n flex-wrap: wrap;\n margin: 0;\n padding: 0;\n list-style-type: none;\n}\n\n.gh-footer-copyright {\n text-align: right;\n white-space: nowrap;\n}\n\n.gh-footer-copyright a {\n text-decoration: underline;\n}\n\n/* 21.3. Footer signup */\n\n.gh-footer-signup {\n display: flex;\n flex-direction: column;\n align-items: center;\n padding-bottom: 160px;\n text-align: center;\n}\n\n.gh-footer-signup-header {\n font-size: calc(clamp(2.8rem,1.36vw + 2.25rem,4rem) * var(--factor, 1));\n font-weight: 700;\n letter-spacing: -0.03em;\n}\n\n.gh-footer-signup-subhead {\n margin-top: 12px;\n max-width: 640px;\n font-size: 1.8rem;\n font-weight: 450;\n line-height: 1.4;\n letter-spacing: -0.014em;\n opacity: 0.75;\n}\n\n.gh-footer-signup .gh-form {\n margin-top: 40px;\n}\n\n@media (max-width: 991px) {\n .gh-footer-bar {\n display: flex;\n flex-direction: column;\n gap: 20px;\n }\n}\n\n/* 22. Lightbox\n/* ---------------------------------------------------------- */\n\n.pswp {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 3999999;\n display: none;\n width: 100%;\n height: 100%;\n overflow: hidden;\n -ms-touch-action: none;\n touch-action: none;\n outline: none;\n backface-visibility: hidden;\n -webkit-text-size-adjust: 100%;\n}\n\n.pswp img {\n max-width: none;\n}\n\n.pswp--animate_opacity {\n opacity: 0.001;\n transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);\n will-change: opacity;\n}\n\n.pswp--open {\n display: block;\n}\n\n.pswp--zoom-allowed .pswp__img {\n cursor: zoom-in;\n}\n\n.pswp--zoomed-in .pswp__img {\n cursor: grab;\n}\n\n.pswp--dragging .pswp__img {\n cursor: grabbing;\n}\n\n.pswp__bg {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: rgba(0, 0, 0, 0.85);\n opacity: 0;\n transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);\n transform: translateZ(0);\n backface-visibility: hidden;\n will-change: opacity;\n}\n\n.pswp__scroll-wrap {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n overflow: hidden;\n}\n\n.pswp__container,\n.pswp__zoom-wrap {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n touch-action: none;\n backface-visibility: hidden;\n}\n\n.pswp__container,\n.pswp__img {\n user-select: none;\n -webkit-tap-highlight-color: transparent;\n -webkit-touch-callout: none;\n}\n\n.pswp__zoom-wrap {\n position: absolute;\n width: 100%;\n transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);\n transform-origin: left top;\n}\n\n.pswp--animated-in .pswp__bg,\n.pswp--animated-in .pswp__zoom-wrap {\n transition: none;\n}\n\n.pswp__item {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n overflow: hidden;\n}\n\n.pswp__img {\n position: absolute;\n top: 0;\n left: 0;\n width: auto;\n height: auto;\n}\n\n.pswp__img--placeholder {\n backface-visibility: hidden;\n}\n\n.pswp__img--placeholder--blank {\n background: var(--color-black);\n}\n\n.pswp--ie .pswp__img {\n top: 0;\n left: 0;\n width: 100% !important;\n height: auto !important;\n}\n\n.pswp__error-msg {\n position: absolute;\n top: 50%;\n left: 0;\n width: 100%;\n margin-top: -8px;\n font-size: 14px;\n line-height: 16px;\n color: var(--color-secondary-text);\n text-align: center;\n}\n\n.pswp__error-msg a {\n color: var(--color-secondary-text);\n text-decoration: underline;\n}\n\n.pswp__button {\n position: relative;\n display: block;\n float: right;\n width: 44px;\n height: 44px;\n padding: 0;\n margin: 0;\n overflow: visible;\n appearance: none;\n cursor: pointer;\n background: none;\n border: 0;\n box-shadow: none;\n transition: opacity 0.2s;\n}\n\n.pswp__button:focus,\n.pswp__button:hover {\n opacity: 1;\n}\n\n.pswp__button:active {\n outline: none;\n opacity: 0.9;\n}\n\n.pswp__button::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\n\n.pswp__ui--over-close .pswp__button--close {\n opacity: 1;\n}\n\n.pswp__button,\n.pswp__button--arrow--left::before,\n.pswp__button--arrow--right::before {\n width: 44px;\n height: 44px;\n background: url(\"../images/default-skin.png\") 0 0 no-repeat;\n background-size: 264px 88px;\n}\n\n@media (-webkit-min-device-pixel-ratio: 1.1), (-webkit-min-device-pixel-ratio: 1.09375), (min-resolution: 105dpi), (min-resolution: 1.1dppx) {\n .pswp--svg .pswp__button,\n .pswp--svg .pswp__button--arrow--left::before,\n .pswp--svg .pswp__button--arrow--right::before {\n background-image: url(\"../images/default-skin.svg\");\n }\n\n .pswp--svg .pswp__button--arrow--left,\n .pswp--svg .pswp__button--arrow--right {\n background: none;\n }\n}\n\n.pswp__button--close {\n background-position: 0 -44px;\n}\n\n.pswp__button--share {\n background-position: -44px -44px;\n}\n\n.pswp__button--fs {\n display: none;\n}\n\n.pswp--supports-fs .pswp__button--fs {\n display: block;\n}\n\n.pswp--fs .pswp__button--fs {\n background-position: -44px 0;\n}\n\n.pswp__button--zoom {\n display: none;\n background-position: -88px 0;\n}\n\n.pswp--zoom-allowed .pswp__button--zoom {\n display: block;\n}\n\n.pswp--zoomed-in .pswp__button--zoom {\n background-position: -132px 0;\n}\n\n.pswp--touch .pswp__button--arrow--left,\n.pswp--touch .pswp__button--arrow--right {\n visibility: hidden;\n}\n\n.pswp__button--arrow--left,\n.pswp__button--arrow--right {\n position: absolute;\n top: 50%;\n width: 70px;\n height: 100px;\n margin-top: -50px;\n background: none;\n}\n\n.pswp__button--arrow--left {\n left: 0;\n}\n\n.pswp__button--arrow--right {\n right: 0;\n}\n\n.pswp__button--arrow--left::before,\n.pswp__button--arrow--right::before {\n position: absolute;\n top: 35px;\n width: 32px;\n height: 30px;\n content: \"\";\n}\n\n.pswp__button--arrow--left::before {\n left: 6px;\n background-position: -138px -44px;\n}\n\n.pswp__button--arrow--right::before {\n right: 6px;\n background-position: -94px -44px;\n}\n\n.pswp__counter {\n position: absolute;\n top: 0;\n left: 0;\n height: 44px;\n padding: 0 15px;\n font-size: 11px;\n font-weight: 700;\n line-height: 44px;\n color: var(--color-white);\n user-select: none;\n}\n\n.pswp__caption {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n min-height: 44px;\n}\n\n.pswp__caption__center {\n max-width: 420px;\n padding: 25px 15px 30px;\n margin: 0 auto;\n font-size: 11px;\n line-height: 1.6;\n color: var(--color-white);\n text-align: center;\n}\n\n.pswp__caption__center .post-caption-title {\n margin-bottom: 7px;\n font-size: 15px;\n font-weight: 500;\n text-transform: uppercase;\n}\n\n.pswp__caption__center .post-caption-meta-item + .post-caption-meta-item::before {\n padding: 0 4px;\n content: \"\\02022\";\n}\n\n.pswp__caption--empty {\n display: none;\n}\n\n.pswp__caption--fake {\n visibility: hidden;\n}\n\n.pswp__preloader {\n position: absolute;\n top: 0;\n left: 50%;\n width: 44px;\n height: 44px;\n margin-left: -22px;\n opacity: 0;\n transition: opacity 0.25s ease-out;\n direction: ltr;\n will-change: opacity;\n}\n\n.pswp__preloader__icn {\n width: 20px;\n height: 20px;\n margin: 12px;\n}\n\n.pswp__preloader--active {\n opacity: 1;\n}\n\n.pswp__preloader--active .pswp__preloader__icn {\n background: url(\"../images/preloader.gif\") 0 0 no-repeat;\n}\n\n.pswp--css_animation .pswp__preloader--active {\n opacity: 1;\n}\n\n.pswp--css_animation .pswp__preloader--active .pswp__preloader__icn {\n animation: clockwise 500ms linear infinite;\n}\n\n.pswp--css_animation .pswp__preloader--active .pswp__preloader__donut {\n animation: donut-rotate 1000ms cubic-bezier(0.4, 0, 0.22, 1) infinite;\n}\n\n.pswp--css_animation .pswp__preloader__icn {\n position: absolute;\n top: 15px;\n left: 15px;\n width: 14px;\n height: 14px;\n margin: 0;\n background: none;\n opacity: 0.75;\n}\n\n.pswp--css_animation .pswp__preloader__cut {\n position: relative;\n width: 7px;\n height: 14px;\n overflow: hidden;\n}\n\n.pswp--css_animation .pswp__preloader__donut {\n position: absolute;\n top: 0;\n left: 0;\n box-sizing: border-box;\n width: 14px;\n height: 14px;\n margin: 0;\n background: none;\n border: 2px solid var(--color-white);\n border-bottom-color: transparent;\n border-left-color: transparent;\n border-radius: 50%;\n}\n\n@media screen and (max-width: 1024px) {\n .pswp__preloader {\n position: relative;\n top: auto;\n left: auto;\n float: right;\n margin: 0;\n }\n}\n\n@keyframes clockwise {\n 0% {\n transform: rotate(0deg);\n }\n\n 100% {\n transform: rotate(360deg);\n }\n}\n\n@keyframes donut-rotate {\n 0% {\n transform: rotate(0);\n }\n\n 50% {\n transform: rotate(-140deg);\n }\n\n 100% {\n transform: rotate(0);\n }\n}\n\n.pswp__ui {\n z-index: 1550;\n visibility: visible;\n opacity: 1;\n -webkit-font-smoothing: auto;\n}\n\n.pswp__top-bar {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 44px;\n}\n\n.pswp__caption,\n.pswp__top-bar,\n.pswp--has_mouse .pswp__button--arrow--left,\n.pswp--has_mouse .pswp__button--arrow--right {\n backface-visibility: hidden;\n transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);\n will-change: opacity;\n}\n\n.pswp--has_mouse .pswp__button--arrow--left,\n.pswp--has_mouse .pswp__button--arrow--right {\n visibility: visible;\n}\n\n.pswp__ui--idle .pswp__top-bar {\n opacity: 0;\n}\n\n.pswp__ui--idle .pswp__button--arrow--left,\n.pswp__ui--idle .pswp__button--arrow--right {\n opacity: 0;\n}\n\n.pswp__ui--hidden .pswp__top-bar,\n.pswp__ui--hidden .pswp__caption,\n.pswp__ui--hidden .pswp__button--arrow--left,\n.pswp__ui--hidden .pswp__button--arrow--right {\n opacity: 0.001;\n}\n\n.pswp__ui--one-slide .pswp__button--arrow--left,\n.pswp__ui--one-slide .pswp__button--arrow--right,\n.pswp__ui--one-slide .pswp__counter {\n display: none;\n}\n\n.pswp__element--disabled {\n display: none !important;\n}\n\n.pswp--minimal--dark .pswp__top-bar {\n background: none;\n}\n"]}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
function dropdown(){const o=window.matchMedia("(max-width: 767px)"),i=document.querySelector(".gh-navigation"),r=i.querySelector(".gh-navigation-menu"),a=r?.querySelector(".nav");if(a){const e=document.querySelector(".gh-navigation-logo"),t=a.innerHTML;o.matches&&a.querySelectorAll("li").forEach(function(e,t){e.style.transitionDelay=.03*(t+1)+"s"});const n=function(){if(!o.matches){for(var e=[];a.offsetWidth+64>r.offsetWidth&&a.lastElementChild;)e.unshift(a.lastElementChild),a.lastElementChild.remove();if(e.length){const t=document.createElement("button"),n=(t.setAttribute("class","gh-more-toggle gh-icon-button"),t.setAttribute("aria-label","More"),t.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" fill="currentColor"><path d="M21.333 16c0-1.473 1.194-2.667 2.667-2.667v0c1.473 0 2.667 1.194 2.667 2.667v0c0 1.473-1.194 2.667-2.667 2.667v0c-1.473 0-2.667-1.194-2.667-2.667v0zM13.333 16c0-1.473 1.194-2.667 2.667-2.667v0c1.473 0 2.667 1.194 2.667 2.667v0c0 1.473-1.194 2.667-2.667 2.667v0c-1.473 0-2.667-1.194-2.667-2.667v0zM5.333 16c0-1.473 1.194-2.667 2.667-2.667v0c1.473 0 2.667 1.194 2.667 2.667v0c0 1.473-1.194 2.667-2.667 2.667v0c-1.473 0-2.667-1.194-2.667-2.667v0z"></path></svg>',document.createElement("div"));n.setAttribute("class","gh-dropdown"),10<=e.length?(i.classList.add("is-dropdown-mega"),n.style.gridTemplateRows=`repeat(${Math.ceil(e.length/2)}, 1fr)`):i.classList.remove("is-dropdown-mega"),e.forEach(function(e){n.appendChild(e)}),t.appendChild(n),a.appendChild(t),i.classList.add("is-dropdown-loaded"),window.addEventListener("click",function(e){i.classList.contains("is-dropdown-open")?i.classList.remove("is-dropdown-open"):t.contains(e.target)&&i.classList.add("is-dropdown-open")})}else i.classList.add("is-dropdown-loaded")}};imagesLoaded(e,function(){n()}),window.addEventListener("load",function(){e||n()}),window.addEventListener("resize",function(){setTimeout(()=>{a.innerHTML=t,n()},1)})}}function lightbox(e){document.querySelectorAll(e).forEach(function(e){e.addEventListener("click",function(e){var t=e;t.preventDefault();for(var n,o=[],i=0,r=t.target.closest(".kg-card").previousElementSibling;r&&(r.classList.contains("kg-image-card")||r.classList.contains("kg-gallery-card"));){var a=[];r.querySelectorAll("img").forEach(function(e){a.push({src:e.getAttribute("src"),msrc:e.getAttribute("src"),w:e.getAttribute("width"),h:e.getAttribute("height"),el:e}),i+=1}),r=r.previousElementSibling,o=a.concat(o)}t.target.classList.contains("kg-image")?o.push({src:t.target.getAttribute("src"),msrc:t.target.getAttribute("src"),w:t.target.getAttribute("width"),h:t.target.getAttribute("height"),el:t.target}):(n=!1,t.target.closest(".kg-gallery-card").querySelectorAll("img").forEach(function(e){o.push({src:e.getAttribute("src"),msrc:e.getAttribute("src"),w:e.getAttribute("width"),h:e.getAttribute("height"),el:e}),n||e===t.target?n=!0:i+=1}));for(var s=t.target.closest(".kg-card").nextElementSibling;s&&(s.classList.contains("kg-image-card")||s.classList.contains("kg-gallery-card"));)s.querySelectorAll("img").forEach(function(e){o.push({src:e.getAttribute("src"),msrc:e.getAttribute("src"),w:e.getAttribute("width"),h:e.getAttribute("height"),el:e})}),s=s.nextElementSibling;e=document.querySelectorAll(".pswp")[0];new PhotoSwipe(e,PhotoSwipeUI_Default,o,{bgOpacity:.9,closeOnScroll:!0,fullscreenEl:!1,history:!1,index:i,shareEl:!1,zoomEl:!1,getThumbBoundsFn:function(e){var e=o[e].el,t=window.pageYOffset||document.documentElement.scrollTop,e=e.getBoundingClientRect();return{x:e.left,y:e.top+t,w:e.width}}}).init()})})}function pagination(e=!0,s,l=!1){const c=document.querySelector(".gh-feed");if(!c)return;let t=!1;async function n(){var t=document.querySelector("link[rel=next]");if(t)try{var e=await(await fetch(t.href)).text(),n=(new DOMParser).parseFromString(e,"text/html"),o=n.querySelectorAll(".gh-feed:not(.gh-featured):not(.gh-related) > *");const r=document.createDocumentFragment(),a=[];o.forEach(function(e){e=document.importNode(e,!0);l&&(e.style.visibility="hidden"),r.appendChild(e),a.push(e)}),c.appendChild(r),s&&s(a,d);var i=n.querySelector("link[rel=next]");i&&i.href?t.href=i.href:(t.remove(),u&&u.remove())}catch(e){throw t.remove(),e}}const o=c.nextElementSibling||document.querySelector(".gh-footer"),u=document.querySelector(".gh-loadmore"),d=(!document.querySelector("link[rel=next]")&&u&&u.remove(),async function(){o.getBoundingClientRect().top<=window.innerHeight&&document.querySelector("link[rel=next]")&&await n()});const i=new IntersectionObserver(async function(e){if(!t){if(t=!0,e[0].isIntersecting)if(l)await n();else for(;o.getBoundingClientRect().top<=window.innerHeight&&document.querySelector("link[rel=next]");)await n();t=!1,document.querySelector("link[rel=next]")||i.disconnect()}});e?i.observe(o):u.addEventListener("click",n)}!function(e,t){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",t):"object"==typeof module&&module.exports?module.exports=t():e.EvEmitter=t()}("undefined"!=typeof window?window:this,function(){function e(){}var t=e.prototype;return t.on=function(e,t){var n;if(e&&t)return-1==(n=(n=this._events=this._events||{})[e]=n[e]||[]).indexOf(t)&&n.push(t),this},t.once=function(e,t){var n;if(e&&t)return this.on(e,t),((n=this._onceEvents=this._onceEvents||{})[e]=n[e]||{})[t]=!0,this},t.off=function(e,t){e=this._events&&this._events[e];if(e&&e.length)return-1!=(t=e.indexOf(t))&&e.splice(t,1),this},t.emitEvent=function(e,t){var n=this._events&&this._events[e];if(n&&n.length){n=n.slice(0),t=t||[];for(var o=this._onceEvents&&this._onceEvents[e],i=0;i<n.length;i++){var r=n[i];o&&o[r]&&(this.off(e,r),delete o[r]),r.apply(this,t)}return this}},t.allOff=function(){delete this._events,delete this._onceEvents},e}),function(t,n){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(e){return n(t,e)}):"object"==typeof module&&module.exports?module.exports=n(t,require("ev-emitter")):t.imagesLoaded=n(t,t.EvEmitter)}("undefined"!=typeof window?window:this,function(t,e){function r(e,t){for(var n in t)e[n]=t[n];return e}function a(e,t,n){var o,i;return this instanceof a?(o="string"==typeof(o=e)?document.querySelectorAll(e):o)?(this.elements=(i=o,Array.isArray(i)?i:"object"==typeof i&&"number"==typeof i.length?c.call(i):[i]),this.options=r({},this.options),"function"==typeof t?n=t:r(this.options,t),n&&this.on("always",n),this.getImages(),s&&(this.jqDeferred=new s.Deferred),void setTimeout(this.check.bind(this))):void l.error("Bad element for imagesLoaded "+(o||e)):new a(e,t,n)}function n(e){this.img=e}function o(e,t){this.url=e,this.element=t,this.img=new Image}var s=t.jQuery,l=t.console,c=Array.prototype.slice,u=((a.prototype=Object.create(e.prototype)).options={},a.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},a.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),!0===this.options.background&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&u[t]){for(var n=e.querySelectorAll("img"),o=0;o<n.length;o++){var i=n[o];this.addImage(i)}if("string"==typeof this.options.background)for(var r=e.querySelectorAll(this.options.background),o=0;o<r.length;o++){var a=r[o];this.addElementBackgroundImages(a)}}},{1:!0,9:!0,11:!0});return a.prototype.addElementBackgroundImages=function(e){var t=getComputedStyle(e);if(t)for(var n=/url\((['"])?(.*?)\1\)/gi,o=n.exec(t.backgroundImage);null!==o;){var i=o&&o[2];i&&this.addBackground(i,e),o=n.exec(t.backgroundImage)}},a.prototype.addImage=function(e){e=new n(e);this.images.push(e)},a.prototype.addBackground=function(e,t){e=new o(e,t);this.images.push(e)},a.prototype.check=function(){function t(e,t,n){setTimeout(function(){o.progress(e,t,n)})}var o=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(e){e.once("progress",t),e.check()}):void this.complete()},a.prototype.progress=function(e,t,n){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded,this.emitEvent("progress",[this,e,t]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,e),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&l&&l.log("progress: "+n,e,t)},a.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";this.isComplete=!0,this.emitEvent(e,[this]),this.emitEvent("always",[this]),this.jqDeferred&&(e=this.hasAnyBroken?"reject":"resolve",this.jqDeferred[e](this))},(n.prototype=Object.create(e.prototype)).check=function(){return this.getIsImageComplete()?void this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),void(this.proxyImage.src=this.img.src))},n.prototype.getIsImageComplete=function(){return this.img.complete&&this.img.naturalWidth},n.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.img,t])},n.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},n.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},n.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},n.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},(o.prototype=Object.create(n.prototype)).check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url,this.getIsImageComplete()&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},o.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},o.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.element,t])},(a.makeJQueryPlugin=function(e){(e=e||t.jQuery)&&((s=e).fn.imagesLoaded=function(e,t){return new a(this,e,t).jqDeferred.promise(s(this))})})(),a}),function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.PhotoSwipeUI_Default=t()}(this,function(){"use strict";return function(o,s){function e(e){if(S)return!0;e=e||window.event,T.timeToIdle&&T.mouseUsed&&!w&&l();for(var t,n,o=(e.target||e.srcElement).getAttribute("class")||"",i=0;i<R.length;i++)(t=R[i]).onTap&&-1<o.indexOf("pswp__"+t.name)&&(t.onTap(),n=!0);n&&(e.stopPropagation&&e.stopPropagation(),S=!0,e=s.features.isOldAndroid?600:30,setTimeout(function(){S=!1},e))}function n(){var e=1===T.getNumItemsFn();e!==C&&(O(m,"ui--one-slide",e),C=e)}function a(){O(v,"share-modal--hidden",M)}function i(){if((M=!M)?(s.removeClass(v,"pswp__share-modal--fade-in"),setTimeout(function(){M&&a()},300)):(a(),setTimeout(function(){M||s.addClass(v,"pswp__share-modal--fade-in")},30)),!M){for(var e,t,n,o,i="",r=0;r<T.shareButtons.length;r++)e=T.shareButtons[r],t=T.getImageURLForShare(e),n=T.getPageURLForShare(e),o=T.getTextForShare(e),i+='<a href="'+e.url.replace("{{url}}",encodeURIComponent(n)).replace("{{image_url}}",encodeURIComponent(t)).replace("{{raw_image_url}}",t).replace("{{text}}",encodeURIComponent(o))+'" target="_blank" class="pswp__share--'+e.id+'"'+(e.download?"download":"")+">"+e.label+"</a>",T.parseShareButtonOut&&(i=T.parseShareButtonOut(e,i));v.children[0].innerHTML=i,v.children[0].onclick=z}}function r(e){for(var t=0;t<T.closeElClasses.length;t++)if(s.hasClass(e,"pswp__"+T.closeElClasses[t]))return!0}function l(){clearTimeout(A),F=0,w&&D.setIdle(!1)}function c(e){(e=(e=e||window.event).relatedTarget||e.toElement)&&"HTML"!==e.nodeName||(clearTimeout(A),A=setTimeout(function(){D.setIdle(!0)},T.timeToIdleOutside))}function u(e){E!==e&&(O(b,"preloader--active",!e),E=e)}function d(e){var t,n=e.vGap;!o.likelyTouchDevice||T.mouseUsed||screen.width>T.fitControlsWidth?(t=T.barsSize,T.captionEl&&"auto"===t.bottom?(h||((h=s.createEl("pswp__caption pswp__caption--fake")).appendChild(s.createEl("pswp__caption__center")),m.insertBefore(h,f),s.addClass(m,"pswp__ui--fit")),T.addCaptionHTMLFn(e,h,!0)?(e=h.clientHeight,n.bottom=parseInt(e,10)||44):n.bottom=t.top):n.bottom="auto"===t.bottom?0:t.bottom,n.top=t.top):n.top=n.bottom=0}function P(){function e(e){if(e)for(var t=e.length,n=0;n<t;n++){i=e[n],r=i.className;for(var o=0;o<R.length;o++)a=R[o],-1<r.indexOf("pswp__"+a.name)&&(T[a.option]?(s.removeClass(i,"pswp__element--disabled"),a.onInit&&a.onInit(i)):s.addClass(i,"pswp__element--disabled"))}}e(m.children);var i,r,a,t=s.getChildByClass(m,"pswp__top-bar");t&&e(t.children)}var p,m,f,h,t,g,v,y,w,x,b,E,I,C,T,S,k,A,D=this,_=!1,L=!0,M=!0,Z={barsSize:{top:44,bottom:"auto"},closeElClasses:["item","caption","zoom-wrap","ui","top-bar"],timeToIdle:4e3,timeToIdleOutside:1e3,loadingIndicatorDelay:1e3,addCaptionHTMLFn:function(e,t){return e.title?(t.children[0].innerHTML=e.title,!0):(t.children[0].innerHTML="",!1)},closeEl:!0,captionEl:!0,fullscreenEl:!0,zoomEl:!0,shareEl:!0,counterEl:!0,arrowEl:!0,preloaderEl:!0,tapToClose:!1,tapToToggleControls:!0,clickToCloseNonZoomable:!0,shareButtons:[{id:"facebook",label:"Share on Facebook",url:"https://www.facebook.com/sharer/sharer.php?u={{url}}"},{id:"twitter",label:"Tweet",url:"https://twitter.com/intent/tweet?text={{text}}&url={{url}}"},{id:"pinterest",label:"Pin it",url:"http://www.pinterest.com/pin/create/button/?url={{url}}&media={{image_url}}&description={{text}}"},{id:"download",label:"Download image",url:"{{raw_image_url}}",download:!0}],getImageURLForShare:function(){return o.currItem.src||""},getPageURLForShare:function(){return window.location.href},getTextForShare:function(){return o.currItem.title||""},indexIndicatorSep:" / ",fitControlsWidth:1200},O=function(e,t,n){s[(n?"add":"remove")+"Class"](e,"pswp__"+t)},z=function(e){var t=(e=e||window.event).target||e.srcElement;return o.shout("shareLinkClick",e,t),!(!t.href||!t.hasAttribute("download")&&(window.open(t.href,"pswp_share","scrollbars=yes,resizable=yes,toolbar=no,location=yes,width=550,height=420,top=100,left="+(window.screen?Math.round(screen.width/2-275):100)),M||i(),1))},F=0,R=[{name:"caption",option:"captionEl",onInit:function(e){f=e}},{name:"share-modal",option:"shareEl",onInit:function(e){v=e},onTap:function(){i()}},{name:"button--share",option:"shareEl",onInit:function(e){g=e},onTap:function(){i()}},{name:"button--zoom",option:"zoomEl",onTap:o.toggleDesktopZoom},{name:"counter",option:"counterEl",onInit:function(e){t=e}},{name:"button--close",option:"closeEl",onTap:o.close},{name:"button--arrow--left",option:"arrowEl",onTap:o.prev},{name:"button--arrow--right",option:"arrowEl",onTap:o.next},{name:"button--fs",option:"fullscreenEl",onTap:function(){p.isFullscreen()?p.exit():p.enter()}},{name:"preloader",option:"preloaderEl",onInit:function(e){b=e}}];D.init=function(){var t;s.extend(o.options,Z,!0),T=o.options,m=s.getChildByClass(o.scrollWrap,"pswp__ui"),(x=o.listen)("onVerticalDrag",function(e){L&&e<.95?D.hideControls():!L&&.95<=e&&D.showControls()}),x("onPinchClose",function(e){L&&e<.9?(D.hideControls(),t=!0):t&&!L&&.9<e&&D.showControls()}),x("zoomGestureEnded",function(){(t=!1)&&!L&&D.showControls()}),x("beforeChange",D.update),x("doubleTap",function(e){var t=o.currItem.initialZoomLevel;o.getZoomLevel()!==t?o.zoomTo(t,e,333):o.zoomTo(T.getDoubleTapZoom(!1,o.currItem),e,333)}),x("preventDragEvent",function(e,t,n){var o=e.target||e.srcElement;o&&o.getAttribute("class")&&-1<e.type.indexOf("mouse")&&(0<o.getAttribute("class").indexOf("__caption")||/(SMALL|STRONG|EM)/i.test(o.tagName))&&(n.prevent=!1)}),x("bindEvents",function(){s.bind(m,"pswpTap click",e),s.bind(o.scrollWrap,"pswpTap",D.onGlobalTap),o.likelyTouchDevice||s.bind(o.scrollWrap,"mouseover",D.onMouseOver)}),x("unbindEvents",function(){M||i(),k&&clearInterval(k),s.unbind(document,"mouseout",c),s.unbind(document,"mousemove",l),s.unbind(m,"pswpTap click",e),s.unbind(o.scrollWrap,"pswpTap",D.onGlobalTap),s.unbind(o.scrollWrap,"mouseover",D.onMouseOver),p&&(s.unbind(document,p.eventK,D.updateFullscreen),p.isFullscreen()&&(T.hideAnimationDuration=0,p.exit()),p=null)}),x("destroy",function(){T.captionEl&&(h&&m.removeChild(h),s.removeClass(f,"pswp__caption--empty")),v&&(v.children[0].onclick=null),s.removeClass(m,"pswp__ui--over-close"),s.addClass(m,"pswp__ui--hidden"),D.setIdle(!1)}),T.showAnimationDuration||s.removeClass(m,"pswp__ui--hidden"),x("initialZoomIn",function(){T.showAnimationDuration&&s.removeClass(m,"pswp__ui--hidden")}),x("initialZoomOut",function(){s.addClass(m,"pswp__ui--hidden")}),x("parseVerticalMargin",d),P(),T.shareEl&&g&&v&&(M=!0),n(),T.timeToIdle&&x("mouseUsed",function(){s.bind(document,"mousemove",l),s.bind(document,"mouseout",c),k=setInterval(function(){2===++F&&D.setIdle(!0)},T.timeToIdle/2)}),T.fullscreenEl&&!s.features.isOldAndroid&&((p=p||D.getFullscreenAPI())?(s.bind(document,p.eventK,D.updateFullscreen),D.updateFullscreen(),s.addClass(o.template,"pswp--supports-fs")):s.removeClass(o.template,"pswp--supports-fs")),T.preloaderEl&&(u(!0),x("beforeChange",function(){clearTimeout(I),I=setTimeout(function(){o.currItem&&o.currItem.loading?o.allowProgressiveImg()&&(!o.currItem.img||o.currItem.img.naturalWidth)||u(!1):u(!0)},T.loadingIndicatorDelay)}),x("imageLoadComplete",function(e,t){o.currItem===t&&u(!0)}))},D.setIdle=function(e){O(m,"ui--idle",w=e)},D.update=function(){_=!(!L||!o.currItem||(D.updateIndexIndicator(),T.captionEl&&(T.addCaptionHTMLFn(o.currItem,f),O(f,"caption--empty",!o.currItem.title)),0)),M||i(),n()},D.updateFullscreen=function(e){e&&setTimeout(function(){o.setScrollOffset(0,s.getScrollY())},50),s[(p.isFullscreen()?"add":"remove")+"Class"](o.template,"pswp--fs")},D.updateIndexIndicator=function(){T.counterEl&&(t.innerHTML=o.getCurrentIndex()+1+T.indexIndicatorSep+T.getNumItemsFn())},D.onGlobalTap=function(e){var t=(e=e||window.event).target||e.srcElement;if(!S)if(e.detail&&"mouse"===e.detail.pointerType)r(t)?o.close():s.hasClass(t,"pswp__img")&&(1===o.getZoomLevel()&&o.getZoomLevel()<=o.currItem.fitRatio?T.clickToCloseNonZoomable&&o.close():o.toggleDesktopZoom(e.detail.releasePoint));else if(T.tapToToggleControls&&(L?D.hideControls():D.showControls()),T.tapToClose&&(s.hasClass(t,"pswp__img")||r(t)))return void o.close()},D.onMouseOver=function(e){e=(e=e||window.event).target||e.srcElement;O(m,"ui--over-close",r(e))},D.hideControls=function(){s.addClass(m,"pswp__ui--hidden"),L=!1},D.showControls=function(){L=!0,_||D.update(),s.removeClass(m,"pswp__ui--hidden")},D.supportsFullscreen=function(){var e=document;return!!(e.exitFullscreen||e.mozCancelFullScreen||e.webkitExitFullscreen||e.msExitFullscreen)},D.getFullscreenAPI=function(){var e,t=document.documentElement,n="fullscreenchange";return t.requestFullscreen?e={enterK:"requestFullscreen",exitK:"exitFullscreen",elementK:"fullscreenElement",eventK:n}:t.mozRequestFullScreen?e={enterK:"mozRequestFullScreen",exitK:"mozCancelFullScreen",elementK:"mozFullScreenElement",eventK:"moz"+n}:t.webkitRequestFullscreen?e={enterK:"webkitRequestFullscreen",exitK:"webkitExitFullscreen",elementK:"webkitFullscreenElement",eventK:"webkit"+n}:t.msRequestFullscreen&&(e={enterK:"msRequestFullscreen",exitK:"msExitFullscreen",elementK:"msFullscreenElement",eventK:"MSFullscreenChange"}),e&&(e.enter=function(){return y=T.closeOnScroll,T.closeOnScroll=!1,"webkitRequestFullscreen"!==this.enterK?o.template[this.enterK]():void o.template[this.enterK](Element.ALLOW_KEYBOARD_INPUT)},e.exit=function(){return T.closeOnScroll=y,document[this.exitK]()},e.isFullscreen=function(){return document[this.elementK]}),e}}}),function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.PhotoSwipe=t()}(this,function(){"use strict";return function(p,Z,t,z){var m={features:null,bind:function(e,t,n,o){var i=(o?"remove":"add")+"EventListener";t=t.split(" ");for(var r=0;r<t.length;r++)t[r]&&e[i](t[r],n,!1)},isArray:function(e){return e instanceof Array},createEl:function(e,t){t=document.createElement(t||"div");return e&&(t.className=e),t},getScrollY:function(){var e=window.pageYOffset;return void 0!==e?e:document.documentElement.scrollTop},unbind:function(e,t,n){m.bind(e,t,n,!0)},removeClass:function(e,t){t=new RegExp("(\\s|^)"+t+"(\\s|$)");e.className=e.className.replace(t," ").replace(/^\s\s*/,"").replace(/\s\s*$/,"")},addClass:function(e,t){m.hasClass(e,t)||(e.className+=(e.className?" ":"")+t)},hasClass:function(e,t){return e.className&&new RegExp("(^|\\s)"+t+"(\\s|$)").test(e.className)},getChildByClass:function(e,t){for(var n=e.firstChild;n;){if(m.hasClass(n,t))return n;n=n.nextSibling}},arraySearch:function(e,t,n){for(var o=e.length;o--;)if(e[o][n]===t)return o;return-1},extend:function(e,t,n){for(var o in t)if(t.hasOwnProperty(o)){if(n&&e.hasOwnProperty(o))continue;e[o]=t[o]}},easing:{sine:{out:function(e){return Math.sin(e*(Math.PI/2))},inOut:function(e){return-(Math.cos(Math.PI*e)-1)/2}},cubic:{out:function(e){return--e*e*e+1}}},detectFeatures:function(){if(m.features)return m.features;var e,t,n=m.createEl().style,o="",i={};i.oldIE=document.all&&!document.addEventListener,i.touch="ontouchstart"in window,window.requestAnimationFrame&&(i.raf=window.requestAnimationFrame,i.caf=window.cancelAnimationFrame),i.pointerEvent=!!window.PointerEvent||navigator.msPointerEnabled,i.pointerEvent||(e=navigator.userAgent,/iP(hone|od)/.test(navigator.platform)&&(t=navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/))&&0<t.length&&1<=(t=parseInt(t[1],10))&&t<8&&(i.isOldIOSPhone=!0),t=(t=e.match(/Android\s([0-9\.]*)/))?t[1]:0,1<=(t=parseFloat(t))&&(t<4.4&&(i.isOldAndroid=!0),i.androidVersion=t),i.isMobileOpera=/opera mini|opera mobi/i.test(e));for(var r,a,s,l=["transform","perspective","animationName"],c=["","webkit","Moz","ms","O"],u=0;u<4;u++){for(var o=c[u],d=0;d<3;d++)r=l[d],a=o+(o?r.charAt(0).toUpperCase()+r.slice(1):r),!i[r]&&a in n&&(i[r]=a);o&&!i.raf&&(o=o.toLowerCase(),i.raf=window[o+"RequestAnimationFrame"],i.raf)&&(i.caf=window[o+"CancelAnimationFrame"]||window[o+"CancelRequestAnimationFrame"])}return i.raf||(s=0,i.raf=function(e){var t=(new Date).getTime(),n=Math.max(0,16-(t-s)),o=window.setTimeout(function(){e(t+n)},n);return s=t+n,o},i.caf=function(e){clearTimeout(e)}),i.svg=!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect,m.features=i}},f=(m.detectFeatures(),m.features.oldIE&&(m.bind=function(e,t,n,o){t=t.split(" ");for(var i,r=(o?"detach":"attach")+"Event",a=function(){n.handleEvent.call(n)},s=0;s<t.length;s++)if(i=t[s])if("object"==typeof n&&n.handleEvent){if(o){if(!n["oldIE"+i])return!1}else n["oldIE"+i]=a;e[r]("on"+i,n["oldIE"+i])}else e[r]("on"+i,n)}),this),q=25,h={allowPanToNext:!0,spacing:.12,bgOpacity:1,mouseUsed:!1,loop:!0,pinchToClose:!0,closeOnScroll:!0,closeOnVerticalDrag:!0,verticalDragRange:.75,hideAnimationDuration:333,showAnimationDuration:333,showHideOpacity:!1,focus:!0,escKey:!0,arrowKeys:!0,mainScrollEndFriction:.35,panEndFriction:.35,isClickableElement:function(e){return"A"===e.tagName},getDoubleTapZoom:function(e,t){return e||t.initialZoomLevel<.7?1:1.33},maxSpreadZoom:1.33,modal:!0,scaleMode:"fit"};m.extend(h,z);function e(){return{x:0,y:0}}function N(e,t){m.extend(f,t.publicMethods),Ke.push(e)}function B(e){var t=O();return t-1<e?e-t:e<0?t+e:e}function r(e,t){return Ge[e]||(Ge[e]=[]),Ge[e].push(t)}function U(e,t,n,o){o===f.currItem.initialZoomLevel?n[e]=f.currItem.initialPosition[e]:(n[e]=Je(e,o),n[e]>t.min[e]?n[e]=t.min[e]:n[e]<t.max[e]&&(n[e]=t.max[e]))}function W(e){var t="";h.escKey&&27===e.keyCode?t="close":h.arrowKeys&&(37===e.keyCode?t="prev":39===e.keyCode&&(t="next")),!t||e.ctrlKey||e.altKey||e.shiftKey||e.metaKey||(e.preventDefault?e.preventDefault():e.returnValue=!1,f[t]())}function H(e){e&&(De||Ae||y||Te)&&(e.preventDefault(),e.stopPropagation())}function K(){f.setScrollOffset(0,m.getScrollY())}function j(e){var t;"mousedown"===e.type&&0<e.button||(Jt?e.preventDefault():Se&&"mousedown"===e.type||(Lt(e,!0)&&e.preventDefault(),I("pointerDown"),me&&((t=m.arraySearch(ht,e.pointerId,"id"))<0&&(t=ht.length),ht[t]={x:e.pageX,y:e.pageY,id:e.pointerId}),e=(t=qt(e)).length,c=null,ct(),l&&1!==e||(l=Re=!0,m.bind(window,ee,f),Ce=ze=Pe=Te=Le=De=ke=Ae=!1,Fe=null,I("firstTouchStart",t),k(Be,w),Ne.x=Ne.y=0,k(L,t[0]),k(ft,L),gt.x=b.x*Ue,vt=[{x:L.x,y:L.y}],Ee=be=C(),ot(v,!0),St(),kt()),!u&&1<e&&!y&&!Le&&(ne=v,u=ke=!(Ae=!1),Ne.y=Ne.x=0,k(Be,w),k(D,t[0]),k(mt,t[1]),Ot(D,mt,It),Et.x=Math.abs(It.x)-w.x,Et.y=Math.abs(It.y)-w.y,Me=Tt(D,mt))))}function Y(e){var t;e.preventDefault(),me&&-1<(t=m.arraySearch(ht,e.pointerId,"id"))&&((t=ht[t]).x=e.pageX,t.y=e.pageY),l&&(t=qt(e),Fe||De||u?c=t:M.x!==b.x*Ue?Fe="h":(e=Math.abs(t[0].x-L.x)-Math.abs(t[0].y-L.y),Math.abs(e)>=pt&&(Fe=0<e?"h":"v",c=t)))}function G(e){if(s.isOldAndroid){if(Se&&"mouseup"===e.type)return;-1<e.type.indexOf("touch")&&(clearTimeout(Se),Se=setTimeout(function(){Se=0},600))}var t;I("pointerUp"),Lt(e,!1)&&e.preventDefault(),me&&-1<(r=m.arraySearch(ht,e.pointerId,"id"))&&(t=ht.splice(r,1)[0],navigator.msPointerEnabled&&(t.type={4:"mouse",2:"touch",3:"pen"}[e.pointerType],t.type)||(t.type=e.pointerType||"mouse"));var n=(r=qt(e)).length;if(2===(n="mouseup"===e.type?0:n))return!(c=null);1===n&&k(ft,r[0]),0!==n||Fe||y||(t||("mouseup"===e.type?t={x:e.pageX,y:e.pageY,type:"mouse"}:e.changedTouches&&e.changedTouches[0]&&(t={x:e.changedTouches[0].pageX,y:e.changedTouches[0].pageY,type:"touch"})),I("touchRelease",e,t));var o,i,r=-1;if(0===n&&(l=!1,m.unbind(window,ee,f),St(),u?r=0:-1!==bt&&(r=C()-bt)),bt=1===n?C():-1,e=-1!==r&&r<150?"zoom":"swipe",u&&n<2&&(u=!1,1===n&&(e="zoomPointerUp"),I("zoomGestureEnded")),c=null,De||Ae||y||Te)if(ct(),(Ie=Ie||Ut()).calculateSwipeSpeed("x"),Te)Rt()<h.verticalDragRange?f.close():(o=w.y,i=Ze,ut("verticalDrag",0,1,300,m.easing.cubic.out,function(e){w.y=(f.currItem.initialPosition.y-o)*e+o,T((1-i)*e+i),S()}),I("onVerticalDrag",1));else{if((Le||y)&&0===n){if(Ht(e,Ie))return;e="zoomPointerUp"}if(!y)return"swipe"!==e?void jt():void(!Le&&v>f.currItem.fitRatio&&Wt(Ie))}}var V,X,$,g,Q,J,ee,te,o,v,ne,oe,ie,re,ae,a,se,le,ce,ue,de,pe,me,i,fe,he,ge,ve,ye,we,s,xe,be,Ee,Ie,Ce,Te,Se,l,ke,Ae,De,_e,Le,c,u,Me,d,Oe,y,Fe,Re,Pe,Ze,ze,qe,Ne=e(),Be=e(),w=e(),x={},Ue=0,We={},b=e(),E=0,He=!0,Ke=[],je={},Ye=!1,Ge={},I=function(e){var t=Ge[e];if(t){var n=Array.prototype.slice.call(arguments);n.shift();for(var o=0;o<t.length;o++)t[o].apply(f,n)}},C=function(){return(new Date).getTime()},T=function(e){Ze=e,f.bg.style.opacity=e*h.bgOpacity},Ve=function(e,t,n,o,i){(!Ye||i&&i!==f.currItem)&&(o/=(i||f.currItem).fitRatio),e[pe]=oe+t+"px, "+n+"px"+ie+" scale("+o+")"},S=function(e){Oe&&(e&&(v>f.currItem.fitRatio?Ye||(cn(f.currItem,!1,!0),Ye=!0):Ye&&(cn(f.currItem),Ye=!1)),Ve(Oe,w.x,w.y,v))},Xe=function(e){e.container&&Ve(e.container.style,e.initialPosition.x,e.initialPosition.y,e.initialZoomLevel,e)},$e=function(e,t){t[pe]=oe+e+"px, 0px"+ie},Qe=function(e,t){var n;!h.loop&&t&&(t=g+(b.x*Ue-e)/b.x,n=Math.round(e-M.x),t<0&&0<n||t>=O()-1&&n<0)&&(e=M.x+n*h.mainScrollEndFriction),M.x=e,$e(e,Q)},Je=function(e,t){var n=Et[e]-We[e];return Be[e]+Ne[e]+n-t/ne*n},k=function(e,t){e.x=t.x,e.y=t.y,t.id&&(e.id=t.id)},et=function(e){e.x=Math.round(e.x),e.y=Math.round(e.y)},tt=null,nt=function(){tt&&(m.unbind(document,"mousemove",nt),m.addClass(p,"pswp--has_mouse"),h.mouseUsed=!0,I("mouseUsed")),tt=setTimeout(function(){tt=null},100)},ot=function(e,t){e=sn(f.currItem,x,e);return t&&(d=e),e},it=function(e){return(e=e||f.currItem).initialZoomLevel},rt=function(e){return 0<(e=e||f.currItem).w?h.maxSpreadZoom:1},A={},at=0,st=function(e){A[e]&&(A[e].raf&&he(A[e].raf),at--,delete A[e])},lt=function(e){A[e]&&st(e),A[e]||(at++,A[e]={})},ct=function(){for(var e in A)A.hasOwnProperty(e)&&st(e)},ut=function(e,t,n,o,i,r,a){function s(){A[e]&&(l=C()-c,o<=l?(st(e),r(n),a&&a()):(r((n-t)*i(l/o)+t),A[e].raf=fe(s)))}var l,c=C();lt(e);s()},z={shout:I,listen:r,viewportSize:x,options:h,isMainScrollAnimating:function(){return y},getZoomLevel:function(){return v},getCurrentIndex:function(){return g},isDragging:function(){return l},isZooming:function(){return u},setScrollOffset:function(e,t){We.x=e,we=We.y=t,I("updateScrollOffset",We)},applyZoomPan:function(e,t,n,o){w.x=t,w.y=n,v=e,S(o)},init:function(){if(!V&&!X){f.framework=m,f.template=p,f.bg=m.getChildByClass(p,"pswp__bg"),ge=p.className,V=!0,s=m.detectFeatures(),fe=s.raf,he=s.caf,pe=s.transform,ye=s.oldIE,f.scrollWrap=m.getChildByClass(p,"pswp__scroll-wrap"),f.container=m.getChildByClass(f.scrollWrap,"pswp__container"),Q=f.container.style,f.itemHolders=a=[{el:f.container.children[0],wrap:0,index:-1},{el:f.container.children[1],wrap:0,index:-1},{el:f.container.children[2],wrap:0,index:-1}],a[0].el.style.display=a[2].el.style.display="none",pe?(t=s.perspective&&!i,oe="translate"+(t?"3d(":"("),ie=s.perspective?", 0px)":")"):(pe="left",m.addClass(p,"pswp--ie"),$e=function(e,t){t.left=e+"px"},Xe=function(e){var t=1<e.fitRatio?1:e.fitRatio,n=e.container.style,o=t*e.w,t=t*e.h;n.width=o+"px",n.height=t+"px",n.left=e.initialPosition.x+"px",n.top=e.initialPosition.y+"px"},S=function(){var e,t,n,o;Oe&&(e=Oe,n=(o=1<(t=f.currItem).fitRatio?1:t.fitRatio)*t.w,o=o*t.h,e.width=n+"px",e.height=o+"px",e.left=w.x+"px",e.top=w.y+"px")}),o={resize:f.updateSize,orientationchange:function(){clearTimeout(xe),xe=setTimeout(function(){x.x!==f.scrollWrap.clientWidth&&f.updateSize()},500)},scroll:K,keydown:W,click:H};var e,t=s.isOldIOSPhone||s.isOldAndroid||s.isMobileOpera;for(s.animationName&&s.transform&&!t||(h.showAnimationDuration=h.hideAnimationDuration=0),e=0;e<Ke.length;e++)f["init"+Ke[e]]();Z&&(f.ui=new Z(f,m)).init(),I("firstUpdate"),g=g||h.index||0,(isNaN(g)||g<0||g>=O())&&(g=0),f.currItem=en(g),(s.isOldIOSPhone||s.isOldAndroid)&&(He=!1),p.setAttribute("aria-hidden","false"),h.modal&&(He?p.style.position="fixed":(p.style.position="absolute",p.style.top=m.getScrollY()+"px")),void 0===we&&(I("initialLayout"),we=ve=m.getScrollY());var n="pswp--open ";for(h.mainClass&&(n+=h.mainClass+" "),h.showHideOpacity&&(n+="pswp--animate_opacity "),n=(n=(n+=i?"pswp--touch":"pswp--notouch")+(s.animationName?" pswp--css_animation":""))+(s.svg?" pswp--svg":""),m.addClass(p,n),f.updateSize(),J=-1,E=null,e=0;e<3;e++)$e((e+J)*b.x,a[e].el.style);ye||m.bind(f.scrollWrap,te,f),r("initialZoomInEnd",function(){f.setContent(a[0],g-1),f.setContent(a[2],g+1),a[0].el.style.display=a[2].el.style.display="block",h.focus&&p.focus(),m.bind(document,"keydown",f),s.transform&&m.bind(f.scrollWrap,"click",f),h.mouseUsed||m.bind(document,"mousemove",nt),m.bind(window,"resize scroll orientationchange",f),I("bindEvents")}),f.setContent(a[1],g),f.updateCurrItem(),I("afterInit"),He||(re=setInterval(function(){at||l||u||v!==f.currItem.initialZoomLevel||f.updateSize()},1e3)),m.addClass(p,"pswp--visible")}var t},close:function(){V&&(X=!(V=!1),I("close"),m.unbind(window,"resize scroll orientationchange",f),m.unbind(window,"scroll",o.scroll),m.unbind(document,"keydown",f),m.unbind(document,"mousemove",nt),s.transform&&m.unbind(f.scrollWrap,"click",f),l&&m.unbind(window,ee,f),clearTimeout(xe),I("unbindEvents"),tn(f.currItem,null,!0,f.destroy))},destroy:function(){I("destroy"),Xt&&clearTimeout(Xt),p.setAttribute("aria-hidden","true"),p.className=ge,re&&clearInterval(re),m.unbind(f.scrollWrap,te,f),m.unbind(window,"scroll",f),St(),ct(),Ge=null},panTo:function(e,t,n){n||(e>d.min.x?e=d.min.x:e<d.max.x&&(e=d.max.x),t>d.min.y?t=d.min.y:t<d.max.y&&(t=d.max.y)),w.x=e,w.y=t,S()},handleEvent:function(e){e=e||window.event,o[e.type]&&o[e.type](e)},goTo:function(e){var t=(e=B(e))-g;E=t,g=e,f.currItem=en(g),Ue-=t,Qe(b.x*Ue),ct(),y=!1,f.updateCurrItem()},next:function(){f.goTo(g+1)},prev:function(){f.goTo(g-1)},updateCurrZoomItem:function(e){var t;e&&I("beforeChange",0),Oe=a[1].el.children.length&&(t=a[1].el.children[0],m.hasClass(t,"pswp__zoom-wrap"))?t.style:null,d=f.currItem.bounds,ne=v=f.currItem.initialZoomLevel,w.x=d.center.x,w.y=d.center.y,e&&I("afterChange")},invalidateCurrItems:function(){ae=!0;for(var e=0;e<3;e++)a[e].item&&(a[e].item.needsUpdate=!0)},updateCurrItem:function(e){if(0!==E){var t,n=Math.abs(E);if(!(e&&n<2)){f.currItem=en(g),Ye=!1,I("beforeChange",E),3<=n&&(J+=E+(0<E?-3:3),n=3);for(var o=0;o<n;o++)0<E?(t=a.shift(),a[2]=t,$e((++J+2)*b.x,t.el.style),f.setContent(t,g-n+o+1+1)):(t=a.pop(),a.unshift(t),$e(--J*b.x,t.el.style),f.setContent(t,g+n-o-1-1));Oe&&1===Math.abs(E)&&(e=en(se)).initialZoomLevel!==v&&(sn(e,x),cn(e),Xe(e)),E=0,f.updateCurrZoomItem(),se=g,I("afterChange")}}},updateSize:function(e){if(!He&&h.modal){var t=m.getScrollY();if(we!==t&&(p.style.top=t+"px",we=t),!e&&je.x===window.innerWidth&&je.y===window.innerHeight)return;je.x=window.innerWidth,je.y=window.innerHeight,p.style.height=je.y+"px"}if(x.x=f.scrollWrap.clientWidth,x.y=f.scrollWrap.clientHeight,K(),b.x=x.x+Math.round(x.x*h.spacing),b.y=x.y,Qe(b.x*Ue),I("beforeResize"),void 0!==J){for(var n,o,i,r=0;r<3;r++)n=a[r],$e((r+J)*b.x,n.el.style),i=g+r-1,h.loop&&2<O()&&(i=B(i)),(o=en(i))&&(ae||o.needsUpdate||!o.bounds)?(f.cleanSlide(o),f.setContent(n,i),1===r&&(f.currItem=o,f.updateCurrZoomItem(!0)),o.needsUpdate=!1):-1===n.index&&0<=i&&f.setContent(n,i),o&&o.container&&(sn(o,x),cn(o),Xe(o));ae=!1}ne=v=f.currItem.initialZoomLevel,(d=f.currItem.bounds)&&(w.x=d.center.x,w.y=d.center.y,S(!0)),I("resize")},zoomTo:function(t,e,n,o,i){e&&(ne=v,Et.x=Math.abs(e.x)-w.x,Et.y=Math.abs(e.y)-w.y,k(Be,w));function r(e){1===e?(v=t,w.x=a.x,w.y=a.y):(v=(t-s)*e+s,w.x=(a.x-l.x)*e+l.x,w.y=(a.y-l.y)*e+l.y),i&&i(e),S(1===e)}var e=ot(t,!1),a={},s=(U("x",e,a,t),U("y",e,a,t),v),l={x:w.x,y:w.y};et(a);n?ut("customZoomTo",0,1,n,o||m.easing.sine.inOut,r):r(1)}},dt=30,pt=10,D={},mt={},_={},L={},ft={},ht=[],gt={},vt=[],yt={},wt=0,xt=e(),bt=0,M=e(),Et=e(),It=e(),Ct=function(e,t){return e.x===t.x&&e.y===t.y},Tt=function(e,t){return yt.x=Math.abs(e.x-t.x),yt.y=Math.abs(e.y-t.y),Math.sqrt(yt.x*yt.x+yt.y*yt.y)},St=function(){_e&&(he(_e),_e=null)},kt=function(){l&&(_e=fe(kt),Bt())},At=function(){return!("fit"===h.scaleMode&&v===f.currItem.initialZoomLevel)},Dt=function(e,t){return!(!e||e===document)&&!(e.getAttribute("class")&&-1<e.getAttribute("class").indexOf("pswp__scroll-wrap"))&&(t(e)?e:Dt(e.parentNode,t))},_t={},Lt=function(e,t){return _t.prevent=!Dt(e.target,h.isClickableElement),I("preventDragEvent",e,t,_t),_t.prevent},Mt=function(e,t){return t.x=e.pageX,t.y=e.pageY,t.id=e.identifier,t},Ot=function(e,t,n){n.x=.5*(e.x+t.x),n.y=.5*(e.y+t.y)},Ft=function(e,t,n){var o;50<e-Ee&&((o=2<vt.length?vt.shift():{}).x=t,o.y=n,vt.push(o),Ee=e)},Rt=function(){var e=w.y-f.currItem.initialPosition.y;return 1-Math.abs(e/(x.y/2))},Pt={},Zt={},zt=[],qt=function(e){for(;0<zt.length;)zt.pop();return me?(qe=0,ht.forEach(function(e){0===qe?zt[0]=e:1===qe&&(zt[1]=e),qe++})):-1<e.type.indexOf("touch")?e.touches&&0<e.touches.length&&(zt[0]=Mt(e.touches[0],Pt),1<e.touches.length)&&(zt[1]=Mt(e.touches[1],Zt)):(Pt.x=e.pageX,Pt.y=e.pageY,Pt.id="",zt[0]=Pt),zt},Nt=function(e,t){var n,o,i,r=w[e]+t[e],a=0<t[e],s=M.x+t.x,l=M.x-gt.x,c=r>d.min[e]||r<d.max[e]?h.panEndFriction:1,r=w[e]+t[e]*c;return!h.allowPanToNext&&v!==f.currItem.initialZoomLevel||(Oe?"h"!==Fe||"x"!==e||Ae||(a?(r>d.min[e]&&(c=h.panEndFriction,d.min[e],n=d.min[e]-Be[e]),(n<=0||l<0)&&1<O()?(i=s,l<0&&s>gt.x&&(i=gt.x)):d.min.x!==d.max.x&&(o=r)):(r<d.max[e]&&(c=h.panEndFriction,d.max[e],n=Be[e]-d.max[e]),(n<=0||0<l)&&1<O()?(i=s,0<l&&s<gt.x&&(i=gt.x)):d.min.x!==d.max.x&&(o=r))):i=s,"x"!==e)?void(y||Le||v>f.currItem.fitRatio&&(w[e]+=t[e]*c)):(void 0!==i&&(Qe(i,!0),Le=i!==gt.x),d.min.x!==d.max.x&&(void 0!==o?w.x=o:Le||(w.x+=t.x*c)),void 0!==i)},Bt=function(){var e,t,n,o,i,r;c&&0!==(e=c.length)&&(k(D,c[0]),_.x=D.x-L.x,_.y=D.y-L.y,u&&1<e?(L.x=D.x,L.y=D.y,!_.x&&!_.y&&Ct(c[1],mt)||(k(mt,c[1]),Ae||(Ae=!0,I("zoomGestureStarted")),e=Tt(D,mt),(t=Kt(e))>f.currItem.initialZoomLevel+f.currItem.initialZoomLevel/15&&(ze=!0),n=1,o=it(),i=rt(),t<o?h.pinchToClose&&!ze&&ne<=f.currItem.initialZoomLevel?(T(r=1-(o-t)/(o/1.2)),I("onPinchClose",r),Pe=!0):t=o-(n=1<(n=(o-t)/o)?1:n)*(o/3):i<t&&(t=i+(n=1<(n=(t-i)/(6*o))?1:n)*o),n<0&&(n=0),Ot(D,mt,xt),Ne.x+=xt.x-It.x,Ne.y+=xt.y-It.y,k(It,xt),w.x=Je("x",t),w.y=Je("y",t),Ce=v<t,v=t,S())):Fe&&(Re&&(Re=!1,Math.abs(_.x)>=pt&&(_.x-=c[0].x-ft.x),Math.abs(_.y)>=pt)&&(_.y-=c[0].y-ft.y),L.x=D.x,L.y=D.y,0===_.x&&0===_.y||("v"===Fe&&h.closeOnVerticalDrag&&!At()?(Ne.y+=_.y,w.y+=_.y,r=Rt(),Te=!0,I("onVerticalDrag",r),T(r),S()):(Ft(C(),D.x,D.y),De=!0,d=f.currItem.bounds,Nt("x",_)||(Nt("y",_),et(w),S())))))},Ut=function(){var t,n,o={lastFlickOffset:{},lastFlickDist:{},lastFlickSpeed:{},slowDownRatio:{},slowDownRatioReverse:{},speedDecelerationRatio:{},speedDecelerationRatioAbs:{},distanceOffset:{},backAnimDestination:{},backAnimStarted:{},calculateSwipeSpeed:function(e){n=(1<vt.length?(t=C()-Ee+50,vt[vt.length-2]):(t=C()-be,ft))[e],o.lastFlickOffset[e]=L[e]-n,o.lastFlickDist[e]=Math.abs(o.lastFlickOffset[e]),20<o.lastFlickDist[e]?o.lastFlickSpeed[e]=o.lastFlickOffset[e]/t:o.lastFlickSpeed[e]=0,Math.abs(o.lastFlickSpeed[e])<.1&&(o.lastFlickSpeed[e]=0),o.slowDownRatio[e]=.95,o.slowDownRatioReverse[e]=1-o.slowDownRatio[e],o.speedDecelerationRatio[e]=1},calculateOverBoundsAnimOffset:function(t,e){o.backAnimStarted[t]||(w[t]>d.min[t]?o.backAnimDestination[t]=d.min[t]:w[t]<d.max[t]&&(o.backAnimDestination[t]=d.max[t]),void 0!==o.backAnimDestination[t]&&(o.slowDownRatio[t]=.7,o.slowDownRatioReverse[t]=1-o.slowDownRatio[t],o.speedDecelerationRatioAbs[t]<.05)&&(o.lastFlickSpeed[t]=0,o.backAnimStarted[t]=!0,ut("bounceZoomPan"+t,w[t],o.backAnimDestination[t],e||300,m.easing.sine.out,function(e){w[t]=e,S()})))},calculateAnimOffset:function(e){o.backAnimStarted[e]||(o.speedDecelerationRatio[e]=o.speedDecelerationRatio[e]*(o.slowDownRatio[e]+o.slowDownRatioReverse[e]-o.slowDownRatioReverse[e]*o.timeDiff/10),o.speedDecelerationRatioAbs[e]=Math.abs(o.lastFlickSpeed[e]*o.speedDecelerationRatio[e]),o.distanceOffset[e]=o.lastFlickSpeed[e]*o.speedDecelerationRatio[e]*o.timeDiff,w[e]+=o.distanceOffset[e])},panAnimLoop:function(){A.zoomPan&&(A.zoomPan.raf=fe(o.panAnimLoop),o.now=C(),o.timeDiff=o.now-o.lastNow,o.lastNow=o.now,o.calculateAnimOffset("x"),o.calculateAnimOffset("y"),S(),o.calculateOverBoundsAnimOffset("x"),o.calculateOverBoundsAnimOffset("y"),o.speedDecelerationRatioAbs.x<.05)&&o.speedDecelerationRatioAbs.y<.05&&(w.x=Math.round(w.x),w.y=Math.round(w.y),S(),st("zoomPan"))}};return o},Wt=function(e){return e.calculateSwipeSpeed("y"),d=f.currItem.bounds,e.backAnimDestination={},e.backAnimStarted={},Math.abs(e.lastFlickSpeed.x)<=.05&&Math.abs(e.lastFlickSpeed.y)<=.05?(e.speedDecelerationRatioAbs.x=e.speedDecelerationRatioAbs.y=0,e.calculateOverBoundsAnimOffset("x"),e.calculateOverBoundsAnimOffset("y"),!0):(lt("zoomPan"),e.lastNow=C(),void e.panAnimLoop())},Ht=function(e,t){var n,o,i;y||(wt=g),"swipe"===e&&(e=L.x-ft.x,r=t.lastFlickDist.x<10,dt<e&&(r||20<t.lastFlickOffset.x)?o=-1:e<-dt&&(r||t.lastFlickOffset.x<-20)&&(o=1)),o&&((g+=o)<0?(g=h.loop?O()-1:0,i=!0):g>=O()&&(g=h.loop?0:O()-1,i=!0),i&&!h.loop||(E+=o,Ue-=o,n=!0));var e=b.x*Ue,r=Math.abs(e-M.x),a=n||e>M.x==0<t.lastFlickSpeed.x?(a=0<Math.abs(t.lastFlickSpeed.x)?r/Math.abs(t.lastFlickSpeed.x):333,a=Math.min(a,400),Math.max(a,250)):333;return wt===g&&(n=!1),y=!0,I("mainScrollAnimStart"),ut("mainScroll",M.x,e,a,m.easing.cubic.out,Qe,function(){ct(),y=!1,wt=-1,!n&&wt===g||f.updateCurrItem(),I("mainScrollAnimComplete")}),n&&f.updateCurrItem(!0),n},Kt=function(e){return 1/Me*e*ne},jt=function(){var e=v,t=it(),n=rt();v<t?e=t:n<v&&(e=n);var o,i=Ze;return Pe&&!Ce&&!ze&&v<t?f.close():(Pe&&(o=function(e){T((1-i)*e+i)}),f.zoomTo(e,0,200,m.easing.cubic.out,o)),!0};N("Gestures",{publicMethods:{initGestures:function(){function e(e,t,n,o,i){le=e+t,ce=e+n,ue=e+o,de=i?e+i:""}(me=s.pointerEvent)&&s.touch&&(s.touch=!1),me?navigator.msPointerEnabled?e("MSPointer","Down","Move","Up","Cancel"):e("pointer","down","move","up","cancel"):s.touch?(e("touch","start","move","end","cancel"),i=!0):e("mouse","down","move","up"),ee=ce+" "+ue+" "+de,te=le,me&&!i&&(i=1<navigator.maxTouchPoints||1<navigator.msMaxTouchPoints),f.likelyTouchDevice=i,o[le]=j,o[ce]=Y,o[ue]=G,de&&(o[de]=o[ue]),s.touch&&(te+=" mousedown",ee+=" mousemove mouseup",o.mousedown=o[le],o.mousemove=o[ce],o.mouseup=o[ue]),i||(h.allowPanToNext=!1)}}});function Yt(e){function t(){e.loading=!1,e.loaded=!0,e.loadComplete?e.loadComplete(e):e.img=null,n.onload=n.onerror=null,n=null}e.loading=!0,e.loaded=!1;var n=e.img=m.createEl("pswp__img","img");n.onload=t,n.onerror=function(){e.loadError=!0,t()},n.src=e.src}function Gt(e,t){return e.src&&e.loadError&&e.container&&(t&&(e.container.innerHTML=""),e.container.innerHTML=h.errorMsg.replace("%url%",e.src),1)}function Vt(){if(nn.length){for(var e,t=0;t<nn.length;t++)(e=nn[t]).holder.index===e.index&&ln(e.index,e.item,e.baseDiv,e.img,!1,e.clearPlaceholder);nn=[]}}var Xt,$t,Qt,Jt,en,O,tn=function(r,e,a,t){function s(){st("initialZoom"),a?(f.template.removeAttribute("style"),f.bg.removeAttribute("style")):(T(1),e&&(e.style.display="block"),m.addClass(p,"pswp--animated-in"),I("initialZoom"+(a?"OutEnd":"InEnd"))),t&&t(),Jt=!1}Xt&&clearTimeout(Xt),Qt=Jt=!0,r.initialLayout?(l=r.initialLayout,r.initialLayout=null):l=h.getThumbBoundsFn&&h.getThumbBoundsFn(g);var l,c,u,d=a?h.hideAnimationDuration:h.showAnimationDuration;d&&l&&void 0!==l.x?(c=$,u=!f.currItem.src||f.currItem.loadError||h.showHideOpacity,r.miniImg&&(r.miniImg.style.webkitBackfaceVisibility="hidden"),a||(v=l.w/r.w,w.x=l.x,w.y=l.y-ve,f[u?"template":"bg"].style.opacity=.001,S()),lt("initialZoom"),a&&!c&&m.removeClass(p,"pswp--animated-in"),u&&(a?m[(c?"remove":"add")+"Class"](p,"pswp--animate_opacity"):setTimeout(function(){m.addClass(p,"pswp--animate_opacity")},30)),Xt=setTimeout(function(){var t,n,o,i,e;I("initialZoom"+(a?"Out":"In")),a?(t=l.w/r.w,n={x:w.x,y:w.y},o=v,i=Ze,e=function(e){1===e?(v=t,w.x=l.x,w.y=l.y-we):(v=(t-o)*e+o,w.x=(l.x-n.x)*e+n.x,w.y=(l.y-we-n.y)*e+n.y),S(),u?p.style.opacity=1-e:T(i-e*i)},c?ut("initialZoom",0,1,d,m.easing.cubic.out,e,s):(e(1),Xt=setTimeout(s,d+20))):(v=r.initialZoomLevel,k(w,r.initialPosition),S(),T(1),u?p.style.opacity=1:T(1),Xt=setTimeout(s,d+20))},a?25:90)):(I("initialZoom"+(a?"Out":"In")),v=r.initialZoomLevel,k(w,r.initialPosition),S(),p.style.opacity=a?0:1,T(1),d?setTimeout(function(){s()},d):s())},F={},nn=[],on={index:0,errorMsg:'<div class="pswp__error-msg"><a href="%url%" target="_blank">The image</a> could not be loaded.</div>',forceProgressiveLoading:!1,preload:[1,1],getNumItemsFn:function(){return $t.length}},rn=function(){return{center:{x:0,y:0},max:{x:0,y:0},min:{x:0,y:0}}},an=function(e,t,n){var o=e.bounds;o.center.x=Math.round((F.x-t)/2),o.center.y=Math.round((F.y-n)/2)+e.vGap.top,o.max.x=t>F.x?Math.round(F.x-t):o.center.x,o.max.y=n>F.y?Math.round(F.y-n)+e.vGap.top:o.center.y,o.min.x=t>F.x?0:o.center.x,o.min.y=n>F.y?e.vGap.top:o.center.y},sn=function(e,t,n){var o,i;return e.src&&!e.loadError?((o=!n)&&(e.vGap||(e.vGap={top:0,bottom:0}),I("parseVerticalMargin",e)),F.x=t.x,F.y=t.y-e.vGap.top-e.vGap.bottom,o&&(t=F.x/e.w,i=F.y/e.h,e.fitRatio=t<i?t:i,"orig"===(t=h.scaleMode)?n=1:"fit"===t&&(n=e.fitRatio),e.initialZoomLevel=n=1<n?1:n,e.bounds||(e.bounds=rn())),n?(an(e,e.w*n,e.h*n),o&&n===e.initialZoomLevel&&(e.initialPosition=e.bounds.center),e.bounds):void 0):(e.w=e.h=0,e.initialZoomLevel=e.fitRatio=1,e.bounds=rn(),e.initialPosition=e.bounds.center,e.bounds)},ln=function(e,t,n,o,i,r){t.loadError||o&&(t.imageAppended=!0,cn(t,o,t===f.currItem&&Ye),n.appendChild(o),r)&&setTimeout(function(){t&&t.loaded&&t.placeholder&&(t.placeholder.style.display="none",t.placeholder=null)},500)},cn=function(e,t,n){var o;e.src&&(t=t||e.container.lastChild,o=n?e.w:Math.round(e.w*e.fitRatio),n=n?e.h:Math.round(e.h*e.fitRatio),e.placeholder&&!e.loaded&&(e.placeholder.style.width=o+"px",e.placeholder.style.height=n+"px"),t.style.width=o+"px",t.style.height=n+"px")};N("Controller",{publicMethods:{lazyLoadItem:function(e){e=B(e);var t=en(e);t&&(!t.loaded&&!t.loading||ae)&&(I("gettingData",e,t),t.src)&&Yt(t)},initController:function(){m.extend(h,on,!0),f.items=$t=t,en=f.getItemAt,O=h.getNumItemsFn,h.loop,O()<3&&(h.loop=!1),r("beforeChange",function(e){for(var t=h.preload,n=null===e||0<=e,o=Math.min(t[0],O()),i=Math.min(t[1],O()),r=1;r<=(n?i:o);r++)f.lazyLoadItem(g+r);for(r=1;r<=(n?o:i);r++)f.lazyLoadItem(g-r)}),r("initialLayout",function(){f.currItem.initialLayout=h.getThumbBoundsFn&&h.getThumbBoundsFn(g)}),r("mainScrollAnimComplete",Vt),r("initialZoomInEnd",Vt),r("destroy",function(){for(var e,t=0;t<$t.length;t++)(e=$t[t]).container&&(e.container=null),e.placeholder&&(e.placeholder=null),e.img&&(e.img=null),e.preloader&&(e.preloader=null),e.loadError&&(e.loaded=e.loadError=!1);nn=null})},getItemAt:function(e){return 0<=e&&void 0!==$t[e]&&$t[e]},allowProgressiveImg:function(){return h.forceProgressiveLoading||!i||h.mouseUsed||1200<screen.width},setContent:function(t,n){h.loop&&(n=B(n));var e=f.getItemAt(t.index);e&&(e.container=null);var o,i,r,e=f.getItemAt(n);e?(I("gettingData",n,e),t.index=n,i=(t.item=e).container=m.createEl("pswp__zoom-wrap"),!e.src&&e.html&&(e.html.tagName?i.appendChild(e.html):i.innerHTML=e.html),Gt(e),sn(e,x),!e.src||e.loadError||e.loaded?e.src&&!e.loadError&&((o=m.createEl("pswp__img","img")).style.opacity=1,o.src=e.src,cn(e,o),ln(n,e,i,o,!0)):(e.loadComplete=function(e){if(V){if(t&&t.index===n){if(Gt(e,!0))return e.loadComplete=e.img=null,sn(e,x),Xe(e),void(t.index===g&&f.updateCurrZoomItem());e.imageAppended?!Jt&&e.placeholder&&(e.placeholder.style.display="none",e.placeholder=null):s.transform&&(y||Jt)?nn.push({item:e,baseDiv:i,img:e.img,index:n,holder:t,clearPlaceholder:!0}):ln(n,e,i,e.img,y||Jt,!0)}e.loadComplete=null,e.img=null,I("imageLoadComplete",n,e)}},m.features.transform&&(r="pswp__img pswp__img--placeholder",r+=e.msrc?"":" pswp__img--placeholder--blank",r=m.createEl(r,e.msrc?"img":""),e.msrc&&(r.src=e.msrc),cn(e,r),i.appendChild(r),e.placeholder=r),e.loading||Yt(e),f.allowProgressiveImg()&&(!Qt&&s.transform?nn.push({item:e,baseDiv:i,img:e.img,index:n,holder:t}):ln(n,e,i,e.img,!0,!0))),Qt||n!==g?Xe(e):(Oe=i.style,tn(e,o||e.img)),t.el.innerHTML="",t.el.appendChild(i)):t.el.innerHTML=""},cleanSlide:function(e){e.img&&(e.img.onload=e.img.onerror=null),e.loaded=e.loading=e.img=e.imageAppended=!1}}});function un(e,t,n){var o=document.createEvent("CustomEvent"),t={origEvent:e,target:e.target,releasePoint:t,pointerType:n||"touch"};o.initCustomEvent("pswpTap",!0,!0,t),e.target.dispatchEvent(o)}var dn,R,pn={};N("Tap",{publicMethods:{initTap:function(){r("firstTouchStart",f.onTapStart),r("touchRelease",f.onTapRelease),r("destroy",function(){pn={},dn=null})},onTapStart:function(e){1<e.length&&(clearTimeout(dn),dn=null)},onTapRelease:function(e,t){var n,o,i;!t||De||ke||at||(n=t,dn&&(clearTimeout(dn),dn=null,o=n,i=pn,Math.abs(o.x-i.x)<q)&&Math.abs(o.y-i.y)<q?I("doubleTap",n):"mouse"===t.type?un(e,t,"mouse"):"BUTTON"===e.target.tagName.toUpperCase()||m.hasClass(e.target,"pswp__single-tap")?un(e,t):(k(pn,n),dn=setTimeout(function(){un(e,t),dn=null},300)))}}}),N("DesktopZoom",{publicMethods:{initDesktopZoom:function(){ye||(i?r("mouseUsed",function(){f.setupDesktopZoom()}):f.setupDesktopZoom(!0))},setupDesktopZoom:function(e){R={};var t="wheel mousewheel DOMMouseScroll";r("bindEvents",function(){m.bind(p,t,f.handleMouseWheel)}),r("unbindEvents",function(){R&&m.unbind(p,t,f.handleMouseWheel)}),f.mouseZoomedIn=!1;function n(){f.mouseZoomedIn&&(m.removeClass(p,"pswp--zoomed-in"),f.mouseZoomedIn=!1),v<1?m.addClass(p,"pswp--zoom-allowed"):m.removeClass(p,"pswp--zoom-allowed"),i()}var o,i=function(){o&&(m.removeClass(p,"pswp--dragging"),o=!1)};r("resize",n),r("afterChange",n),r("pointerDown",function(){f.mouseZoomedIn&&(o=!0,m.addClass(p,"pswp--dragging"))}),r("pointerUp",i),e||n()},handleMouseWheel:function(e){if(v<=f.currItem.fitRatio)return h.modal&&(!h.closeOnScroll||at||l?e.preventDefault():pe&&2<Math.abs(e.deltaY)&&($=!0,f.close())),!0;if(e.stopPropagation(),R.x=0,"deltaX"in e)1===e.deltaMode?(R.x=18*e.deltaX,R.y=18*e.deltaY):(R.x=e.deltaX,R.y=e.deltaY);else if("wheelDelta"in e)e.wheelDeltaX&&(R.x=-.16*e.wheelDeltaX),e.wheelDeltaY?R.y=-.16*e.wheelDeltaY:R.y=-.16*e.wheelDelta;else{if(!("detail"in e))return;R.y=e.detail}ot(v,!0);var t=w.x-R.x,n=w.y-R.y;(h.modal||t<=d.min.x&&t>=d.max.x&&n<=d.min.y&&n>=d.max.y)&&e.preventDefault(),f.panTo(t,n)},toggleDesktopZoom:function(e){e=e||{x:x.x/2+We.x,y:x.y/2+We.y};var t=h.getDoubleTapZoom(!0,f.currItem),n=v===t;f.mouseZoomedIn=!n,f.zoomTo(n?f.currItem.initialZoomLevel:t,e,333),m[(n?"remove":"add")+"Class"](p,"pswp--zoomed-in")}}});function mn(){hn&&clearTimeout(hn),vn&&clearTimeout(vn)}function fn(){var e=Sn(),t={};if(!(e.length<5)){var n,o=e.split("&");for(r=0;r<o.length;r++)!o[r]||(n=o[r].split("=")).length<2||(t[n[0]]=n[1]);if(h.galleryPIDs){for(var i=t.pid,r=t.pid=0;r<$t.length;r++)if($t[r].pid===i){t.pid=r;break}}else t.pid=parseInt(t.pid,10)-1;t.pid<0&&(t.pid=0)}return t}var hn,gn,vn,yn,wn,xn,n,bn,En,In,P,Cn,Tn={history:!0,galleryUID:1},Sn=function(){return P.hash.substring(1)},kn=function(){var e,t;vn&&clearTimeout(vn),at||l?vn=setTimeout(kn,500):(yn?clearTimeout(gn):yn=!0,t=g+1,(e=en(g)).hasOwnProperty("pid")&&(t=e.pid),e=n+"&gid="+h.galleryUID+"&pid="+t,bn||-1===P.hash.indexOf(e)&&(In=!0),t=P.href.split("#")[0]+"#"+e,Cn?"#"+e!==window.location.hash&&history[bn?"replaceState":"pushState"]("",document.title,t):bn?P.replace(t):P.hash=e,bn=!0,gn=setTimeout(function(){yn=!1},60))};N("History",{publicMethods:{initHistory:function(){var e,t;m.extend(h,Tn,!0),h.history&&(P=window.location,bn=En=In=!1,n=Sn(),Cn="pushState"in history,-1<n.indexOf("gid=")&&(n=(n=n.split("&gid=")[0]).split("?gid=")[0]),r("afterChange",f.updateURL),r("unbindEvents",function(){m.unbind(window,"hashchange",f.onHashChange)}),e=function(){xn=!0,En||(In?history.back():n?P.hash=n:Cn?history.pushState("",document.title,P.pathname+P.search):P.hash=""),mn()},r("unbindEvents",function(){$&&e()}),r("destroy",function(){xn||e()}),r("firstUpdate",function(){g=fn().pid}),-1<(t=n.indexOf("pid="))&&"&"===(n=n.substring(0,t)).slice(-1)&&(n=n.slice(0,-1)),setTimeout(function(){V&&m.bind(window,"hashchange",f.onHashChange)},40))},onHashChange:function(){return Sn()===n?(En=!0,void f.close()):void(yn||(wn=!0,f.goTo(fn().pid),wn=!1))},updateURL:function(){mn(),wn||(bn?hn=setTimeout(kn,800):kn())}}}),m.extend(f,z)}}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).reframe=t()}(this,function(){"use strict";function t(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var o=Array(e),i=0,t=0;t<n;t++)for(var r=arguments[t],a=0,s=r.length;a<s;a++,i++)o[i]=r[a];return o}return function(e,i){return void 0===i&&(i="js-reframe"),("string"==typeof e?t(document.querySelectorAll(e)):"length"in e?t(e):[e]).forEach(function(e){var t,n,o;-1!==e.className.split(" ").indexOf(i)||-1<e.style.width.indexOf("%")||(t=e.getAttribute("height")||e.offsetHeight,n=e.getAttribute("width")||e.offsetWidth,t=("string"==typeof t?parseInt(t):t)/("string"==typeof n?parseInt(n):n)*100,(n=document.createElement("div")).className=i,(o=n.style).position="relative",o.width="100%",o.paddingTop=t+"%",(o=e.style).position="absolute",o.width="100%",o.height="100%",o.left="0",o.top="0",null!=(t=e.parentNode)&&t.insertBefore(n,e),null!=(o=e.parentNode)&&o.removeChild(e),n.appendChild(e))})}}),function(){const e=document.querySelector(".gh-navigation");var t=e.querySelector(".gh-burger");t&&t.addEventListener("click",function(){e.classList.contains("is-open")?e.classList.remove("is-open"):e.classList.add("is-open")})}(),lightbox(".kg-image-card > .kg-image[width][height], .kg-gallery-image > img"),reframe(document.querySelectorAll(['.gh-content iframe[src*="youtube.com"]','.gh-content iframe[src*="youtube-nocookie.com"]','.gh-content iframe[src*="player.vimeo.com"]','.gh-content iframe[src*="kickstarter.com"][src*="video.html"]',".gh-content object",".gh-content embed"].join(","))),dropdown(),document.body.classList.contains("paged")&&pagination();
|
|
2
|
+
//# sourceMappingURL=source.js.map
|