From cf30adacce10eb4164c8303f0b98521212ede966 Mon Sep 17 00:00:00 2001 From: Sodbileg Gansukh Date: Fri, 11 Nov 2022 11:30:32 +0800 Subject: [PATCH] Added navbar options (#906) --- assets/built/casper.js | 2 +- assets/built/casper.js.map | 2 +- assets/built/screen.css | 2 +- assets/built/screen.css.map | 2 +- assets/css/screen.css | 536 ++++++++++++++++--------- assets/js/dropdown.js | 81 ++++ assets/js/lib/imagesloaded.pkgd.min.js | 7 + default.hbs | 56 +-- gulpfile.js | 3 +- index.hbs | 4 +- package.json | 10 +- 11 files changed, 466 insertions(+), 239 deletions(-) create mode 100644 assets/js/dropdown.js create mode 100644 assets/js/lib/imagesloaded.pkgd.min.js diff --git a/assets/built/casper.js b/assets/built/casper.js index 35c754b..d73f855 100644 --- a/assets/built/casper.js +++ b/assets/built/casper.js @@ -1,2 +1,2 @@ -!function(o){"use strict";o.fn.fitVids=function(e){var t,i,n={customSelector:null,ignore:null};return document.getElementById("fit-vids-style")||(t=document.head||document.getElementsByTagName("head")[0],(i=document.createElement("div")).innerHTML='

x

',t.appendChild(i.childNodes[1])),e&&o.extend(n,e),this.each(function(){var e=['iframe[src*="player.vimeo.com"]','iframe[src*="youtube.com"]','iframe[src*="youtube-nocookie.com"]','iframe[src*="kickstarter.com"][src*="video.html"]',"object","embed"];n.customSelector&&e.push(n.customSelector);var r=".fitvidsignore";n.ignore&&(r=r+", "+n.ignore);e=o(this).find(e.join(","));(e=(e=e.not("object object")).not(r)).each(function(){var e,t,i=o(this);0
').parent(".fluid-width-video-wrapper").css("padding-top",100*e+"%"),i.removeAttr("height").removeAttr("width"))})})},o.fn.fitVids._count=0}(window.jQuery||window.Zepto),function(t,i){var r,n,o,d,s,a,c,l=i.querySelector("link[rel=next]");function h(){if(404===this.status)return t.removeEventListener("scroll",p),void t.removeEventListener("resize",f);this.response.querySelectorAll("article.post-card").forEach(function(e){r.appendChild(i.importNode(e,!0))});var e=this.response.querySelector("link[rel=next]");e?l.href=e.href:(t.removeEventListener("scroll",p),t.removeEventListener("resize",f)),c=i.documentElement.scrollHeight,d=o=!1}function e(){var e;d||(s+a<=c-n?o=!1:(d=!0,(e=new t.XMLHttpRequest).responseType="document",e.addEventListener("load",h),e.open("GET",l.href),e.send(null)))}function u(){o||t.requestAnimationFrame(e),o=!0}function p(){s=t.scrollY,u()}function f(){a=t.innerHeight,c=i.documentElement.scrollHeight,u()}!l||(r=i.querySelector(".post-feed"))&&(d=o=!(n=300),s=t.scrollY,a=t.innerHeight,c=i.documentElement.scrollHeight,t.addEventListener("scroll",p,{passive:!0}),t.addEventListener("resize",f),u())}(window,document); +!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){if(e&&t){var i=this._events=this._events||{},e=i[e]=i[e]||[];return-1==e.indexOf(t)&&e.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{};return(i[e]=i[e]||{})[t]=!0,this}},t.off=function(e,t){e=this._events&&this._events[e];if(e&&e.length){t=e.indexOf(t);return-1!=t&&e.splice(t,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){i=i.slice(0),t=t||[];for(var n=this._onceEvents&&this._onceEvents[e],o=0;ox

',t.appendChild(i.childNodes[1])),e&&r.extend(o,e),this.each(function(){var e=['iframe[src*="player.vimeo.com"]','iframe[src*="youtube.com"]','iframe[src*="youtube-nocookie.com"]','iframe[src*="kickstarter.com"][src*="video.html"]',"object","embed"];o.customSelector&&e.push(o.customSelector);var n=".fitvidsignore";o.ignore&&(n=n+", "+o.ignore);e=r(this).find(e.join(","));(e=(e=e.not("object object")).not(n)).each(function(){var e,t,i=r(this);0
').parent(".fluid-width-video-wrapper").css("padding-top",100*e+"%"),i.removeAttr("height").removeAttr("width"))})})},r.fn.fitVids._count=0}(window.jQuery||window.Zepto),function(){var n=window.matchMedia("(max-width: 991px)");const o=document.querySelector(".gh-head-menu"),r=o.querySelector(".nav");if(r){var e=document.querySelector(".gh-head-logo"),t=r.innerHTML;if(n.matches){const s=r.querySelectorAll("li");s.forEach(function(e,t){e.style.transitionDelay=.03*(t+1)+"s"})}function i(){if(!n.matches){const e=[];for(;r.offsetWidth+64>o.offsetWidth;){if(!r.lastElementChild)return;e.unshift(r.lastElementChild),r.lastElementChild.remove()}if(e.length){const t=document.createElement("button");t.setAttribute("class","nav-more-toggle"),t.setAttribute("aria-label","More"),t.innerHTML='';const i=document.createElement("div");i.setAttribute("class","gh-dropdown"),10<=e.length?(document.body.classList.add("is-dropdown-mega"),i.style.gridTemplateRows="repeat("+Math.ceil(e.length/2)+", 1fr)"):document.body.classList.remove("is-dropdown-mega"),e.forEach(function(e){i.appendChild(e)}),t.appendChild(i),r.appendChild(t),document.body.classList.add("is-dropdown-loaded"),t.addEventListener("click",function(){document.body.classList.toggle("is-dropdown-open")}),window.addEventListener("click",function(e){!t.contains(e.target)&&document.body.classList.contains("is-dropdown-open")&&document.body.classList.remove("is-dropdown-open")})}else document.body.classList.add("is-dropdown-loaded")}}imagesLoaded(e,function(){i()}),window.addEventListener("resize",function(){setTimeout(function(){r.innerHTML=t,i()},1)})}}(),function(t,i){var n,o,r,s,d,a,h,c=i.querySelector("link[rel=next]");function l(){if(404===this.status)return t.removeEventListener("scroll",m),void t.removeEventListener("resize",p);this.response.querySelectorAll("article.post-card").forEach(function(e){n.appendChild(i.importNode(e,!0))});var e=this.response.querySelector("link[rel=next]");e?c.href=e.href:(t.removeEventListener("scroll",m),t.removeEventListener("resize",p)),h=i.documentElement.scrollHeight,s=r=!1}function e(){var e;s||(d+a<=h-o?r=!1:(s=!0,(e=new t.XMLHttpRequest).responseType="document",e.addEventListener("load",l),e.open("GET",c.href),e.send(null)))}function u(){r||t.requestAnimationFrame(e),r=!0}function m(){d=t.scrollY,u()}function p(){a=t.innerHeight,h=i.documentElement.scrollHeight,u()}!c||(n=i.querySelector(".post-feed"))&&(s=r=!(o=300),d=t.scrollY,a=t.innerHeight,h=i.documentElement.scrollHeight,t.addEventListener("scroll",m,{passive:!0}),t.addEventListener("resize",p),u())}(window,document); //# sourceMappingURL=casper.js.map \ No newline at end of file diff --git a/assets/built/casper.js.map b/assets/built/casper.js.map index 24ac7fe..abb2784 100644 --- a/assets/built/casper.js.map +++ b/assets/built/casper.js.map @@ -1 +1 @@ -{"version":3,"sources":["jquery.fitvids.js","infinite-scroll.js"],"names":["$","fn","fitVids","options","head","div","settings","customSelector","ignore","document","getElementById","getElementsByTagName","createElement","innerHTML","appendChild","childNodes","extend","this","each","selectors","push","ignoreList","$allVideos","find","join","not","aspectRatio","videoName","$this","parents","length","tagName","toLowerCase","parent","css","isNaN","attr","parseInt","height","width","_count","wrap","removeAttr","window","jQuery","Zepto","feedElement","buffer","ticking","loading","lastScrollY","lastWindowHeight","lastDocumentHeight","nextElement","querySelector","onPageLoad","status","removeEventListener","onScroll","onResize","response","querySelectorAll","forEach","item","importNode","resNextElement","href","documentElement","scrollHeight","onUpdate","xhr","XMLHttpRequest","responseType","addEventListener","open","send","requestTick","requestAnimationFrame","scrollY","innerHeight","passive"],"mappings":"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","file":"casper.js","sourcesContent":["/*jshint browser:true */\n/*!\n* FitVids 1.3\n*\n*\n* Copyright 2017, Chris Coyier + Dave Rupert + Ghost Foundation\n* This is an unofficial release, ported by John O'Nolan\n* Credit to Thierry Koblentz - http://www.alistapart.com/articles/creating-intrinsic-ratios-for-video/\n* Released under the MIT license\n*\n*/\n\n;(function( $ ){\n\n 'use strict';\n\n $.fn.fitVids = function( options ) {\n var settings = {\n customSelector: null,\n ignore: null\n };\n\n if(!document.getElementById('fit-vids-style')) {\n // appendStyles: https://github.com/toddmotto/fluidvids/blob/master/dist/fluidvids.js\n var head = document.head || document.getElementsByTagName('head')[0];\n var css = '.fluid-width-video-container{flex-grow: 1;width:100%;}.fluid-width-video-wrapper{width:100%;position:relative;padding:0;}.fluid-width-video-wrapper iframe,.fluid-width-video-wrapper object,.fluid-width-video-wrapper embed {position:absolute;top:0;left:0;width:100%;height:100%;}';\n var div = document.createElement(\"div\");\n div.innerHTML = '

x

';\n head.appendChild(div.childNodes[1]);\n }\n\n if ( options ) {\n $.extend( settings, options );\n }\n\n return this.each(function(){\n var selectors = [\n 'iframe[src*=\"player.vimeo.com\"]',\n 'iframe[src*=\"youtube.com\"]',\n 'iframe[src*=\"youtube-nocookie.com\"]',\n 'iframe[src*=\"kickstarter.com\"][src*=\"video.html\"]',\n 'object',\n 'embed'\n ];\n\n if (settings.customSelector) {\n selectors.push(settings.customSelector);\n }\n\n var ignoreList = '.fitvidsignore';\n\n if(settings.ignore) {\n ignoreList = ignoreList + ', ' + settings.ignore;\n }\n\n var $allVideos = $(this).find(selectors.join(','));\n $allVideos = $allVideos.not('object object'); // SwfObj conflict patch\n $allVideos = $allVideos.not(ignoreList); // Disable FitVids on this video.\n\n $allVideos.each(function(){\n var $this = $(this);\n if($this.parents(ignoreList).length > 0) {\n return; // Disable FitVids on this video.\n }\n if (this.tagName.toLowerCase() === 'embed' && $this.parent('object').length || $this.parent('.fluid-width-video-wrapper').length) { return; }\n if ((!$this.css('height') && !$this.css('width')) && (isNaN($this.attr('height')) || isNaN($this.attr('width'))))\n {\n $this.attr('height', 9);\n $this.attr('width', 16);\n }\n var height = ( this.tagName.toLowerCase() === 'object' || ($this.attr('height') && !isNaN(parseInt($this.attr('height'), 10))) ) ? parseInt($this.attr('height'), 10) : $this.height(),\n width = !isNaN(parseInt($this.attr('width'), 10)) ? parseInt($this.attr('width'), 10) : $this.width(),\n aspectRatio = height / width;\n if(!$this.attr('name')){\n var videoName = 'fitvid' + $.fn.fitVids._count;\n $this.attr('name', videoName);\n $.fn.fitVids._count++;\n }\n $this.wrap('
').parent('.fluid-width-video-wrapper').css('padding-top', (aspectRatio * 100)+'%');\n $this.removeAttr('height').removeAttr('width');\n });\n });\n };\n\n // Internal counter for unique video names.\n $.fn.fitVids._count = 0;\n\n// Works with either jQuery or Zepto\n})( window.jQuery || window.Zepto );\n","/* eslint-env browser */\n\n/**\n * Infinite Scroll\n * Used on all pages where there is a list of posts (homepage, tag index, etc).\n *\n * When the page is scrolled to 300px from the bottom, the next page of posts\n * is fetched by following the the that is output\n * by {{ghost_head}}.\n *\n * The individual post items are extracted from the fetched pages by looking for\n * a wrapper element with the class \"post-card\". Any found elements are appended\n * to the element with the class \"post-feed\" in the currently viewed page.\n */\n\n(function (window, document) {\n // next link element\n var nextElement = document.querySelector('link[rel=next]');\n if (!nextElement) {\n return;\n }\n\n // post feed element\n var feedElement = document.querySelector('.post-feed');\n if (!feedElement) {\n return;\n }\n\n var buffer = 300;\n\n var ticking = false;\n var loading = false;\n\n var lastScrollY = window.scrollY;\n var lastWindowHeight = window.innerHeight;\n var lastDocumentHeight = document.documentElement.scrollHeight;\n\n function onPageLoad() {\n if (this.status === 404) {\n window.removeEventListener('scroll', onScroll);\n window.removeEventListener('resize', onResize);\n return;\n }\n\n // append contents\n var postElements = this.response.querySelectorAll('article.post-card');\n postElements.forEach(function (item) {\n // document.importNode is important, without it the item's owner\n // document will be different which can break resizing of\n // `object-fit: cover` images in Safari\n feedElement.appendChild(document.importNode(item, true));\n });\n\n // set next link\n var resNextElement = this.response.querySelector('link[rel=next]');\n if (resNextElement) {\n nextElement.href = resNextElement.href;\n } else {\n window.removeEventListener('scroll', onScroll);\n window.removeEventListener('resize', onResize);\n }\n\n // sync status\n lastDocumentHeight = document.documentElement.scrollHeight;\n ticking = false;\n loading = false;\n }\n\n function onUpdate() {\n // return if already loading\n if (loading) {\n return;\n }\n\n // return if not scroll to the bottom\n if (lastScrollY + lastWindowHeight <= lastDocumentHeight - buffer) {\n ticking = false;\n return;\n }\n\n loading = true;\n\n var xhr = new window.XMLHttpRequest();\n xhr.responseType = 'document';\n\n xhr.addEventListener('load', onPageLoad);\n\n xhr.open('GET', nextElement.href);\n xhr.send(null);\n }\n\n function requestTick() {\n ticking || window.requestAnimationFrame(onUpdate);\n ticking = true;\n }\n\n function onScroll() {\n lastScrollY = window.scrollY;\n requestTick();\n }\n\n function onResize() {\n lastWindowHeight = window.innerHeight;\n lastDocumentHeight = document.documentElement.scrollHeight;\n requestTick();\n }\n\n window.addEventListener('scroll', onScroll, {passive: true});\n window.addEventListener('resize', onResize);\n\n requestTick();\n})(window, document);\n"]} \ No newline at end of file +{"version":3,"sources":["imagesloaded.pkgd.min.js","jquery.fitvids.js","dropdown.js","infinite-scroll.js"],"names":["e","t","define","amd","module","exports","EvEmitter","window","this","prototype","on","i","_events","n","indexOf","push","once","_onceEvents","off","length","splice","emitEvent","slice","o","r","apply","allOff","require","imagesLoaded","s","document","querySelectorAll","elements","Array","isArray","d","call","options","getImages","h","jqDeferred","Deferred","setTimeout","check","bind","a","error","img","url","element","Image","jQuery","console","Object","create","images","forEach","addElementImages","nodeName","addImage","background","addElementBackgroundImages","nodeType","u","1","9","11","getComputedStyle","exec","backgroundImage","addBackground","progress","progressedCount","hasAnyBroken","complete","isLoaded","notify","debug","log","isComplete","getIsImageComplete","confirm","naturalWidth","proxyImage","addEventListener","src","handleEvent","type","onload","unbindEvents","onerror","removeEventListener","makeJQueryPlugin","fn","promise","$","fitVids","head","div","settings","customSelector","ignore","getElementById","getElementsByTagName","createElement","innerHTML","appendChild","childNodes","extend","each","selectors","ignoreList","$allVideos","find","join","not","aspectRatio","videoName","$this","parents","tagName","toLowerCase","parent","css","isNaN","attr","parseInt","height","width","_count","wrap","removeAttr","Zepto","mediaQuery","matchMedia","menu","querySelector","nav","logo","navHTML","matches","items","item","index","style","transitionDelay","makeDropdown","submenuItems","offsetWidth","lastElementChild","unshift","remove","toggle","setAttribute","wrapper","body","classList","add","gridTemplateRows","Math","ceil","child","contains","target","feedElement","buffer","ticking","loading","lastScrollY","lastWindowHeight","lastDocumentHeight","nextElement","onPageLoad","status","onScroll","onResize","response","importNode","resNextElement","href","documentElement","scrollHeight","onUpdate","xhr","XMLHttpRequest","responseType","open","send","requestTick","requestAnimationFrame","scrollY","innerHeight","passive"],"mappings":"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","file":"casper.js","sourcesContent":["/*!\n * imagesLoaded PACKAGED v4.1.4\n * JavaScript is all like \"You images are done yet or what?\"\n * MIT License\n */\n\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){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return n.indexOf(t)==-1&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return n!=-1&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){i=i.slice(0),t=t||[];for(var n=this._onceEvents&&this._onceEvents[e],o=0;o';\n head.appendChild(div.childNodes[1]);\n }\n\n if ( options ) {\n $.extend( settings, options );\n }\n\n return this.each(function(){\n var selectors = [\n 'iframe[src*=\"player.vimeo.com\"]',\n 'iframe[src*=\"youtube.com\"]',\n 'iframe[src*=\"youtube-nocookie.com\"]',\n 'iframe[src*=\"kickstarter.com\"][src*=\"video.html\"]',\n 'object',\n 'embed'\n ];\n\n if (settings.customSelector) {\n selectors.push(settings.customSelector);\n }\n\n var ignoreList = '.fitvidsignore';\n\n if(settings.ignore) {\n ignoreList = ignoreList + ', ' + settings.ignore;\n }\n\n var $allVideos = $(this).find(selectors.join(','));\n $allVideos = $allVideos.not('object object'); // SwfObj conflict patch\n $allVideos = $allVideos.not(ignoreList); // Disable FitVids on this video.\n\n $allVideos.each(function(){\n var $this = $(this);\n if($this.parents(ignoreList).length > 0) {\n return; // Disable FitVids on this video.\n }\n if (this.tagName.toLowerCase() === 'embed' && $this.parent('object').length || $this.parent('.fluid-width-video-wrapper').length) { return; }\n if ((!$this.css('height') && !$this.css('width')) && (isNaN($this.attr('height')) || isNaN($this.attr('width'))))\n {\n $this.attr('height', 9);\n $this.attr('width', 16);\n }\n var height = ( this.tagName.toLowerCase() === 'object' || ($this.attr('height') && !isNaN(parseInt($this.attr('height'), 10))) ) ? parseInt($this.attr('height'), 10) : $this.height(),\n width = !isNaN(parseInt($this.attr('width'), 10)) ? parseInt($this.attr('width'), 10) : $this.width(),\n aspectRatio = height / width;\n if(!$this.attr('name')){\n var videoName = 'fitvid' + $.fn.fitVids._count;\n $this.attr('name', videoName);\n $.fn.fitVids._count++;\n }\n $this.wrap('
').parent('.fluid-width-video-wrapper').css('padding-top', (aspectRatio * 100)+'%');\n $this.removeAttr('height').removeAttr('width');\n });\n });\n };\n\n // Internal counter for unique video names.\n $.fn.fitVids._count = 0;\n\n// Works with either jQuery or Zepto\n})( window.jQuery || window.Zepto );\n","(function () {\n const mediaQuery = window.matchMedia('(max-width: 991px)');\n\n const menu = document.querySelector('.gh-head-menu');\n const nav = menu.querySelector('.nav');\n if (!nav) return;\n\n const logo = document.querySelector('.gh-head-logo');\n const navHTML = nav.innerHTML;\n\n if (mediaQuery.matches) {\n const items = nav.querySelectorAll('li');\n items.forEach(function (item, index) {\n item.style.transitionDelay = 0.03 * (index + 1) + 's';\n });\n }\n\n const makeDropdown = function () {\n if (mediaQuery.matches) return;\n const submenuItems = [];\n\n while ((nav.offsetWidth + 64) > menu.offsetWidth) {\n if (nav.lastElementChild) {\n submenuItems.unshift(nav.lastElementChild);\n nav.lastElementChild.remove();\n } else {\n return;\n }\n }\n\n if (!submenuItems.length) {\n document.body.classList.add('is-dropdown-loaded');\n return;\n }\n\n const toggle = document.createElement('button');\n toggle.setAttribute('class', 'nav-more-toggle');\n toggle.setAttribute('aria-label', 'More');\n toggle.innerHTML = '';\n\n const wrapper = document.createElement('div');\n wrapper.setAttribute('class', 'gh-dropdown');\n\n if (submenuItems.length >= 10) {\n document.body.classList.add('is-dropdown-mega');\n wrapper.style.gridTemplateRows = 'repeat(' + Math.ceil(submenuItems.length / 2) + ', 1fr)';\n } else {\n document.body.classList.remove('is-dropdown-mega');\n }\n\n submenuItems.forEach(function (child) {\n wrapper.appendChild(child);\n });\n\n toggle.appendChild(wrapper);\n nav.appendChild(toggle);\n\n document.body.classList.add('is-dropdown-loaded');\n\n toggle.addEventListener('click', function () {\n document.body.classList.toggle('is-dropdown-open');\n });\n\n window.addEventListener('click', function (e) {\n if (!toggle.contains(e.target) && document.body.classList.contains('is-dropdown-open')) {\n document.body.classList.remove('is-dropdown-open');\n }\n });\n }\n\n imagesLoaded(logo, function () {\n makeDropdown();\n });\n\n window.addEventListener('resize', function () {\n setTimeout(function () {\n nav.innerHTML = navHTML;\n makeDropdown();\n }, 1);\n });\n})();\n","/* eslint-env browser */\n\n/**\n * Infinite Scroll\n * Used on all pages where there is a list of posts (homepage, tag index, etc).\n *\n * When the page is scrolled to 300px from the bottom, the next page of posts\n * is fetched by following the the that is output\n * by {{ghost_head}}.\n *\n * The individual post items are extracted from the fetched pages by looking for\n * a wrapper element with the class \"post-card\". Any found elements are appended\n * to the element with the class \"post-feed\" in the currently viewed page.\n */\n\n(function (window, document) {\n // next link element\n var nextElement = document.querySelector('link[rel=next]');\n if (!nextElement) {\n return;\n }\n\n // post feed element\n var feedElement = document.querySelector('.post-feed');\n if (!feedElement) {\n return;\n }\n\n var buffer = 300;\n\n var ticking = false;\n var loading = false;\n\n var lastScrollY = window.scrollY;\n var lastWindowHeight = window.innerHeight;\n var lastDocumentHeight = document.documentElement.scrollHeight;\n\n function onPageLoad() {\n if (this.status === 404) {\n window.removeEventListener('scroll', onScroll);\n window.removeEventListener('resize', onResize);\n return;\n }\n\n // append contents\n var postElements = this.response.querySelectorAll('article.post-card');\n postElements.forEach(function (item) {\n // document.importNode is important, without it the item's owner\n // document will be different which can break resizing of\n // `object-fit: cover` images in Safari\n feedElement.appendChild(document.importNode(item, true));\n });\n\n // set next link\n var resNextElement = this.response.querySelector('link[rel=next]');\n if (resNextElement) {\n nextElement.href = resNextElement.href;\n } else {\n window.removeEventListener('scroll', onScroll);\n window.removeEventListener('resize', onResize);\n }\n\n // sync status\n lastDocumentHeight = document.documentElement.scrollHeight;\n ticking = false;\n loading = false;\n }\n\n function onUpdate() {\n // return if already loading\n if (loading) {\n return;\n }\n\n // return if not scroll to the bottom\n if (lastScrollY + lastWindowHeight <= lastDocumentHeight - buffer) {\n ticking = false;\n return;\n }\n\n loading = true;\n\n var xhr = new window.XMLHttpRequest();\n xhr.responseType = 'document';\n\n xhr.addEventListener('load', onPageLoad);\n\n xhr.open('GET', nextElement.href);\n xhr.send(null);\n }\n\n function requestTick() {\n ticking || window.requestAnimationFrame(onUpdate);\n ticking = true;\n }\n\n function onScroll() {\n lastScrollY = window.scrollY;\n requestTick();\n }\n\n function onResize() {\n lastWindowHeight = window.innerHeight;\n lastDocumentHeight = document.documentElement.scrollHeight;\n requestTick();\n }\n\n window.addEventListener('scroll', onScroll, {passive: true});\n window.addEventListener('resize', onResize);\n\n requestTick();\n})(window, document);\n"]} \ No newline at end of file diff --git a/assets/built/screen.css b/assets/built/screen.css index 7eb1487..50fc6e4 100644 --- a/assets/built/screen.css +++ b/assets/built/screen.css @@ -1,2 +1,2 @@ -a,abbr,acronym,address,applet,article,aside,audio,big,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,ul,var,video{border:0;font:inherit;font-size:100%;margin:0;padding:0;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}img{display:block;height:auto;max-width:100%}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;box-sizing:border-box;font-family:sans-serif}*,:after,:before{box-sizing:inherit}a{background-color:transparent}a:active,a:hover{outline:0}b,strong{font-weight:700}dfn,em,i{font-style:italic}h1{font-size:2em;margin:.67em 0}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}mark{background-color:#fdffb6}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}kbd{background:#f6f8fa;border:1px solid rgba(124,139,154,.25);border-radius:6px;box-shadow:inset 0 -1px 0 rgba(124,139,154,.25);font-family:var(--font-mono);font-size:1.5rem;padding:3px 5px}@media (max-width:600px){kbd{font-size:1.3rem}}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{border:none;overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input:focus{outline:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{border:0;padding:0}textarea{overflow:auto}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}html{-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:62.5%}body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga" on;background:#fff;color:var(--color-darkgrey);font-family:var(--font-sans);font-size:1.6rem;font-style:normal;font-weight:400;letter-spacing:0;line-height:1.6em}::-moz-selection{background:#daf2fd;text-shadow:none}::selection{background:#daf2fd;text-shadow:none}hr{border:0;border-top:1px solid #f0f0f0;display:block;height:1px;margin:2.5em 0 3.5em;padding:0;position:relative;width:100%}audio,canvas,iframe,img,svg,video{vertical-align:middle}fieldset{border:0;margin:0;padding:0}textarea{resize:vertical}::not(.gh-content) blockquote,::not(.gh-content) dl,::not(.gh-content) ol,::not(.gh-content) p,::not(.gh-content) ul{margin:0 0 1.5em}ol,ul{padding-left:1.3em;padding-right:1.5em}ol ol,ol ul,ul ol,ul ul{margin:.5em 0 1em}ul{list-style:disc}ol{list-style:decimal}ol,ul{max-width:100%}li{line-height:1.6em;padding-left:.3em}li+li{margin-top:.5em}dt{color:#daf2fd;float:left;font-weight:500;margin:0 20px 0 0;text-align:right;width:120px}dd{margin:0 0 5px;text-align:left}blockquote{border-left:#daf2fd;margin:1.5em 0;padding:0 1.6em}blockquote small{display:inline-block;font-size:.9em;margin:.8em 0 .8em 1.5em;opacity:.8}blockquote small:before{content:"\2014 \00A0"}blockquote cite{font-weight:700}blockquote cite a{font-weight:400}a{color:#15171a;text-decoration:none}h1,h2,h3,h4,h5,h6{text-rendering:optimizeLegibility;font-weight:600;letter-spacing:-.01em;line-height:1.15;margin-top:0}h1{font-size:4.8rem;font-weight:700;letter-spacing:-.015em;margin:0 0 .5em}@media (max-width:600px){h1{font-size:2.8rem}}h2{font-size:2.8rem;font-weight:700;margin:1.5em 0 .5em}@media (max-width:600px){h2{font-size:2.3rem}}h3{font-size:2.4rem;font-weight:600;margin:1.5em 0 .5em}@media (max-width:600px){h3{font-size:1.7rem}}h4{font-size:2rem;margin:1.5em 0 .5em}@media (max-width:600px){h4{font-size:1.7rem}}h5{font-size:2rem}h5,h6{margin:1.5em 0 .5em}h6{font-size:1.8rem}:root{--color-green:#a4d037;--color-yellow:#fecd35;--color-red:#f05230;--color-darkgrey:#15171a;--color-midgrey:#738a94;--color-lightgrey:#f1f1f1;--color-secondary-text:#979797;--color-border:#e1e1e1;--color-wash:#e5eff5;--color-darkmode:#151719;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-serif:Georgia,Times,serif;--font-mono:Menlo,Courier,monospace}.viewport{display:flex;flex-direction:column;min-height:100vh}.site-content{flex-grow:1}.outer{padding:0 max(4vmin,20px);position:relative}.inner{margin:0 auto;max-width:1200px;width:100%}.site-header{background:var(--ghost-accent-color);color:#fff;position:relative}.site-header-cover{bottom:0;height:100%;left:0;-o-object-fit:cover;object-fit:cover;position:absolute;right:0;top:0;width:100%}.site-header-content{align-items:center;color:var(--color-darkgrey);display:flex;padding-bottom:6.4vmin;padding-top:6.4vmin;position:relative;text-align:center;z-index:100}.has-cover .site-header-content{background-color:var(--ghost-accent-color);color:#fff;min-height:560px}body:not(.has-cover) .site-header-content:not(.left-aligned){padding-bottom:max(4.8vmin,24px)}.site-header-content.left-aligned{padding-bottom:0;text-align:left}.has-cover .site-header-content.left-aligned{align-items:flex-end;padding-bottom:6.4vmin}.site-header-content.no-content{padding-top:0}.site-header-inner{position:relative}.site-header-content.left-aligned .site-header-inner{align-items:flex-start}.site-logo{flex-shrink:0;margin:0 auto;max-height:120px}.site-header-content.left-aligned .site-logo{margin-left:0;margin-right:auto;max-height:96px}.site-title{font-size:5rem;font-weight:800;margin:0;padding:0;z-index:10}.has-serif-title .site-title{font-family:var(--font-serif)}.has-cover .site-title{font-size:6rem}.site-header-content.left-aligned .site-title{font-size:4.4rem}.has-cover .site-header-content.left-aligned .site-title{font-size:4.6rem}.site-description{display:inline-block;font-size:2.4rem;font-weight:500;line-height:1.4;max-width:560px;z-index:10}:is(.site-logo,.site-title)+.site-description{font-size:2.1rem;font-weight:400;margin-top:8px}.site-logo+.site-description{margin-top:20px}.site-title+.site-description{color:var(--color-secondary-text)}.has-cover .site-description{color:#fff;font-size:3.2rem;letter-spacing:-.005em}.has-cover :is(.site-logo,.site-title)+.site-description{font-size:2.4rem}.has-cover .site-header-content.left-aligned :is(.site-logo,.site-title)+.site-description{font-size:2.2rem}@media (max-width:767px){.has-cover .site-header-content{min-height:240px}.site-header-inner{gap:16px}.site-logo{max-width:60%}.site-title{font-size:3.4rem!important}.site-description{font-size:1.9rem!important}.site-logo+.site-description{margin-top:12px!important}.site-title+.site-description{margin-top:4px!important}}.gh-head{background-color:#fff;font-size:1.6rem;line-height:1.3em;padding-bottom:min(24px,3.6vmin);padding-top:min(24px,3.6vmin)}.has-cover:not(.home-template) .gh-head{background-color:var(--ghost-accent-color);color:#fff}.home-template.has-cover .gh-head{background-color:transparent;color:#fff;left:0;position:absolute;right:0;top:0;z-index:2000}.gh-head a{text-decoration:none}.gh-head-inner{grid-gap:40px;display:grid;grid-auto-flow:row dense;grid-template-columns:auto auto 1fr}.gh-head-brand{align-items:center;display:flex;height:40px;max-width:400px;word-break:break-all}.gh-head-logo{color:inherit;display:block;font-size:2.6rem;font-weight:800;letter-spacing:-.02em}.gh-head-logo.no-image{margin-top:-2px}.has-cover .gh-head-logo{color:#fff}.no-logo .gh-head-logo{display:none}.gh-head-logo img{max-height:26px}.gh-head-brand-wrapper,.gh-head-menu{align-items:center;display:flex}.gh-head-menu{font-weight:500;margin-top:1px}.no-logo .gh-head-menu{margin-left:-40px}.gh-head-menu .nav{align-items:center;display:inline-flex;flex-wrap:wrap;gap:32px;list-style:none;margin:0;padding:0}.gh-head-menu .nav li{margin:0;padding:0}.gh-head-menu .nav a{color:inherit;display:inline-block;line-height:1.7}.gh-head-menu .nav a:hover{opacity:.9}.gh-social{align-items:center;display:flex;gap:20px}.gh-social-link{color:inherit;line-height:0}.gh-social-link:hover{opacity:.9}.gh-social-link svg{height:18px;width:18px}.gh-head-actions{align-items:center;display:flex;gap:24px;justify-content:flex-end;list-style:none;text-align:right}.gh-head-button{align-items:center;background:var(--ghost-accent-color);border-radius:6px;color:#fff;display:inline-flex;font-size:1.5rem;font-weight:600;height:40px;letter-spacing:-.005em;padding:8px 16px}.has-cover .gh-head-button{background:#fff;color:var(--color-darkgrey)}.gh-search{align-items:center;background-color:transparent;border:0;cursor:pointer;display:inline-flex;height:32px;justify-content:center;outline:none;padding:0;width:32px}.gh-search:hover{opacity:.9}.gh-head-brand .gh-search{margin-right:8px}.gh-head-actions .gh-search{margin-right:-10px}@media (max-width:991px){.gh-head-actions .gh-search{display:none}}@media (min-width:992px){.gh-head-brand .gh-search{display:none}}.gh-burger{cursor:pointer;display:none;position:relative}.gh-burger-box{align-items:center;display:flex;height:33px;justify-content:center;position:relative;width:33px}.has-cover .gh-burger-box{color:#fff}.gh-burger-inner{height:100%;width:100%}.gh-burger-box:before{transition:transform .3s cubic-bezier(.2,.6,.3,1),width .3s cubic-bezier(.2,.6,.3,1)}.gh-burger-box:before,.gh-burger-inner:after,.gh-burger-inner:before{background:currentcolor;bottom:0;content:"";display:block;height:1px;left:0;margin:auto;position:absolute;top:0;width:100%;will-change:transform,width}.gh-burger-inner:after,.gh-burger-inner:before{transition:transform .25s cubic-bezier(.2,.7,.3,1),width .25s cubic-bezier(.2,.7,.3,1)}.gh-burger-inner:before{transform:translatey(-6px)}.gh-burger-inner:after{transform:translatey(6px)}body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner:before{transform:translatey(-8px)}body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner:after{transform:translatey(8px)}.gh-head-open .gh-burger-box:before{transform:translatex(19px);transition:transform .2s cubic-bezier(.2,.7,.3,1),width .2s cubic-bezier(.2,.7,.3,1);width:0}.gh-head-open .gh-burger-inner:before{transform:translatex(6px) rotate(135deg);width:26px}.gh-head-open .gh-burger-inner:after{transform:translatex(6px) rotate(-135deg);width:26px}@media (max-width:991px){.gh-burger{display:inline-block}#gh-head{overflow:hidden}#gh-head .gh-head-inner{grid-template-columns:1fr;height:100%}#gh-head .gh-head-brand{align-items:center;display:flex;grid-column-start:auto;justify-content:space-between;max-width:none;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:10}.no-logo #gh-head .gh-head-brand{justify-content:flex-end}#gh-head .gh-head-menu{align-self:center;font-size:3.6rem;font-weight:300;line-height:1.1em;margin:0 0 10vh;text-align:center}#gh-head .gh-head-menu,#gh-head .gh-head-menu .nav{align-items:center;display:flex;flex-direction:column}#gh-head .gh-head-menu .nav{font-weight:500;gap:16px}#gh-head .gh-head-actions{flex-direction:column-reverse;justify-content:center;padding:20px 0 32px;text-align:left}#gh-head .gh-head-actions,#gh-head .gh-head-menu{display:none}.gh-head-open{height:100vh;overflow:hidden}.gh-head-open #gh-head{bottom:0;left:0;overflow-y:scroll;position:fixed;right:0;top:0;z-index:3999999}.gh-head-open #gh-head .gh-head-inner{grid-template-rows:auto 1fr auto}.gh-head-open #gh-head .gh-head-actions,.gh-head-open #gh-head .gh-head-menu{display:flex}}@media (max-width:600px){#gh-head .gh-head-menu{font-size:6vmin}}.has-cover.gh-head-open .gh-head{background:var(--ghost-accent-color)}.post-feed{display:grid;gap:4.8vmin 4vmin;grid-template-columns:repeat(6,1fr);padding:max(4.8vmin,36px) 0 0;position:relative}:is(.tag-template,.author-template) .post-feed{margin-top:4vmin}@media (max-width:991px){.post-feed{grid-template-columns:1fr 1fr}}@media (max-width:767px){.post-feed{grid-gap:40px;grid-template-columns:1fr}}.post-card{background-size:cover;display:flex;flex-direction:column;grid-column:span 2;position:relative;word-break:break-word}.post-card-image-link{display:block;margin-bottom:32px;overflow:hidden;position:relative}.post-card-image-link:after{content:"";display:block;padding-bottom:55%}.post-card[class*=post-access-] .post-card-image-link:after{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:rgba(0,0,0,.5)}.post-card.keep-ratio[class*=post-access-] .post-card-image-link:after{inset:0;padding-bottom:0;position:absolute}.post-card.keep-ratio:not(.post-card-large):not(.post-card-full) .post-card-image-link:after{padding-bottom:0}.post-card-image{background:var(--color-lightgrey) no-repeat center center;height:100%;inset:0;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%}.post-card.keep-ratio:not(.post-card-large):not(.post-card-full) .post-card-image{position:static}.post-card-access{align-items:center;color:#fff;display:flex;font-size:1.5rem;font-weight:600;gap:4px;inset:0;justify-content:center;position:absolute;z-index:10}.post-card-content-link{color:var(--color-darkgrey);display:block;position:relative}.post-card-content-link:hover{text-decoration:none}.post-feed .no-image .post-card-content-link{padding:0}.no-image .post-card-header{margin-top:0}.post-card-tags{align-items:center;color:var(--color-secondary-text);display:flex;font-size:1.4rem;font-weight:600;gap:12px;letter-spacing:-.005em;line-height:1;margin:0 0 10px}.post-card-featured{align-items:center;color:var(--ghost-accent-color);display:flex;gap:3px;padding-left:18px;position:relative}.post-card-featured svg{left:0;position:absolute}.post-card-title{font-size:2.6rem;font-weight:800;margin:0}.post-card-content-link:hover .post-card-title{opacity:.9}.no-image .post-card-title{margin-top:0}.has-serif-title .post-card-title{font-family:var(--font-serif);letter-spacing:-.005em}.post-card-title svg{margin-left:-1px;margin-top:-3px}.post-card-content{display:flex;flex-direction:column;flex-grow:1}.post-card-excerpt{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;font-size:1.6rem;line-height:1.5;margin-top:12px;max-width:720px;overflow-y:hidden;word-break:break-word}.has-sans-body .post-card-excerpt{font-family:var(--font-sans)}.post-card:not(.post-card-large):not(.post-card-full):not(.dynamic):not(.no-image) .post-card-excerpt{-webkit-line-clamp:2}:is(.tag-template,.author-template) .post-card-excerpt{margin-top:6px}.post-card-meta{color:var(--color-secondary-text);font-size:1.3rem;margin-top:12px;padding:0}.post-card-meta,.post-card-meta>*{align-items:center;display:flex;gap:6px}.post-card-meta>*+:not(script):before{background-color:var(--color-secondary-text);border-radius:50%;content:"";height:2px;width:2px}.post-card-meta .sep{margin:0 4px}.author-profile-image{background:#fff;border-radius:100%;display:block;height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.author-list{display:flex;flex-wrap:wrap;list-style:none;margin:0 0 0 4px;padding:0}.author-list-item{flex-shrink:0;margin:0;padding:0;position:relative}@media (min-width:1001px){.post-card-large{grid-gap:4vmin;border-top:0;display:grid;grid-column:span 6;grid-template-columns:repeat(3,1fr)}.post-card-large:not(.no-image) .post-card-header{margin-top:0}.post-card-large .post-card-image-link{grid-column:span 2;margin-bottom:0;position:relative}.post-card-large .post-card-content{grid-column:span 1}.post-card-large.no-image .post-card-content{grid-column:span 2}.post-card-large .post-card-image{height:100%;position:absolute;width:100%}.post-card-large .post-card-tags{margin-bottom:12px}.post-card-large .post-card-title{font-size:4.4rem;line-height:1;margin-top:0}.post-card-large .post-card-excerpt{margin-top:16px}.post-card-full{grid-column:span 6}.post-card-full .post-card-image-link{margin-bottom:40px}.post-card-full .post-card-tags{margin-bottom:14px}.post-card-full .post-card-title{font-size:6.4rem;line-height:.95}.post-card-full .post-card-excerpt{font-size:1.8rem;margin-top:20px}.post-card-large+.post-card-large:nth-child(2n){margin:32px 0}.post-card-large+.post-card-large:nth-child(2n) .post-card-content{order:-1}.post-card.dynamic{grid-column:span 3}.post-card.dynamic .post-card-title{font-size:3rem}}.article{padding:max(8vmin,40px) 0 max(8vmin,64px);word-break:break-word}.page-template .article{padding-top:max(12vmin,64px)}.article-header{padding:0 0 max(6.4vmin,40px)}.page-template .article-header{padding-bottom:max(3.2vmin,28px)}.article-tag{font-size:1.6rem;margin-bottom:16px}.article-tag a{color:var(--color-secondary-text)}.article-title{color:var(--color-darkgrey);font-size:clamp(3.2rem,5vw,5.2rem);font-weight:800;line-height:1;margin-bottom:0}.has-serif-title .article-title{font-family:var(--font-serif)}.article-excerpt{color:var(--color-darkgrey);font-size:2rem;line-height:1.45;margin-top:20px;max-width:720px}.gh-canvas .article-image{grid-column:wide-start/wide-end;margin:max(6.4vmin,40px) 0 0;width:100%}.image-full .article-image{grid-column:full-start/full-end}.image-small .article-image{grid-column:main-start/main-end}.gh-canvas .article-image img{display:block;margin-left:auto;margin-right:auto;width:100%}@media (max-width:767px){.article-excerpt{font-size:1.7rem;margin-top:14px}}.gh-canvas{display:grid;grid-template-columns:[full-start] minmax(max(4vmin,20px),auto) [wide-start] minmax(auto,240px) [main-start] min(720px,calc(100% - max(8vmin, 40px))) [main-end] minmax(auto,240px) [wide-end] minmax(max(4vmin,20px),auto) [full-end]}.gh-canvas>*{grid-column:main-start/main-end}.kg-width-wide{grid-column:wide-start/wide-end}.kg-width-full{grid-column:full-start/full-end}.kg-width-full img{width:100%}.gh-content>*+*{margin-bottom:0;margin-top:max(3.2vmin,24px)}.gh-content>[id]{color:var(--color-darkgrey);margin:0}.has-serif-title .gh-content>[id]{font-family:var(--font-serif)}.gh-content>[id]:not(:first-child){margin:2em 0 0}.gh-content>[id]+*{margin-top:1.5rem!important}.gh-content>blockquote,.gh-content>hr{margin-top:max(4.8vmin,32px);position:relative}.gh-content>blockquote+*,.gh-content>hr+*{margin-top:max(4.8vmin,32px)!important}.gh-content a{color:var(--ghost-accent-color);text-decoration:underline;word-break:break-word}.gh-content>blockquote:not([class]),.gh-content>dl,.gh-content>ol,.gh-content>p,.gh-content>ul{font-family:var(--font-serif);font-size:2rem;font-weight:400;line-height:1.6em}.gh-content .kg-callout-card .kg-callout-text,.gh-content .kg-toggle-card .kg-toggle-content>ol,.gh-content .kg-toggle-card .kg-toggle-content>p,.gh-content .kg-toggle-card .kg-toggle-content>ul{font-family:var(--font-serif);font-size:1.9rem;font-weight:400;line-height:1.6em}.gh-content .kg-product-card .kg-product-card-description>ol,.gh-content .kg-product-card .kg-product-card-description>p,.gh-content .kg-product-card .kg-product-card-description>ul{font-size:1.7rem;line-height:1.6em}.gh-content .kg-callout-card .kg-callout-emoji{font-size:2.1rem;line-height:1.4em}.gh-content .kg-toggle-card .kg-toggle-heading-text{font-size:2rem}.has-sans-body .gh-content .kg-callout-card .kg-callout-text,.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content>ol,.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content>p,.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content>ul,.has-sans-body .gh-content>blockquote,.has-sans-body .gh-content>dl,.has-sans-body .gh-content>ol,.has-sans-body .gh-content>p,.has-sans-body .gh-content>ul{font-family:var(--font-sans)}.gh-content .kg-product-card .kg-product-card-description>ol,.gh-content .kg-product-card .kg-product-card-description>ul,.gh-content .kg-toggle-card .kg-toggle-content>ol,.gh-content .kg-toggle-card .kg-toggle-content>ul,.gh-content>dl,.gh-content>ol,.gh-content>ul{padding-left:1.9em}.gh-content>blockquote:not([class]){font-style:italic;padding:0;position:relative}.gh-content>blockquote:not([class]):before{background:var(--ghost-accent-color);bottom:0;content:"";left:-1.5em;position:absolute;top:0;width:.3rem}.gh-content :not(pre)>code{background:#f0f6f9;border:1px solid #e1eaef;border-radius:.25em;color:#15171a;font-size:.9em;font-weight:400!important;line-height:1em;padding:.15em .4em;vertical-align:middle}.gh-content pre{background:var(--color-darkgrey);border-radius:5px;box-shadow:0 2px 6px -2px rgba(0,0,0,.1),0 0 1px rgba(0,0,0,.4);color:var(--color-wash);font-size:1.4rem;line-height:1.5em;overflow:auto;padding:16px 20px}@media (max-width:650px){.gh-content .kg-callout-card .kg-callout-text,.gh-content .kg-toggle-card .kg-toggle-content>ol,.gh-content .kg-toggle-card .kg-toggle-content>p,.gh-content .kg-toggle-card .kg-toggle-content>ul,.gh-content>blockquote:not([class]),.gh-content>dl,.gh-content>ol,.gh-content>p,.gh-content>ul{font-size:1.8rem}.gh-content .kg-product-card .kg-product-card-description>ol,.gh-content .kg-product-card .kg-product-card-description>p,.gh-content .kg-product-card .kg-product-card-description>ul{font-size:1.6rem}.gh-content blockquote:not([class]):before{left:min(-4vmin,-20px)}}.gh-content .kg-card+:not(.kg-card),.gh-content :not(.kg-card):not([id])+.kg-card{margin-bottom:0;margin-top:6vmin}.kg-embed-card{align-items:center;display:flex;flex-direction:column;width:100%}.kg-image-card img{margin:auto}.has-serif-title .kg-toggle-card .kg-toggle-heading-text{font-family:var(--font-serif)}.gh-content .kg-callout-card-accent a{text-decoration:underline}.kg-blockquote-alt{color:var(--color-midgrey);font-family:var(--font-serif)}.has-sans-body .kg-blockquote-alt{font-family:var(--font-sans)}.kg-card.kg-header-card.kg-style-dark{background:var(--color-darkgrey)}.kg-header-card.kg-style-light h2.kg-header-card-header{color:#0a0b0c}.has-serif-title .kg-header-card h2.kg-header-card-header{font-family:var(--font-serif)}figcaption{color:rgba(0,0,0,.5);font-size:1.3rem;line-height:1.4em;padding:1.5rem 1.5rem 0;text-align:center}figcaption strong{color:rgba(0,0,0,.8)}figcaption a{text-decoration:underline}iframe.instagram-media{margin:6vmin auto 0!important}iframe.instagram-media+script+:not([id]){margin-top:6vmin}.kg-width-full.kg-card-hascaption{display:grid;grid-template-columns:inherit}.kg-width-wide.kg-card-hascaption img{grid-column:wide-start/wide-end}.kg-width-full.kg-card-hascaption img{grid-column:1/-1}.kg-width-full.kg-card-hascaption figcaption{grid-column:main-start/main-end}.article-comments{margin:6vmin 0 0}.footnotes-sep{margin-bottom:30px}.footnotes{font-size:1.5rem}.footnotes p{margin:0}.footnote-backref{box-shadow:none!important;font-size:1.2rem;font-weight:700;text-decoration:none!important}.gh-content table:not(.gist table){-webkit-overflow-scrolling:touch;background:radial-gradient(ellipse at left,rgba(0,0,0,.2) 0,transparent 75%) 0,radial-gradient(ellipse at right,rgba(0,0,0,.2) 0,transparent 75%) 100%;background-attachment:scroll,scroll;background-repeat:no-repeat;background-size:10px 100%,10px 100%;border-collapse:collapse;border-spacing:0;display:inline-block;font-family:var(--font-sans);font-size:1.6rem;max-width:100%;overflow-x:auto;vertical-align:top;white-space:nowrap;width:auto}.gh-content table:not(.gist table) td:first-child{background-image:linear-gradient(90deg,#fff 50%,hsla(0,0%,100%,0));background-repeat:no-repeat;background-size:20px 100%}.gh-content table:not(.gist table) td:last-child{background-image:linear-gradient(270deg,#fff 50%,hsla(0,0%,100%,0));background-position:100% 0;background-repeat:no-repeat;background-size:20px 100%}.gh-content table:not(.gist table) th{background-color:#f4f8fb;color:var(--color-darkgrey);font-size:1.2rem;font-weight:700;letter-spacing:.2px;text-align:left;text-transform:uppercase}.gh-content table:not(.gist table) td,.gh-content table:not(.gist table) th{border:1px solid #e2ecf3;padding:6px 12px}.article-byline{display:flex;justify-content:space-between;margin:min(24px,5.6vmin) 0 0}.article-byline-content{align-items:center;display:flex;flex-grow:1}.article-byline-content .author-list{justify-content:flex-start;padding:0 14px 0 0}.article-byline-meta{color:var(--color-secondary-text);font-size:1.4rem;line-height:1.2em}.article-byline-meta .author-name{font-size:1.7rem;font-weight:700;letter-spacing:0;margin:0 0 6px}.article-byline-meta .bull{display:inline-block;margin:0 2px}.author-avatar{background-color:var(--color-border);border:2px solid #fff;border-radius:50%;display:block;height:min(56px,13.6vmin);margin:0 -4px;overflow:hidden;width:min(56px,13.6vmin)}.page-template .article-title{margin-bottom:0}@media (max-width:767px){.article-byline-content .author-list{padding-right:12px}.article-byline-meta .author-name{margin-bottom:4px}}.footer-cta{position:relative;text-align:center}.footer-cta-title{font-size:clamp(2.6rem,5vw,3.8rem);font-weight:800;margin:0 0 min(24px,6.4vmin)}.has-serif-title .footer-cta-title{font-family:var(--font-serif)}.footer-cta-button{align-items:center;background:#fff;border:1px solid var(--color-border);border-radius:8px;color:var(--color-secondary-text);display:inline-flex;font-size:1.7rem;justify-content:space-between;max-width:500px;padding:5px 5px 5px 15px;position:relative;transition:border-color .2s;width:100%}.footer-cta-button:hover{border-color:#c2c2c2}.footer-cta-button span{background:var(--ghost-accent-color);border-radius:6px;color:#fff;display:inline-block;font-size:1.6rem;font-weight:600;letter-spacing:-.005em;padding:9px 15px}.read-more-wrap{margin-top:2.4vmin}.footer-cta+.read-more-wrap{margin-top:max(12vmin,72px)}.read-more{grid-gap:4vmin;display:grid;grid-template-columns:repeat(6,1fr)}.read-more .post-card-tags{display:none}@media (max-width:1000px){.read-more{grid-template-columns:repeat(4,1fr)}.read-more .post-card:nth-child(3){display:none}}@media (max-width:700px){.read-more{grid-template-columns:repeat(2,1fr)}.read-more .post-card:nth-child(2){display:none}}.comments{align-items:center;display:flex;flex-direction:column;margin:60px 0 44px}.comments-head{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:32px;max-width:720px;width:100%}.comments h2{font-size:3.4rem;font-weight:800;max-width:720px;width:100%}.comments .comment-count{color:var(--color-midgrey);font-weight:600;white-space:nowrap}.comments #ghost-comments-root{max-width:720px;width:100%}.author-profile-pic{background:#fff;border-radius:50%;display:block;height:80px;margin:0 0 2rem;-o-object-fit:cover;object-fit:cover;width:80px}.author-profile-footer{margin-top:16px}.author-profile-location{font-weight:700}.author-profile-meta{display:flex;gap:10px}.author-profile-social-link{color:var(--color-secondary-text);font-size:1.3rem}.author-profile-social-link:hover{color:var(--color-darkgrey)}.author-profile-social-link svg{height:16px;width:16px}@media (min-width:1001px){.author-template .post-card-large .post-card-content{grid-column:span 2;max-width:640px}}.tag-template .post-card-large .post-card-image-link{grid-column:2/span 2;order:2}.tag-template .post-card-large .post-card-content{order:1}@media (min-width:1001px){.tag-template .post-card-large .post-card-content{grid-column:span 2;max-width:640px}}.error-content{padding:14vw 4vw 2vw}.error-message{padding-bottom:10vw;text-align:center}.error-code{font-size:12vw;letter-spacing:-5px;line-height:1em;margin:0}.error-description{color:var(--color-secondary-text);font-size:3.2rem;font-weight:400;letter-spacing:-.005em;line-height:1.3em;margin:0}.error-link{display:inline-block;margin-top:5px}@media (min-width:940px){.error-content .post-card{border-bottom:none;margin-bottom:0;padding-bottom:0}}@media (max-width:800px){.error-content{padding-top:24vw}.error-code{font-size:11.2rem}.error-message{padding-bottom:16vw}.error-description{font-size:1.8rem;margin:5px 0 0}}@media (max-width:500px){.error-content{padding-top:28vw}.error-message{padding-bottom:14vw}}.site-footer{background:#0a0b0c;color:#fff;margin:max(12vmin,64px) 0 0;padding-bottom:140px;padding-top:48px;position:relative}.site-footer .inner{grid-gap:40px;color:hsla(0,0%,100%,.7);display:grid;font-size:1.3rem;grid-template-columns:auto 1fr auto}.site-footer .copyright a{color:#fff;font-weight:500;letter-spacing:-.015em}.site-footer a{color:hsla(0,0%,100%,.7)}.site-footer a:hover{color:#fff;text-decoration:none}.site-footer-nav ul{display:flex;flex-wrap:wrap;justify-content:center;list-style:none;margin:0 0 20px;padding:0}.site-footer-nav li{align-items:center;display:inline-flex;line-height:2em;margin:0;padding:0}.site-footer-nav a{align-items:center;display:inline-flex;margin-left:10px;position:relative}.site-footer-nav li:not(:first-child) a:before{background:#fff;border-radius:100%;content:"";display:block;height:2px;margin:0 10px 0 0;width:2px}@media (max-width:767px){.site-footer .inner{grid-gap:0;grid-template-columns:1fr;max-width:500px;text-align:center}.site-footer .copyright,.site-footer .copyright a{color:#fff;font-size:1.5rem}.site-footer .copyright{margin-bottom:16px}}html.dark-mode body{background:var(--color-darkmode);color:hsla(0,0%,100%,.75)}html.dark-mode img{opacity:.9}html.dark-mode kbd{background:#212427}html.dark-mode figcaption a{color:#fff}html.dark-mode .gh-head{background:var(--color-darkmode);color:#fff}html.dark-mode .gh-burger-box,html.dark-mode .site-header-content{color:#fff}html.dark-mode .post-card-image{background:var(--color-darkmode)}html.dark-mode :is(.post-card-tags,.post-card-meta,.article-tag a,.byline-meta-content){color:#5f5f5f}html.dark-mode .post-card-featured,html.dark-mode .post-card-title{color:#fff}html.dark-mode .post-card-excerpt{color:var(--color-secondary-text)}html.dark-mode .article-title,html.dark-mode .author-profile-location,html.dark-mode .author-profile-social-link:hover{color:#fff}html.dark-mode .article-excerpt{color:var(--color-secondary-text)}html.dark-mode .post-full-image{background-color:#282b2f}html.dark-mode .author-avatar{background-color:#282b2f;border-color:var(--color-darkmode)}html.dark-mode .author-profile-image{opacity:1}html.dark-mode .author-profile-image path{fill:var(--color-darkmode)}html.dark-mode .article-byline-meta .author-name a{color:#fff}html.dark-mode .no-image .author-social-link a{color:hsla(0,0%,100%,.75)}html.dark-mode .gh-content>[id]{color:hsla(0,0%,100%,.9)}html.dark-mode .gh-content pre{background:#030303}html.dark-mode .gh-content :not(pre)>code{background:#23262b;border-color:#282b2f;color:var(--color-wash)}:where(html.dark-mode) .gh-content a{color:#fff}html.dark-mode .gh-content em,html.dark-mode .gh-content strong{color:#fff}html.dark-mode .gh-content code{background:#000;color:#fff}html.dark-mode hr{border-top-color:#282b2f}html.dark-mode .gh-content hr:after{background:#282b2f;box-shadow:var(--color-darkmode) 0 0 0 5px}html.dark-mode figcaption{color:hsla(0,0%,100%,.6)}html.dark-mode .gh-content table:not(.gist table) td:first-child{background-image:linear-gradient(to right,var(--color-darkmode) 50%,rgba(21,23,25,0) 100%)}html.dark-mode .gh-content table:not(.gist table) td:last-child{background-image:linear-gradient(to left,var(--color-darkmode) 50%,rgba(21,23,25,0) 100%)}html.dark-mode .gh-content table:not(.gist table) th{background-color:#282b2f;color:hsla(0,0%,100%,.85)}html.dark-mode .gh-content table:not(.gist table) td,html.dark-mode .gh-content table:not(.gist table) th{border:1px solid #282b2f}html.dark-mode .gh-content input{color:#303a3e}html.dark-mode .site-archive-header .no-image{background:var(--color-darkmode);color:hsla(0,0%,100%,.9)}html.dark-mode .kg-header-card.kg-style-dark{background:#0a0b0c}html.dark-mode .kg-header-card.kg-style-light{background:#202328}html.dark-mode .footer-cta-title,html.dark-mode .kg-header-card h2.kg-header-card-header,html.dark-mode .kg-header-card h3.kg-header-card-subheader{color:#fff}@media (prefers-color-scheme:dark){html.auto-color body{background:var(--color-darkmode);color:hsla(0,0%,100%,.75)}html.auto-color img{opacity:.9}html.auto-color kbd{background:#212427}html.auto-color figcaption a{color:#fff}html.auto-color .gh-head{background:var(--color-darkmode);color:#fff}html.auto-color .gh-burger-box,html.auto-color .site-header-content{color:#fff}html.auto-color .post-card-image{background:var(--color-darkmode)}html.auto-color :is(.post-card-tags,.post-card-meta,.article-tag a,.byline-meta-content){color:#5f5f5f}html.auto-color .post-card-featured,html.auto-color .post-card-title{color:#fff}html.auto-color .post-card-excerpt{color:var(--color-secondary-text)}html.auto-color .article-title,html.auto-color .author-profile-location,html.auto-color .author-profile-social-link:hover{color:#fff}html.auto-color .article-excerpt{color:var(--color-secondary-text)}html.auto-color .post-full-image{background-color:#282b2f}html.auto-color .author-avatar{background-color:#282b2f;border-color:var(--color-darkmode)}html.auto-color .author-profile-image{opacity:1}html.auto-color .author-profile-image path{fill:var(--color-darkmode)}html.auto-color .article-byline-meta .author-name a{color:#fff}html.auto-color .no-image .author-social-link a{color:hsla(0,0%,100%,.75)}html.auto-color .gh-content>[id]{color:hsla(0,0%,100%,.9)}html.auto-color .gh-content pre{background:#030303}html.auto-color .gh-content :not(pre)>code{background:#23262b;border-color:#282b2f;color:var(--color-wash)}:where(html.auto-color) .gh-content a{color:#fff}html.auto-color .gh-content em,html.auto-color .gh-content strong{color:#fff}html.auto-color .gh-content code{background:#000;color:#fff}html.auto-color hr{border-top-color:#282b2f}html.auto-color .gh-content hr:after{background:#282b2f;box-shadow:var(--color-darkmode) 0 0 0 5px}html.auto-color figcaption{color:hsla(0,0%,100%,.6)}html.auto-color .gh-content table:not(.gist table) td:first-child{background-image:linear-gradient(to right,var(--color-darkmode) 50%,rgba(21,23,25,0) 100%)}html.auto-color .gh-content table:not(.gist table) td:last-child{background-image:linear-gradient(to left,var(--color-darkmode) 50%,rgba(21,23,25,0) 100%)}html.auto-color .gh-content table:not(.gist table) th{background-color:#282b2f;color:hsla(0,0%,100%,.85)}html.auto-color .gh-content table:not(.gist table) td,html.auto-color .gh-content table:not(.gist table) th{border:1px solid #282b2f}html.auto-color .gh-content input{color:#303a3e}html.auto-color .site-archive-header .no-image{background:var(--color-darkmode);color:hsla(0,0%,100%,.9)}html.auto-color .kg-header-card.kg-style-dark{background:#0a0b0c}html.auto-color .kg-header-card.kg-style-light{background:#202328}html.auto-color .footer-cta-title,html.auto-color .kg-header-card h2.kg-header-card-header,html.auto-color .kg-header-card h3.kg-header-card-subheader{color:#fff}} +a,abbr,acronym,address,applet,article,aside,audio,big,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,ul,var,video{border:0;font:inherit;font-size:100%;margin:0;padding:0;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:"";content:none}img{display:block;height:auto;max-width:100%}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;box-sizing:border-box;font-family:sans-serif}*,:after,:before{box-sizing:inherit}a{background-color:transparent}a:active,a:hover{outline:0}b,strong{font-weight:700}dfn,em,i{font-style:italic}h1{font-size:2em;margin:.67em 0}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}mark{background-color:#fdffb6}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}kbd{background:#f6f8fa;border:1px solid rgba(124,139,154,.25);border-radius:6px;box-shadow:inset 0 -1px 0 rgba(124,139,154,.25);font-family:var(--font-mono);font-size:1.5rem;padding:3px 5px}@media (max-width:600px){kbd{font-size:1.3rem}}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{border:none;overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input:focus{outline:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{border:0;padding:0}textarea{overflow:auto}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}html{-webkit-tap-highlight-color:rgba(0,0,0,0);font-size:62.5%}body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-moz-font-feature-settings:"liga" on;background:#fff;color:var(--color-darkgrey);font-family:var(--font-sans);font-size:1.6rem;font-style:normal;font-weight:400;letter-spacing:0;line-height:1.6em}::-moz-selection{background:#daf2fd;text-shadow:none}::selection{background:#daf2fd;text-shadow:none}hr{border:0;border-top:1px solid #f0f0f0;display:block;height:1px;margin:2.5em 0 3.5em;padding:0;position:relative;width:100%}audio,canvas,iframe,img,svg,video{vertical-align:middle}fieldset{border:0;margin:0;padding:0}textarea{resize:vertical}::not(.gh-content) blockquote,::not(.gh-content) dl,::not(.gh-content) ol,::not(.gh-content) p,::not(.gh-content) ul{margin:0 0 1.5em}ol,ul{padding-left:1.3em;padding-right:1.5em}ol ol,ol ul,ul ol,ul ul{margin:.5em 0 1em}ul{list-style:disc}ol{list-style:decimal}ol,ul{max-width:100%}li{line-height:1.6em;padding-left:.3em}li+li{margin-top:.5em}dt{color:#daf2fd;float:left;font-weight:500;margin:0 20px 0 0;text-align:right;width:120px}dd{margin:0 0 5px;text-align:left}blockquote{border-left:#daf2fd;margin:1.5em 0;padding:0 1.6em}blockquote small{display:inline-block;font-size:.9em;margin:.8em 0 .8em 1.5em;opacity:.8}blockquote small:before{content:"\2014 \00A0"}blockquote cite{font-weight:700}blockquote cite a{font-weight:400}a{color:#15171a;text-decoration:none}h1,h2,h3,h4,h5,h6{text-rendering:optimizeLegibility;font-weight:600;letter-spacing:-.01em;line-height:1.15;margin-top:0}h1{font-size:4.8rem;font-weight:700;letter-spacing:-.015em;margin:0 0 .5em}@media (max-width:600px){h1{font-size:2.8rem}}h2{font-size:2.8rem;font-weight:700;margin:1.5em 0 .5em}@media (max-width:600px){h2{font-size:2.3rem}}h3{font-size:2.4rem;font-weight:600;margin:1.5em 0 .5em}@media (max-width:600px){h3{font-size:1.7rem}}h4{font-size:2rem;margin:1.5em 0 .5em}@media (max-width:600px){h4{font-size:1.7rem}}h5{font-size:2rem}h5,h6{margin:1.5em 0 .5em}h6{font-size:1.8rem}:root{--color-green:#a4d037;--color-yellow:#fecd35;--color-red:#f05230;--color-darkgrey:#15171a;--color-midgrey:#738a94;--color-lightgrey:#f1f1f1;--color-secondary-text:#979797;--color-border:#e1e1e1;--color-wash:#e5eff5;--color-darkmode:#151719;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-serif:Georgia,Times,serif;--font-mono:Menlo,Courier,monospace}.viewport{display:flex;flex-direction:column;min-height:100vh}.site-content{flex-grow:1}.outer{padding:0 max(4vmin,20px);position:relative}.inner{margin:0 auto;max-width:1200px;width:100%}.site-header{background:var(--ghost-accent-color);color:#fff;position:relative}.site-header-cover{bottom:0;height:100%;left:0;-o-object-fit:cover;object-fit:cover;position:absolute;right:0;top:0;width:100%}.site-header-content{align-items:center;color:var(--color-darkgrey);display:flex;padding-bottom:19vmin;padding-top:calc(19vmin + 44px);position:relative;text-align:center;z-index:100}.has-cover .site-header-content{background-color:var(--ghost-accent-color);color:#fff;min-height:560px}.site-header-content.left-aligned{padding-bottom:0;text-align:left}.has-cover .site-header-content.left-aligned{align-items:flex-end;padding-bottom:max(4vmin,32px)}.site-header-content.no-content{padding-top:0}.site-header-inner{position:relative}.site-header-content.left-aligned .site-header-inner{align-items:flex-start}.site-logo{flex-shrink:0;margin:0 auto;max-height:120px}.site-header-content.left-aligned .site-logo{margin-left:0;margin-right:auto;max-height:96px}.site-title{font-size:5rem;font-weight:800;margin:0;padding:0;z-index:10}.has-serif-title .site-title{font-family:var(--font-serif)}.has-cover .site-title{font-size:6rem}.site-header-content.left-aligned .site-title{font-size:4.4rem}.has-cover .site-header-content.left-aligned .site-title{font-size:4.6rem}.site-description{display:inline-block;font-size:6rem;font-weight:700;line-height:1.1;max-width:960px;z-index:10}:is(.site-logo,.site-title)+.site-description{font-size:2.4rem;font-weight:400;margin-top:16px}.site-logo+.site-description{margin-top:20px}.site-title+.site-description{color:var(--color-secondary-text)}.has-cover .site-description{color:#fff;letter-spacing:-.005em}.has-cover :is(.site-logo,.site-title)+.site-description{font-size:2.4rem}.has-cover .site-header-content.left-aligned :is(.site-logo,.site-title)+.site-description{font-size:2.2rem}@media (min-width:992px){.is-head-stacked.has-cover .site-header-content{padding-top:calc(19vmin + 120px)}}@media (max-width:991px){.site-header-content{padding-top:calc(19vmin + 32px)}}@media (max-width:767px){.has-cover .site-header-content{min-height:240px}.site-header-inner{gap:16px}.site-logo{max-width:60%}.site-title{font-size:3.4rem!important}.site-description{font-size:2.8rem!important}.site-logo+.site-description{margin-top:12px!important}.site-title+.site-description{margin-top:4px!important}}.gh-head{background-color:#fff;font-size:1.6rem;height:88px;line-height:1.3em}.has-cover:not(.home-template) .gh-head{background-color:var(--ghost-accent-color);color:#fff}.home-template.has-cover .gh-head{background-color:transparent;color:#fff;left:0;position:absolute;right:0;top:0;z-index:2000}.gh-head a{text-decoration:none}.gh-head-inner{align-items:center;-moz-column-gap:40px;column-gap:40px;display:grid;grid-auto-flow:row dense;height:100%}.gh-head-inner,.is-head-left-logo .gh-head-inner{grid-template-columns:auto 1fr auto}.is-head-left-logo.home-template .gh-head-logo{display:none}.is-head-left-logo.home-template .gh-head-menu{margin-left:-40px}@media (min-width:992px){.is-head-left-logo .gh-head-menu{margin-left:16px;margin-right:32px}}.is-head-middle-logo .gh-head-inner{grid-template-columns:1fr auto 1fr}.is-head-middle-logo .gh-head-brand{grid-column-start:2}.is-head-middle-logo .gh-head-actions{gap:28px}@media (min-width:992px){.is-head-middle-logo .gh-head-menu{margin-right:64px}}.is-head-stacked .gh-head{height:auto}.is-head-stacked .gh-head-inner{grid-template-columns:1fr auto 1fr}.is-head-stacked .gh-head-brand{grid-column-start:2;grid-row-start:1}@media (min-width:992px){.is-head-stacked .gh-head-inner{padding:0}.is-head-stacked .gh-head-brand{align-items:center;display:flex;height:80px;position:relative}.is-head-stacked .gh-head-menu{grid-column:1/4;grid-row-start:2;height:56px;justify-content:center;margin:0 48px}.is-head-stacked .gh-head-menu:after,.is-head-stacked .gh-head-menu:before{background-color:var(--color-lightgrey);content:"";height:1px;left:0;position:absolute;top:80px;width:100%}.is-head-stacked.has-cover .gh-head-menu:after,.is-head-stacked.has-cover .gh-head-menu:before{background-color:hsla(0,0%,100%,.2)}.is-head-stacked .gh-head-menu:after{top:136px}.is-head-stacked .gh-head-actions{grid-column:1/4;grid-row-start:1;justify-content:space-between}}.gh-head-brand{align-items:center;display:flex;height:40px;word-break:break-all}.gh-head-logo{color:inherit;display:block;font-size:2.6rem;font-weight:800;letter-spacing:-.02em;white-space:nowrap}.gh-head-logo.no-image{margin-top:-2px}.has-cover .gh-head-logo{color:#fff}.gh-head-logo img{max-height:40px}.gh-head-menu{align-items:center;display:flex;font-weight:500;margin-top:1px}.gh-head-menu .nav{align-items:center;display:inline-flex;flex-wrap:wrap;gap:32px;list-style:none;margin:0;padding:0}.gh-head-menu .nav li{margin:0;padding:0}.gh-head-menu .nav a{color:inherit;display:inline-block;line-height:1.7}.gh-head-menu .nav a:hover{opacity:.9}.gh-head-menu .nav-more-toggle{background-color:transparent;font-size:inherit;height:30px;margin:0 -6px;padding:0;position:relative;text-transform:inherit;width:30px}.gh-head-menu .nav-more-toggle svg{height:24px;width:24px}@media (min-width:992px){body:not(.is-dropdown-loaded) .gh-head-menu .nav>li{opacity:0}}.gh-dropdown{background-color:#fff;border-radius:5px;box-shadow:0 0 0 1px rgba(0,0,0,.04),0 7px 20px -5px rgba(0,0,0,.15);margin-top:24px;opacity:0;padding:12px 0;position:absolute;right:-16px;text-align:left;top:100%;transform:translate3d(0,6px,0);transition:opacity .3s,transform .2s;visibility:hidden;width:200px;z-index:90}.is-head-middle-logo .gh-dropdown{left:-24px;right:auto}.is-dropdown-mega .gh-dropdown{-moz-column-gap:40px;column-gap:40px;display:grid;grid-auto-flow:column;grid-template-columns:1fr 1fr;padding:20px 32px;width:auto}.is-dropdown-open .gh-dropdown{opacity:1;transform:translateY(0);visibility:visible}.gh-head-menu .gh-dropdown li a{color:#15171a;display:block;padding:6px 20px}.is-dropdown-mega .gh-dropdown li a{padding:8px 0}.gh-social{align-items:center;display:flex;gap:20px}.gh-social-link{color:inherit;line-height:0}.gh-social-link:hover{opacity:.9}.gh-social-link svg{height:18px;width:18px}.gh-head-actions{align-items:center;display:flex;gap:24px;justify-content:flex-end;list-style:none;text-align:right}.gh-head-button{align-items:center;background:var(--ghost-accent-color);border-radius:48px;color:#fff;display:inline-flex;font-size:1.6rem;font-weight:600;height:44px;justify-content:center;letter-spacing:-.005em;padding:8px 20px}.has-cover .gh-head-button{background:#fff;color:var(--color-darkgrey)}.gh-search{align-items:center;background-color:transparent;border:0;cursor:pointer;display:inline-flex;height:32px;justify-content:center;outline:none;padding:0;width:32px}.gh-search:hover{opacity:.9}.gh-head-brand .gh-search{margin-right:8px}.gh-head-actions .gh-search{margin-right:-4px}@media (max-width:991px){.gh-head-actions .gh-search{display:none}}@media (min-width:992px){.gh-head-brand .gh-search{display:none}}.gh-burger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0;cursor:pointer;display:none;height:30px;margin-right:-3px;padding:0;position:relative;width:30px}.gh-burger:after,.gh-burger:before{background-color:var(--color-darkgrey);content:"";height:1px;left:3px;position:absolute;transition:all .2s cubic-bezier(.04,.04,.12,.96) .1008s;width:24px}.has-cover .gh-burger:after,.has-cover .gh-burger:before{background-color:#fff}.gh-burger:before{top:11px}.gh-burger:after{bottom:11px}.gh-head-open .gh-burger:before{top:15px;transform:rotate(45deg)}.gh-head-open .gh-burger:after{bottom:14px;transform:rotate(-45deg)}@media (max-width:991px){#gh-head{height:64px}#gh-head .gh-head-inner{gap:48px;grid-template-columns:1fr;grid-template-rows:auto 1fr auto}#gh-head .gh-head-brand{align-items:center;display:grid;grid-column-start:1;grid-template-columns:1fr auto auto;height:64px}#gh-head .gh-head-logo{font-size:2.2rem}#gh-head .gh-head-brand .gh-search{margin-left:-6px}#gh-head .gh-burger{display:block}#gh-head .gh-head-actions,#gh-head .gh-head-menu{justify-content:center;opacity:0;position:fixed;visibility:hidden}#gh-head .gh-head-menu{margin:0;transform:translateY(0);transition:none}#gh-head .nav{align-items:center;gap:16px;line-height:1.4}#gh-head .nav a{font-size:2.6rem;font-weight:600;text-transform:none}#gh-head .nav li{opacity:0;transform:translateY(-4px)}#gh-head .gh-head-button{font-size:1.8rem;opacity:0;text-transform:none;transform:translateY(8px);width:100%}.gh-head-open #gh-head{-webkit-overflow-scrolling:touch;height:100vh;left:0;overflow-y:scroll;position:fixed;right:0;z-index:3999999}.gh-head-open.has-cover #gh-head,.gh-head-open.has-cover #gh-head .gh-head-actions{background-color:var(--ghost-accent-color)}.gh-head-open #gh-head .gh-head-actions,.gh-head-open #gh-head .gh-head-menu{opacity:1;position:static;visibility:visible}.gh-head-open #gh-head .nav{display:flex;flex-direction:column}.gh-head-open #gh-head .nav li{opacity:1;transform:translateY(0);transition:transform .2s,opacity .2s}.gh-head-open #gh-head .gh-head-actions{align-items:center;background-color:#fff;bottom:0;display:inline-flex;flex-direction:column;gap:12px;left:0;padding:max(4vmin,20px) 0;position:-webkit-sticky;position:sticky;right:0}.gh-head-open #gh-head .gh-head-button{opacity:1;transform:translateY(0);transition:transform .4s,opacity .4s;transition-delay:.2s}}.post-feed{display:grid;gap:4.8vmin 4vmin;grid-template-columns:repeat(6,1fr);padding:max(4.8vmin,36px) 0 0;position:relative}:is(.tag-template,.author-template) .post-feed{margin-top:4vmin}@media (max-width:991px){.post-feed{grid-template-columns:1fr 1fr}}@media (max-width:767px){.post-feed{grid-gap:40px;grid-template-columns:1fr}}.post-card{background-size:cover;display:flex;flex-direction:column;grid-column:span 2;position:relative;word-break:break-word}.post-card-image-link{display:block;margin-bottom:32px;overflow:hidden;position:relative}.post-card-image-link:after{content:"";display:block;padding-bottom:55%}.post-card[class*=post-access-] .post-card-image-link:after{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:rgba(0,0,0,.5)}.post-card.keep-ratio[class*=post-access-] .post-card-image-link:after{inset:0;padding-bottom:0;position:absolute}.post-card.keep-ratio:not(.post-card-large):not(.post-card-full) .post-card-image-link:after{padding-bottom:0}.post-card-image{background:var(--color-lightgrey) no-repeat center center;height:100%;inset:0;-o-object-fit:cover;object-fit:cover;position:absolute;width:100%}.post-card.keep-ratio:not(.post-card-large):not(.post-card-full) .post-card-image{position:static}.post-card-access{align-items:center;color:#fff;display:flex;font-size:1.5rem;font-weight:600;gap:4px;inset:0;justify-content:center;position:absolute;z-index:10}.post-card-content-link{color:var(--color-darkgrey);display:block;position:relative}.post-card-content-link:hover{text-decoration:none}.post-feed .no-image .post-card-content-link{padding:0}.no-image .post-card-header{margin-top:0}.post-card-tags{align-items:center;color:var(--color-secondary-text);display:flex;font-size:1.4rem;font-weight:600;gap:12px;letter-spacing:-.005em;line-height:1;margin:0 0 10px}.post-card-featured{align-items:center;color:var(--ghost-accent-color);display:flex;gap:3px;padding-left:18px;position:relative}.post-card-featured svg{left:0;position:absolute}.post-card-title{font-size:2.6rem;font-weight:800;line-height:1.2;margin:0}.post-card-content-link:hover .post-card-title{opacity:.9}.no-image .post-card-title{margin-top:0}.has-serif-title .post-card-title{font-family:var(--font-serif);letter-spacing:-.005em}.post-card-title svg{margin-left:-1px;margin-top:-3px}.post-card-content{display:flex;flex-direction:column;flex-grow:1}.post-card-excerpt{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;font-size:1.6rem;line-height:1.5;margin-top:12px;max-width:720px;overflow-y:hidden;word-break:break-word}.has-sans-body .post-card-excerpt{font-family:var(--font-sans)}.post-card:not(.post-card-large):not(.post-card-full):not(.dynamic):not(.no-image) .post-card-excerpt{-webkit-line-clamp:2}:is(.tag-template,.author-template) .post-card-excerpt{margin-top:6px}.post-card-meta{color:var(--color-secondary-text);font-size:1.3rem;margin-top:12px;padding:0}.post-card-meta,.post-card-meta>*{align-items:center;display:flex;gap:6px}.post-card-meta>*+:not(script):before{background-color:var(--color-secondary-text);border-radius:50%;content:"";height:2px;width:2px}.post-card-meta .sep{margin:0 4px}.author-profile-image{background:#fff;border-radius:100%;display:block;height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.author-list{display:flex;flex-wrap:wrap;list-style:none;margin:0 0 0 4px;padding:0}.author-list-item{flex-shrink:0;margin:0;padding:0;position:relative}@media (min-width:1001px){.post-card-large{grid-gap:4vmin;border-top:0;display:grid;grid-column:span 6;grid-template-columns:repeat(3,1fr)}.post-card-large:not(.no-image) .post-card-header{margin-top:0}.post-card-large .post-card-image-link{grid-column:span 2;margin-bottom:0;position:relative}.post-card-large .post-card-content{grid-column:span 1}.post-card-large.no-image .post-card-content{grid-column:span 2}.post-card-large .post-card-image{height:100%;position:absolute;width:100%}.post-card-large .post-card-tags{margin-bottom:12px}.post-card-large .post-card-title{font-size:4.4rem;line-height:1.05;margin-top:0}.post-card-large .post-card-excerpt{margin-top:16px}.post-card-full{grid-column:span 6}.post-card-full .post-card-image-link{margin-bottom:40px}.post-card-full .post-card-tags{margin-bottom:14px}.post-card-full .post-card-title{font-size:6.4rem;line-height:.95}.post-card-full .post-card-excerpt{font-size:1.8rem;margin-top:20px}.post-card-large+.post-card-large:nth-child(2n){margin:32px 0}.post-card-large+.post-card-large:nth-child(2n) .post-card-content{order:-1}.post-card.dynamic{grid-column:span 3}.post-card.dynamic .post-card-title{font-size:3rem}}.article{padding:max(8vmin,40px) 0 max(8vmin,64px);word-break:break-word}.page-template .article{padding-top:max(12vmin,64px)}.article-header{padding:0 0 max(6.4vmin,40px)}.page-template .article-header{padding-bottom:max(3.2vmin,28px)}.article-tag{font-size:1.6rem;margin-bottom:16px}.article-tag a{color:var(--color-secondary-text)}.article-title{color:var(--color-darkgrey);font-size:clamp(3.2rem,5vw,5.2rem);font-weight:800;line-height:1.05;margin-bottom:0}.has-serif-title .article-title{font-family:var(--font-serif)}.article-excerpt{color:var(--color-darkgrey);font-size:2rem;line-height:1.45;margin-top:20px;max-width:720px}.gh-canvas .article-image{grid-column:wide-start/wide-end;margin:max(6.4vmin,40px) 0 0;width:100%}.image-full .article-image{grid-column:full-start/full-end}.image-small .article-image{grid-column:main-start/main-end}.gh-canvas .article-image img{display:block;margin-left:auto;margin-right:auto;width:100%}@media (max-width:767px){.article-excerpt{font-size:1.7rem;margin-top:14px}}.gh-canvas{display:grid;grid-template-columns:[full-start] minmax(max(4vmin,20px),auto) [wide-start] minmax(auto,240px) [main-start] min(720px,calc(100% - max(8vmin, 40px))) [main-end] minmax(auto,240px) [wide-end] minmax(max(4vmin,20px),auto) [full-end]}.gh-canvas>*{grid-column:main-start/main-end}.kg-width-wide{grid-column:wide-start/wide-end}.kg-width-full{grid-column:full-start/full-end}.kg-width-full img{width:100%}.gh-content>*+*{margin-bottom:0;margin-top:max(3.2vmin,24px)}.gh-content>[id]{color:var(--color-darkgrey);margin:0}.has-serif-title .gh-content>[id]{font-family:var(--font-serif)}.gh-content>[id]:not(:first-child){margin:2em 0 0}.gh-content>[id]+*{margin-top:1.5rem!important}.gh-content>blockquote,.gh-content>hr{margin-top:max(4.8vmin,32px);position:relative}.gh-content>blockquote+*,.gh-content>hr+*{margin-top:max(4.8vmin,32px)!important}.gh-content a{color:var(--ghost-accent-color);text-decoration:underline;word-break:break-word}.gh-content>blockquote:not([class]),.gh-content>dl,.gh-content>ol,.gh-content>p,.gh-content>ul{font-family:var(--font-serif);font-size:2rem;font-weight:400;line-height:1.6em}.gh-content .kg-callout-card .kg-callout-text,.gh-content .kg-toggle-card .kg-toggle-content>ol,.gh-content .kg-toggle-card .kg-toggle-content>p,.gh-content .kg-toggle-card .kg-toggle-content>ul{font-family:var(--font-serif);font-size:1.9rem;font-weight:400;line-height:1.6em}.gh-content .kg-product-card .kg-product-card-description>ol,.gh-content .kg-product-card .kg-product-card-description>p,.gh-content .kg-product-card .kg-product-card-description>ul{font-size:1.7rem;line-height:1.6em}.gh-content .kg-callout-card .kg-callout-emoji{font-size:2.1rem;line-height:1.4em}.gh-content .kg-toggle-card .kg-toggle-heading-text{font-size:2rem}.has-sans-body .gh-content .kg-callout-card .kg-callout-text,.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content>ol,.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content>p,.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content>ul,.has-sans-body .gh-content>blockquote,.has-sans-body .gh-content>dl,.has-sans-body .gh-content>ol,.has-sans-body .gh-content>p,.has-sans-body .gh-content>ul{font-family:var(--font-sans)}.gh-content .kg-product-card .kg-product-card-description>ol,.gh-content .kg-product-card .kg-product-card-description>ul,.gh-content .kg-toggle-card .kg-toggle-content>ol,.gh-content .kg-toggle-card .kg-toggle-content>ul,.gh-content>dl,.gh-content>ol,.gh-content>ul{padding-left:1.9em}.gh-content>blockquote:not([class]){font-style:italic;padding:0;position:relative}.gh-content>blockquote:not([class]):before{background:var(--ghost-accent-color);bottom:0;content:"";left:-1.5em;position:absolute;top:0;width:.3rem}.gh-content :not(pre)>code{background:#f0f6f9;border:1px solid #e1eaef;border-radius:.25em;color:#15171a;font-size:.9em;font-weight:400!important;line-height:1em;padding:.15em .4em;vertical-align:middle}.gh-content pre{background:var(--color-darkgrey);border-radius:5px;box-shadow:0 2px 6px -2px rgba(0,0,0,.1),0 0 1px rgba(0,0,0,.4);color:var(--color-wash);font-size:1.4rem;line-height:1.5em;overflow:auto;padding:16px 20px}@media (max-width:650px){.gh-content .kg-callout-card .kg-callout-text,.gh-content .kg-toggle-card .kg-toggle-content>ol,.gh-content .kg-toggle-card .kg-toggle-content>p,.gh-content .kg-toggle-card .kg-toggle-content>ul,.gh-content>blockquote:not([class]),.gh-content>dl,.gh-content>ol,.gh-content>p,.gh-content>ul{font-size:1.8rem}.gh-content .kg-product-card .kg-product-card-description>ol,.gh-content .kg-product-card .kg-product-card-description>p,.gh-content .kg-product-card .kg-product-card-description>ul{font-size:1.6rem}.gh-content blockquote:not([class]):before{left:min(-4vmin,-20px)}}.gh-content .kg-card+:not(.kg-card),.gh-content :not(.kg-card):not([id])+.kg-card{margin-bottom:0;margin-top:6vmin}.kg-embed-card{align-items:center;display:flex;flex-direction:column;width:100%}.kg-image-card img{margin:auto}.has-serif-title .kg-toggle-card .kg-toggle-heading-text{font-family:var(--font-serif)}.gh-content .kg-callout-card-accent a{text-decoration:underline}.kg-blockquote-alt{color:var(--color-midgrey);font-family:var(--font-serif)}.has-sans-body .kg-blockquote-alt{font-family:var(--font-sans)}.kg-card.kg-header-card.kg-style-dark{background:var(--color-darkgrey)}.kg-header-card.kg-style-light h2.kg-header-card-header{color:#0a0b0c}.has-serif-title .kg-header-card h2.kg-header-card-header{font-family:var(--font-serif)}figcaption{color:rgba(0,0,0,.5);font-size:1.3rem;line-height:1.4em;padding:1.5rem 1.5rem 0;text-align:center}figcaption strong{color:rgba(0,0,0,.8)}figcaption a{text-decoration:underline}iframe.instagram-media{margin:6vmin auto 0!important}iframe.instagram-media+script+:not([id]){margin-top:6vmin}.kg-width-full.kg-card-hascaption{display:grid;grid-template-columns:inherit}.kg-width-wide.kg-card-hascaption img{grid-column:wide-start/wide-end}.kg-width-full.kg-card-hascaption img{grid-column:1/-1}.kg-width-full.kg-card-hascaption figcaption{grid-column:main-start/main-end}.article-comments{margin:6vmin 0 0}.footnotes-sep{margin-bottom:30px}.footnotes{font-size:1.5rem}.footnotes p{margin:0}.footnote-backref{box-shadow:none!important;font-size:1.2rem;font-weight:700;text-decoration:none!important}.gh-content table:not(.gist table){-webkit-overflow-scrolling:touch;background:radial-gradient(ellipse at left,rgba(0,0,0,.2) 0,transparent 75%) 0,radial-gradient(ellipse at right,rgba(0,0,0,.2) 0,transparent 75%) 100%;background-attachment:scroll,scroll;background-repeat:no-repeat;background-size:10px 100%,10px 100%;border-collapse:collapse;border-spacing:0;display:inline-block;font-family:var(--font-sans);font-size:1.6rem;max-width:100%;overflow-x:auto;vertical-align:top;white-space:nowrap;width:auto}.gh-content table:not(.gist table) td:first-child{background-image:linear-gradient(90deg,#fff 50%,hsla(0,0%,100%,0));background-repeat:no-repeat;background-size:20px 100%}.gh-content table:not(.gist table) td:last-child{background-image:linear-gradient(270deg,#fff 50%,hsla(0,0%,100%,0));background-position:100% 0;background-repeat:no-repeat;background-size:20px 100%}.gh-content table:not(.gist table) th{background-color:#f4f8fb;color:var(--color-darkgrey);font-size:1.2rem;font-weight:700;letter-spacing:.2px;text-align:left;text-transform:uppercase}.gh-content table:not(.gist table) td,.gh-content table:not(.gist table) th{border:1px solid #e2ecf3;padding:6px 12px}.article-byline{display:flex;justify-content:space-between;margin:min(24px,5.6vmin) 0 0}.article-byline-content{align-items:center;display:flex;flex-grow:1}.article-byline-content .author-list{justify-content:flex-start;padding:0 14px 0 0}.article-byline-meta{color:var(--color-secondary-text);font-size:1.4rem;line-height:1.2em}.article-byline-meta .author-name{font-size:1.7rem;font-weight:700;letter-spacing:0;margin:0 0 6px}.article-byline-meta .bull{display:inline-block;margin:0 2px}.author-avatar{background-color:var(--color-border);border:2px solid #fff;border-radius:50%;display:block;height:min(56px,13.6vmin);margin:0 -4px;overflow:hidden;width:min(56px,13.6vmin)}.page-template .article-title{margin-bottom:0}@media (max-width:767px){.article-byline-content .author-list{padding-right:12px}.article-byline-meta .author-name{margin-bottom:4px}}.footer-cta{position:relative;text-align:center}.footer-cta-title{font-size:clamp(2.6rem,5vw,3.8rem);font-weight:800;margin:0 0 min(24px,6.4vmin)}.has-serif-title .footer-cta-title{font-family:var(--font-serif)}.footer-cta-button{align-items:center;background:#fff;border:1px solid var(--color-border);border-radius:8px;color:var(--color-secondary-text);display:inline-flex;font-size:1.7rem;justify-content:space-between;max-width:500px;padding:5px 5px 5px 15px;position:relative;transition:border-color .2s;width:100%}.footer-cta-button:hover{border-color:#c2c2c2}.footer-cta-button span{background:var(--ghost-accent-color);border-radius:6px;color:#fff;display:inline-block;font-size:1.6rem;font-weight:600;letter-spacing:-.005em;padding:9px 15px}.read-more-wrap{margin-top:2.4vmin}.footer-cta+.read-more-wrap{margin-top:max(12vmin,72px)}.read-more{grid-gap:4vmin;display:grid;grid-template-columns:repeat(6,1fr)}.read-more .post-card-tags{display:none}@media (max-width:1000px){.read-more{grid-template-columns:repeat(4,1fr)}.read-more .post-card:nth-child(3){display:none}}@media (max-width:700px){.read-more{grid-template-columns:repeat(2,1fr)}.read-more .post-card:nth-child(2){display:none}}.comments{align-items:center;display:flex;flex-direction:column;margin:60px 0 44px}.comments-head{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:32px;max-width:720px;width:100%}.comments h2{font-size:3.4rem;font-weight:800;max-width:720px;width:100%}.comments .comment-count{color:var(--color-midgrey);font-weight:600;white-space:nowrap}.comments #ghost-comments-root{max-width:720px;width:100%}.author-profile-pic{background:#fff;border-radius:50%;display:block;height:80px;margin:0 0 2rem;-o-object-fit:cover;object-fit:cover;width:80px}.author-profile-footer{margin-top:16px}.author-profile-location{font-weight:700}.author-profile-meta{display:flex;gap:10px}.author-profile-social-link{color:var(--color-secondary-text);font-size:1.3rem}.author-profile-social-link:hover{color:var(--color-darkgrey)}.author-profile-social-link svg{height:16px;width:16px}@media (min-width:1001px){.author-template .post-card-large .post-card-content:only-child{grid-column:span 2;max-width:640px}}.tag-template .post-card-large .post-card-image-link{grid-column:2/span 2;order:2}.tag-template .post-card-large .post-card-content{order:1}@media (min-width:1001px){.tag-template .post-card-large .post-card-content:only-child{grid-column:span 2;max-width:640px}}.error-content{padding:14vw 4vw 2vw}.error-message{padding-bottom:10vw;text-align:center}.error-code{font-size:12vw;letter-spacing:-5px;line-height:1em;margin:0}.error-description{color:var(--color-secondary-text);font-size:3.2rem;font-weight:400;letter-spacing:-.005em;line-height:1.3em;margin:0}.error-link{display:inline-block;margin-top:5px}@media (min-width:940px){.error-content .post-card{border-bottom:none;margin-bottom:0;padding-bottom:0}}@media (max-width:800px){.error-content{padding-top:24vw}.error-code{font-size:11.2rem}.error-message{padding-bottom:16vw}.error-description{font-size:1.8rem;margin:5px 0 0}}@media (max-width:500px){.error-content{padding-top:28vw}.error-message{padding-bottom:14vw}}.site-footer{background:#0a0b0c;color:#fff;margin:max(12vmin,64px) 0 0;padding-bottom:140px;padding-top:48px;position:relative}.site-footer .inner{grid-gap:40px;color:hsla(0,0%,100%,.7);display:grid;font-size:1.3rem;grid-template-columns:auto 1fr auto}.site-footer .copyright a{color:#fff;font-weight:500;letter-spacing:-.015em}.site-footer a{color:hsla(0,0%,100%,.7)}.site-footer a:hover{color:#fff;text-decoration:none}.site-footer-nav ul{display:flex;flex-wrap:wrap;justify-content:center;list-style:none;margin:0 0 20px;padding:0}.site-footer-nav li{align-items:center;display:inline-flex;line-height:2em;margin:0;padding:0}.site-footer-nav a{align-items:center;display:inline-flex;margin-left:10px;position:relative}.site-footer-nav li:not(:first-child) a:before{background:#fff;border-radius:100%;content:"";display:block;height:2px;margin:0 10px 0 0;width:2px}@media (max-width:767px){.site-footer .inner{grid-gap:0;grid-template-columns:1fr;max-width:500px;text-align:center}.site-footer .copyright,.site-footer .copyright a{color:#fff;font-size:1.5rem}.site-footer .copyright{margin-bottom:16px}}html.dark-mode body{background:var(--color-darkmode);color:hsla(0,0%,100%,.75)}html.dark-mode img{opacity:.9}html.dark-mode kbd{background:#212427}html.dark-mode figcaption a{color:#fff}html.dark-mode .gh-head{background:var(--color-darkmode);color:#fff}html.dark-mode .gh-burger-box,html.dark-mode .site-header-content{color:#fff}html.dark-mode .post-card-image{background:var(--color-darkmode)}html.dark-mode :is(.post-card-tags,.post-card-meta,.article-tag a,.byline-meta-content){color:#5f5f5f}html.dark-mode .post-card-featured,html.dark-mode .post-card-title{color:#fff}html.dark-mode .post-card-excerpt{color:var(--color-secondary-text)}html.dark-mode .article-title,html.dark-mode .author-profile-location,html.dark-mode .author-profile-social-link:hover{color:#fff}html.dark-mode .article-excerpt{color:var(--color-secondary-text)}html.dark-mode .post-full-image{background-color:#282b2f}html.dark-mode .author-avatar{background-color:#282b2f;border-color:var(--color-darkmode)}html.dark-mode .author-profile-image{opacity:1}html.dark-mode .author-profile-image path{fill:var(--color-darkmode)}html.dark-mode .article-byline-meta .author-name a{color:#fff}html.dark-mode .no-image .author-social-link a{color:hsla(0,0%,100%,.75)}html.dark-mode .gh-content>[id]{color:hsla(0,0%,100%,.9)}html.dark-mode .gh-content pre{background:#030303}html.dark-mode .gh-content :not(pre)>code{background:#23262b;border-color:#282b2f;color:var(--color-wash)}:where(html.dark-mode) .gh-content a{color:#fff}html.dark-mode .gh-content em,html.dark-mode .gh-content strong{color:#fff}html.dark-mode .gh-content code{background:#000;color:#fff}html.dark-mode hr{border-top-color:#282b2f}html.dark-mode .gh-content hr:after{background:#282b2f;box-shadow:var(--color-darkmode) 0 0 0 5px}html.dark-mode figcaption{color:hsla(0,0%,100%,.6)}html.dark-mode .gh-content table:not(.gist table) td:first-child{background-image:linear-gradient(to right,var(--color-darkmode) 50%,rgba(21,23,25,0) 100%)}html.dark-mode .gh-content table:not(.gist table) td:last-child{background-image:linear-gradient(to left,var(--color-darkmode) 50%,rgba(21,23,25,0) 100%)}html.dark-mode .gh-content table:not(.gist table) th{background-color:#282b2f;color:hsla(0,0%,100%,.85)}html.dark-mode .gh-content table:not(.gist table) td,html.dark-mode .gh-content table:not(.gist table) th{border:1px solid #282b2f}html.dark-mode .gh-content input{color:#303a3e}html.dark-mode .site-archive-header .no-image{background:var(--color-darkmode);color:hsla(0,0%,100%,.9)}html.dark-mode .kg-header-card.kg-style-dark{background:#0a0b0c}html.dark-mode .kg-header-card.kg-style-light{background:#202328}html.dark-mode .footer-cta-title,html.dark-mode .kg-header-card h2.kg-header-card-header,html.dark-mode .kg-header-card h3.kg-header-card-subheader{color:#fff}@media (prefers-color-scheme:dark){html.auto-color body{background:var(--color-darkmode);color:hsla(0,0%,100%,.75)}html.auto-color img{opacity:.9}html.auto-color kbd{background:#212427}html.auto-color figcaption a{color:#fff}html.auto-color .gh-head{background:var(--color-darkmode);color:#fff}html.auto-color .gh-burger-box,html.auto-color .site-header-content{color:#fff}html.auto-color .post-card-image{background:var(--color-darkmode)}html.auto-color :is(.post-card-tags,.post-card-meta,.article-tag a,.byline-meta-content){color:#5f5f5f}html.auto-color .post-card-featured,html.auto-color .post-card-title{color:#fff}html.auto-color .post-card-excerpt{color:var(--color-secondary-text)}html.auto-color .article-title,html.auto-color .author-profile-location,html.auto-color .author-profile-social-link:hover{color:#fff}html.auto-color .article-excerpt{color:var(--color-secondary-text)}html.auto-color .post-full-image{background-color:#282b2f}html.auto-color .author-avatar{background-color:#282b2f;border-color:var(--color-darkmode)}html.auto-color .author-profile-image{opacity:1}html.auto-color .author-profile-image path{fill:var(--color-darkmode)}html.auto-color .article-byline-meta .author-name a{color:#fff}html.auto-color .no-image .author-social-link a{color:hsla(0,0%,100%,.75)}html.auto-color .gh-content>[id]{color:hsla(0,0%,100%,.9)}html.auto-color .gh-content pre{background:#030303}html.auto-color .gh-content :not(pre)>code{background:#23262b;border-color:#282b2f;color:var(--color-wash)}:where(html.auto-color) .gh-content a{color:#fff}html.auto-color .gh-content em,html.auto-color .gh-content strong{color:#fff}html.auto-color .gh-content code{background:#000;color:#fff}html.auto-color hr{border-top-color:#282b2f}html.auto-color .gh-content hr:after{background:#282b2f;box-shadow:var(--color-darkmode) 0 0 0 5px}html.auto-color figcaption{color:hsla(0,0%,100%,.6)}html.auto-color .gh-content table:not(.gist table) td:first-child{background-image:linear-gradient(to right,var(--color-darkmode) 50%,rgba(21,23,25,0) 100%)}html.auto-color .gh-content table:not(.gist table) td:last-child{background-image:linear-gradient(to left,var(--color-darkmode) 50%,rgba(21,23,25,0) 100%)}html.auto-color .gh-content table:not(.gist table) th{background-color:#282b2f;color:hsla(0,0%,100%,.85)}html.auto-color .gh-content table:not(.gist table) td,html.auto-color .gh-content table:not(.gist table) th{border:1px solid #282b2f}html.auto-color .gh-content input{color:#303a3e}html.auto-color .site-archive-header .no-image{background:var(--color-darkmode);color:hsla(0,0%,100%,.9)}html.auto-color .kg-header-card.kg-style-dark{background:#0a0b0c}html.auto-color .kg-header-card.kg-style-light{background:#202328}html.auto-color .footer-cta-title,html.auto-color .kg-header-card h2.kg-header-card-header,html.auto-color .kg-header-card h3.kg-header-card-subheader{color:#fff}} /*# sourceMappingURL=screen.css.map */ \ No newline at end of file diff --git a/assets/built/screen.css.map b/assets/built/screen.css.map index dc48732..64bb20b 100644 --- a/assets/built/screen.css.map +++ b/assets/built/screen.css.map @@ -1 +1 @@ -{"version":3,"sources":["global.css","screen.css"],"names":[],"mappings":"AAGA,8YA+EI,QAAS,CACT,YAAa,CACb,cAAe,CAJf,QAAS,CACT,SAAU,CAIV,uBACJ,CACA,KACI,aACJ,CACA,MAEI,eACJ,CACA,aAEI,WACJ,CACA,oDAII,UAAW,CACX,YACJ,CAKA,IACI,aAAc,CAEd,WAAY,CADZ,cAEJ,CACA,KAII,yBAA0B,CAC1B,6BAA8B,CAJ9B,qBAAsB,CACtB,sBAIJ,CACA,iBAGI,kBACJ,CACA,EACI,4BACJ,CACA,iBAEI,SACJ,CACA,SAEI,eACJ,CACA,SAGI,iBACJ,CACA,GAEI,aAAc,CADd,cAEJ,CACA,MACI,aACJ,CACA,QAGI,aAAc,CACd,aAAc,CAFd,iBAAkB,CAGlB,uBACJ,CACA,IACI,SACJ,CACA,IACI,aACJ,CACA,IACI,QACJ,CACA,eACI,eACJ,CACA,KACI,wBACJ,CACA,kBAII,+BAAiC,CACjC,aACJ,CACA,IAII,kBAAmB,CACnB,sCAA2C,CAC3C,iBAAkB,CAClB,+CAAoD,CALpD,4BAA6B,CAC7B,gBAAiB,CAFjB,eAOJ,CACA,yBACI,IACI,gBACJ,CACJ,CACA,sCAMI,aAAc,CACd,YAAa,CAFb,QAGJ,CACA,OAEI,WAAY,CADZ,gBAEJ,CACA,cAEI,mBACJ,CACA,oEAOI,yBAA0B,CAF1B,cAGJ,CACA,sCAEI,cACJ,CACA,iDAGI,QAAS,CADT,SAEJ,CACA,MACI,kBACJ,CACA,YACI,YACJ,CACA,uCAEI,qBAAsB,CACtB,SACJ,CACA,4FAEI,WACJ,CACA,mBAGI,4BAA6B,CAF7B,sBAGJ,CACA,+FAEI,uBACJ,CACA,OAEI,QAAS,CADT,SAEJ,CACA,SACI,aACJ,CACA,MAEI,wBAAyB,CADzB,gBAEJ,CACA,MAEI,SACJ,CAMA,KAGI,yCAA6C,CAF7C,eAGJ,CACA,KAQI,iCAAkC,CAGlC,kCAAmC,CACnC,iCAAkC,CAClC,oCAAqC,CAJrC,eAAgB,CARhB,2BAA4B,CAC5B,4BAA6B,CAC7B,gBAAiB,CAGjB,iBAAkB,CADlB,eAAgB,CAEhB,gBAAiB,CAHjB,iBAUJ,CAEA,iBAEI,kBAAmB,CADnB,gBAEJ,CAHA,YAEI,kBAAmB,CADnB,gBAEJ,CAEA,GAOI,QAAS,CACT,4BAA6B,CAN7B,aAAc,CAId,UAAW,CAFX,oBAAqB,CACrB,SAAU,CAJV,iBAAkB,CAElB,UAMJ,CAEA,kCAMI,qBACJ,CAEA,SAGI,QAAS,CAFT,QAAS,CACT,SAEJ,CAEA,SACI,eACJ,CAEA,qHAKI,gBACJ,CAEA,MAEI,kBAAmB,CACnB,mBACJ,CAEA,wBAII,iBACJ,CAEA,GACI,eACJ,CAEA,GACI,kBACJ,CAEA,MAEI,cACJ,CAEA,GAEI,iBAAkB,CADlB,iBAEJ,CAEA,MACI,eACJ,CAEA,GAII,aAAc,CAHd,UAAW,CAIX,eAAgB,CAHhB,iBAAkB,CAIlB,gBAAiB,CAHjB,WAIJ,CAEA,GACI,cAAiB,CACjB,eACJ,CAEA,WAGI,mBAAoB,CAFpB,cAAe,CACf,eAEJ,CAEA,iBACI,oBAAqB,CAErB,cAAgB,CADhB,wBAA2B,CAE3B,UACJ,CAEA,wBACI,qBACJ,CAEA,gBACI,eACJ,CACA,kBACI,eACJ,CAEA,EACI,aAAc,CACd,oBACJ,CAEA,kBASI,iCAAkC,CADlC,eAAgB,CAEhB,qBAAuB,CAHvB,gBAAiB,CADjB,YAKJ,CAEA,GAEI,gBAAiB,CACjB,eAAgB,CAChB,sBAAwB,CAHxB,eAIJ,CACA,yBACI,GACI,gBACJ,CACJ,CAEA,GAEI,gBAAiB,CACjB,eAAgB,CAFhB,mBAGJ,CACA,yBACI,GACI,gBACJ,CACJ,CAEA,GAEI,gBAAiB,CACjB,eAAgB,CAFhB,mBAGJ,CACA,yBACI,GACI,gBACJ,CACJ,CAEA,GAEI,cAAe,CADf,mBAEJ,CACA,yBACI,GACI,gBACJ,CACJ,CAEA,GAEI,cACJ,CAEA,MAJI,mBAOJ,CAHA,GAEI,gBACJ,CC/bA,MAGI,qBAAsB,CACtB,sBAAuB,CACvB,mBAAoB,CACpB,wBAAyB,CACzB,uBAAwB,CACxB,yBAA0B,CAC1B,8BAA+B,CAC/B,sBAAuB,CACvB,oBAAqB,CACrB,wBAAyB,CAYzB,mJAA8J,CAC9J,gCAAmC,CACnC,mCAEJ,CAMA,UACI,YAAa,CACb,qBAAsB,CACtB,gBACJ,CAEA,cACI,WACJ,CAGA,OAEI,yBAA2B,CAD3B,iBAEJ,CAGA,OACI,aAAc,CACd,gBAAiB,CACjB,UACJ,CAMA,aAGI,oCAAqC,CADrC,UAAW,CADX,iBAGJ,CAEA,mBAII,QAAS,CAGT,WAAY,CAFZ,MAAO,CAGP,mBAAiB,CAAjB,gBAAiB,CAPjB,iBAAkB,CAElB,OAAQ,CADR,KAAM,CAIN,UAGJ,CAEA,qBAII,kBAAmB,CAInB,2BAA4B,CAL5B,YAAa,CAGb,sBAAuB,CADvB,mBAAoB,CAJpB,iBAAkB,CAMlB,iBAAkB,CALlB,WAOJ,CAEA,gCAEI,0CAA2C,CAC3C,UAAW,CAFX,gBAGJ,CAEA,6DACI,gCACJ,CAEA,kCACI,gBAAiB,CACjB,eACJ,CAEA,6CACI,oBAAqB,CACrB,sBACJ,CAEA,gCACI,aACJ,CAEA,mBACI,iBACJ,CAEA,qDACI,sBACJ,CAEA,WACI,aAAc,CACd,aAAc,CACd,gBACJ,CAEA,6CAEI,aAAc,CADd,iBAAkB,CAElB,eACJ,CAEA,YAII,cAAe,CACf,eAAgB,CAHhB,QAAS,CACT,SAAU,CAFV,UAKJ,CAEA,6BACI,6BACJ,CAEA,uBACI,cACJ,CAEA,8CACI,gBACJ,CAEA,yDACI,gBACJ,CAEA,kBACI,oBAAqB,CAGrB,gBAAiB,CACjB,eAAgB,CAChB,eAAgB,CAHhB,eAAgB,CADhB,UAKJ,CAEA,8CAEI,gBAAiB,CACjB,eAAgB,CAFhB,cAGJ,CAEA,6BACI,eACJ,CAEA,8BACI,iCACJ,CAEA,6BAGI,UAAW,CAFX,gBAAiB,CACjB,sBAEJ,CAEA,yDACI,gBACJ,CAEA,2FACI,gBACJ,CAEA,yBACI,gCACI,gBACJ,CACA,mBACI,QACJ,CACA,WACI,aACJ,CACA,YACI,0BACJ,CACA,kBACI,0BACJ,CACA,6BACI,yBACJ,CACA,8BACI,wBACJ,CACJ,CAMA,SAKI,qBAAsB,CAFtB,gBAAiB,CACjB,iBAAkB,CAFlB,gCAAkC,CADlC,6BAKJ,CAEA,wCACI,0CAA2C,CAC3C,UACJ,CAEA,kCAMI,4BAA6B,CAC7B,UAAW,CAHX,MAAO,CAHP,iBAAkB,CAElB,OAAQ,CADR,KAAM,CAGN,YAGJ,CAEA,WACI,oBACJ,CAEA,eAEI,aAAc,CADd,YAAa,CAGb,wBAAyB,CADzB,mCAEJ,CAMA,eAEI,kBAAmB,CADnB,YAAa,CAEb,WAAY,CACZ,eAAgB,CAChB,oBACJ,CAEA,cAKI,aAAc,CAJd,aAAc,CAEd,gBAAiB,CADjB,eAAgB,CAEhB,qBAEJ,CAEA,uBACI,eACJ,CAEA,yBACI,UACJ,CAEA,uBACI,YACJ,CAEA,kBACI,eACJ,CAWA,qCAPI,kBAAmB,CADnB,YAaJ,CALA,cAII,eAAgB,CADhB,cAEJ,CAEA,uBACI,iBACJ,CAEA,mBAGI,kBAAmB,CAFnB,mBAAoB,CACpB,cAAe,CAEf,QAAS,CACT,eAAgB,CAChB,QAAS,CACT,SACJ,CAEA,sBACI,QAAS,CACT,SACJ,CAEA,qBAGI,aAAc,CAFd,oBAAqB,CACrB,eAEJ,CAEA,2BACI,UACJ,CAMA,WAEI,kBAAmB,CADnB,YAAa,CAEb,QACJ,CAEA,gBAEI,aAAc,CADd,aAEJ,CAEA,sBACI,UACJ,CAEA,oBAEI,WAAY,CADZ,UAEJ,CAEA,iBAGI,kBAAmB,CAFnB,YAAa,CAGb,QAAS,CAFT,wBAAyB,CAGzB,eAAgB,CAChB,gBACJ,CAEA,gBAEI,kBAAmB,CAQnB,oCAAqC,CAFrC,iBAAkB,CAClB,UAAW,CARX,mBAAoB,CAMpB,gBAAiB,CAFjB,eAAgB,CADhB,WAAY,CAEZ,sBAAwB,CAHxB,gBAQJ,CAEA,2BAEI,eAAgB,CADhB,2BAEJ,CAsCA,WAEI,kBAAmB,CAMnB,4BAA6B,CAC7B,QAAS,CAFT,cAAe,CANf,mBAAoB,CAIpB,WAAY,CAFZ,sBAAuB,CAOvB,YAAa,CAJb,SAAU,CAFV,UAOJ,CAEA,iBACI,UACJ,CAEA,0BACI,gBACJ,CAEA,4BACI,kBACJ,CAEA,yBACI,4BACI,YACJ,CACJ,CAEA,yBACI,0BACI,YACJ,CACJ,CAMA,WAGI,cAAe,CADf,YAAa,CADb,iBAGJ,CAEA,eAGI,kBAAmB,CADnB,YAAa,CAIb,WAAY,CAFZ,sBAAuB,CAHvB,iBAAkB,CAIlB,UAEJ,CAEA,0BACI,UACJ,CAEA,iBAEI,WAAY,CADZ,UAEJ,CAEA,sBAWI,oFAEJ,CAEA,qEALI,uBAAwB,CALxB,QAAS,CAET,UAAW,CALX,aAAc,CAOd,UAAW,CALX,MAAO,CAEP,WAAY,CALZ,iBAAkB,CAElB,KAAM,CAKN,UAAW,CAIX,2BAiBJ,CAdA,+CAYI,sFAEJ,CAEA,wBACI,0BACJ,CACA,uBACI,yBACJ,CAEA,iEACI,0BACJ,CACA,gEACI,yBACJ,CAEA,oCAEI,0BAA2B,CAC3B,oFAA0F,CAF1F,OAGJ,CAEA,sCAEI,wCAAyC,CADzC,UAEJ,CAEA,qCAEI,yCAA0C,CAD1C,UAEJ,CAOA,yBACI,WACI,oBACJ,CACA,SACI,eACJ,CACA,wBAEI,yBAA0B,CAD1B,WAEJ,CACA,wBAMI,kBAAmB,CADnB,YAAa,CAFb,sBAAuB,CAIvB,6BAA8B,CAH9B,cAAe,CAHf,iBAAkB,CAOlB,wBAAiB,CAAjB,qBAAiB,CAAjB,gBAAiB,CANjB,UAOJ,CACA,iCACI,wBACJ,CACA,uBACI,iBAAkB,CAOlB,gBAAiB,CADjB,eAAgB,CAEhB,iBAAkB,CAHlB,eAAkB,CADlB,iBAKJ,CACA,mDAPI,kBAAmB,CAFnB,YAAa,CACb,qBAcJ,CANA,4BAKI,eAAgB,CADhB,QAEJ,CACA,0BACI,6BAA8B,CAC9B,sBAAuB,CACvB,mBAAoB,CACpB,eACJ,CAEA,iDAEI,YACJ,CAEA,cAEI,YAAa,CADb,eAEJ,CACA,uBAII,QAAS,CACT,MAAO,CAEP,iBAAkB,CANlB,cAAe,CAEf,OAAQ,CADR,KAAM,CAIN,eAEJ,CACA,sCACI,gCACJ,CACA,6EAEI,YACJ,CACJ,CAEA,yBACI,uBACI,eACJ,CACJ,CAEA,iCACI,oCACJ,CAMA,WAEI,YAAa,CACb,iBAAkB,CAClB,mCAAqC,CACrC,6BAA+B,CAJ/B,iBAKJ,CAEA,+CACI,gBACJ,CAEA,yBACI,WACI,6BACJ,CACJ,CAEA,yBACI,WAEI,aAAc,CADd,yBAEJ,CACJ,CAEA,WAKI,qBAAsB,CAFtB,YAAa,CACb,qBAAsB,CAFtB,kBAAmB,CADnB,iBAAkB,CAKlB,qBACJ,CAEA,sBAGI,aAAc,CACd,kBAAmB,CAFnB,eAAgB,CADhB,iBAIJ,CAEA,4BACI,UAAW,CACX,aAAc,CACd,kBACJ,CAEA,4DAEI,iCAA0B,CAA1B,yBAA0B,CAD1B,+BAEJ,CAEA,uEAEI,OAAQ,CACR,gBAAiB,CAFjB,iBAGJ,CAEA,6FACI,gBACJ,CAEA,iBAKI,yDAA0D,CAD1D,WAAY,CAFZ,OAAQ,CAIR,mBAAiB,CAAjB,gBAAiB,CALjB,iBAAkB,CAElB,UAIJ,CAEA,kFACI,eACJ,CAEA,kBAKI,kBAAmB,CAKnB,UAAW,CANX,YAAa,CAIb,gBAAiB,CACjB,eAAgB,CAFhB,OAAQ,CALR,OAAQ,CAIR,sBAAuB,CALvB,iBAAkB,CAElB,UAQJ,CAEA,wBAGI,2BAA4B,CAD5B,aAAc,CADd,iBAGJ,CAEA,8BACI,oBACJ,CAEA,6CACI,SACJ,CAEA,4BACI,YACJ,CAEA,gBAEI,kBAAmB,CAGnB,iCAAkC,CAJlC,YAAa,CAKb,gBAAiB,CACjB,eAAgB,CAJhB,QAAS,CAKT,sBAAwB,CACxB,aAAc,CALd,eAMJ,CAEA,oBAGI,kBAAmB,CAGnB,+BAAgC,CAJhC,YAAa,CAEb,OAAQ,CACR,iBAAkB,CAJlB,iBAMJ,CAEA,wBAEI,MAAO,CADP,iBAEJ,CAEA,iBAEI,gBAAiB,CACjB,eAAgB,CAFhB,QAGJ,CAEA,+CACI,UACJ,CAEA,2BACI,YACJ,CAEA,kCACI,6BAA8B,CAC9B,sBACJ,CAEA,qBAEI,gBAAiB,CADjB,eAEJ,CAEA,mBAEI,YAAa,CACb,qBAAsB,CAFtB,WAGJ,CAEA,mBAOI,oBAAqB,CACrB,2BAA4B,CAP5B,mBAAoB,CAIpB,gBAAiB,CACjB,eAAgB,CAHhB,eAAgB,CAChB,eAAgB,CAFhB,iBAAkB,CAOlB,qBACJ,CAEA,kCACI,4BACJ,CAEA,sGACI,oBACJ,CAEA,uDACI,cACJ,CAEA,gBAOI,iCAAkC,CADlC,gBAAiB,CAFjB,eAAgB,CAChB,SAGJ,CAEA,kCARI,kBAAmB,CADnB,YAAa,CAEb,OAWJ,CAEA,sCAII,4CAA6C,CAC7C,iBAAkB,CAFlB,UAAW,CADX,UAAW,CADX,SAKJ,CAEA,qBACI,YACJ,CAEA,sBAII,eAAqD,CACrD,kBAAmB,CAJnB,aAAc,CAEd,WAAY,CAIZ,mBAAiB,CAAjB,gBAAiB,CALjB,UAMJ,CAEA,aACI,YAAa,CACb,cAAe,CAGf,eAAgB,CAFhB,gBAAiB,CACjB,SAEJ,CAEA,kBAEI,aAAc,CACd,QAAS,CACT,SAAU,CAHV,iBAIJ,CAWA,0BACI,iBAGI,cAAe,CAEf,YAAa,CAHb,YAAa,CADb,kBAAmB,CAGnB,mCAEJ,CAEA,kDACI,YACJ,CAEA,uCAEI,kBAAmB,CACnB,eAAgB,CAFhB,iBAGJ,CAEA,oCACI,kBACJ,CAEA,6CACI,kBACJ,CAEA,kCAGI,WAAY,CAFZ,iBAAkB,CAClB,UAEJ,CAEA,iCACI,kBACJ,CAEA,kCAEI,gBAAiB,CACjB,aAAc,CAFd,YAGJ,CAEA,oCACI,eACJ,CAEA,gBACI,kBACJ,CAEA,sCACI,kBACJ,CAEA,gCACI,kBACJ,CAEA,iCACI,gBAAiB,CACjB,eACJ,CAEA,mCAEI,gBAAiB,CADjB,eAEJ,CAEA,gDACI,aACJ,CAEA,mEACI,QACJ,CAEA,mBACI,kBACJ,CAEA,oCACI,cACJ,CACJ,CAMA,SACI,yCAA4C,CAC5C,qBACJ,CAEA,wBACI,4BACJ,CAEA,gBACI,6BACJ,CAEA,+BACI,gCACJ,CAEA,aAEI,gBAAiB,CADjB,kBAEJ,CAEA,eACI,iCACJ,CAEA,eAKI,2BAA4B,CAH5B,kCAAqC,CACrC,eAAgB,CAChB,aAAc,CAHd,eAKJ,CAEA,gCACI,6BACJ,CAEA,iBAKI,2BAA4B,CAF5B,cAAe,CACf,gBAAiB,CAHjB,eAAgB,CAChB,eAIJ,CAEA,0BACI,+BAAkC,CAElC,4BAA8B,CAD9B,UAEJ,CAEA,2BACI,+BACJ,CAEA,4BACI,+BACJ,CAEA,8BACI,aAAc,CACd,gBAAiB,CACjB,iBAAkB,CAClB,UACJ,CAEA,yBACI,iBAEI,gBAAiB,CADjB,eAEJ,CACJ,CAWA,WACI,YAAa,CACb,sOAaJ,CAEA,aACI,+BACJ,CAEA,eACI,+BACJ,CAEA,eACI,+BACJ,CAEA,mBACI,UACJ,CAWA,gBAEI,eAAgB,CADhB,4BAEJ,CAGA,iBAEI,2BAA4B,CAD5B,QAEJ,CAEA,kCACI,6BACJ,CAIA,mCACI,cACJ,CAGA,mBACI,2BACJ,CAGA,sCAGI,4BAA8B,CAD9B,iBAEJ,CACA,0CAEI,sCACJ,CAGA,cACI,+BAAgC,CAChC,yBAA0B,CAC1B,qBACJ,CAEA,+FAKI,6BAA8B,CAE9B,cAAe,CADf,eAAgB,CAEhB,iBACJ,CAEA,mMAII,6BAA8B,CAE9B,gBAAiB,CADjB,eAAgB,CAEhB,iBACJ,CAEA,sLAGI,gBAAiB,CACjB,iBACJ,CAEA,+CACI,gBAAiB,CACjB,iBACJ,CAEA,oDACI,cACJ,CAEA,4ZASI,4BACJ,CAEA,2QAOI,kBACJ,CAEA,oCAEI,iBAAkB,CAClB,SAAU,CAFV,iBAGJ,CAEA,2CAOI,oCAAqC,CAFrC,QAAS,CAJT,UAAW,CAEX,WAAY,CADZ,iBAAkB,CAElB,KAAM,CAEN,WAEJ,CAEA,2BAQI,kBAAmB,CALnB,wBAAyB,CAMzB,mBAAqB,CAFrB,aAAc,CAFd,cAAgB,CADhB,yBAA2B,CAE3B,eAAgB,CAJhB,kBAA4B,CAD5B,qBASJ,CAEA,gBAMI,gCAAiC,CACjC,iBAAkB,CAClB,+DAAiE,CALjE,uBAAwB,CACxB,gBAAiB,CACjB,iBAAkB,CAJlB,aAAc,CACd,iBAOJ,CAEA,yBACI,kSASI,gBACJ,CAEA,sLAGI,gBACJ,CAEA,2CACI,sBACJ,CACJ,CAiBA,kFAEI,eAAgB,CADhB,gBAEJ,CAGA,eAGI,kBAAmB,CAFnB,YAAa,CACb,qBAAsB,CAEtB,UACJ,CAGA,mBACI,WACJ,CAEA,yDACI,6BACJ,CAEA,sCACI,yBACJ,CAEA,mBAEI,0BAA2B,CAD3B,6BAEJ,CAEA,kCACI,4BACJ,CAEA,sCACI,gCACJ,CAEA,wDACI,aACJ,CAEA,0DACI,6BACJ,CAIA,WAGI,oBAAsB,CACtB,gBAAiB,CACjB,iBAAkB,CAJlB,uBAAwB,CACxB,iBAIJ,CACA,kBACI,oBACJ,CACA,aACI,yBACJ,CAIA,uBAII,6BACJ,CAEA,yCACI,gBACJ,CAMA,kCACI,YAAa,CACb,6BACJ,CAEA,sCACI,+BACJ,CACA,sCACI,gBACJ,CAEA,6CACI,+BACJ,CAEA,kBACI,gBACJ,CAIA,eACI,kBACJ,CAEA,WACI,gBACJ,CAEA,aACI,QACJ,CAEA,kBAII,yBAA2B,CAH3B,gBAAiB,CACjB,eAAiB,CACjB,8BAEJ,CAGA,mCAWI,gCAAiC,CACjC,sJAA8L,CAC9L,mCAAqC,CAErC,2BAA4B,CAD5B,mCAAqC,CARrC,wBAAyB,CADzB,gBAAiB,CAJjB,oBAAqB,CAMrB,4BAA6B,CAC7B,gBAAiB,CALjB,cAAe,CADf,eAAgB,CAQhB,kBAAmB,CADnB,kBAAmB,CALnB,UAYJ,CAEA,kDACI,kEAAgG,CAEhG,2BAA4B,CAD5B,yBAEJ,CAEA,iDACI,mEAA+F,CAC/F,0BAA2B,CAE3B,2BAA4B,CAD5B,yBAEJ,CAEA,sCAOI,wBAAqD,CANrD,2BAA4B,CAC5B,gBAAiB,CACjB,eAAgB,CAChB,mBAAqB,CACrB,eAAgB,CAChB,wBAEJ,CAEA,4EAGI,wBAA4D,CAD5D,gBAEJ,CAMA,gBACI,YAAa,CACb,6BAA8B,CAC9B,4BACJ,CAEA,wBAGI,kBAAmB,CADnB,YAAa,CADb,WAGJ,CAEA,qCACI,0BAA2B,CAC3B,kBACJ,CAEA,qBACI,iCAAkC,CAClC,gBAAiB,CACjB,iBACJ,CAEA,kCAEI,gBAAiB,CACjB,eAAgB,CAChB,gBAAiB,CAHjB,cAIJ,CAEA,2BACI,oBAAqB,CACrB,YACJ,CAEA,eAQI,oCAAqC,CAFrC,qBAAsB,CACtB,iBAAkB,CANlB,aAAc,CAId,yBAA2B,CAF3B,aAAc,CADd,eAAgB,CAEhB,wBAKJ,CAEA,8BACI,eACJ,CAEA,yBACI,qCACI,kBACJ,CACA,kCACI,iBACJ,CACJ,CAMA,YACI,iBAAkB,CAClB,iBACJ,CAEA,kBAEI,kCAAqC,CACrC,eAAgB,CAFhB,4BAGJ,CAEA,mCACI,6BACJ,CAEA,mBAGI,kBAAmB,CAOnB,eAAgB,CAChB,oCAAqC,CACrC,iBAAkB,CAHlB,iCAAkC,CAPlC,mBAAoB,CAMpB,gBAAiB,CAJjB,6BAA8B,CAE9B,eAAgB,CAChB,wBAAyB,CANzB,iBAAkB,CAYlB,2BAA6B,CAR7B,UASJ,CAEA,yBACI,oBACJ,CAEA,wBAOI,oCAAqC,CACrC,iBAAkB,CALlB,UAAW,CAFX,oBAAqB,CAGrB,gBAAiB,CACjB,eAAgB,CAChB,sBAAwB,CAJxB,gBAOJ,CAMA,gBACI,kBACJ,CAEA,4BACI,2BACJ,CAEA,WAGI,cAAe,CAFf,YAAa,CACb,mCAEJ,CAEA,2BACI,YACJ,CAEA,0BACI,WACI,mCACJ,CACA,mCACI,YACJ,CACJ,CAEA,yBACI,WACI,mCACJ,CACA,mCACI,YACJ,CACJ,CAIA,UAGI,kBAAmB,CAFnB,YAAa,CACb,qBAAsB,CAEtB,kBACJ,CAGA,eAEI,oBAAqB,CADrB,YAAa,CAEb,6BAA8B,CAC9B,kBAAmB,CAEnB,eAAgB,CADhB,UAEJ,CAEA,aAII,gBAAiB,CADjB,eAAgB,CADhB,eAAgB,CADhB,UAIJ,CAEA,yBACI,0BAA2B,CAC3B,eAAgB,CAChB,kBACJ,CAEA,+BAEI,eAAgB,CADhB,UAEJ,CAMA,oBAMI,eAAqD,CACrD,iBAAkB,CANlB,aAAc,CAEd,WAAY,CAEZ,eAAgB,CADhB,mBAAiB,CAAjB,gBAAiB,CAFjB,UAMJ,CAEA,uBACI,eACJ,CAEA,yBACI,eACJ,CAEA,qBACI,YAAa,CACb,QACJ,CAEA,4BAEI,iCAAkC,CADlC,gBAEJ,CAEA,kCACI,2BACJ,CAEA,gCAEI,WAAY,CADZ,UAEJ,CAEA,0BACI,qDACI,kBAAmB,CACnB,eACJ,CACJ,CAMA,qDACI,oBAAuB,CACvB,OACJ,CAEA,kDACI,OACJ,CAEA,0BACI,kDACI,kBAAmB,CACnB,eACJ,CACJ,CAKA,eACI,oBACJ,CAEA,eACI,mBAAoB,CACpB,iBACJ,CAEA,YAEI,cAAe,CAEf,mBAAoB,CADpB,eAAgB,CAFhB,QAIJ,CAEA,mBAEI,iCAAkC,CAClC,gBAAiB,CAGjB,eAAgB,CADhB,sBAAwB,CADxB,iBAAkB,CAHlB,QAMJ,CAEA,YACI,oBAAqB,CACrB,cACJ,CAEA,yBACI,0BAGI,kBAAmB,CAFnB,eAAgB,CAChB,gBAEJ,CACJ,CAEA,yBACI,eACI,gBACJ,CACA,YACI,iBACJ,CACA,eACI,mBACJ,CACA,mBAEI,gBAAiB,CADjB,cAEJ,CACJ,CAEA,yBACI,eACI,gBACJ,CACA,eACI,mBACJ,CACJ,CAMA,aAMI,kBAAmD,CADnD,UAAW,CAHX,2BAA+B,CAE/B,oBAAqB,CADrB,gBAAiB,CAFjB,iBAMJ,CAEA,oBAEI,aAAc,CAEd,wBAA4B,CAH5B,YAAa,CAIb,gBAAiB,CAFjB,mCAGJ,CAEA,0BACI,UAAW,CAEX,eAAgB,CADhB,sBAEJ,CAEA,eACI,wBACJ,CAEA,qBACI,UAA0B,CAC1B,oBACJ,CAEA,oBACI,YAAa,CAEb,cAAe,CADf,sBAAuB,CAIvB,eAAgB,CAFhB,eAAgB,CAChB,SAEJ,CAEA,oBAEI,kBAAmB,CADnB,mBAAoB,CAIpB,eAAgB,CADhB,QAAS,CADT,SAGJ,CAEA,mBAGI,kBAAmB,CADnB,mBAAoB,CAEpB,gBAAiB,CAHjB,iBAIJ,CAEA,+CAMI,eAAgB,CAChB,kBAAmB,CANnB,UAAW,CACX,aAAc,CAEd,UAAW,CACX,iBAAkB,CAFlB,SAKJ,CAEA,yBACI,oBAGI,UAAW,CADX,yBAA0B,CAD1B,eAAgB,CAGhB,iBACJ,CACA,kDAEI,UAAW,CACX,gBACJ,CACA,wBACI,kBACJ,CACJ,CAMA,oBAEI,gCAAiC,CADjC,yBAEJ,CAEA,mBACI,UACJ,CAEA,mBACI,kBACJ,CAEA,4BACI,UACJ,CAEA,wBACI,gCAAiC,CACjC,UACJ,CAMA,kEACI,UACJ,CAEA,gCACI,gCACJ,CAEA,wFACI,aACJ,CAMA,mEACI,UACJ,CAEA,kCACI,iCACJ,CAUA,uHACI,UACJ,CAEA,gCACI,iCACJ,CAEA,gCACI,wBACJ,CAEA,8BAEI,wBAAyD,CADzD,kCAEJ,CAEA,qCACI,SACJ,CAEA,0CACI,0BACJ,CAEA,mDACI,UACJ,CAEA,+CACI,yBACJ,CAEA,gCACI,wBACJ,CAEA,+BACI,kBACJ,CAEA,0CACI,kBAAmD,CACnD,oBAAqD,CACrD,uBACJ,CAEA,qCACI,UACJ,CAMA,gEACI,UACJ,CAEA,gCAEI,eAAgB,CADhB,UAEJ,CAEA,kBACI,wBACJ,CAEA,oCACI,kBAAmD,CACnD,0CACJ,CAEA,0BACI,wBACJ,CAEA,iEACI,0FACJ,CAEA,gEACI,yFACJ,CAEA,qDAEI,wBAAyD,CADzD,yBAEJ,CAEA,0GAEI,wBACJ,CAEA,iCACI,aACJ,CAEA,8CAEI,gCAAiC,CADjC,wBAEJ,CAEA,6CACI,kBACJ,CAEA,8CACI,kBACJ,CAOA,oJACI,UACJ,CAEA,mCACI,qBAEI,gCAAiC,CADjC,yBAEJ,CAEA,oBACI,UACJ,CAEA,oBACI,kBACJ,CAEA,6BACI,UACJ,CAEA,yBACI,gCAAiC,CACjC,UACJ,CAMA,oEACI,UACJ,CAEA,iCACI,gCACJ,CAEA,yFACI,aACJ,CAMA,qEACI,UACJ,CAEA,mCACI,iCACJ,CAUA,0HACI,UACJ,CAEA,iCACI,iCACJ,CAEA,iCACI,wBACJ,CAEA,+BAEI,wBAAyD,CADzD,kCAEJ,CAEA,sCACI,SACJ,CAEA,2CACI,0BACJ,CAEA,oDACI,UACJ,CAEA,gDACI,yBACJ,CAEA,iCACI,wBACJ,CAEA,gCACI,kBACJ,CAEA,2CACI,kBAAmD,CACnD,oBAAqD,CACrD,uBACJ,CAEA,sCACI,UACJ,CAMA,kEACI,UACJ,CAEA,iCAEI,eAAgB,CADhB,UAEJ,CAEA,mBACI,wBACJ,CAEA,qCACI,kBAAmD,CACnD,0CACJ,CAEA,2BACI,wBACJ,CAEA,kEACI,0FACJ,CAEA,iEACI,yFACJ,CAEA,sDAEI,wBAAyD,CADzD,yBAEJ,CAEA,4GAEI,wBACJ,CAEA,kCACI,aACJ,CAEA,+CAEI,gCAAiC,CADjC,wBAEJ,CAEA,8CACI,kBACJ,CAEA,+CACI,kBACJ,CAOA,uJACI,UACJ,CACJ","file":"screen.css","sourcesContent":["/* Reset\n/* ---------------------------------------------------------- */\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font: inherit;\n font-size: 100%;\n vertical-align: baseline;\n}\nbody {\n line-height: 1;\n}\nol,\nul {\n list-style: none;\n}\nblockquote,\nq {\n quotes: none;\n}\nblockquote:before,\nblockquote:after,\nq:before,\nq:after {\n content: \"\";\n content: none;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\nimg {\n display: block;\n max-width: 100%;\n height: auto;\n}\nhtml {\n box-sizing: border-box;\n font-family: sans-serif;\n\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\n*,\n*:before,\n*:after {\n box-sizing: inherit;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nb,\nstrong {\n font-weight: bold;\n}\ni,\nem,\ndfn {\n font-style: italic;\n}\nh1 {\n margin: 0.67em 0;\n font-size: 2em;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nmark {\n background-color: #fdffb6;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nkbd {\n padding: 3px 5px;\n font-family: var(--font-mono);\n font-size: 1.5rem;\n background: #f6f8fa;\n border: 1px solid rgba(124, 139, 154, 0.25);\n border-radius: 6px;\n box-shadow: inset 0 -1px 0 rgba(124, 139, 154, 0.25);\n}\n@media (max-width: 600px) {\n kbd {\n font-size: 1.3rem;\n }\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 3 */\n color: inherit; /* 1 */\n font: inherit; /* 2 */\n}\nbutton {\n overflow: visible;\n border: none;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\n/* 1 */\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n cursor: pointer; /* 3 */\n\n -webkit-appearance: button; /* 2 */\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\ninput {\n line-height: normal;\n}\ninput:focus {\n outline: none;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n box-sizing: content-box; /* 2 */\n\n -webkit-appearance: textfield; /* 1 */\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nlegend {\n padding: 0; /* 2 */\n border: 0; /* 1 */\n}\ntextarea {\n overflow: auto;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\ntd,\nth {\n padding: 0;\n}\n\n/* ==========================================================================\n Base styles: opinionated defaults\n ========================================================================== */\n\nhtml {\n font-size: 62.5%;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n color: var(--color-darkgrey);\n font-family: var(--font-sans);\n font-size: 1.6rem;\n line-height: 1.6em;\n font-weight: 400;\n font-style: normal;\n letter-spacing: 0;\n text-rendering: optimizeLegibility;\n background: #fff;\n\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n -moz-font-feature-settings: \"liga\" on;\n}\n\n::selection {\n text-shadow: none;\n background: #daf2fd;\n}\n\nhr {\n position: relative;\n display: block;\n width: 100%;\n margin: 2.5em 0 3.5em;\n padding: 0;\n height: 1px;\n border: 0;\n border-top: 1px solid #f0f0f0;\n}\n\naudio,\ncanvas,\niframe,\nimg,\nsvg,\nvideo {\n vertical-align: middle;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n border: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\n::not(.gh-content) p,\n::not(.gh-content) ul,\n::not(.gh-content) ol,\n::not(.gh-content) dl,\n::not(.gh-content) blockquote {\n margin: 0 0 1.5em 0;\n}\n\nol,\nul {\n padding-left: 1.3em;\n padding-right: 1.5em;\n}\n\nol ol,\nul ul,\nul ol,\nol ul {\n margin: 0.5em 0 1em;\n}\n\nul {\n list-style: disc;\n}\n\nol {\n list-style: decimal;\n}\n\nul,\nol {\n max-width: 100%;\n}\n\nli {\n padding-left: 0.3em;\n line-height: 1.6em;\n}\n\nli + li {\n margin-top: 0.5em;\n}\n\ndt {\n float: left;\n margin: 0 20px 0 0;\n width: 120px;\n color: #daf2fd;\n font-weight: 500;\n text-align: right;\n}\n\ndd {\n margin: 0 0 5px 0;\n text-align: left;\n}\n\nblockquote {\n margin: 1.5em 0;\n padding: 0 1.6em 0 1.6em;\n border-left: #daf2fd;\n}\n\nblockquote small {\n display: inline-block;\n margin: 0.8em 0 0.8em 1.5em;\n font-size: 0.9em;\n opacity: 0.8;\n}\n/* Quotation marks */\nblockquote small:before {\n content: \"\\2014 \\00A0\";\n}\n\nblockquote cite {\n font-weight: bold;\n}\nblockquote cite a {\n font-weight: normal;\n}\n\na {\n color: #15171A;\n text-decoration: none;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n margin-top: 0;\n line-height: 1.15;\n font-weight: 600;\n text-rendering: optimizeLegibility;\n letter-spacing: -0.01em;\n}\n\nh1 {\n margin: 0 0 0.5em 0;\n font-size: 4.8rem;\n font-weight: 700;\n letter-spacing: -0.015em;\n}\n@media (max-width: 600px) {\n h1 {\n font-size: 2.8rem;\n }\n}\n\nh2 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2.8rem;\n font-weight: 700;\n}\n@media (max-width: 600px) {\n h2 {\n font-size: 2.3rem;\n }\n}\n\nh3 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2.4rem;\n font-weight: 600;\n}\n@media (max-width: 600px) {\n h3 {\n font-size: 1.7rem;\n }\n}\n\nh4 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2rem;\n}\n@media (max-width: 600px) {\n h4 {\n font-size: 1.7rem;\n }\n}\n\nh5 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2rem;\n}\n\nh6 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.8rem;\n}\n","/* 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. Global Styles\n2. Layout\n3. Special Templates\n4. Site Header\n5. Site Navigation\n6. Post Feed\n7. Single Post\n 7.1. Post Byline\n 7.2. Members Subscribe Form\n 7.4. Related Posts\n 7.5. Koenig Styles\n 7.6 Comments\n8. Author Template\n9. Error Template\n11. Site Footer\n12. Dark Mode\n\n*/\n\n/* 1. Global - Set up the things\n/* ---------------------------------------------------------- */\n\n/* Import CSS reset and base styles */\n@import \"global.css\";\n\n:root {\n\n /* Colours */\n --color-green: #a4d037;\n --color-yellow: #fecd35;\n --color-red: #f05230;\n --color-darkgrey: #15171A;\n --color-midgrey: #738a94;\n --color-lightgrey: #f1f1f1;\n --color-secondary-text: #979797;\n --color-border: #e1e1e1;\n --color-wash: #e5eff5;\n --color-darkmode: #151719;\n\n /*\n An accent color is also set by Ghost itself in\n Ghost Admin > Settings > Brand\n\n --ghost-accent-color: {value};\n\n You can use this variable throughout your styles\n */\n\n /* Fonts */\n --font-sans: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\", sans-serif;\n --font-serif: Georgia, Times, serif;\n --font-mono: Menlo, Courier, monospace;\n\n}\n\n\n/* 2. Layout - Page building blocks\n/* ---------------------------------------------------------- */\n\n.viewport {\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n}\n\n.site-content {\n flex-grow: 1;\n}\n\n/* Full width page blocks */\n.outer {\n position: relative;\n padding: 0 max(4vmin, 20px);\n}\n\n/* Centered content container blocks */\n.inner {\n margin: 0 auto;\n max-width: 1200px;\n width: 100%;\n}\n\n\n/* 4. Site Header\n/* ---------------------------------------------------------- */\n\n.site-header {\n position: relative;\n color: #fff;\n background: var(--ghost-accent-color);\n}\n\n.site-header-cover {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.site-header-content {\n position: relative;\n z-index: 100;\n display: flex;\n align-items: center;\n padding-top: 6.4vmin;\n padding-bottom: 6.4vmin;\n text-align: center;\n color: var(--color-darkgrey);\n}\n\n.has-cover .site-header-content {\n min-height: 560px;\n background-color: var(--ghost-accent-color);\n color: #fff;\n}\n\nbody:not(.has-cover) .site-header-content:not(.left-aligned) {\n padding-bottom: max(4.8vmin, 24px);\n}\n\n.site-header-content.left-aligned {\n padding-bottom: 0;\n text-align: left;\n}\n\n.has-cover .site-header-content.left-aligned {\n align-items: flex-end;\n padding-bottom: 6.4vmin;\n}\n\n.site-header-content.no-content {\n padding-top: 0;\n}\n\n.site-header-inner {\n position: relative;\n}\n\n.site-header-content.left-aligned .site-header-inner {\n align-items: flex-start;\n}\n\n.site-logo {\n flex-shrink: 0;\n margin: 0 auto;\n max-height: 120px;\n}\n\n.site-header-content.left-aligned .site-logo {\n margin-right: auto;\n margin-left: 0;\n max-height: 96px;\n}\n\n.site-title {\n z-index: 10;\n margin: 0;\n padding: 0;\n font-size: 5rem;\n font-weight: 800;\n}\n\n.has-serif-title .site-title {\n font-family: var(--font-serif);\n}\n\n.has-cover .site-title {\n font-size: 6rem;\n}\n\n.site-header-content.left-aligned .site-title {\n font-size: 4.4rem;\n}\n\n.has-cover .site-header-content.left-aligned .site-title {\n font-size: 4.6rem;\n}\n\n.site-description {\n display: inline-block;\n z-index: 10;\n max-width: 560px;\n font-size: 2.4rem;\n font-weight: 500;\n line-height: 1.4;\n}\n\n:is(.site-logo, .site-title) + .site-description {\n margin-top: 8px;\n font-size: 2.1rem;\n font-weight: 400;\n}\n\n.site-logo + .site-description {\n margin-top: 20px;\n}\n\n.site-title + .site-description {\n color: var(--color-secondary-text);\n}\n\n.has-cover .site-description {\n font-size: 3.2rem;\n letter-spacing: -0.005em;\n color: #fff;\n}\n\n.has-cover :is(.site-logo, .site-title) + .site-description {\n font-size: 2.4rem;\n}\n\n.has-cover .site-header-content.left-aligned :is(.site-logo, .site-title) + .site-description {\n font-size: 2.2rem;\n}\n\n@media (max-width: 767px) {\n .has-cover .site-header-content {\n min-height: 240px;\n }\n .site-header-inner {\n gap: 16px;\n }\n .site-logo {\n max-width: 60%;\n }\n .site-title {\n font-size: 3.4rem !important;\n }\n .site-description {\n font-size: 1.9rem !important;\n }\n .site-logo + .site-description {\n margin-top: 12px !important;\n }\n .site-title + .site-description {\n margin-top: 4px !important;\n }\n}\n\n\n/* 5. Site Navigation\n/* ---------------------------------------------------------- */\n\n.gh-head {\n padding-top: min(24px, 3.6vmin);\n padding-bottom: min(24px, 3.6vmin);\n font-size: 1.6rem;\n line-height: 1.3em;\n background-color: #fff;\n}\n\n.has-cover:not(.home-template) .gh-head {\n background-color: var(--ghost-accent-color);\n color: #fff;\n}\n\n.home-template.has-cover .gh-head {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 2000;\n background-color: transparent;\n color: #fff;\n}\n\n.gh-head a {\n text-decoration: none;\n}\n\n.gh-head-inner {\n display: grid;\n grid-gap: 40px;\n grid-template-columns: auto auto 1fr;\n grid-auto-flow: row dense;\n}\n\n\n/* Brand\n/* ---------------------------------------------------------- */\n\n.gh-head-brand {\n display: flex;\n align-items: center;\n height: 40px;\n max-width: 400px;\n word-break: break-all;\n}\n\n.gh-head-logo {\n display: block;\n font-weight: 800;\n font-size: 2.6rem;\n letter-spacing: -0.02em;\n color: inherit;\n}\n\n.gh-head-logo.no-image {\n margin-top: -2px;\n}\n\n.has-cover .gh-head-logo {\n color: #fff;\n}\n\n.no-logo .gh-head-logo {\n display: none;\n}\n\n.gh-head-logo img {\n max-height: 26px;\n}\n\n.gh-head-brand-wrapper {\n display: flex;\n align-items: center;\n}\n\n\n/* Primary Navigation\n/* ---------------------------------------------------------- */\n\n.gh-head-menu {\n display: flex;\n align-items: center;\n margin-top: 1px;\n font-weight: 500;\n}\n\n.no-logo .gh-head-menu {\n margin-left: -40px;\n}\n\n.gh-head-menu .nav {\n display: inline-flex;\n flex-wrap: wrap;\n align-items: center;\n gap: 32px;\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n.gh-head-menu .nav li {\n margin: 0;\n padding: 0;\n}\n\n.gh-head-menu .nav a {\n display: inline-block;\n line-height: 1.7;\n color: inherit;\n}\n\n.gh-head-menu .nav a:hover {\n opacity: 0.9;\n}\n\n\n/* Secondary Navigation\n/* ---------------------------------------------------------- */\n\n.gh-social {\n display: flex;\n align-items: center;\n gap: 20px;\n}\n\n.gh-social-link {\n line-height: 0;\n color: inherit;\n}\n\n.gh-social-link:hover {\n opacity: 0.9;\n}\n\n.gh-social-link svg {\n width: 18px;\n height: 18px;\n}\n\n.gh-head-actions {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n gap: 24px;\n list-style: none;\n text-align: right;\n}\n\n.gh-head-button {\n display: inline-flex;\n align-items: center;\n padding: 8px 16px;\n height: 40px;\n font-weight: 600;\n letter-spacing: -0.005em;\n font-size: 1.5rem;\n border-radius: 6px;\n color: #fff;\n background: var(--ghost-accent-color);\n}\n\n.has-cover .gh-head-button {\n color: var(--color-darkgrey);\n background: #fff;\n}\n\n/* Search\n/* ---------------------------------------------------------- */\n\n.gh-search {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n padding: 0;\n cursor: pointer;\n background-color: transparent;\n border: 0;\n outline: none;\n}\n\n.gh-search:hover {\n opacity: 0.9;\n}\n\n@media (max-width: 991px) {\n .gh-head-actions .gh-search {\n display: none;\n }\n}\n\n@media (min-width: 992px) {\n .gh-head-brand .gh-search {\n display: none;\n }\n}\n\n\n/* Search\n/* ---------------------------------------------------------- */\n\n.gh-search {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n padding: 0;\n cursor: pointer;\n background-color: transparent;\n border: 0;\n outline: none;\n}\n\n.gh-search:hover {\n opacity: 0.9;\n}\n\n.gh-head-brand .gh-search {\n margin-right: 8px;\n}\n\n.gh-head-actions .gh-search {\n margin-right: -10px;\n}\n\n@media (max-width: 991px) {\n .gh-head-actions .gh-search {\n display: none;\n }\n}\n\n@media (min-width: 992px) {\n .gh-head-brand .gh-search {\n display: none;\n }\n}\n\n\n/* Mobile Menu Trigger\n/* ---------------------------------------------------------- */\n\n.gh-burger {\n position: relative;\n display: none;\n cursor: pointer;\n}\n\n.gh-burger-box {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 33px;\n height: 33px;\n}\n\n.has-cover .gh-burger-box {\n color: #fff;\n}\n\n.gh-burger-inner {\n width: 100%;\n height: 100%;\n}\n\n.gh-burger-box::before {\n position: absolute;\n display: block;\n top: 0;\n left: 0;\n bottom: 0;\n margin: auto;\n content: '';\n width: 100%;\n height: 1px;\n background: currentcolor;\n transition: transform 300ms cubic-bezier(.2,.6,.3,1), width 300ms cubic-bezier(.2,.6,.3,1);\n will-change: transform, width;\n}\n\n.gh-burger-inner::before,\n.gh-burger-inner::after {\n position: absolute;\n display: block;\n top: 0;\n left: 0;\n bottom: 0;\n margin: auto;\n content: '';\n width: 100%;\n height: 1px;\n background: currentcolor;\n transition: transform 250ms cubic-bezier(.2,.7,.3,1), width 250ms cubic-bezier(.2,.7,.3,1);\n will-change: transform, width;\n}\n\n.gh-burger-inner::before {\n transform: translatey(-6px);\n}\n.gh-burger-inner::after {\n transform: translatey(6px);\n}\n\nbody:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::before {\n transform: translatey(-8px);\n}\nbody:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::after {\n transform: translatey(8px);\n}\n\n.gh-head-open .gh-burger-box::before {\n width: 0;\n transform: translatex(19px);\n transition: transform 200ms cubic-bezier(.2,.7,.3,1), width 200ms cubic-bezier(.2,.7,.3,1);\n}\n\n.gh-head-open .gh-burger-inner::before {\n width: 26px;\n transform: translatex(6px) rotate(135deg);\n}\n\n.gh-head-open .gh-burger-inner::after {\n width: 26px;\n transform: translatex(6px) rotate(-135deg);\n}\n\n\n/* Mobile Menu\n/* ---------------------------------------------------------- */\n/* IDs needed to ensure sufficient specificity */\n\n@media (max-width: 991px) {\n .gh-burger {\n display: inline-block;\n }\n #gh-head {\n overflow: hidden;\n }\n #gh-head .gh-head-inner {\n height: 100%;\n grid-template-columns: 1fr;\n }\n #gh-head .gh-head-brand {\n position: relative;\n z-index: 10;\n grid-column-start: auto;\n max-width: none;\n display: flex;\n align-items: center;\n justify-content: space-between;\n user-select: none;\n }\n .no-logo #gh-head .gh-head-brand {\n justify-content: flex-end;\n }\n #gh-head .gh-head-menu {\n align-self: center;\n display: flex;\n flex-direction: column;\n align-items: center;\n text-align: center;\n margin: 0 0 10vh 0;\n font-weight: 300;\n font-size: 3.6rem;\n line-height: 1.1em;\n }\n #gh-head .gh-head-menu .nav {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n font-weight: 500;\n }\n #gh-head .gh-head-actions {\n flex-direction: column-reverse;\n justify-content: center;\n padding: 20px 0 32px;\n text-align: left;\n }\n /* Hide collapsed content */\n #gh-head .gh-head-actions,\n #gh-head .gh-head-menu {\n display: none;\n }\n /* Open the menu */\n .gh-head-open {\n overflow: hidden;\n height: 100vh;\n }\n .gh-head-open #gh-head {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 3999999;\n overflow-y: scroll;\n }\n .gh-head-open #gh-head .gh-head-inner {\n grid-template-rows: auto 1fr auto;\n }\n .gh-head-open #gh-head .gh-head-actions,\n .gh-head-open #gh-head .gh-head-menu {\n display: flex;\n }\n}\n\n@media (max-width: 600px) {\n #gh-head .gh-head-menu {\n font-size: 6vmin;\n }\n}\n\n.has-cover.gh-head-open .gh-head {\n background: var(--ghost-accent-color);\n}\n\n\n/* 6. Post Feed\n/* ---------------------------------------------------------- */\n\n.post-feed {\n position: relative;\n display: grid;\n gap: 4.8vmin 4vmin;\n grid-template-columns: repeat(6, 1fr);\n padding: max(4.8vmin, 36px) 0 0;\n}\n\n:is(.tag-template, .author-template) .post-feed {\n margin-top: 4vmin;\n}\n\n@media (max-width: 991px) {\n .post-feed {\n grid-template-columns: 1fr 1fr;\n }\n}\n\n@media (max-width: 767px) {\n .post-feed {\n grid-template-columns: 1fr;\n grid-gap: 40px;\n }\n}\n\n.post-card {\n position: relative;\n grid-column: span 2;\n display: flex;\n flex-direction: column;\n background-size: cover;\n word-break: break-word;\n}\n\n.post-card-image-link {\n position: relative;\n overflow: hidden;\n display: block;\n margin-bottom: 32px;\n}\n\n.post-card-image-link::after {\n content: \"\";\n display: block;\n padding-bottom: 55%;\n}\n\n.post-card[class*=\"post-access-\"] .post-card-image-link::after {\n background-color: rgba(0, 0, 0, 0.5);\n backdrop-filter: blur(3px);\n}\n\n.post-card.keep-ratio[class*=\"post-access-\"] .post-card-image-link::after {\n position: absolute;\n inset: 0;\n padding-bottom: 0;\n}\n\n.post-card.keep-ratio:not(.post-card-large):not(.post-card-full) .post-card-image-link::after {\n padding-bottom: 0;\n}\n\n.post-card-image {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n background: var(--color-lightgrey) no-repeat center center;\n object-fit: cover;\n}\n\n.post-card.keep-ratio:not(.post-card-large):not(.post-card-full) .post-card-image {\n position: static;\n}\n\n.post-card-access {\n position: absolute;\n inset: 0;\n z-index: 10;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n font-size: 1.5rem;\n font-weight: 600;\n color: #fff;\n}\n\n.post-card-content-link {\n position: relative;\n display: block;\n color: var(--color-darkgrey);\n}\n\n.post-card-content-link:hover {\n text-decoration: none;\n}\n\n.post-feed .no-image .post-card-content-link {\n padding: 0;\n}\n\n.no-image .post-card-header {\n margin-top: 0;\n}\n\n.post-card-tags {\n display: flex;\n align-items: center;\n gap: 12px;\n margin: 0 0 10px;\n color: var(--color-secondary-text);\n font-size: 1.4rem;\n font-weight: 600;\n letter-spacing: -0.005em;\n line-height: 1;\n}\n\n.post-card-featured {\n position: relative;\n display: flex;\n align-items: center;\n gap: 3px;\n padding-left: 18px;\n color: var(--ghost-accent-color);\n}\n\n.post-card-featured svg {\n position: absolute;\n left: 0;\n}\n\n.post-card-title {\n margin: 0;\n font-size: 2.6rem;\n font-weight: 800;\n}\n\n.post-card-content-link:hover .post-card-title {\n opacity: 0.9;\n}\n\n.no-image .post-card-title {\n margin-top: 0;\n}\n\n.has-serif-title .post-card-title {\n font-family: var(--font-serif);\n letter-spacing: -0.005em;\n}\n\n.post-card-title svg {\n margin-top: -3px;\n margin-left: -1px;\n}\n\n.post-card-content {\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n}\n\n.post-card-excerpt {\n display: -webkit-box;\n overflow-y: hidden;\n margin-top: 12px;\n max-width: 720px;\n font-size: 1.6rem;\n line-height: 1.5;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n word-break: break-word;\n}\n\n.has-sans-body .post-card-excerpt {\n font-family: var(--font-sans);\n}\n\n.post-card:not(.post-card-large):not(.post-card-full):not(.dynamic):not(.no-image) .post-card-excerpt {\n -webkit-line-clamp: 2;\n}\n\n:is(.tag-template, .author-template) .post-card-excerpt {\n margin-top: 6px;\n}\n\n.post-card-meta {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 12px;\n padding: 0;\n font-size: 1.3rem;\n color: var(--color-secondary-text);\n}\n\n.post-card-meta > * {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.post-card-meta > * + *:not(script)::before {\n width: 2px;\n height: 2px;\n content: \"\";\n background-color: var(--color-secondary-text);\n border-radius: 50%;\n}\n\n.post-card-meta .sep {\n margin: 0 4px;\n}\n\n.author-profile-image {\n display: block;\n width: 100%;\n height: 100%;\n background: color-mod(var(--color-lightgrey) l(+10%));\n border-radius: 100%;\n\n object-fit: cover;\n}\n\n.author-list {\n display: flex;\n flex-wrap: wrap;\n margin: 0 0 0 4px;\n padding: 0;\n list-style: none;\n}\n\n.author-list-item {\n position: relative;\n flex-shrink: 0;\n margin: 0;\n padding: 0;\n}\n\n\n/* Special Styling for home page grid (below):\n\nThe first post in the list is styled to be bigger than the others and take over\nthe full width of the grid to give it more emphasis. Wrapped in a media query to\nmake sure this only happens on large viewports / desktop-ish devices.\n\n*/\n\n@media (min-width: 1001px) {\n .post-card-large {\n grid-column: span 6;\n display: grid;\n grid-gap: 4vmin;\n grid-template-columns: repeat(3, 1fr);\n border-top: 0;\n }\n\n .post-card-large:not(.no-image) .post-card-header {\n margin-top: 0;\n }\n\n .post-card-large .post-card-image-link {\n position: relative;\n grid-column: span 2;\n margin-bottom: 0;\n }\n\n .post-card-large .post-card-content {\n grid-column: span 1;\n }\n\n .post-card-large.no-image .post-card-content {\n grid-column: span 2;\n }\n\n .post-card-large .post-card-image {\n position: absolute;\n width: 100%;\n height: 100%;\n }\n\n .post-card-large .post-card-tags {\n margin-bottom: 12px;\n }\n\n .post-card-large .post-card-title {\n margin-top: 0;\n font-size: 4.4rem;\n line-height: 1;\n }\n\n .post-card-large .post-card-excerpt {\n margin-top: 16px;\n }\n\n .post-card-full {\n grid-column: span 6;\n }\n\n .post-card-full .post-card-image-link {\n margin-bottom: 40px;\n }\n\n .post-card-full .post-card-tags {\n margin-bottom: 14px;\n }\n\n .post-card-full .post-card-title {\n font-size: 6.4rem;\n line-height: 0.95;\n }\n\n .post-card-full .post-card-excerpt {\n margin-top: 20px;\n font-size: 1.8rem;\n }\n\n .post-card-large + .post-card-large:nth-child(even) {\n margin: 32px 0;\n }\n\n .post-card-large + .post-card-large:nth-child(even) .post-card-content {\n order: -1;\n }\n\n .post-card.dynamic {\n grid-column: span 3;\n }\n\n .post-card.dynamic .post-card-title {\n font-size: 3rem;\n }\n}\n\n\n/* 7. Single Post\n/* ---------------------------------------------------------- */\n\n.article {\n padding: max(8vmin, 40px) 0 max(8vmin, 64px);\n word-break: break-word;\n}\n\n.page-template .article {\n padding-top: max(12vmin, 64px);\n}\n\n.article-header {\n padding: 0 0 max(6.4vmin, 40px) 0;\n}\n\n.page-template .article-header {\n padding-bottom: max(3.2vmin, 28px);\n}\n\n.article-tag {\n margin-bottom: 16px;\n font-size: 1.6rem;\n}\n\n.article-tag a {\n color: var(--color-secondary-text);\n}\n\n.article-title {\n margin-bottom: 0;\n font-size: clamp(3.2rem, 5vw, 5.2rem);\n font-weight: 800;\n line-height: 1;\n color: var(--color-darkgrey);\n}\n\n.has-serif-title .article-title {\n font-family: var(--font-serif);\n}\n\n.article-excerpt {\n margin-top: 20px;\n max-width: 720px;\n font-size: 2rem;\n line-height: 1.45;\n color: var(--color-darkgrey);\n}\n\n.gh-canvas .article-image {\n grid-column: wide-start / wide-end;\n width: 100%;\n margin: max(6.4vmin, 40px) 0 0;\n}\n\n.image-full .article-image {\n grid-column: full-start / full-end;\n}\n\n.image-small .article-image {\n grid-column: main-start / main-end;\n}\n\n.gh-canvas .article-image img {\n display: block;\n margin-left: auto;\n margin-right: auto;\n width: 100%;\n}\n\n@media (max-width: 767px) {\n .article-excerpt {\n margin-top: 14px;\n font-size: 1.7rem;\n }\n}\n\n/* -------- */\n\n/* Content grid\n/* ---------------------------------------------------------- */\n\n/* Canvas creates a multi-column, centered grid which the post\nis laid out on top of. Canvas just defines the grid, we don't\nuse it for applying any other styles. */\n\n.gh-canvas {\n display: grid;\n grid-template-columns:\n [full-start]\n minmax(max(4vmin, 20px), auto)\n [wide-start]\n minmax(auto, 240px)\n [main-start]\n min(720px, calc(100% - max(8vmin, 40px)))\n [main-end]\n minmax(auto, 240px)\n [wide-end]\n minmax(max(4vmin, 20px), auto)\n [full-end]\n ;\n}\n\n.gh-canvas > * {\n grid-column: main-start / main-end;\n}\n\n.kg-width-wide {\n grid-column: wide-start / wide-end;\n}\n\n.kg-width-full {\n grid-column: full-start / full-end;\n}\n\n.kg-width-full img {\n width: 100%;\n}\n\n\n/* 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/* Default vertical spacing */\n.gh-content > * + * {\n margin-top: max(3.2vmin, 24px);\n margin-bottom: 0;\n}\n\n/* [id] represents all headings h1-h6, reset all margins */\n.gh-content > [id] {\n margin: 0;\n color: var(--color-darkgrey);\n}\n\n.has-serif-title .gh-content > [id] {\n font-family: var(--font-serif);\n}\n\n/* Add back a top margin to all headings, unless a heading\nis the very first element in the post content */\n.gh-content > [id]:not(:first-child) {\n margin: 2em 0 0;\n}\n\n/* Add a small margin between a heading and anything after it */\n.gh-content > [id] + * {\n margin-top: 1.5rem !important;\n}\n\n/* A larger margin before/after HRs and blockquotes */\n.gh-content > hr,\n.gh-content > blockquote {\n position: relative;\n margin-top: max(4.8vmin, 32px);\n}\n.gh-content > hr + *,\n.gh-content > blockquote + * {\n margin-top: max(4.8vmin, 32px) !important;\n}\n\n/* Now the content typography styles */\n.gh-content a {\n color: var(--ghost-accent-color);\n text-decoration: underline;\n word-break: break-word;\n}\n\n.gh-content > blockquote:not([class]),\n.gh-content > ol,\n.gh-content > ul,\n.gh-content > dl,\n.gh-content > p {\n font-family: var(--font-serif);\n font-weight: 400;\n font-size: 2rem;\n line-height: 1.6em;\n}\n\n.gh-content .kg-callout-card .kg-callout-text,\n.gh-content .kg-toggle-card .kg-toggle-content > ol,\n.gh-content .kg-toggle-card .kg-toggle-content > ul,\n.gh-content .kg-toggle-card .kg-toggle-content > p {\n font-family: var(--font-serif);\n font-weight: 400;\n font-size: 1.9rem;\n line-height: 1.6em;\n}\n\n.gh-content .kg-product-card .kg-product-card-description > p,\n.gh-content .kg-product-card .kg-product-card-description > ol,\n.gh-content .kg-product-card .kg-product-card-description > ul {\n font-size: 1.7rem;\n line-height: 1.6em;\n}\n\n.gh-content .kg-callout-card .kg-callout-emoji {\n font-size: 2.1rem;\n line-height: 1.4em;\n}\n\n.gh-content .kg-toggle-card .kg-toggle-heading-text {\n font-size: 2.0rem;\n}\n\n.has-sans-body .gh-content > blockquote,\n.has-sans-body .gh-content > ol,\n.has-sans-body .gh-content > ul,\n.has-sans-body .gh-content > dl,\n.has-sans-body .gh-content > p,\n.has-sans-body .gh-content .kg-callout-card .kg-callout-text,\n.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content > ol,\n.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content > ul,\n.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content > p {\n font-family: var(--font-sans);\n}\n\n.gh-content > ul,\n.gh-content > ol,\n.gh-content > dl,\n.gh-content .kg-toggle-card .kg-toggle-content > ol,\n.gh-content .kg-toggle-card .kg-toggle-content > ul,\n.gh-content .kg-product-card .kg-product-card-description > ol,\n.gh-content .kg-product-card .kg-product-card-description > ul {\n padding-left: 1.9em;\n}\n\n.gh-content > blockquote:not([class]) {\n position: relative;\n font-style: italic;\n padding: 0;\n}\n\n.gh-content > blockquote:not([class])::before {\n content: \"\";\n position: absolute;\n left: -1.5em;\n top: 0;\n bottom: 0;\n width: 0.3rem;\n background: var(--ghost-accent-color);\n}\n\n.gh-content :not(pre) > code {\n vertical-align: middle;\n padding: 0.15em 0.4em 0.15em;\n border: #e1eaef 1px solid;\n font-weight: 400 !important;\n font-size: 0.9em;\n line-height: 1em;\n color: #15171A;\n background: #f0f6f9;\n border-radius: 0.25em;\n}\n\n.gh-content pre {\n overflow: auto;\n padding: 16px 20px;\n color: var(--color-wash);\n font-size: 1.4rem;\n line-height: 1.5em;\n background: var(--color-darkgrey);\n border-radius: 5px;\n box-shadow: 0 2px 6px -2px rgba(0,0,0,.1), 0 0 1px rgba(0,0,0,.4);\n}\n\n@media (max-width: 650px) {\n .gh-content > blockquote:not([class]),\n .gh-content > ol,\n .gh-content > ul,\n .gh-content > dl,\n .gh-content > p,\n .gh-content .kg-callout-card .kg-callout-text,\n .gh-content .kg-toggle-card .kg-toggle-content > ol,\n .gh-content .kg-toggle-card .kg-toggle-content > ul,\n .gh-content .kg-toggle-card .kg-toggle-content > p {\n font-size: 1.8rem;\n }\n\n .gh-content .kg-product-card .kg-product-card-description > p,\n .gh-content .kg-product-card .kg-product-card-description > ol,\n .gh-content .kg-product-card .kg-product-card-description > ul {\n font-size: 1.6rem;\n }\n\n .gh-content blockquote:not([class])::before {\n left: min(-4vmin, -20px);\n }\n}\n\n\n/* Cards\n/* ---------------------------------------------------------- */\n\n/* Cards are dynamic blocks of content which appear within Ghost\nposts, for example: embedded videos, tweets, galleries, or\nspecially styled bookmark links. We add extra styling here to\nmake sure they look good, and are given a bit of extra spacing. */\n\n/* Add extra margin before/after any cards,\nexcept for when immediately preceeded by a heading */\n.gh-content :not(.kg-card):not([id]) + .kg-card {\n margin-top: 6vmin;\n margin-bottom: 0;\n}\n.gh-content .kg-card + :not(.kg-card) {\n margin-top: 6vmin;\n margin-bottom: 0;\n}\n\n/* This keeps small embeds centered */\n.kg-embed-card {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n}\n\n/* This keeps small iamges centered */\n.kg-image-card img {\n margin: auto;\n}\n\n.has-serif-title .kg-toggle-card .kg-toggle-heading-text {\n font-family: var(--font-serif);\n}\n\n.gh-content .kg-callout-card-accent a {\n text-decoration: underline;\n}\n\n.kg-blockquote-alt {\n font-family: var(--font-serif);\n color: var(--color-midgrey);\n}\n\n.has-sans-body .kg-blockquote-alt {\n font-family: var(--font-sans);\n}\n\n.kg-card.kg-header-card.kg-style-dark {\n background: var(--color-darkgrey);\n}\n\n.kg-header-card.kg-style-light h2.kg-header-card-header {\n color: color-mod(var(--color-darkgrey) l(-5%));\n}\n\n.has-serif-title .kg-header-card h2.kg-header-card-header {\n font-family: var(--font-serif);\n}\n\n\n/* Captions */\nfigcaption {\n padding: 1.5rem 1.5rem 0;\n text-align: center;\n color: rgba(0,0,0,0.5);\n font-size: 1.3rem;\n line-height: 1.4em;\n}\nfigcaption strong {\n color: rgba(0,0,0,0.8);\n}\nfigcaption a {\n text-decoration: underline;\n}\n\n\n/* Highly specific styles for traditional Instagram embeds */\niframe.instagram-media {\n margin-top: 6vmin !important;\n margin-left: auto !important;\n margin-right: auto !important;\n margin-bottom: 0 !important;\n}\n\niframe.instagram-media + script + :not([id]) {\n margin-top: 6vmin;\n}\n\n\n/* Card captions\n/* ---------------------------------------------------------- */\n\n.kg-width-full.kg-card-hascaption {\n display: grid;\n grid-template-columns: inherit;\n}\n\n.kg-width-wide.kg-card-hascaption img {\n grid-column: wide-start / wide-end;\n}\n.kg-width-full.kg-card-hascaption img {\n grid-column: 1 / -1;\n}\n\n.kg-width-full.kg-card-hascaption figcaption {\n grid-column: main-start / main-end;\n}\n\n.article-comments {\n margin: 6vmin 0 0 0;\n}\n\n/* -----old------ */\n\n.footnotes-sep {\n margin-bottom: 30px;\n}\n\n.footnotes {\n font-size: 1.5rem;\n}\n\n.footnotes p {\n margin: 0;\n}\n\n.footnote-backref {\n font-size: 1.2rem;\n font-weight: bold;\n text-decoration: none !important;\n box-shadow: none !important;\n}\n\n/* Tables */\n.gh-content table:not(.gist table) {\n display: inline-block;\n overflow-x: auto;\n max-width: 100%;\n width: auto;\n border-spacing: 0;\n border-collapse: collapse;\n font-family: var(--font-sans);\n font-size: 1.6rem;\n white-space: nowrap;\n vertical-align: top;\n -webkit-overflow-scrolling: touch;\n background: radial-gradient(ellipse at left, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 75%) 0 center, radial-gradient(ellipse at right, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 75%) 100% center;\n background-attachment: scroll, scroll;\n background-size: 10px 100%, 10px 100%;\n background-repeat: no-repeat;\n}\n\n.gh-content table:not(.gist table) td:first-child {\n background-image: linear-gradient(to right, rgba(255,255,255, 1) 50%, rgba(255,255,255, 0) 100%);\n background-size: 20px 100%;\n background-repeat: no-repeat;\n}\n\n.gh-content table:not(.gist table) td:last-child {\n background-image: linear-gradient(to left, rgba(255,255,255, 1) 50%, rgba(255,255,255, 0) 100%);\n background-position: 100% 0;\n background-size: 20px 100%;\n background-repeat: no-repeat;\n}\n\n.gh-content table:not(.gist table) th {\n color: var(--color-darkgrey);\n font-size: 1.2rem;\n font-weight: 700;\n letter-spacing: 0.2px;\n text-align: left;\n text-transform: uppercase;\n background-color: color-mod(var(--color-wash) l(+4%));\n}\n\n.gh-content table:not(.gist table) th,\n.gh-content table:not(.gist table) td {\n padding: 6px 12px;\n border: color-mod(var(--color-wash) l(-1%) s(-5%)) 1px solid;\n}\n\n\n/* 7.1. Post Byline\n/* ---------------------------------------------------------- */\n\n.article-byline {\n display: flex;\n justify-content: space-between;\n margin: min(24px, 5.6vmin) 0 0;\n}\n\n.article-byline-content {\n flex-grow: 1;\n display: flex;\n align-items: center;\n}\n\n.article-byline-content .author-list {\n justify-content: flex-start;\n padding: 0 14px 0 0;\n}\n\n.article-byline-meta {\n color: var(--color-secondary-text);\n font-size: 1.4rem;\n line-height: 1.2em;\n}\n\n.article-byline-meta .author-name {\n margin: 0 0 6px;\n font-size: 1.7rem;\n font-weight: 700;\n letter-spacing: 0;\n}\n\n.article-byline-meta .bull {\n display: inline-block;\n margin: 0 2px;\n}\n\n.author-avatar {\n display: block;\n overflow: hidden;\n margin: 0 -4px;\n width: min(56px, 13.6vmin);\n height: min(56px, 13.6vmin);\n border: #fff 2px solid;\n border-radius: 50%;\n background-color: var(--color-border);\n}\n\n.page-template .article-title {\n margin-bottom: 0;\n}\n\n@media (max-width: 767px) {\n .article-byline-content .author-list {\n padding-right: 12px;\n }\n .article-byline-meta .author-name {\n margin-bottom: 4px;\n }\n}\n\n\n/* 7.3. Subscribe\n/* ---------------------------------------------------------- */\n\n.footer-cta {\n position: relative;\n text-align: center;\n}\n\n.footer-cta-title {\n margin: 0 0 min(24px, 6.4vmin);\n font-size: clamp(2.6rem, 5vw, 3.8rem);\n font-weight: 800;\n}\n\n.has-serif-title .footer-cta-title {\n font-family: var(--font-serif);\n}\n\n.footer-cta-button {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n max-width: 500px;\n padding: 5px 5px 5px 15px;\n font-size: 1.7rem;\n color: var(--color-secondary-text);\n background: #fff;\n border: 1px solid var(--color-border);\n border-radius: 8px;\n transition: border-color 0.2s;\n}\n\n.footer-cta-button:hover {\n border-color: color-mod(var(--color-border) l(-12%));\n}\n\n.footer-cta-button span {\n display: inline-block;\n padding: 9px 15px;\n color: #fff;\n font-size: 1.6rem;\n font-weight: 600;\n letter-spacing: -0.005em;\n background: var(--ghost-accent-color);\n border-radius: 6px;\n}\n\n\n/* 7.4. Read more\n/* ---------------------------------------------------------- */\n\n.read-more-wrap {\n margin-top: 2.4vmin;\n}\n\n.footer-cta + .read-more-wrap {\n margin-top: max(12vmin, 72px);\n}\n\n.read-more {\n display: grid;\n grid-template-columns: repeat(6, 1fr);\n grid-gap: 4vmin;\n}\n\n.read-more .post-card-tags {\n display: none;\n}\n\n@media (max-width: 1000px) {\n .read-more {\n grid-template-columns: repeat(4, 1fr);\n }\n .read-more .post-card:nth-child(3) {\n display: none;\n }\n}\n\n@media (max-width: 700px) {\n .read-more {\n grid-template-columns: repeat(2, 1fr);\n }\n .read-more .post-card:nth-child(2) {\n display: none;\n }\n}\n\n/* 7.6. Comments\n/* ---------------------------------------------------------- */\n.comments {\n display: flex;\n flex-direction: column;\n align-items: center;\n margin: 60px 0 44px;\n}\n\n\n.comments-head {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n margin-bottom: 32px;\n width: 100%;\n max-width: 720px;\n}\n\n.comments h2 {\n width: 100%;\n max-width: 720px;\n font-weight: 800;\n font-size: 3.4rem;\n}\n\n.comments .comment-count {\n color: var(--color-midgrey);\n font-weight: 600;\n white-space: nowrap;\n}\n\n.comments #ghost-comments-root {\n width: 100%;\n max-width: 720px;\n}\n\n\n/* 8. Author Template\n/* ---------------------------------------------------------- */\n\n.author-profile-pic {\n display: block;\n width: 80px;\n height: 80px;\n object-fit: cover;\n margin: 0 0 2rem;\n background: color-mod(var(--color-lightgrey) l(+10%));\n border-radius: 50%;\n}\n\n.author-profile-footer {\n margin-top: 16px;\n}\n\n.author-profile-location {\n font-weight: 700;\n}\n\n.author-profile-meta {\n display: flex;\n gap: 10px;\n}\n\n.author-profile-social-link {\n font-size: 1.3rem;\n color: var(--color-secondary-text);\n}\n\n.author-profile-social-link:hover {\n color: var(--color-darkgrey);\n}\n\n.author-profile-social-link svg {\n width: 16px;\n height: 16px;\n}\n\n@media (min-width: 1001px) {\n .author-template .post-card-large .post-card-content {\n grid-column: span 2;\n max-width: 640px;\n }\n}\n\n\n/* 8. Tag Template\n/* ---------------------------------------------------------- */\n\n.tag-template .post-card-large .post-card-image-link {\n grid-column: 2 / span 2;\n order: 2;\n}\n\n.tag-template .post-card-large .post-card-content {\n order: 1;\n}\n\n@media (min-width: 1001px) {\n .tag-template .post-card-large .post-card-content {\n grid-column: span 2;\n max-width: 640px;\n }\n}\n\n/* 9. Error Template\n/* ---------------------------------------------------------- */\n\n.error-content {\n padding: 14vw 4vw 2vw;\n}\n\n.error-message {\n padding-bottom: 10vw;\n text-align: center;\n}\n\n.error-code {\n margin: 0;\n font-size: 12vw;\n line-height: 1em;\n letter-spacing: -5px;\n}\n\n.error-description {\n margin: 0;\n color: var(--color-secondary-text);\n font-size: 3.2rem;\n line-height: 1.3em;\n letter-spacing: -0.005em;\n font-weight: 400;\n}\n\n.error-link {\n display: inline-block;\n margin-top: 5px;\n}\n\n@media (min-width: 940px) {\n .error-content .post-card {\n margin-bottom: 0;\n padding-bottom: 0;\n border-bottom: none;\n }\n}\n\n@media (max-width: 800px) {\n .error-content {\n padding-top: 24vw;\n }\n .error-code {\n font-size: 11.2rem;\n }\n .error-message {\n padding-bottom: 16vw;\n }\n .error-description {\n margin: 5px 0 0 0;\n font-size: 1.8rem;\n }\n}\n\n@media (max-width: 500px) {\n .error-content {\n padding-top: 28vw;\n }\n .error-message {\n padding-bottom: 14vw;\n }\n}\n\n\n/* 11. Site Footer\n/* ---------------------------------------------------------- */\n\n.site-footer {\n position: relative;\n margin: max(12vmin, 64px) 0 0 0;\n padding-top: 48px;\n padding-bottom: 140px;\n color: #fff;\n background: color-mod(var(--color-darkgrey) l(-5%));\n}\n\n.site-footer .inner {\n display: grid;\n grid-gap: 40px;\n grid-template-columns: auto 1fr auto;\n color: rgba(255,255,255,0.7);\n font-size: 1.3rem;\n}\n\n.site-footer .copyright a {\n color: #fff;\n letter-spacing: -0.015em;\n font-weight: 500;\n}\n\n.site-footer a {\n color: rgba(255,255,255,0.7);\n}\n\n.site-footer a:hover {\n color: rgba(255,255,255,1);\n text-decoration: none;\n}\n\n.site-footer-nav ul {\n display: flex;\n justify-content: center;\n flex-wrap: wrap;\n margin: 0 0 20px;\n padding: 0;\n list-style: none;\n}\n\n.site-footer-nav li {\n display: inline-flex;\n align-items: center;\n padding: 0;\n margin: 0;\n line-height: 2em;\n}\n\n.site-footer-nav a {\n position: relative;\n display: inline-flex;\n align-items: center;\n margin-left: 10px;\n}\n\n.site-footer-nav li:not(:first-child) a:before {\n content: \"\";\n display: block;\n width: 2px;\n height: 2px;\n margin: 0 10px 0 0;\n background: #fff;\n border-radius: 100%;\n}\n\n@media (max-width: 767px) {\n .site-footer .inner {\n max-width: 500px;\n grid-template-columns: 1fr;\n grid-gap: 0;\n text-align: center;\n }\n .site-footer .copyright,\n .site-footer .copyright a {\n color: #fff;\n font-size: 1.5rem;\n }\n .site-footer .copyright {\n margin-bottom: 16px;\n }\n}\n\n\n/* 12. Dark Mode\n/* ---------------------------------------------------------- */\n\nhtml.dark-mode body {\n color: rgba(255, 255, 255, 0.75);\n background: var(--color-darkmode);\n}\n\nhtml.dark-mode img {\n opacity: 0.9;\n}\n\nhtml.dark-mode kbd {\n background: color-mod(var(--color-darkmode) l(+5%));\n}\n\nhtml.dark-mode figcaption a {\n color: #fff;\n}\n\nhtml.dark-mode .gh-head {\n background: var(--color-darkmode);\n color: #fff;\n}\n\nhtml.dark-mode .gh-burger-box {\n color: #fff;\n}\n\nhtml.dark-mode .site-header-content {\n color: #fff;\n}\n\nhtml.dark-mode .post-card-image {\n background: var(--color-darkmode);\n}\n\nhtml.dark-mode :is(.post-card-tags, .post-card-meta, .article-tag a, .byline-meta-content) {\n color: color-mod(var(--color-secondary-text) l(-22%));\n}\n\nhtml.dark-mode .post-card-featured {\n color: #fff;\n}\n\nhtml.dark-mode .post-card-title {\n color: #fff;\n}\n\nhtml.dark-mode .post-card-excerpt {\n color: var(--color-secondary-text);\n}\n\nhtml.dark-mode .author-profile-location {\n color: #fff;\n}\n\nhtml.dark-mode .author-profile-social-link:hover {\n color: #fff;\n}\n\nhtml.dark-mode .article-title {\n color: #fff;\n}\n\nhtml.dark-mode .article-excerpt {\n color: var(--color-secondary-text);\n}\n\nhtml.dark-mode .post-full-image {\n background-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .author-avatar {\n border-color: var(--color-darkmode);\n background-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .author-profile-image {\n opacity: 1;\n}\n\nhtml.dark-mode .author-profile-image path {\n fill: var(--color-darkmode);\n}\n\nhtml.dark-mode .article-byline-meta .author-name a {\n color: #fff;\n}\n\nhtml.dark-mode .no-image .author-social-link a {\n color: rgba(255, 255, 255, 0.75);\n}\n\nhtml.dark-mode .gh-content > [id] {\n color: rgba(255, 255, 255, 0.9);\n}\n\nhtml.dark-mode .gh-content pre {\n background: color-mod(var(--color-darkgrey) l(-8%));\n}\n\nhtml.dark-mode .gh-content :not(pre) > code {\n background: color-mod(var(--color-darkgrey) l(+6%));\n border-color: color-mod(var(--color-darkmode) l(+8%));\n color: var(--color-wash);\n}\n\n:where(html.dark-mode) .gh-content a {\n color: #fff;\n}\n\nhtml.dark-mode .gh-content strong {\n color: #fff;\n}\n\nhtml.dark-mode .gh-content em {\n color: #fff;\n}\n\nhtml.dark-mode .gh-content code {\n color: #fff;\n background: #000;\n}\n\nhtml.dark-mode hr {\n border-top-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .gh-content hr:after {\n background: color-mod(var(--color-darkmode) l(+8%));\n box-shadow: var(--color-darkmode) 0 0 0 5px;\n}\n\nhtml.dark-mode figcaption {\n color: rgba(255, 255, 255, 0.6);\n}\n\nhtml.dark-mode .gh-content table:not(.gist table) td:first-child {\n background-image: linear-gradient(to right, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n}\n\nhtml.dark-mode .gh-content table:not(.gist table) td:last-child {\n background-image: linear-gradient(to left, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n}\n\nhtml.dark-mode .gh-content table:not(.gist table) th {\n color: rgba(255, 255, 255, 0.85);\n background-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .gh-content table:not(.gist table) th,\nhtml.dark-mode .gh-content table:not(.gist table) td {\n border: color-mod(var(--color-darkmode) l(+8%)) 1px solid;\n}\n\nhtml.dark-mode .gh-content input {\n color: color-mod(var(--color-midgrey) l(-30%));\n}\n\nhtml.dark-mode .site-archive-header .no-image {\n color: rgba(255, 255, 255, 0.9);\n background: var(--color-darkmode);\n}\n\nhtml.dark-mode .kg-header-card.kg-style-dark {\n background: color-mod(var(--color-darkgrey) l(-5%));\n}\n\nhtml.dark-mode .kg-header-card.kg-style-light {\n background: color-mod(var(--color-darkgrey) l(+5%));\n}\n\nhtml.dark-mode .kg-header-card h2.kg-header-card-header,\nhtml.dark-mode .kg-header-card h3.kg-header-card-subheader {\n color: #fff;\n}\n\nhtml.dark-mode .footer-cta-title {\n color: #fff;\n}\n\n@media (prefers-color-scheme: dark) {\n html.auto-color body {\n color: rgba(255, 255, 255, 0.75);\n background: var(--color-darkmode);\n }\n\n html.auto-color img {\n opacity: 0.9;\n }\n\n html.auto-color kbd {\n background: color-mod(var(--color-darkmode) l(+5%));\n }\n\n html.auto-color figcaption a {\n color: #fff;\n }\n\n html.auto-color .gh-head {\n background: var(--color-darkmode);\n color: #fff;\n }\n\n html.auto-color .gh-burger-box {\n color: #fff;\n }\n\n html.auto-color .site-header-content {\n color: #fff;\n }\n\n html.auto-color .post-card-image {\n background: var(--color-darkmode);\n }\n\n html.auto-color :is(.post-card-tags, .post-card-meta, .article-tag a, .byline-meta-content) {\n color: color-mod(var(--color-secondary-text) l(-22%));\n }\n\n html.auto-color .post-card-featured {\n color: #fff;\n }\n\n html.auto-color .post-card-title {\n color: #fff;\n }\n\n html.auto-color .post-card-excerpt {\n color: var(--color-secondary-text);\n }\n\n html.auto-color .author-profile-location {\n color: #fff;\n }\n\n html.auto-color .author-profile-social-link:hover {\n color: #fff;\n }\n\n html.auto-color .article-title {\n color: #fff;\n }\n\n html.auto-color .article-excerpt {\n color: var(--color-secondary-text);\n }\n\n html.auto-color .post-full-image {\n background-color: color-mod(var(--color-darkmode) l(+8%));\n }\n\n html.auto-color .author-avatar {\n border-color: var(--color-darkmode);\n background-color: color-mod(var(--color-darkmode) l(+8%));\n }\n\n html.auto-color .author-profile-image {\n opacity: 1;\n }\n\n html.auto-color .author-profile-image path {\n fill: var(--color-darkmode);\n }\n\n html.auto-color .article-byline-meta .author-name a {\n color: #fff;\n }\n\n html.auto-color .no-image .author-social-link a {\n color: rgba(255, 255, 255, 0.75);\n }\n\n html.auto-color .gh-content > [id] {\n color: rgba(255, 255, 255, 0.9);\n }\n\n html.auto-color .gh-content pre {\n background: color-mod(var(--color-darkgrey) l(-8%));\n }\n\n html.auto-color .gh-content :not(pre) > code {\n background: color-mod(var(--color-darkgrey) l(+6%));\n border-color: color-mod(var(--color-darkmode) l(+8%));\n color: var(--color-wash);\n }\n\n :where(html.auto-color) .gh-content a {\n color: #fff;\n }\n\n html.auto-color .gh-content strong {\n color: #fff;\n }\n\n html.auto-color .gh-content em {\n color: #fff;\n }\n\n html.auto-color .gh-content code {\n color: #fff;\n background: #000;\n }\n\n html.auto-color hr {\n border-top-color: color-mod(var(--color-darkmode) l(+8%));\n }\n\n html.auto-color .gh-content hr:after {\n background: color-mod(var(--color-darkmode) l(+8%));\n box-shadow: var(--color-darkmode) 0 0 0 5px;\n }\n\n html.auto-color figcaption {\n color: rgba(255, 255, 255, 0.6);\n }\n\n html.auto-color .gh-content table:not(.gist table) td:first-child {\n background-image: linear-gradient(to right, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n }\n\n html.auto-color .gh-content table:not(.gist table) td:last-child {\n background-image: linear-gradient(to left, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n }\n\n html.auto-color .gh-content table:not(.gist table) th {\n color: rgba(255, 255, 255, 0.85);\n background-color: color-mod(var(--color-darkmode) l(+8%));\n }\n\n html.auto-color .gh-content table:not(.gist table) th,\n html.auto-color .gh-content table:not(.gist table) td {\n border: color-mod(var(--color-darkmode) l(+8%)) 1px solid;\n }\n\n html.auto-color .gh-content input {\n color: color-mod(var(--color-midgrey) l(-30%));\n }\n\n html.auto-color .site-archive-header .no-image {\n color: rgba(255, 255, 255, 0.9);\n background: var(--color-darkmode);\n }\n\n html.auto-color .kg-header-card.kg-style-dark {\n background: color-mod(var(--color-darkgrey) l(-5%));\n }\n\n html.auto-color .kg-header-card.kg-style-light {\n background: color-mod(var(--color-darkgrey) l(+5%));\n }\n\n html.auto-color .kg-header-card h2.kg-header-card-header,\n html.auto-color .kg-header-card h3.kg-header-card-subheader {\n color: #fff;\n }\n\n html.auto-color .footer-cta-title {\n color: #fff;\n }\n}\n\n/*\n\nHey! You reached the end.\n\nHope you enjoyed this CSS file, if you have any suggestions\nfor improvements that might be useful for everyone who uses\nthis theme, you can find the open source repository for it\nhere: https://github.com/tryghost/casper\n\nOr, if you've just scrolled all the way to the bottom of the\nfile to add some of your own styles. Well, you've come to\nthe right place. Onward!\n\n */\n"]} \ No newline at end of file +{"version":3,"sources":["global.css","screen.css"],"names":[],"mappings":"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","file":"screen.css","sourcesContent":["/* Reset\n/* ---------------------------------------------------------- */\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font: inherit;\n font-size: 100%;\n vertical-align: baseline;\n}\nbody {\n line-height: 1;\n}\nol,\nul {\n list-style: none;\n}\nblockquote,\nq {\n quotes: none;\n}\nblockquote:before,\nblockquote:after,\nq:before,\nq:after {\n content: \"\";\n content: none;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\nimg {\n display: block;\n max-width: 100%;\n height: auto;\n}\nhtml {\n box-sizing: border-box;\n font-family: sans-serif;\n\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\n*,\n*:before,\n*:after {\n box-sizing: inherit;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nb,\nstrong {\n font-weight: bold;\n}\ni,\nem,\ndfn {\n font-style: italic;\n}\nh1 {\n margin: 0.67em 0;\n font-size: 2em;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nmark {\n background-color: #fdffb6;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nkbd {\n padding: 3px 5px;\n font-family: var(--font-mono);\n font-size: 1.5rem;\n background: #f6f8fa;\n border: 1px solid rgba(124, 139, 154, 0.25);\n border-radius: 6px;\n box-shadow: inset 0 -1px 0 rgba(124, 139, 154, 0.25);\n}\n@media (max-width: 600px) {\n kbd {\n font-size: 1.3rem;\n }\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n margin: 0; /* 3 */\n color: inherit; /* 1 */\n font: inherit; /* 2 */\n}\nbutton {\n overflow: visible;\n border: none;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\n/* 1 */\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n cursor: pointer; /* 3 */\n\n -webkit-appearance: button; /* 2 */\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\ninput {\n line-height: normal;\n}\ninput:focus {\n outline: none;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n box-sizing: content-box; /* 2 */\n\n -webkit-appearance: textfield; /* 1 */\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nlegend {\n padding: 0; /* 2 */\n border: 0; /* 1 */\n}\ntextarea {\n overflow: auto;\n}\ntable {\n border-spacing: 0;\n border-collapse: collapse;\n}\ntd,\nth {\n padding: 0;\n}\n\n/* ==========================================================================\n Base styles: opinionated defaults\n ========================================================================== */\n\nhtml {\n font-size: 62.5%;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n color: var(--color-darkgrey);\n font-family: var(--font-sans);\n font-size: 1.6rem;\n line-height: 1.6em;\n font-weight: 400;\n font-style: normal;\n letter-spacing: 0;\n text-rendering: optimizeLegibility;\n background: #fff;\n\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n -moz-font-feature-settings: \"liga\" on;\n}\n\n::selection {\n text-shadow: none;\n background: #daf2fd;\n}\n\nhr {\n position: relative;\n display: block;\n width: 100%;\n margin: 2.5em 0 3.5em;\n padding: 0;\n height: 1px;\n border: 0;\n border-top: 1px solid #f0f0f0;\n}\n\naudio,\ncanvas,\niframe,\nimg,\nsvg,\nvideo {\n vertical-align: middle;\n}\n\nfieldset {\n margin: 0;\n padding: 0;\n border: 0;\n}\n\ntextarea {\n resize: vertical;\n}\n\n::not(.gh-content) p,\n::not(.gh-content) ul,\n::not(.gh-content) ol,\n::not(.gh-content) dl,\n::not(.gh-content) blockquote {\n margin: 0 0 1.5em 0;\n}\n\nol,\nul {\n padding-left: 1.3em;\n padding-right: 1.5em;\n}\n\nol ol,\nul ul,\nul ol,\nol ul {\n margin: 0.5em 0 1em;\n}\n\nul {\n list-style: disc;\n}\n\nol {\n list-style: decimal;\n}\n\nul,\nol {\n max-width: 100%;\n}\n\nli {\n padding-left: 0.3em;\n line-height: 1.6em;\n}\n\nli + li {\n margin-top: 0.5em;\n}\n\ndt {\n float: left;\n margin: 0 20px 0 0;\n width: 120px;\n color: #daf2fd;\n font-weight: 500;\n text-align: right;\n}\n\ndd {\n margin: 0 0 5px 0;\n text-align: left;\n}\n\nblockquote {\n margin: 1.5em 0;\n padding: 0 1.6em 0 1.6em;\n border-left: #daf2fd;\n}\n\nblockquote small {\n display: inline-block;\n margin: 0.8em 0 0.8em 1.5em;\n font-size: 0.9em;\n opacity: 0.8;\n}\n/* Quotation marks */\nblockquote small:before {\n content: \"\\2014 \\00A0\";\n}\n\nblockquote cite {\n font-weight: bold;\n}\nblockquote cite a {\n font-weight: normal;\n}\n\na {\n color: #15171A;\n text-decoration: none;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n margin-top: 0;\n line-height: 1.15;\n font-weight: 600;\n text-rendering: optimizeLegibility;\n letter-spacing: -0.01em;\n}\n\nh1 {\n margin: 0 0 0.5em 0;\n font-size: 4.8rem;\n font-weight: 700;\n letter-spacing: -0.015em;\n}\n@media (max-width: 600px) {\n h1 {\n font-size: 2.8rem;\n }\n}\n\nh2 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2.8rem;\n font-weight: 700;\n}\n@media (max-width: 600px) {\n h2 {\n font-size: 2.3rem;\n }\n}\n\nh3 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2.4rem;\n font-weight: 600;\n}\n@media (max-width: 600px) {\n h3 {\n font-size: 1.7rem;\n }\n}\n\nh4 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2rem;\n}\n@media (max-width: 600px) {\n h4 {\n font-size: 1.7rem;\n }\n}\n\nh5 {\n margin: 1.5em 0 0.5em 0;\n font-size: 2rem;\n}\n\nh6 {\n margin: 1.5em 0 0.5em 0;\n font-size: 1.8rem;\n}\n","/* 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. Global Styles\n2. Layout\n3. Special Templates\n4. Site Header\n5. Site Navigation\n6. Post Feed\n7. Single Post\n 7.1. Post Byline\n 7.2. Members Subscribe Form\n 7.4. Related Posts\n 7.5. Koenig Styles\n 7.6 Comments\n8. Author Template\n9. Error Template\n11. Site Footer\n12. Dark Mode\n\n*/\n\n/* 1. Global - Set up the things\n/* ---------------------------------------------------------- */\n\n/* Import CSS reset and base styles */\n@import \"global.css\";\n\n:root {\n\n /* Colours */\n --color-green: #a4d037;\n --color-yellow: #fecd35;\n --color-red: #f05230;\n --color-darkgrey: #15171A;\n --color-midgrey: #738a94;\n --color-lightgrey: #f1f1f1;\n --color-secondary-text: #979797;\n --color-border: #e1e1e1;\n --color-wash: #e5eff5;\n --color-darkmode: #151719;\n\n /*\n An accent color is also set by Ghost itself in\n Ghost Admin > Settings > Brand\n\n --ghost-accent-color: {value};\n\n You can use this variable throughout your styles\n */\n\n /* Fonts */\n --font-sans: -apple-system, BlinkMacSystemFont, \"Segoe UI\", \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\", \"Helvetica Neue\", sans-serif;\n --font-serif: Georgia, Times, serif;\n --font-mono: Menlo, Courier, monospace;\n\n}\n\n\n/* 2. Layout - Page building blocks\n/* ---------------------------------------------------------- */\n\n.viewport {\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n}\n\n.site-content {\n flex-grow: 1;\n}\n\n/* Full width page blocks */\n.outer {\n position: relative;\n padding: 0 max(4vmin, 20px);\n}\n\n/* Centered content container blocks */\n.inner {\n margin: 0 auto;\n max-width: 1200px;\n width: 100%;\n}\n\n\n/* 4. Site Header\n/* ---------------------------------------------------------- */\n\n.site-header {\n position: relative;\n color: #fff;\n background: var(--ghost-accent-color);\n}\n\n.site-header-cover {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n\n.site-header-content {\n position: relative;\n z-index: 100;\n display: flex;\n align-items: center;\n padding-top: calc(19vmin + 44px);\n padding-bottom: 19vmin;\n text-align: center;\n color: var(--color-darkgrey);\n}\n\n.has-cover .site-header-content {\n min-height: 560px;\n background-color: var(--ghost-accent-color);\n color: #fff;\n}\n\n.site-header-content.left-aligned {\n padding-bottom: 0;\n text-align: left;\n}\n\n.has-cover .site-header-content.left-aligned {\n align-items: flex-end;\n padding-bottom: max(4vmin, 32px);\n}\n\n.site-header-content.no-content {\n padding-top: 0;\n}\n\n.site-header-inner {\n position: relative;\n}\n\n.site-header-content.left-aligned .site-header-inner {\n align-items: flex-start;\n}\n\n.site-logo {\n flex-shrink: 0;\n margin: 0 auto;\n max-height: 120px;\n}\n\n.site-header-content.left-aligned .site-logo {\n margin-right: auto;\n margin-left: 0;\n max-height: 96px;\n}\n\n.site-title {\n z-index: 10;\n margin: 0;\n padding: 0;\n font-size: 5rem;\n font-weight: 800;\n}\n\n.has-serif-title .site-title {\n font-family: var(--font-serif);\n}\n\n.has-cover .site-title {\n font-size: 6rem;\n}\n\n.site-header-content.left-aligned .site-title {\n font-size: 4.4rem;\n}\n\n.has-cover .site-header-content.left-aligned .site-title {\n font-size: 4.6rem;\n}\n\n.site-description {\n display: inline-block;\n z-index: 10;\n max-width: 960px;\n font-size: 6rem;\n font-weight: 700;\n line-height: 1.1;\n}\n\n:is(.site-logo, .site-title) + .site-description {\n margin-top: 16px;\n font-size: 2.4rem;\n font-weight: 400;\n}\n\n.site-logo + .site-description {\n margin-top: 20px;\n}\n\n.site-title + .site-description {\n color: var(--color-secondary-text);\n}\n\n.has-cover .site-description {\n letter-spacing: -0.005em;\n color: #fff;\n}\n\n.has-cover :is(.site-logo, .site-title) + .site-description {\n font-size: 2.4rem;\n}\n\n.has-cover .site-header-content.left-aligned :is(.site-logo, .site-title) + .site-description {\n font-size: 2.2rem;\n}\n\n@media (min-width: 992px) {\n .is-head-stacked.has-cover .site-header-content {\n padding-top: calc(19vmin + 120px);\n }\n}\n\n@media (max-width: 991px) {\n .site-header-content {\n padding-top: calc(19vmin + 32px);\n }\n}\n\n@media (max-width: 767px) {\n .has-cover .site-header-content {\n min-height: 240px;\n }\n .site-header-inner {\n gap: 16px;\n }\n .site-logo {\n max-width: 60%;\n }\n .site-title {\n font-size: 3.4rem !important;\n }\n .site-description {\n font-size: 2.8rem !important;\n }\n .site-logo + .site-description {\n margin-top: 12px !important;\n }\n .site-title + .site-description {\n margin-top: 4px !important;\n }\n}\n\n\n/* 5. Site Navigation\n/* ---------------------------------------------------------- */\n\n.gh-head {\n height: 88px;\n font-size: 1.6rem;\n line-height: 1.3em;\n background-color: #fff;\n}\n\n.has-cover:not(.home-template) .gh-head {\n background-color: var(--ghost-accent-color);\n color: #fff;\n}\n\n.home-template.has-cover .gh-head {\n position: absolute;\n top: 0;\n right: 0;\n left: 0;\n z-index: 2000;\n background-color: transparent;\n color: #fff;\n}\n\n.gh-head a {\n text-decoration: none;\n}\n\n.gh-head-inner {\n display: grid;\n column-gap: 40px;\n grid-template-columns: auto 1fr auto;\n grid-auto-flow: row dense;\n align-items: center;\n height: 100%;\n}\n\n/* Header styles\n/* ---------------------------------------------------------- */\n\n.is-head-left-logo .gh-head-inner {\n grid-template-columns: auto 1fr auto;\n}\n\n.is-head-left-logo.home-template .gh-head-logo {\n display: none;\n}\n\n.is-head-left-logo.home-template .gh-head-menu {\n margin-left: -40px;\n}\n\n@media (min-width: 992px) {\n .is-head-left-logo .gh-head-menu {\n margin-right: 32px;\n margin-left: 16px;\n }\n}\n\n.is-head-middle-logo .gh-head-inner {\n grid-template-columns: 1fr auto 1fr;\n}\n\n.is-head-middle-logo .gh-head-brand {\n grid-column-start: 2;\n}\n\n.is-head-middle-logo .gh-head-actions {\n gap: 28px;\n}\n\n@media (min-width: 992px) {\n .is-head-middle-logo .gh-head-menu {\n margin-right: 64px;\n }\n}\n\n.is-head-stacked .gh-head {\n height: auto;\n}\n\n.is-head-stacked .gh-head-inner {\n grid-template-columns: 1fr auto 1fr;\n}\n\n.is-head-stacked .gh-head-brand {\n grid-row-start: 1;\n grid-column-start: 2;\n}\n\n@media (min-width: 992px) {\n .is-head-stacked .gh-head-inner {\n padding: 0;\n }\n\n .is-head-stacked .gh-head-brand {\n position: relative;\n display: flex;\n align-items: center;\n height: 80px;\n }\n\n .is-head-stacked .gh-head-menu {\n grid-row-start: 2;\n grid-column: 1 / 4;\n justify-content: center;\n height: 56px;\n margin: 0 48px;\n }\n\n .is-head-stacked .gh-head-menu::before,\n .is-head-stacked .gh-head-menu::after {\n position: absolute;\n top: 80px;\n left: 0;\n width: 100%;\n height: 1px;\n content: \"\";\n background-color: var(--color-lightgrey);\n }\n\n .is-head-stacked.has-cover .gh-head-menu::before,\n .is-head-stacked.has-cover .gh-head-menu::after {\n background-color: rgba(255, 255, 255, 0.2);\n }\n\n .is-head-stacked .gh-head-menu::after {\n top: 136px;\n }\n\n .is-head-stacked .gh-head-actions {\n grid-row-start: 1;\n grid-column: 1 / 4;\n justify-content: space-between;\n }\n}\n\n/* Brand\n/* ---------------------------------------------------------- */\n\n.gh-head-brand {\n display: flex;\n align-items: center;\n height: 40px;\n word-break: break-all;\n}\n\n.gh-head-logo {\n display: block;\n font-weight: 800;\n font-size: 2.6rem;\n letter-spacing: -0.02em;\n color: inherit;\n white-space: nowrap;\n}\n\n.gh-head-logo.no-image {\n margin-top: -2px;\n}\n\n.has-cover .gh-head-logo {\n color: #fff;\n}\n\n.gh-head-logo img {\n max-height: 40px;\n}\n\n\n/* Primary Navigation\n/* ---------------------------------------------------------- */\n\n.gh-head-menu {\n display: flex;\n align-items: center;\n margin-top: 1px;\n font-weight: 500;\n}\n\n.gh-head-menu .nav {\n display: inline-flex;\n align-items: center;\n flex-wrap: wrap;\n gap: 32px;\n list-style: none;\n margin: 0;\n padding: 0;\n}\n\n.gh-head-menu .nav li {\n margin: 0;\n padding: 0;\n}\n\n.gh-head-menu .nav a {\n display: inline-block;\n line-height: 1.7;\n color: inherit;\n}\n\n.gh-head-menu .nav a:hover {\n opacity: 0.9;\n}\n\n.gh-head-menu .nav-more-toggle {\n position: relative;\n width: 30px;\n height: 30px;\n margin: 0 -6px;\n padding: 0;\n font-size: inherit;\n background-color: transparent;\n text-transform: inherit;\n}\n\n.gh-head-menu .nav-more-toggle svg {\n width: 24px;\n height: 24px;\n}\n\n@media (min-width: 992px) {\n body:not(.is-dropdown-loaded) .gh-head-menu .nav > li {\n opacity: 0;\n }\n}\n\n\n/* Dropdown\n/* ---------------------------------------------------------- */\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 opacity: 0;\n visibility: hidden;\n text-align: left;\n background-color: #fff;\n border-radius: 5px;\n box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.04), 0 7px 20px -5px rgba(0, 0, 0, 0.15);\n transform: translate3d(0, 6px, 0);\n transition: opacity 0.3s, transform 0.2s;\n}\n\n.is-head-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 opacity: 1;\n visibility: visible;\n transform: translateY(0);\n}\n\n.gh-head-menu .gh-dropdown li a {\n display: block;\n padding: 6px 20px;\n color: #15171a;\n}\n\n.is-dropdown-mega .gh-dropdown li a {\n padding: 8px 0;\n}\n\n\n/* Secondary Navigation\n/* ---------------------------------------------------------- */\n\n.gh-social {\n display: flex;\n align-items: center;\n gap: 20px;\n}\n\n.gh-social-link {\n line-height: 0;\n color: inherit;\n}\n\n.gh-social-link:hover {\n opacity: 0.9;\n}\n\n.gh-social-link svg {\n width: 18px;\n height: 18px;\n}\n\n.gh-head-actions {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n gap: 24px;\n list-style: none;\n text-align: right;\n}\n\n.gh-head-button {\n display: inline-flex;\n justify-content: center;\n align-items: center;\n padding: 8px 20px;\n height: 44px;\n font-weight: 600;\n letter-spacing: -0.005em;\n font-size: 1.6rem;\n border-radius: 48px;\n color: #fff;\n background: var(--ghost-accent-color);\n}\n\n.has-cover .gh-head-button {\n color: var(--color-darkgrey);\n background: #fff;\n}\n\n\n/* Search\n/* ---------------------------------------------------------- */\n\n.gh-search {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n padding: 0;\n cursor: pointer;\n background-color: transparent;\n border: 0;\n outline: none;\n}\n\n.gh-search:hover {\n opacity: 0.9;\n}\n\n.gh-head-brand .gh-search {\n margin-right: 8px;\n}\n\n.gh-head-actions .gh-search {\n margin-right: -4px;\n}\n\n@media (max-width: 991px) {\n .gh-head-actions .gh-search {\n display: none;\n }\n}\n\n@media (min-width: 992px) {\n .gh-head-brand .gh-search {\n display: none;\n }\n}\n\n\n/* Mobile Menu Trigger\n/* ---------------------------------------------------------- */\n\n.gh-burger {\n position: relative;\n display: none;\n width: 30px;\n height: 30px;\n padding: 0;\n margin-right: -3px;\n cursor: pointer;\n background-color: transparent;\n border: 0;\n appearance: none;\n}\n\n.gh-burger::before,\n.gh-burger::after {\n position: absolute;\n left: 3px;\n width: 24px;\n height: 1px;\n content: \"\";\n background-color: var(--color-darkgrey);\n transition: all 0.2s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s;\n}\n\n.has-cover .gh-burger::before,\n.has-cover .gh-burger::after {\n background-color: #fff;\n}\n\n.gh-burger::before {\n top: 11px;\n}\n\n.gh-burger::after {\n bottom: 11px;\n}\n\n.gh-head-open .gh-burger::before {\n top: 15px;\n transform: rotate(45deg);\n}\n\n.gh-head-open .gh-burger::after {\n bottom: 14px;\n transform: rotate(-45deg);\n}\n\n\n/* Mobile Menu\n/* ---------------------------------------------------------- */\n/* IDs needed to ensure sufficient specificity */\n\n@media (max-width: 991px) {\n #gh-head {\n height: 64px;\n }\n\n #gh-head .gh-head-inner {\n grid-template-rows: auto 1fr auto;\n grid-template-columns: 1fr;\n gap: 48px;\n }\n\n #gh-head .gh-head-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-head .gh-head-logo {\n font-size: 2.2rem;\n }\n\n #gh-head .gh-head-brand .gh-search {\n margin-left: -6px;\n }\n\n #gh-head .gh-burger {\n display: block;\n }\n\n #gh-head .gh-head-menu,\n #gh-head .gh-head-actions {\n position: fixed;\n justify-content: center;\n visibility: hidden;\n opacity: 0;\n }\n\n #gh-head .gh-head-menu {\n margin: 0;\n transition: none;\n transform: translateY(0);\n }\n\n #gh-head .nav {\n gap: 16px;\n align-items: center;\n line-height: 1.4;\n }\n\n #gh-head .nav a {\n font-size: 2.6rem;\n font-weight: 600;\n text-transform: none;\n }\n\n #gh-head .nav li {\n opacity: 0;\n transform: translateY(-4px);\n }\n\n #gh-head .gh-head-button {\n width: 100%;\n font-size: 1.8rem;\n text-transform: none;\n opacity: 0;\n transform: translateY(8px);\n }\n\n .gh-head-open #gh-head {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 3999999;\n height: 100vh;\n overflow-y: scroll;\n -webkit-overflow-scrolling: touch;\n }\n\n .gh-head-open.has-cover #gh-head,\n .gh-head-open.has-cover #gh-head .gh-head-actions {\n background-color: var(--ghost-accent-color);\n }\n\n .gh-head-open #gh-head .gh-head-menu,\n .gh-head-open #gh-head .gh-head-actions {\n position: static;\n visibility: visible;\n opacity: 1;\n }\n\n .gh-head-open #gh-head .nav {\n display: flex;\n flex-direction: column;\n }\n\n .gh-head-open #gh-head .nav li {\n opacity: 1;\n transition: transform 0.2s, opacity 0.2s;\n transform: translateY(0);\n }\n\n .gh-head-open #gh-head .gh-head-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: max(4vmin, 20px) 0;\n background-color: #fff;\n }\n\n .gh-head-open #gh-head .gh-head-button {\n opacity: 1;\n transition: transform 0.4s, opacity 0.4s;\n transition-delay: 0.2s;\n transform: translateY(0);\n }\n}\n\n\n/* 6. Post Feed\n/* ---------------------------------------------------------- */\n\n.post-feed {\n position: relative;\n display: grid;\n gap: 4.8vmin 4vmin;\n grid-template-columns: repeat(6, 1fr);\n padding: max(4.8vmin, 36px) 0 0;\n}\n\n:is(.tag-template, .author-template) .post-feed {\n margin-top: 4vmin;\n}\n\n@media (max-width: 991px) {\n .post-feed {\n grid-template-columns: 1fr 1fr;\n }\n}\n\n@media (max-width: 767px) {\n .post-feed {\n grid-template-columns: 1fr;\n grid-gap: 40px;\n }\n}\n\n.post-card {\n position: relative;\n grid-column: span 2;\n display: flex;\n flex-direction: column;\n background-size: cover;\n word-break: break-word;\n}\n\n.post-card-image-link {\n position: relative;\n overflow: hidden;\n display: block;\n margin-bottom: 32px;\n}\n\n.post-card-image-link::after {\n content: \"\";\n display: block;\n padding-bottom: 55%;\n}\n\n.post-card[class*=\"post-access-\"] .post-card-image-link::after {\n background-color: rgba(0, 0, 0, 0.5);\n backdrop-filter: blur(3px);\n}\n\n.post-card.keep-ratio[class*=\"post-access-\"] .post-card-image-link::after {\n position: absolute;\n inset: 0;\n padding-bottom: 0;\n}\n\n.post-card.keep-ratio:not(.post-card-large):not(.post-card-full) .post-card-image-link::after {\n padding-bottom: 0;\n}\n\n.post-card-image {\n position: absolute;\n inset: 0;\n width: 100%;\n height: 100%;\n background: var(--color-lightgrey) no-repeat center center;\n object-fit: cover;\n}\n\n.post-card.keep-ratio:not(.post-card-large):not(.post-card-full) .post-card-image {\n position: static;\n}\n\n.post-card-access {\n position: absolute;\n inset: 0;\n z-index: 10;\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 4px;\n font-size: 1.5rem;\n font-weight: 600;\n color: #fff;\n}\n\n.post-card-content-link {\n position: relative;\n display: block;\n color: var(--color-darkgrey);\n}\n\n.post-card-content-link:hover {\n text-decoration: none;\n}\n\n.post-feed .no-image .post-card-content-link {\n padding: 0;\n}\n\n.no-image .post-card-header {\n margin-top: 0;\n}\n\n.post-card-tags {\n display: flex;\n align-items: center;\n gap: 12px;\n margin: 0 0 10px;\n color: var(--color-secondary-text);\n font-size: 1.4rem;\n font-weight: 600;\n letter-spacing: -0.005em;\n line-height: 1;\n}\n\n.post-card-featured {\n position: relative;\n display: flex;\n align-items: center;\n gap: 3px;\n padding-left: 18px;\n color: var(--ghost-accent-color);\n}\n\n.post-card-featured svg {\n position: absolute;\n left: 0;\n}\n\n.post-card-title {\n margin: 0;\n font-size: 2.6rem;\n font-weight: 800;\n line-height: 1.2;\n}\n\n.post-card-content-link:hover .post-card-title {\n opacity: 0.9;\n}\n\n.no-image .post-card-title {\n margin-top: 0;\n}\n\n.has-serif-title .post-card-title {\n font-family: var(--font-serif);\n letter-spacing: -0.005em;\n}\n\n.post-card-title svg {\n margin-top: -3px;\n margin-left: -1px;\n}\n\n.post-card-content {\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n}\n\n.post-card-excerpt {\n display: -webkit-box;\n overflow-y: hidden;\n margin-top: 12px;\n max-width: 720px;\n font-size: 1.6rem;\n line-height: 1.5;\n -webkit-line-clamp: 3;\n -webkit-box-orient: vertical;\n word-break: break-word;\n}\n\n.has-sans-body .post-card-excerpt {\n font-family: var(--font-sans);\n}\n\n.post-card:not(.post-card-large):not(.post-card-full):not(.dynamic):not(.no-image) .post-card-excerpt {\n -webkit-line-clamp: 2;\n}\n\n:is(.tag-template, .author-template) .post-card-excerpt {\n margin-top: 6px;\n}\n\n.post-card-meta {\n display: flex;\n align-items: center;\n gap: 6px;\n margin-top: 12px;\n padding: 0;\n font-size: 1.3rem;\n color: var(--color-secondary-text);\n}\n\n.post-card-meta > * {\n display: flex;\n align-items: center;\n gap: 6px;\n}\n\n.post-card-meta > * + *:not(script)::before {\n width: 2px;\n height: 2px;\n content: \"\";\n background-color: var(--color-secondary-text);\n border-radius: 50%;\n}\n\n.post-card-meta .sep {\n margin: 0 4px;\n}\n\n.author-profile-image {\n display: block;\n width: 100%;\n height: 100%;\n background: color-mod(var(--color-lightgrey) l(+10%));\n border-radius: 100%;\n\n object-fit: cover;\n}\n\n.author-list {\n display: flex;\n flex-wrap: wrap;\n margin: 0 0 0 4px;\n padding: 0;\n list-style: none;\n}\n\n.author-list-item {\n position: relative;\n flex-shrink: 0;\n margin: 0;\n padding: 0;\n}\n\n\n/* Special Styling for home page grid (below):\n\nThe first post in the list is styled to be bigger than the others and take over\nthe full width of the grid to give it more emphasis. Wrapped in a media query to\nmake sure this only happens on large viewports / desktop-ish devices.\n\n*/\n\n@media (min-width: 1001px) {\n .post-card-large {\n grid-column: span 6;\n display: grid;\n grid-gap: 4vmin;\n grid-template-columns: repeat(3, 1fr);\n border-top: 0;\n }\n\n .post-card-large:not(.no-image) .post-card-header {\n margin-top: 0;\n }\n\n .post-card-large .post-card-image-link {\n position: relative;\n grid-column: span 2;\n margin-bottom: 0;\n }\n\n .post-card-large .post-card-content {\n grid-column: span 1;\n }\n\n .post-card-large.no-image .post-card-content {\n grid-column: span 2;\n }\n\n .post-card-large .post-card-image {\n position: absolute;\n width: 100%;\n height: 100%;\n }\n\n .post-card-large .post-card-tags {\n margin-bottom: 12px;\n }\n\n .post-card-large .post-card-title {\n margin-top: 0;\n font-size: 4.4rem;\n line-height: 1.05;\n }\n\n .post-card-large .post-card-excerpt {\n margin-top: 16px;\n }\n\n .post-card-full {\n grid-column: span 6;\n }\n\n .post-card-full .post-card-image-link {\n margin-bottom: 40px;\n }\n\n .post-card-full .post-card-tags {\n margin-bottom: 14px;\n }\n\n .post-card-full .post-card-title {\n font-size: 6.4rem;\n line-height: 0.95;\n }\n\n .post-card-full .post-card-excerpt {\n margin-top: 20px;\n font-size: 1.8rem;\n }\n\n .post-card-large + .post-card-large:nth-child(even) {\n margin: 32px 0;\n }\n\n .post-card-large + .post-card-large:nth-child(even) .post-card-content {\n order: -1;\n }\n\n .post-card.dynamic {\n grid-column: span 3;\n }\n\n .post-card.dynamic .post-card-title {\n font-size: 3rem;\n }\n}\n\n\n/* 7. Single Post\n/* ---------------------------------------------------------- */\n\n.article {\n padding: max(8vmin, 40px) 0 max(8vmin, 64px);\n word-break: break-word;\n}\n\n.page-template .article {\n padding-top: max(12vmin, 64px);\n}\n\n.article-header {\n padding: 0 0 max(6.4vmin, 40px) 0;\n}\n\n.page-template .article-header {\n padding-bottom: max(3.2vmin, 28px);\n}\n\n.article-tag {\n margin-bottom: 16px;\n font-size: 1.6rem;\n}\n\n.article-tag a {\n color: var(--color-secondary-text);\n}\n\n.article-title {\n margin-bottom: 0;\n font-size: clamp(3.2rem, 5vw, 5.2rem);\n font-weight: 800;\n line-height: 1.05;\n color: var(--color-darkgrey);\n}\n\n.has-serif-title .article-title {\n font-family: var(--font-serif);\n}\n\n.article-excerpt {\n margin-top: 20px;\n max-width: 720px;\n font-size: 2rem;\n line-height: 1.45;\n color: var(--color-darkgrey);\n}\n\n.gh-canvas .article-image {\n grid-column: wide-start / wide-end;\n width: 100%;\n margin: max(6.4vmin, 40px) 0 0;\n}\n\n.image-full .article-image {\n grid-column: full-start / full-end;\n}\n\n.image-small .article-image {\n grid-column: main-start / main-end;\n}\n\n.gh-canvas .article-image img {\n display: block;\n margin-left: auto;\n margin-right: auto;\n width: 100%;\n}\n\n@media (max-width: 767px) {\n .article-excerpt {\n margin-top: 14px;\n font-size: 1.7rem;\n }\n}\n\n/* -------- */\n\n/* Content grid\n/* ---------------------------------------------------------- */\n\n/* Canvas creates a multi-column, centered grid which the post\nis laid out on top of. Canvas just defines the grid, we don't\nuse it for applying any other styles. */\n\n.gh-canvas {\n display: grid;\n grid-template-columns:\n [full-start]\n minmax(max(4vmin, 20px), auto)\n [wide-start]\n minmax(auto, 240px)\n [main-start]\n min(720px, calc(100% - max(8vmin, 40px)))\n [main-end]\n minmax(auto, 240px)\n [wide-end]\n minmax(max(4vmin, 20px), auto)\n [full-end]\n ;\n}\n\n.gh-canvas > * {\n grid-column: main-start / main-end;\n}\n\n.kg-width-wide {\n grid-column: wide-start / wide-end;\n}\n\n.kg-width-full {\n grid-column: full-start / full-end;\n}\n\n.kg-width-full img {\n width: 100%;\n}\n\n\n/* 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/* Default vertical spacing */\n.gh-content > * + * {\n margin-top: max(3.2vmin, 24px);\n margin-bottom: 0;\n}\n\n/* [id] represents all headings h1-h6, reset all margins */\n.gh-content > [id] {\n margin: 0;\n color: var(--color-darkgrey);\n}\n\n.has-serif-title .gh-content > [id] {\n font-family: var(--font-serif);\n}\n\n/* Add back a top margin to all headings, unless a heading\nis the very first element in the post content */\n.gh-content > [id]:not(:first-child) {\n margin: 2em 0 0;\n}\n\n/* Add a small margin between a heading and anything after it */\n.gh-content > [id] + * {\n margin-top: 1.5rem !important;\n}\n\n/* A larger margin before/after HRs and blockquotes */\n.gh-content > hr,\n.gh-content > blockquote {\n position: relative;\n margin-top: max(4.8vmin, 32px);\n}\n.gh-content > hr + *,\n.gh-content > blockquote + * {\n margin-top: max(4.8vmin, 32px) !important;\n}\n\n/* Now the content typography styles */\n.gh-content a {\n color: var(--ghost-accent-color);\n text-decoration: underline;\n word-break: break-word;\n}\n\n.gh-content > blockquote:not([class]),\n.gh-content > ol,\n.gh-content > ul,\n.gh-content > dl,\n.gh-content > p {\n font-family: var(--font-serif);\n font-weight: 400;\n font-size: 2rem;\n line-height: 1.6em;\n}\n\n.gh-content .kg-callout-card .kg-callout-text,\n.gh-content .kg-toggle-card .kg-toggle-content > ol,\n.gh-content .kg-toggle-card .kg-toggle-content > ul,\n.gh-content .kg-toggle-card .kg-toggle-content > p {\n font-family: var(--font-serif);\n font-weight: 400;\n font-size: 1.9rem;\n line-height: 1.6em;\n}\n\n.gh-content .kg-product-card .kg-product-card-description > p,\n.gh-content .kg-product-card .kg-product-card-description > ol,\n.gh-content .kg-product-card .kg-product-card-description > ul {\n font-size: 1.7rem;\n line-height: 1.6em;\n}\n\n.gh-content .kg-callout-card .kg-callout-emoji {\n font-size: 2.1rem;\n line-height: 1.4em;\n}\n\n.gh-content .kg-toggle-card .kg-toggle-heading-text {\n font-size: 2.0rem;\n}\n\n.has-sans-body .gh-content > blockquote,\n.has-sans-body .gh-content > ol,\n.has-sans-body .gh-content > ul,\n.has-sans-body .gh-content > dl,\n.has-sans-body .gh-content > p,\n.has-sans-body .gh-content .kg-callout-card .kg-callout-text,\n.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content > ol,\n.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content > ul,\n.has-sans-body .gh-content .kg-toggle-card .kg-toggle-content > p {\n font-family: var(--font-sans);\n}\n\n.gh-content > ul,\n.gh-content > ol,\n.gh-content > dl,\n.gh-content .kg-toggle-card .kg-toggle-content > ol,\n.gh-content .kg-toggle-card .kg-toggle-content > ul,\n.gh-content .kg-product-card .kg-product-card-description > ol,\n.gh-content .kg-product-card .kg-product-card-description > ul {\n padding-left: 1.9em;\n}\n\n.gh-content > blockquote:not([class]) {\n position: relative;\n font-style: italic;\n padding: 0;\n}\n\n.gh-content > blockquote:not([class])::before {\n content: \"\";\n position: absolute;\n left: -1.5em;\n top: 0;\n bottom: 0;\n width: 0.3rem;\n background: var(--ghost-accent-color);\n}\n\n.gh-content :not(pre) > code {\n vertical-align: middle;\n padding: 0.15em 0.4em 0.15em;\n border: #e1eaef 1px solid;\n font-weight: 400 !important;\n font-size: 0.9em;\n line-height: 1em;\n color: #15171A;\n background: #f0f6f9;\n border-radius: 0.25em;\n}\n\n.gh-content pre {\n overflow: auto;\n padding: 16px 20px;\n color: var(--color-wash);\n font-size: 1.4rem;\n line-height: 1.5em;\n background: var(--color-darkgrey);\n border-radius: 5px;\n box-shadow: 0 2px 6px -2px rgba(0,0,0,.1), 0 0 1px rgba(0,0,0,.4);\n}\n\n@media (max-width: 650px) {\n .gh-content > blockquote:not([class]),\n .gh-content > ol,\n .gh-content > ul,\n .gh-content > dl,\n .gh-content > p,\n .gh-content .kg-callout-card .kg-callout-text,\n .gh-content .kg-toggle-card .kg-toggle-content > ol,\n .gh-content .kg-toggle-card .kg-toggle-content > ul,\n .gh-content .kg-toggle-card .kg-toggle-content > p {\n font-size: 1.8rem;\n }\n\n .gh-content .kg-product-card .kg-product-card-description > p,\n .gh-content .kg-product-card .kg-product-card-description > ol,\n .gh-content .kg-product-card .kg-product-card-description > ul {\n font-size: 1.6rem;\n }\n\n .gh-content blockquote:not([class])::before {\n left: min(-4vmin, -20px);\n }\n}\n\n\n/* Cards\n/* ---------------------------------------------------------- */\n\n/* Cards are dynamic blocks of content which appear within Ghost\nposts, for example: embedded videos, tweets, galleries, or\nspecially styled bookmark links. We add extra styling here to\nmake sure they look good, and are given a bit of extra spacing. */\n\n/* Add extra margin before/after any cards,\nexcept for when immediately preceeded by a heading */\n.gh-content :not(.kg-card):not([id]) + .kg-card {\n margin-top: 6vmin;\n margin-bottom: 0;\n}\n.gh-content .kg-card + :not(.kg-card) {\n margin-top: 6vmin;\n margin-bottom: 0;\n}\n\n/* This keeps small embeds centered */\n.kg-embed-card {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n}\n\n/* This keeps small iamges centered */\n.kg-image-card img {\n margin: auto;\n}\n\n.has-serif-title .kg-toggle-card .kg-toggle-heading-text {\n font-family: var(--font-serif);\n}\n\n.gh-content .kg-callout-card-accent a {\n text-decoration: underline;\n}\n\n.kg-blockquote-alt {\n font-family: var(--font-serif);\n color: var(--color-midgrey);\n}\n\n.has-sans-body .kg-blockquote-alt {\n font-family: var(--font-sans);\n}\n\n.kg-card.kg-header-card.kg-style-dark {\n background: var(--color-darkgrey);\n}\n\n.kg-header-card.kg-style-light h2.kg-header-card-header {\n color: color-mod(var(--color-darkgrey) l(-5%));\n}\n\n.has-serif-title .kg-header-card h2.kg-header-card-header {\n font-family: var(--font-serif);\n}\n\n\n/* Captions */\nfigcaption {\n padding: 1.5rem 1.5rem 0;\n text-align: center;\n color: rgba(0,0,0,0.5);\n font-size: 1.3rem;\n line-height: 1.4em;\n}\nfigcaption strong {\n color: rgba(0,0,0,0.8);\n}\nfigcaption a {\n text-decoration: underline;\n}\n\n\n/* Highly specific styles for traditional Instagram embeds */\niframe.instagram-media {\n margin-top: 6vmin !important;\n margin-left: auto !important;\n margin-right: auto !important;\n margin-bottom: 0 !important;\n}\n\niframe.instagram-media + script + :not([id]) {\n margin-top: 6vmin;\n}\n\n\n/* Card captions\n/* ---------------------------------------------------------- */\n\n.kg-width-full.kg-card-hascaption {\n display: grid;\n grid-template-columns: inherit;\n}\n\n.kg-width-wide.kg-card-hascaption img {\n grid-column: wide-start / wide-end;\n}\n.kg-width-full.kg-card-hascaption img {\n grid-column: 1 / -1;\n}\n\n.kg-width-full.kg-card-hascaption figcaption {\n grid-column: main-start / main-end;\n}\n\n.article-comments {\n margin: 6vmin 0 0 0;\n}\n\n/* -----old------ */\n\n.footnotes-sep {\n margin-bottom: 30px;\n}\n\n.footnotes {\n font-size: 1.5rem;\n}\n\n.footnotes p {\n margin: 0;\n}\n\n.footnote-backref {\n font-size: 1.2rem;\n font-weight: bold;\n text-decoration: none !important;\n box-shadow: none !important;\n}\n\n/* Tables */\n.gh-content table:not(.gist table) {\n display: inline-block;\n overflow-x: auto;\n max-width: 100%;\n width: auto;\n border-spacing: 0;\n border-collapse: collapse;\n font-family: var(--font-sans);\n font-size: 1.6rem;\n white-space: nowrap;\n vertical-align: top;\n -webkit-overflow-scrolling: touch;\n background: radial-gradient(ellipse at left, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 75%) 0 center, radial-gradient(ellipse at right, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 75%) 100% center;\n background-attachment: scroll, scroll;\n background-size: 10px 100%, 10px 100%;\n background-repeat: no-repeat;\n}\n\n.gh-content table:not(.gist table) td:first-child {\n background-image: linear-gradient(to right, rgba(255,255,255, 1) 50%, rgba(255,255,255, 0) 100%);\n background-size: 20px 100%;\n background-repeat: no-repeat;\n}\n\n.gh-content table:not(.gist table) td:last-child {\n background-image: linear-gradient(to left, rgba(255,255,255, 1) 50%, rgba(255,255,255, 0) 100%);\n background-position: 100% 0;\n background-size: 20px 100%;\n background-repeat: no-repeat;\n}\n\n.gh-content table:not(.gist table) th {\n color: var(--color-darkgrey);\n font-size: 1.2rem;\n font-weight: 700;\n letter-spacing: 0.2px;\n text-align: left;\n text-transform: uppercase;\n background-color: color-mod(var(--color-wash) l(+4%));\n}\n\n.gh-content table:not(.gist table) th,\n.gh-content table:not(.gist table) td {\n padding: 6px 12px;\n border: color-mod(var(--color-wash) l(-1%) s(-5%)) 1px solid;\n}\n\n\n/* 7.1. Post Byline\n/* ---------------------------------------------------------- */\n\n.article-byline {\n display: flex;\n justify-content: space-between;\n margin: min(24px, 5.6vmin) 0 0;\n}\n\n.article-byline-content {\n flex-grow: 1;\n display: flex;\n align-items: center;\n}\n\n.article-byline-content .author-list {\n justify-content: flex-start;\n padding: 0 14px 0 0;\n}\n\n.article-byline-meta {\n color: var(--color-secondary-text);\n font-size: 1.4rem;\n line-height: 1.2em;\n}\n\n.article-byline-meta .author-name {\n margin: 0 0 6px;\n font-size: 1.7rem;\n font-weight: 700;\n letter-spacing: 0;\n}\n\n.article-byline-meta .bull {\n display: inline-block;\n margin: 0 2px;\n}\n\n.author-avatar {\n display: block;\n overflow: hidden;\n margin: 0 -4px;\n width: min(56px, 13.6vmin);\n height: min(56px, 13.6vmin);\n border: #fff 2px solid;\n border-radius: 50%;\n background-color: var(--color-border);\n}\n\n.page-template .article-title {\n margin-bottom: 0;\n}\n\n@media (max-width: 767px) {\n .article-byline-content .author-list {\n padding-right: 12px;\n }\n .article-byline-meta .author-name {\n margin-bottom: 4px;\n }\n}\n\n\n/* 7.3. Subscribe\n/* ---------------------------------------------------------- */\n\n.footer-cta {\n position: relative;\n text-align: center;\n}\n\n.footer-cta-title {\n margin: 0 0 min(24px, 6.4vmin);\n font-size: clamp(2.6rem, 5vw, 3.8rem);\n font-weight: 800;\n}\n\n.has-serif-title .footer-cta-title {\n font-family: var(--font-serif);\n}\n\n.footer-cta-button {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n max-width: 500px;\n padding: 5px 5px 5px 15px;\n font-size: 1.7rem;\n color: var(--color-secondary-text);\n background: #fff;\n border: 1px solid var(--color-border);\n border-radius: 8px;\n transition: border-color 0.2s;\n}\n\n.footer-cta-button:hover {\n border-color: color-mod(var(--color-border) l(-12%));\n}\n\n.footer-cta-button span {\n display: inline-block;\n padding: 9px 15px;\n color: #fff;\n font-size: 1.6rem;\n font-weight: 600;\n letter-spacing: -0.005em;\n background: var(--ghost-accent-color);\n border-radius: 6px;\n}\n\n\n/* 7.4. Read more\n/* ---------------------------------------------------------- */\n\n.read-more-wrap {\n margin-top: 2.4vmin;\n}\n\n.footer-cta + .read-more-wrap {\n margin-top: max(12vmin, 72px);\n}\n\n.read-more {\n display: grid;\n grid-template-columns: repeat(6, 1fr);\n grid-gap: 4vmin;\n}\n\n.read-more .post-card-tags {\n display: none;\n}\n\n@media (max-width: 1000px) {\n .read-more {\n grid-template-columns: repeat(4, 1fr);\n }\n .read-more .post-card:nth-child(3) {\n display: none;\n }\n}\n\n@media (max-width: 700px) {\n .read-more {\n grid-template-columns: repeat(2, 1fr);\n }\n .read-more .post-card:nth-child(2) {\n display: none;\n }\n}\n\n/* 7.6. Comments\n/* ---------------------------------------------------------- */\n.comments {\n display: flex;\n flex-direction: column;\n align-items: center;\n margin: 60px 0 44px;\n}\n\n\n.comments-head {\n display: flex;\n align-items: baseline;\n justify-content: space-between;\n margin-bottom: 32px;\n width: 100%;\n max-width: 720px;\n}\n\n.comments h2 {\n width: 100%;\n max-width: 720px;\n font-weight: 800;\n font-size: 3.4rem;\n}\n\n.comments .comment-count {\n color: var(--color-midgrey);\n font-weight: 600;\n white-space: nowrap;\n}\n\n.comments #ghost-comments-root {\n width: 100%;\n max-width: 720px;\n}\n\n\n/* 8. Author Template\n/* ---------------------------------------------------------- */\n\n.author-profile-pic {\n display: block;\n width: 80px;\n height: 80px;\n object-fit: cover;\n margin: 0 0 2rem;\n background: color-mod(var(--color-lightgrey) l(+10%));\n border-radius: 50%;\n}\n\n.author-profile-footer {\n margin-top: 16px;\n}\n\n.author-profile-location {\n font-weight: 700;\n}\n\n.author-profile-meta {\n display: flex;\n gap: 10px;\n}\n\n.author-profile-social-link {\n font-size: 1.3rem;\n color: var(--color-secondary-text);\n}\n\n.author-profile-social-link:hover {\n color: var(--color-darkgrey);\n}\n\n.author-profile-social-link svg {\n width: 16px;\n height: 16px;\n}\n\n@media (min-width: 1001px) {\n .author-template .post-card-large .post-card-content:only-child {\n grid-column: span 2;\n max-width: 640px;\n }\n}\n\n\n/* 8. Tag Template\n/* ---------------------------------------------------------- */\n\n.tag-template .post-card-large .post-card-image-link {\n grid-column: 2 / span 2;\n order: 2;\n}\n\n.tag-template .post-card-large .post-card-content {\n order: 1;\n}\n\n@media (min-width: 1001px) {\n .tag-template .post-card-large .post-card-content:only-child {\n grid-column: span 2;\n max-width: 640px;\n }\n}\n\n/* 9. Error Template\n/* ---------------------------------------------------------- */\n\n.error-content {\n padding: 14vw 4vw 2vw;\n}\n\n.error-message {\n padding-bottom: 10vw;\n text-align: center;\n}\n\n.error-code {\n margin: 0;\n font-size: 12vw;\n line-height: 1em;\n letter-spacing: -5px;\n}\n\n.error-description {\n margin: 0;\n color: var(--color-secondary-text);\n font-size: 3.2rem;\n line-height: 1.3em;\n letter-spacing: -0.005em;\n font-weight: 400;\n}\n\n.error-link {\n display: inline-block;\n margin-top: 5px;\n}\n\n@media (min-width: 940px) {\n .error-content .post-card {\n margin-bottom: 0;\n padding-bottom: 0;\n border-bottom: none;\n }\n}\n\n@media (max-width: 800px) {\n .error-content {\n padding-top: 24vw;\n }\n .error-code {\n font-size: 11.2rem;\n }\n .error-message {\n padding-bottom: 16vw;\n }\n .error-description {\n margin: 5px 0 0 0;\n font-size: 1.8rem;\n }\n}\n\n@media (max-width: 500px) {\n .error-content {\n padding-top: 28vw;\n }\n .error-message {\n padding-bottom: 14vw;\n }\n}\n\n\n/* 11. Site Footer\n/* ---------------------------------------------------------- */\n\n.site-footer {\n position: relative;\n margin: max(12vmin, 64px) 0 0 0;\n padding-top: 48px;\n padding-bottom: 140px;\n color: #fff;\n background: color-mod(var(--color-darkgrey) l(-5%));\n}\n\n.site-footer .inner {\n display: grid;\n grid-gap: 40px;\n grid-template-columns: auto 1fr auto;\n color: rgba(255,255,255,0.7);\n font-size: 1.3rem;\n}\n\n.site-footer .copyright a {\n color: #fff;\n letter-spacing: -0.015em;\n font-weight: 500;\n}\n\n.site-footer a {\n color: rgba(255,255,255,0.7);\n}\n\n.site-footer a:hover {\n color: rgba(255,255,255,1);\n text-decoration: none;\n}\n\n.site-footer-nav ul {\n display: flex;\n justify-content: center;\n flex-wrap: wrap;\n margin: 0 0 20px;\n padding: 0;\n list-style: none;\n}\n\n.site-footer-nav li {\n display: inline-flex;\n align-items: center;\n padding: 0;\n margin: 0;\n line-height: 2em;\n}\n\n.site-footer-nav a {\n position: relative;\n display: inline-flex;\n align-items: center;\n margin-left: 10px;\n}\n\n.site-footer-nav li:not(:first-child) a:before {\n content: \"\";\n display: block;\n width: 2px;\n height: 2px;\n margin: 0 10px 0 0;\n background: #fff;\n border-radius: 100%;\n}\n\n@media (max-width: 767px) {\n .site-footer .inner {\n max-width: 500px;\n grid-template-columns: 1fr;\n grid-gap: 0;\n text-align: center;\n }\n .site-footer .copyright,\n .site-footer .copyright a {\n color: #fff;\n font-size: 1.5rem;\n }\n .site-footer .copyright {\n margin-bottom: 16px;\n }\n}\n\n\n/* 12. Dark Mode\n/* ---------------------------------------------------------- */\n\nhtml.dark-mode body {\n color: rgba(255, 255, 255, 0.75);\n background: var(--color-darkmode);\n}\n\nhtml.dark-mode img {\n opacity: 0.9;\n}\n\nhtml.dark-mode kbd {\n background: color-mod(var(--color-darkmode) l(+5%));\n}\n\nhtml.dark-mode figcaption a {\n color: #fff;\n}\n\nhtml.dark-mode .gh-head {\n background: var(--color-darkmode);\n color: #fff;\n}\n\nhtml.dark-mode .gh-burger-box {\n color: #fff;\n}\n\nhtml.dark-mode .site-header-content {\n color: #fff;\n}\n\nhtml.dark-mode .post-card-image {\n background: var(--color-darkmode);\n}\n\nhtml.dark-mode :is(.post-card-tags, .post-card-meta, .article-tag a, .byline-meta-content) {\n color: color-mod(var(--color-secondary-text) l(-22%));\n}\n\nhtml.dark-mode .post-card-featured {\n color: #fff;\n}\n\nhtml.dark-mode .post-card-title {\n color: #fff;\n}\n\nhtml.dark-mode .post-card-excerpt {\n color: var(--color-secondary-text);\n}\n\nhtml.dark-mode .author-profile-location {\n color: #fff;\n}\n\nhtml.dark-mode .author-profile-social-link:hover {\n color: #fff;\n}\n\nhtml.dark-mode .article-title {\n color: #fff;\n}\n\nhtml.dark-mode .article-excerpt {\n color: var(--color-secondary-text);\n}\n\nhtml.dark-mode .post-full-image {\n background-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .author-avatar {\n border-color: var(--color-darkmode);\n background-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .author-profile-image {\n opacity: 1;\n}\n\nhtml.dark-mode .author-profile-image path {\n fill: var(--color-darkmode);\n}\n\nhtml.dark-mode .article-byline-meta .author-name a {\n color: #fff;\n}\n\nhtml.dark-mode .no-image .author-social-link a {\n color: rgba(255, 255, 255, 0.75);\n}\n\nhtml.dark-mode .gh-content > [id] {\n color: rgba(255, 255, 255, 0.9);\n}\n\nhtml.dark-mode .gh-content pre {\n background: color-mod(var(--color-darkgrey) l(-8%));\n}\n\nhtml.dark-mode .gh-content :not(pre) > code {\n background: color-mod(var(--color-darkgrey) l(+6%));\n border-color: color-mod(var(--color-darkmode) l(+8%));\n color: var(--color-wash);\n}\n\n:where(html.dark-mode) .gh-content a {\n color: #fff;\n}\n\nhtml.dark-mode .gh-content strong {\n color: #fff;\n}\n\nhtml.dark-mode .gh-content em {\n color: #fff;\n}\n\nhtml.dark-mode .gh-content code {\n color: #fff;\n background: #000;\n}\n\nhtml.dark-mode hr {\n border-top-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .gh-content hr:after {\n background: color-mod(var(--color-darkmode) l(+8%));\n box-shadow: var(--color-darkmode) 0 0 0 5px;\n}\n\nhtml.dark-mode figcaption {\n color: rgba(255, 255, 255, 0.6);\n}\n\nhtml.dark-mode .gh-content table:not(.gist table) td:first-child {\n background-image: linear-gradient(to right, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n}\n\nhtml.dark-mode .gh-content table:not(.gist table) td:last-child {\n background-image: linear-gradient(to left, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n}\n\nhtml.dark-mode .gh-content table:not(.gist table) th {\n color: rgba(255, 255, 255, 0.85);\n background-color: color-mod(var(--color-darkmode) l(+8%));\n}\n\nhtml.dark-mode .gh-content table:not(.gist table) th,\nhtml.dark-mode .gh-content table:not(.gist table) td {\n border: color-mod(var(--color-darkmode) l(+8%)) 1px solid;\n}\n\nhtml.dark-mode .gh-content input {\n color: color-mod(var(--color-midgrey) l(-30%));\n}\n\nhtml.dark-mode .site-archive-header .no-image {\n color: rgba(255, 255, 255, 0.9);\n background: var(--color-darkmode);\n}\n\nhtml.dark-mode .kg-header-card.kg-style-dark {\n background: color-mod(var(--color-darkgrey) l(-5%));\n}\n\nhtml.dark-mode .kg-header-card.kg-style-light {\n background: color-mod(var(--color-darkgrey) l(+5%));\n}\n\nhtml.dark-mode .kg-header-card h2.kg-header-card-header,\nhtml.dark-mode .kg-header-card h3.kg-header-card-subheader {\n color: #fff;\n}\n\nhtml.dark-mode .footer-cta-title {\n color: #fff;\n}\n\n@media (prefers-color-scheme: dark) {\n html.auto-color body {\n color: rgba(255, 255, 255, 0.75);\n background: var(--color-darkmode);\n }\n\n html.auto-color img {\n opacity: 0.9;\n }\n\n html.auto-color kbd {\n background: color-mod(var(--color-darkmode) l(+5%));\n }\n\n html.auto-color figcaption a {\n color: #fff;\n }\n\n html.auto-color .gh-head {\n background: var(--color-darkmode);\n color: #fff;\n }\n\n html.auto-color .gh-burger-box {\n color: #fff;\n }\n\n html.auto-color .site-header-content {\n color: #fff;\n }\n\n html.auto-color .post-card-image {\n background: var(--color-darkmode);\n }\n\n html.auto-color :is(.post-card-tags, .post-card-meta, .article-tag a, .byline-meta-content) {\n color: color-mod(var(--color-secondary-text) l(-22%));\n }\n\n html.auto-color .post-card-featured {\n color: #fff;\n }\n\n html.auto-color .post-card-title {\n color: #fff;\n }\n\n html.auto-color .post-card-excerpt {\n color: var(--color-secondary-text);\n }\n\n html.auto-color .author-profile-location {\n color: #fff;\n }\n\n html.auto-color .author-profile-social-link:hover {\n color: #fff;\n }\n\n html.auto-color .article-title {\n color: #fff;\n }\n\n html.auto-color .article-excerpt {\n color: var(--color-secondary-text);\n }\n\n html.auto-color .post-full-image {\n background-color: color-mod(var(--color-darkmode) l(+8%));\n }\n\n html.auto-color .author-avatar {\n border-color: var(--color-darkmode);\n background-color: color-mod(var(--color-darkmode) l(+8%));\n }\n\n html.auto-color .author-profile-image {\n opacity: 1;\n }\n\n html.auto-color .author-profile-image path {\n fill: var(--color-darkmode);\n }\n\n html.auto-color .article-byline-meta .author-name a {\n color: #fff;\n }\n\n html.auto-color .no-image .author-social-link a {\n color: rgba(255, 255, 255, 0.75);\n }\n\n html.auto-color .gh-content > [id] {\n color: rgba(255, 255, 255, 0.9);\n }\n\n html.auto-color .gh-content pre {\n background: color-mod(var(--color-darkgrey) l(-8%));\n }\n\n html.auto-color .gh-content :not(pre) > code {\n background: color-mod(var(--color-darkgrey) l(+6%));\n border-color: color-mod(var(--color-darkmode) l(+8%));\n color: var(--color-wash);\n }\n\n :where(html.auto-color) .gh-content a {\n color: #fff;\n }\n\n html.auto-color .gh-content strong {\n color: #fff;\n }\n\n html.auto-color .gh-content em {\n color: #fff;\n }\n\n html.auto-color .gh-content code {\n color: #fff;\n background: #000;\n }\n\n html.auto-color hr {\n border-top-color: color-mod(var(--color-darkmode) l(+8%));\n }\n\n html.auto-color .gh-content hr:after {\n background: color-mod(var(--color-darkmode) l(+8%));\n box-shadow: var(--color-darkmode) 0 0 0 5px;\n }\n\n html.auto-color figcaption {\n color: rgba(255, 255, 255, 0.6);\n }\n\n html.auto-color .gh-content table:not(.gist table) td:first-child {\n background-image: linear-gradient(to right, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n }\n\n html.auto-color .gh-content table:not(.gist table) td:last-child {\n background-image: linear-gradient(to left, var(--color-darkmode) 50%, color-mod(var(--color-darkmode) a(0%)) 100%);\n }\n\n html.auto-color .gh-content table:not(.gist table) th {\n color: rgba(255, 255, 255, 0.85);\n background-color: color-mod(var(--color-darkmode) l(+8%));\n }\n\n html.auto-color .gh-content table:not(.gist table) th,\n html.auto-color .gh-content table:not(.gist table) td {\n border: color-mod(var(--color-darkmode) l(+8%)) 1px solid;\n }\n\n html.auto-color .gh-content input {\n color: color-mod(var(--color-midgrey) l(-30%));\n }\n\n html.auto-color .site-archive-header .no-image {\n color: rgba(255, 255, 255, 0.9);\n background: var(--color-darkmode);\n }\n\n html.auto-color .kg-header-card.kg-style-dark {\n background: color-mod(var(--color-darkgrey) l(-5%));\n }\n\n html.auto-color .kg-header-card.kg-style-light {\n background: color-mod(var(--color-darkgrey) l(+5%));\n }\n\n html.auto-color .kg-header-card h2.kg-header-card-header,\n html.auto-color .kg-header-card h3.kg-header-card-subheader {\n color: #fff;\n }\n\n html.auto-color .footer-cta-title {\n color: #fff;\n }\n}\n\n/*\n\nHey! You reached the end.\n\nHope you enjoyed this CSS file, if you have any suggestions\nfor improvements that might be useful for everyone who uses\nthis theme, you can find the open source repository for it\nhere: https://github.com/tryghost/casper\n\nOr, if you've just scrolled all the way to the bottom of the\nfile to add some of your own styles. Well, you've come to\nthe right place. Onward!\n\n */\n"]} \ No newline at end of file diff --git a/assets/css/screen.css b/assets/css/screen.css index 0473b35..78cd06a 100644 --- a/assets/css/screen.css +++ b/assets/css/screen.css @@ -112,8 +112,8 @@ production stylesheet in assets/built/screen.css z-index: 100; display: flex; align-items: center; - padding-top: 6.4vmin; - padding-bottom: 6.4vmin; + padding-top: calc(19vmin + 44px); + padding-bottom: 19vmin; text-align: center; color: var(--color-darkgrey); } @@ -124,10 +124,6 @@ production stylesheet in assets/built/screen.css color: #fff; } -body:not(.has-cover) .site-header-content:not(.left-aligned) { - padding-bottom: max(4.8vmin, 24px); -} - .site-header-content.left-aligned { padding-bottom: 0; text-align: left; @@ -135,7 +131,7 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { .has-cover .site-header-content.left-aligned { align-items: flex-end; - padding-bottom: 6.4vmin; + padding-bottom: max(4vmin, 32px); } .site-header-content.no-content { @@ -189,15 +185,15 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { .site-description { display: inline-block; z-index: 10; - max-width: 560px; - font-size: 2.4rem; - font-weight: 500; - line-height: 1.4; + max-width: 960px; + font-size: 6rem; + font-weight: 700; + line-height: 1.1; } :is(.site-logo, .site-title) + .site-description { - margin-top: 8px; - font-size: 2.1rem; + margin-top: 16px; + font-size: 2.4rem; font-weight: 400; } @@ -210,7 +206,6 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { } .has-cover .site-description { - font-size: 3.2rem; letter-spacing: -0.005em; color: #fff; } @@ -223,6 +218,18 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { font-size: 2.2rem; } +@media (min-width: 992px) { + .is-head-stacked.has-cover .site-header-content { + padding-top: calc(19vmin + 120px); + } +} + +@media (max-width: 991px) { + .site-header-content { + padding-top: calc(19vmin + 32px); + } +} + @media (max-width: 767px) { .has-cover .site-header-content { min-height: 240px; @@ -237,7 +244,7 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { font-size: 3.4rem !important; } .site-description { - font-size: 1.9rem !important; + font-size: 2.8rem !important; } .site-logo + .site-description { margin-top: 12px !important; @@ -252,8 +259,7 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { /* ---------------------------------------------------------- */ .gh-head { - padding-top: min(24px, 3.6vmin); - padding-bottom: min(24px, 3.6vmin); + height: 88px; font-size: 1.6rem; line-height: 1.3em; background-color: #fff; @@ -280,11 +286,112 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { .gh-head-inner { display: grid; - grid-gap: 40px; - grid-template-columns: auto auto 1fr; + column-gap: 40px; + grid-template-columns: auto 1fr auto; grid-auto-flow: row dense; + align-items: center; + height: 100%; } +/* Header styles +/* ---------------------------------------------------------- */ + +.is-head-left-logo .gh-head-inner { + grid-template-columns: auto 1fr auto; +} + +.is-head-left-logo.home-template .gh-head-logo { + display: none; +} + +.is-head-left-logo.home-template .gh-head-menu { + margin-left: -40px; +} + +@media (min-width: 992px) { + .is-head-left-logo .gh-head-menu { + margin-right: 32px; + margin-left: 16px; + } +} + +.is-head-middle-logo .gh-head-inner { + grid-template-columns: 1fr auto 1fr; +} + +.is-head-middle-logo .gh-head-brand { + grid-column-start: 2; +} + +.is-head-middle-logo .gh-head-actions { + gap: 28px; +} + +@media (min-width: 992px) { + .is-head-middle-logo .gh-head-menu { + margin-right: 64px; + } +} + +.is-head-stacked .gh-head { + height: auto; +} + +.is-head-stacked .gh-head-inner { + grid-template-columns: 1fr auto 1fr; +} + +.is-head-stacked .gh-head-brand { + grid-row-start: 1; + grid-column-start: 2; +} + +@media (min-width: 992px) { + .is-head-stacked .gh-head-inner { + padding: 0; + } + + .is-head-stacked .gh-head-brand { + position: relative; + display: flex; + align-items: center; + height: 80px; + } + + .is-head-stacked .gh-head-menu { + grid-row-start: 2; + grid-column: 1 / 4; + justify-content: center; + height: 56px; + margin: 0 48px; + } + + .is-head-stacked .gh-head-menu::before, + .is-head-stacked .gh-head-menu::after { + position: absolute; + top: 80px; + left: 0; + width: 100%; + height: 1px; + content: ""; + background-color: var(--color-lightgrey); + } + + .is-head-stacked.has-cover .gh-head-menu::before, + .is-head-stacked.has-cover .gh-head-menu::after { + background-color: rgba(255, 255, 255, 0.2); + } + + .is-head-stacked .gh-head-menu::after { + top: 136px; + } + + .is-head-stacked .gh-head-actions { + grid-row-start: 1; + grid-column: 1 / 4; + justify-content: space-between; + } +} /* Brand /* ---------------------------------------------------------- */ @@ -293,7 +400,6 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { display: flex; align-items: center; height: 40px; - max-width: 400px; word-break: break-all; } @@ -303,6 +409,7 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { font-size: 2.6rem; letter-spacing: -0.02em; color: inherit; + white-space: nowrap; } .gh-head-logo.no-image { @@ -313,17 +420,8 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { color: #fff; } -.no-logo .gh-head-logo { - display: none; -} - .gh-head-logo img { - max-height: 26px; -} - -.gh-head-brand-wrapper { - display: flex; - align-items: center; + max-height: 40px; } @@ -337,14 +435,10 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { font-weight: 500; } -.no-logo .gh-head-menu { - margin-left: -40px; -} - .gh-head-menu .nav { display: inline-flex; - flex-wrap: wrap; align-items: center; + flex-wrap: wrap; gap: 32px; list-style: none; margin: 0; @@ -366,6 +460,80 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { opacity: 0.9; } +.gh-head-menu .nav-more-toggle { + position: relative; + width: 30px; + height: 30px; + margin: 0 -6px; + padding: 0; + font-size: inherit; + background-color: transparent; + text-transform: inherit; +} + +.gh-head-menu .nav-more-toggle svg { + width: 24px; + height: 24px; +} + +@media (min-width: 992px) { + body:not(.is-dropdown-loaded) .gh-head-menu .nav > li { + opacity: 0; + } +} + + +/* Dropdown +/* ---------------------------------------------------------- */ + +.gh-dropdown { + position: absolute; + top: 100%; + right: -16px; + z-index: 90; + width: 200px; + padding: 12px 0; + margin-top: 24px; + opacity: 0; + visibility: hidden; + text-align: left; + background-color: #fff; + border-radius: 5px; + box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.04), 0 7px 20px -5px rgba(0, 0, 0, 0.15); + transform: translate3d(0, 6px, 0); + transition: opacity 0.3s, transform 0.2s; +} + +.is-head-middle-logo .gh-dropdown { + right: auto; + left: -24px; +} + +.is-dropdown-mega .gh-dropdown { + display: grid; + grid-template-columns: 1fr 1fr; + grid-auto-flow: column; + column-gap: 40px; + width: auto; + padding: 20px 32px; +} + +.is-dropdown-open .gh-dropdown { + opacity: 1; + visibility: visible; + transform: translateY(0); +} + +.gh-head-menu .gh-dropdown li a { + display: block; + padding: 6px 20px; + color: #15171a; +} + +.is-dropdown-mega .gh-dropdown li a { + padding: 8px 0; +} + /* Secondary Navigation /* ---------------------------------------------------------- */ @@ -401,13 +569,14 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { .gh-head-button { display: inline-flex; + justify-content: center; align-items: center; - padding: 8px 16px; - height: 40px; + padding: 8px 20px; + height: 44px; font-weight: 600; letter-spacing: -0.005em; - font-size: 1.5rem; - border-radius: 6px; + font-size: 1.6rem; + border-radius: 48px; color: #fff; background: var(--ghost-accent-color); } @@ -417,38 +586,6 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { background: #fff; } -/* Search -/* ---------------------------------------------------------- */ - -.gh-search { - display: inline-flex; - align-items: center; - justify-content: center; - width: 32px; - height: 32px; - padding: 0; - cursor: pointer; - background-color: transparent; - border: 0; - outline: none; -} - -.gh-search:hover { - opacity: 0.9; -} - -@media (max-width: 991px) { - .gh-head-actions .gh-search { - display: none; - } -} - -@media (min-width: 992px) { - .gh-head-brand .gh-search { - display: none; - } -} - /* Search /* ---------------------------------------------------------- */ @@ -475,7 +612,7 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { } .gh-head-actions .gh-search { - margin-right: -10px; + margin-right: -4px; } @media (max-width: 991px) { @@ -497,86 +634,48 @@ body:not(.has-cover) .site-header-content:not(.left-aligned) { .gh-burger { position: relative; display: none; + width: 30px; + height: 30px; + padding: 0; + margin-right: -3px; cursor: pointer; + background-color: transparent; + border: 0; + appearance: none; } -.gh-burger-box { - position: relative; - display: flex; - align-items: center; - justify-content: center; - width: 33px; - height: 33px; -} - -.has-cover .gh-burger-box { - color: #fff; -} - -.gh-burger-inner { - width: 100%; - height: 100%; -} - -.gh-burger-box::before { +.gh-burger::before, +.gh-burger::after { position: absolute; - display: block; - top: 0; - left: 0; - bottom: 0; - margin: auto; - content: ''; - width: 100%; + left: 3px; + width: 24px; height: 1px; - background: currentcolor; - transition: transform 300ms cubic-bezier(.2,.6,.3,1), width 300ms cubic-bezier(.2,.6,.3,1); - will-change: transform, width; + content: ""; + background-color: var(--color-darkgrey); + transition: all 0.2s cubic-bezier(0.04, 0.04, 0.12, 0.96) 0.1008s; } -.gh-burger-inner::before, -.gh-burger-inner::after { - position: absolute; - display: block; - top: 0; - left: 0; - bottom: 0; - margin: auto; - content: ''; - width: 100%; - height: 1px; - background: currentcolor; - transition: transform 250ms cubic-bezier(.2,.7,.3,1), width 250ms cubic-bezier(.2,.7,.3,1); - will-change: transform, width; +.has-cover .gh-burger::before, +.has-cover .gh-burger::after { + background-color: #fff; } -.gh-burger-inner::before { - transform: translatey(-6px); -} -.gh-burger-inner::after { - transform: translatey(6px); +.gh-burger::before { + top: 11px; } -body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::before { - transform: translatey(-8px); -} -body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::after { - transform: translatey(8px); +.gh-burger::after { + bottom: 11px; } -.gh-head-open .gh-burger-box::before { - width: 0; - transform: translatex(19px); - transition: transform 200ms cubic-bezier(.2,.7,.3,1), width 200ms cubic-bezier(.2,.7,.3,1); +.gh-head-open .gh-burger::before { + top: 15px; + transform: rotate(45deg); } -.gh-head-open .gh-burger-inner::before { - width: 26px; - transform: translatex(6px) rotate(135deg); -} - -.gh-head-open .gh-burger-inner::after { - width: 26px; - transform: translatex(6px) rotate(-135deg); +.gh-head-open .gh-burger::after { + bottom: 14px; + transform: rotate(-45deg); } @@ -585,91 +684,129 @@ body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::after { /* IDs needed to ensure sufficient specificity */ @media (max-width: 991px) { - .gh-burger { - display: inline-block; - } #gh-head { - overflow: hidden; + height: 64px; } + #gh-head .gh-head-inner { - height: 100%; + grid-template-rows: auto 1fr auto; grid-template-columns: 1fr; + gap: 48px; } + #gh-head .gh-head-brand { - position: relative; - z-index: 10; - grid-column-start: auto; - max-width: none; - display: flex; + display: grid; + grid-template-columns: 1fr auto auto; + grid-column-start: 1; align-items: center; - justify-content: space-between; - user-select: none; + height: 64px; } - .no-logo #gh-head .gh-head-brand { - justify-content: flex-end; + + #gh-head .gh-head-logo { + font-size: 2.2rem; } - #gh-head .gh-head-menu { - align-self: center; - display: flex; - flex-direction: column; - align-items: center; - text-align: center; - margin: 0 0 10vh 0; - font-weight: 300; - font-size: 3.6rem; - line-height: 1.1em; + + #gh-head .gh-head-brand .gh-search { + margin-left: -6px; } - #gh-head .gh-head-menu .nav { - display: flex; - flex-direction: column; - align-items: center; - gap: 16px; - font-weight: 500; + + #gh-head .gh-burger { + display: block; } + + #gh-head .gh-head-menu, #gh-head .gh-head-actions { - flex-direction: column-reverse; + position: fixed; justify-content: center; - padding: 20px 0 32px; - text-align: left; + visibility: hidden; + opacity: 0; } - /* Hide collapsed content */ - #gh-head .gh-head-actions, + #gh-head .gh-head-menu { - display: none; + margin: 0; + transition: none; + transform: translateY(0); } - /* Open the menu */ - .gh-head-open { - overflow: hidden; - height: 100vh; + + #gh-head .nav { + gap: 16px; + align-items: center; + line-height: 1.4; } + + #gh-head .nav a { + font-size: 2.6rem; + font-weight: 600; + text-transform: none; + } + + #gh-head .nav li { + opacity: 0; + transform: translateY(-4px); + } + + #gh-head .gh-head-button { + width: 100%; + font-size: 1.8rem; + text-transform: none; + opacity: 0; + transform: translateY(8px); + } + .gh-head-open #gh-head { position: fixed; - top: 0; + right: 0; + left: 0; + z-index: 3999999; + height: 100vh; + overflow-y: scroll; + -webkit-overflow-scrolling: touch; + } + + .gh-head-open.has-cover #gh-head, + .gh-head-open.has-cover #gh-head .gh-head-actions { + background-color: var(--ghost-accent-color); + } + + .gh-head-open #gh-head .gh-head-menu, + .gh-head-open #gh-head .gh-head-actions { + position: static; + visibility: visible; + opacity: 1; + } + + .gh-head-open #gh-head .nav { + display: flex; + flex-direction: column; + } + + .gh-head-open #gh-head .nav li { + opacity: 1; + transition: transform 0.2s, opacity 0.2s; + transform: translateY(0); + } + + .gh-head-open #gh-head .gh-head-actions { + position: sticky; right: 0; bottom: 0; left: 0; - z-index: 3999999; - overflow-y: scroll; + display: inline-flex; + flex-direction: column; + gap: 12px; + align-items: center; + padding: max(4vmin, 20px) 0; + background-color: #fff; } - .gh-head-open #gh-head .gh-head-inner { - grid-template-rows: auto 1fr auto; - } - .gh-head-open #gh-head .gh-head-actions, - .gh-head-open #gh-head .gh-head-menu { - display: flex; - } -} -@media (max-width: 600px) { - #gh-head .gh-head-menu { - font-size: 6vmin; + .gh-head-open #gh-head .gh-head-button { + opacity: 1; + transition: transform 0.4s, opacity 0.4s; + transition-delay: 0.2s; + transform: translateY(0); } } -.has-cover.gh-head-open .gh-head { - background: var(--ghost-accent-color); -} - /* 6. Post Feed /* ---------------------------------------------------------- */ @@ -810,6 +947,7 @@ body:not(.gh-head-open) .gh-burger:hover .gh-burger-inner::after { margin: 0; font-size: 2.6rem; font-weight: 800; + line-height: 1.2; } .post-card-content-link:hover .post-card-title { @@ -962,7 +1100,7 @@ make sure this only happens on large viewports / desktop-ish devices. .post-card-large .post-card-title { margin-top: 0; font-size: 4.4rem; - line-height: 1; + line-height: 1.05; } .post-card-large .post-card-excerpt { @@ -1042,7 +1180,7 @@ make sure this only happens on large viewports / desktop-ish devices. margin-bottom: 0; font-size: clamp(3.2rem, 5vw, 5.2rem); font-weight: 800; - line-height: 1; + line-height: 1.05; color: var(--color-darkgrey); } @@ -1719,7 +1857,7 @@ iframe.instagram-media + script + :not([id]) { } @media (min-width: 1001px) { - .author-template .post-card-large .post-card-content { + .author-template .post-card-large .post-card-content:only-child { grid-column: span 2; max-width: 640px; } @@ -1739,7 +1877,7 @@ iframe.instagram-media + script + :not([id]) { } @media (min-width: 1001px) { - .tag-template .post-card-large .post-card-content { + .tag-template .post-card-large .post-card-content:only-child { grid-column: span 2; max-width: 640px; } diff --git a/assets/js/dropdown.js b/assets/js/dropdown.js new file mode 100644 index 0000000..3be3f63 --- /dev/null +++ b/assets/js/dropdown.js @@ -0,0 +1,81 @@ +(function () { + const mediaQuery = window.matchMedia('(max-width: 991px)'); + + const menu = document.querySelector('.gh-head-menu'); + const nav = menu.querySelector('.nav'); + if (!nav) return; + + const logo = document.querySelector('.gh-head-logo'); + const navHTML = nav.innerHTML; + + if (mediaQuery.matches) { + const items = nav.querySelectorAll('li'); + items.forEach(function (item, index) { + item.style.transitionDelay = 0.03 * (index + 1) + 's'; + }); + } + + const makeDropdown = function () { + if (mediaQuery.matches) return; + const submenuItems = []; + + while ((nav.offsetWidth + 64) > menu.offsetWidth) { + if (nav.lastElementChild) { + submenuItems.unshift(nav.lastElementChild); + nav.lastElementChild.remove(); + } else { + return; + } + } + + if (!submenuItems.length) { + document.body.classList.add('is-dropdown-loaded'); + return; + } + + const toggle = document.createElement('button'); + toggle.setAttribute('class', 'nav-more-toggle'); + toggle.setAttribute('aria-label', 'More'); + toggle.innerHTML = ''; + + const wrapper = document.createElement('div'); + wrapper.setAttribute('class', 'gh-dropdown'); + + if (submenuItems.length >= 10) { + document.body.classList.add('is-dropdown-mega'); + wrapper.style.gridTemplateRows = 'repeat(' + Math.ceil(submenuItems.length / 2) + ', 1fr)'; + } else { + document.body.classList.remove('is-dropdown-mega'); + } + + submenuItems.forEach(function (child) { + wrapper.appendChild(child); + }); + + toggle.appendChild(wrapper); + nav.appendChild(toggle); + + document.body.classList.add('is-dropdown-loaded'); + + toggle.addEventListener('click', function () { + document.body.classList.toggle('is-dropdown-open'); + }); + + window.addEventListener('click', function (e) { + if (!toggle.contains(e.target) && document.body.classList.contains('is-dropdown-open')) { + document.body.classList.remove('is-dropdown-open'); + } + }); + } + + imagesLoaded(logo, function () { + makeDropdown(); + }); + + window.addEventListener('resize', function () { + setTimeout(function () { + nav.innerHTML = navHTML; + makeDropdown(); + }, 1); + }); +})(); diff --git a/assets/js/lib/imagesloaded.pkgd.min.js b/assets/js/lib/imagesloaded.pkgd.min.js new file mode 100644 index 0000000..e443a77 --- /dev/null +++ b/assets/js/lib/imagesloaded.pkgd.min.js @@ -0,0 +1,7 @@ +/*! + * imagesLoaded PACKAGED v4.1.4 + * JavaScript is all like "You images are done yet or what?" + * MIT License + */ + +!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){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return n.indexOf(t)==-1&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return n!=-1&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){i=i.slice(0),t=t||[];for(var n=this._onceEvents&&this._onceEvents[e],o=0;o - +
- +
- -
- {{#if @site.facebook}} - - {{/if}} - {{#if @site.twitter}} - - {{/if}} -
- {{#if @site.members_enabled}} + {{#unless @site.members_enabled}} + {{^match @custom.header_style "Stacked"}} + + {{/match}} + {{else}} + {{#unless @member}} - Subscribe + {{#unless @site.members_invite_only}} + Subscribe + {{else}} + Login + {{/unless}} {{else}} Account {{/unless}} - {{/if}} + {{/unless}}
- +
diff --git a/gulpfile.js b/gulpfile.js index b5c8e03..3a8f9a3 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -90,8 +90,9 @@ function zipper(done) { } const cssWatcher = () => watch('assets/css/**', css); +const jsWatcher = () => watch('assets/js/**', js); const hbsWatcher = () => watch(['*.hbs', 'partials/**/*.hbs'], hbs); -const watcher = parallel(cssWatcher, hbsWatcher); +const watcher = parallel(cssWatcher, jsWatcher, hbsWatcher); const build = series(css, js); exports.build = build; diff --git a/index.hbs b/index.hbs index 037d8b3..48b3665 100644 --- a/index.hbs +++ b/index.hbs @@ -22,13 +22,13 @@ into the {body} of the default.hbs template --}} {{#match @custom.header_style "!=" "Hidden"}}
- {{#unless @custom.show_logo_in_navigation}} + {{#match @custom.navigation_layout "Logo on cover"}} {{#if @site.logo}} {{else}}

{{@site.title}}

{{/if}} - {{/unless}} + {{/match}} {{#if @site.description}}

{{@site.description}}

{{/if}} diff --git a/package.json b/package.json index 504c447..9ed3a2c 100644 --- a/package.json +++ b/package.json @@ -89,6 +89,11 @@ }, "card_assets": true, "custom": { + "navigation_layout": { + "type": "select", + "options": ["Logo on cover", "Logo in the middle", "Stacked"], + "default": "Logo on cover" + }, "title_font": { "type": "select", "options": [ @@ -120,11 +125,6 @@ "default": "Center aligned", "group": "homepage" }, - "show_logo_in_navigation": { - "type": "boolean", - "default": false, - "group": "homepage" - }, "feed_layout": { "type": "select", "options": [