:root {
    --color-white: #fff;
    --color-lighter-gray: rgb(0 0 0 / 0.05);
    --color-light-gray: #e6e6e6;
    --color-mid-gray: #ccc;
    --color-dark-gray: #444;
    --color-darker-gray: #15171a;
    --color-black: #000;
    /* --color-primary-text: var(--color-darker-gray); */
    --color-primary-text: #120b14;
    --color-secondary-text: #919191;
    --color-border: rgb(0 0 0 / 0.08);
    --color-dark-border: rgb(0 0 0 / 0.55);
    --font-sans: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    --font-serif: "EB Garamond", Georgia, Times, serif;
    --font-serif-alt: Georgia, Times, serif;
    --font-mono: "JetBrains Mono", Menlo, Consolas, Monaco, "Liberation Mono", "Lucida Console", monospace;
    --container-width: 1320px;
    --container-gap: clamp(24px, 1.7032rem + 1.9355vw, 48px);
    --grid-gap: 42px;   

    /* Custom Variables */
    --content-font-size: 1.7rem;
    --color-titles: #120b14;
    --content-width: 850px;
    --small-border-radius: 4px;
    --medium-border-radius: 8px;
    --large-border-radius: 12px;
}

/* Global Styles */

body{
    letter-spacing: 0.1px;
    line-height: 1.8;
}
h1, h2, h3, h4, h5, h6{
    letter-spacing: -0.2px;
    line-height: 1.5;
    color: var(--color-titles);
}
.clear{
    clear: both;
    width: 100%;
    height: 1px;
}
.gh-form{
    border-radius: var(--medium-border-radius) !important;
}
.gh-form-input{
    border-radius: var(--medium-border-radius) !important;
}
.gh-button{
    transition: all 300ms ease;
    border-radius: var(--small-border-radius) !important;
}
.gh-button:hover{
    background: var(--color-darker-gray);
}
.gh-navigation{
    font-size: 1.6rem;
    letter-spacing: -0.1px;
}
.gh-navigation .nav .nav-current{
    font-weight: 700;
    color: var(--ghost-accent-color);
}
.gh-dropdown{
    font-size: 1.5rem;
}
/* .gh-canvas, .kg-width-full.kg-content-wide{
    --main: min(var(--content-width,720px),100% - var(--container-gap) * 2);
} */

/* Home Header */

.gh-header.is-classic .gh-header-title{
    line-height: 1.2;
}

/* Post Lists */

.gh-container-title{
    font-size: 2rem;
    letter-spacing: 0;
    
}
.gh-card-excerpt{
    font-size: 1.5rem;
    line-height: 1.9;
}

.gh-container.is-list .gh-card-title{
    --factor: 1.3;
    /* transition: all 300ms ease; */
}
.gh-card-link .gh-card-title{
    display: inline;
    position: relative;
    padding-bottom: 4px;
    background-image: linear-gradient(to right, var(--color-titles) 0%, var(--color-titles) 100%);
    background-size: 0% 4%;
    background-repeat: no-repeat;
    background-position: 100% 85%;
    transition: background-size 400ms ease;
    line-height: 1.45;
}
.gh-card-link:hover .gh-card-title{
    opacity: 1;
    background-size: 100% 4%;
    background-position: 0% 85%;
}
.gh-container.is-list .gh-card-excerpt{
    margin-top: 12px;
}
.gh-container.is-list .gh-card-image{
    width: 300px;
    border-radius: var(--medium-border-radius);
    overflow: hidden;
    box-shadow: 0 4px 12px rgb(0 0 0 / 0.1);
}
.gh-card-image img{
    border-radius: var(--medium-border-radius);
    box-shadow: 0 4px 12px rgb(0 0 0 / 0.1);    
}

/* Post Content */

.gh-article-header{
    text-align: center;
}
.gh-article-excerpt{
    margin: 25px auto 0;
    line-height: 1.8;
}
.gh-article-meta{
    justify-content: center;
    text-align: left;
    margin-top: 25px;
}
.gh-article-image img{
    border-radius: var(--large-border-radius);
    box-shadow: 0 4px 16px rgb(0 0 0 / 0.1);
}
.gh-content{
    letter-spacing: 0.1px;
}
.gh-content img{
    border-radius: var(--medium-border-radius);
    box-shadow: 0 4px 16px rgb(0 0 0 / 0.1);
}
.gh-content>[id]+p{
    margin-top: calc(28px*var(--content-spacing-factor, 1));
}
.gh-content :is(ul,ol){
    padding-left: 35px;
}
.kg-gallery-card, .kg-image-card{
    padding-left: 7%;
    padding-right: 7%;
}
.kg-image-card img{
    transition: all 300ms ease;
}
.kg-image-card:hover img{
    transform: translateY(-2px);
    box-shadow: rgba(0, 0, 0, 0.1) 0px 3px 7px;
}

/* Page Macro */

.page-macro .gh-article-title{
    text-align: center;
}
.page-macro .gh-container{
    margin-top: 12px;
}

/* Pages */

.page-template .gh-article-header{
    margin: clamp(40px,3.64vw + 25.45px,72px) 0 40px;
}
