@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;1,400&display=swap");

:root {
    /* Adjust this to scale only font sizes */
    /* 1.0 = Default | 1.1 = 10% Larger | 0.85 = 15% Smaller */
    --global-font-scale: 0.95;

    /* Scalable Font Sizes */
    --font-size-scale-0: calc(12px * var(--global-font-scale));
    --font-size-scale-1: calc(14px * var(--global-font-scale));
    --font-size-scale-2: calc(16px * var(--global-font-scale));
    --font-size-scale-3: calc(18px * var(--global-font-scale));
    --font-size-scale-4: calc(20px * var(--global-font-scale));
    --font-size-scale-5: calc(24px * var(--global-font-scale));
    --font-size-scale-6: calc(28px * var(--global-font-scale));
    --font-size-scale-7: calc(32px * var(--global-font-scale));
    --font-size-scale-8: calc(40px * var(--global-font-scale));
    --font-size-scale-9: calc(48px * var(--global-font-scale));
    --font-size-scale-10: calc(72px * var(--global-font-scale));
    --font-size-scale-body-copy: calc(20px * var(--global-font-scale));

    --gh-font-heading: 'Times New Roman', Times, sans-serif !important;
    --gh-font-body: 'Times New Roman', sans-serif !important;
    --font-family-sansSerif: 'Times New Roman', sans-serif !important;

    --font-family-playfair: 'Playfair Display', serif !important;
}

body {
    font-family: 'Times New Roman', sans-serif !important;
}

.u-font-family-sansSerif {
    font-family: 'Times New Roman', sans-serif !important;
}


/*
Header Bottom
*/
header.c-header {
    .c-header__top {
        .c-header__top-center {

            .c-logo__img {
                max-height: 18px;
            }

            @media (min-width: 46.25em) {
                .c-logo__img {
                    max-height: 26px;
                }
            }
        }
        
    }
    .c-header__bottom {
        .c-nav {
            &.c-nav--main {
                overflow-x: scroll;

                @media (min-width: 61.25em) {
                    overflow-x: inherit;
                }
            }

            /* li {
                &.c-nav__item--has-dropdown {
                    position: relative;

                    .c-nav__dropdown {
                        position: absolute;
                        top: 100%;
                        left: 0;
                        background: #fff;
                        box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
                        z-index: 100;
                        min-width: 200px;
                        display: none;

                        .c-nav__item {
                            padding-left: 0;
                            
                            &:before {
                                border-width: 0;
                            }

                            &:not(:last-child) {
                                margin-bottom: 10px;
                            }
                        }
                    }

                    &:hover,
                    &:focus,
                    &:focus-within {
                        .c-nav__dropdown {
                            display: block !important;
                            padding: 15px 15px;
                            border-radius: 10px;
                            background: var(--color-background-secondary);
                        }
                    }
                }
            } 
            */
            
            li {

                .c-nav__link {
                    display: block;
                }

                @media (min-width: 61.25em) {
                    &.c-nav__item--has-dropdown {
                        position: relative;

                        &:after {
                            content: "⌄";
                            position: absolute;
                            right: -14px;
                            top: 50%;
                            font-size: 18px;
                            transform: translateY(-15px);
                            padding-right: 1px;
                            font-weight: 400;
                        }

                        .c-nav__dropdown {
                            position: absolute;
                            top: 100%;
                            left: 0;
                            z-index: 100;
                            min-width: 200px;
                            display: none;
                            background: var(--color-background-primary);
                            box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
                            padding: 15px;
                            border-radius: 10px;

                            .c-nav__item--primary {
                                padding-left: 0;
                                display: block;
                                font-weight: 400;
                                letter-spacing: 1.5px;

                                &:before {
                                    border-width: 0;
                                }

                                &:not(:last-child) {
                                    margin-bottom: 10px;
                                }
                            }
                        }

                        &:hover,
                        &:focus,
                        &:focus-within {
                            .c-nav__dropdown {
                                display: block !important;
                            }
                        }
                    }
                }

                @media (max-width: 61.24em) {
                    &.c-nav__item--primary {
                        margin-bottom: 5px;
                    }
                }
            }
        
        }
    }
}

/*
Home Sections: Editors Picks
*/
.c-section-heading__title span {
    font-style: italic;
    font-family: var(--font-family-playfair);
    font-weight: 400;
    margin-left: 15px;
    color: var(--color-text-secondary);
    font-size: 20px;
    letter-spacing: -1px;
}

/*
Post Template
*/
.post-template {
    .c-topper__content {
        a {
            font-size: 13px;
        }

        time {
            font-size: 13px;
        }

        .c-topper__reading-time {
            font-size: 13px;
        }
    }
}
section.post-author.c-author-box {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    margin-top: 80px;

    .c-author-box__avatar {
        img {
            border-radius: 100%;
            object-fit: cover;
            width: 120px;
            height: 120px;
            object-position: top;
        }
    }

    .c-author-box__content {
        h4.c-author-box__name {
            font-size: 24px;
            font-weight: 500;
            margin-bottom: 15px;
        }

        p.c-author-box__bio {
            font-size: 14px;
        }
    }
        
}

/* News Letter */
.newsletter-form {
    text-align: center;
    margin-top: 130px;

    h2 {
        font-size: 26px;
        font-weight: 600;
        line-height: 1.5;
        margin-bottom: 10px;
    }

    p {
        font-size: 18px;
        line-height: 1.5;
        margin-bottom: 30px;
    }

    form {
        .c-form-group {
            flex-direction: column;
            @media (min-width: 46.25em) {
                flex-direction: row;
            }

            input {
                border-width: 0;
                border-bottom: 2px solid var(--color-border-secondary);
                outline-offset: 0;
                outline: 0;
                padding: 15px 10px;
        
                &:focus-within {
                    border-color: var(--color-border-primary);
                }
            }
        
            button {
                background-color: transparent;
                border: 1px solid var(--color-border-primary);
                /* text-transform: uppercase; */
                color: var(--color-text-primary);
                font-weight: 500;
                padding: 10px 20px;

                &:hover {
                    color: var(--color-text-button-hover);
                    background-color: var(--color-background-button-hover);
                }

                @media (max-width: 46.24em) {
                    width: 100%;
                }
            }
        }
    }
}

/*=======================
Membership only content box
======================*/
.locked-content-signupbox a.c-btn {
    background: var(--color-background-primary);
    color: var(--color-border-primary);
    border: 1px solid var(--color-border-primary);

    &:hover {
        background: var(--color-background-button-hover);
        color: var(--color-text-button-hover);
    }
}


/*
Custom Contact Template
*/
body.contact-page {
    header.c-header {
        margin-bottom: 0;
    }

    article.custom-contact.o-grid {
        /* max-width: var(--grid-width); */
        max-width: 100%;
        display: flex;
        flex-direction: column;
        gap: 40px;
        padding: 0;
        margin: 0;

        @media (min-width: 61.25em) {
            flex-direction: row;
        }

        &>div {
            flex: 1 1 calc(50% - (40px / 2));
            min-width: 0;
        }

        .featured-image {
            img {
                max-width: 100%;
            }
        }

        .c-content {
            padding: 0 var(--grid-margin) 40px;

            @media (min-width: 61.25em) {
                padding: 0 var(--grid-margin);
            }
            
            form#contactForm {
                display: flex;
                flex-direction: column;
                gap: 25px;
                margin-top: 60px;

                .c-contact-form__group {
                    label {
                        font-size: 16px;
                        font-weight: 600;
                        line-height: 2;

                        span {
                            color: var(--color-text-secondary);
                            font-weight: 400;
                        }
                    }

                    input {

                    }

                    input, 
                    textarea {
                        border-width: 0;
                        border-bottom: 1px solid var(--color-border-secondary);
                        outline-offset: 0;
                        outline: 0;
                        padding: 15px 10px;
                        max-width: 650px;

                        &:focus-within {
                            border-color: var(--color-border-primary);
                        }
                    }

                }

                button {
                    background-color: transparent;
                    border: 1px solid var(--color-border-primary);
                    /* text-transform: uppercase; */
                    color: var(--color-text-primary);
                    font-weight: 500;

                    &:hover {
                        color: var(--color-text-button-hover);
                        background-color: var(--color-background-button-hover);
                    }
                }
            }
        }

        
    }

    footer.c-footer {
        margin-top: 0;
    }
}

/*
Footer
*/
footer.c-footer {
    /* text-transform: lowercase; */
    /* padding-top: 0; */
    padding-bottom: 0;
    overflow: hidden;
    border-top: 1px solid var(--color-border-secondary);

    .footer-one {
        position: relative;

        &::before {
            content: " ";
            position: absolute;
            top: -22px;
            width: 100%;
            height: 80px;
            background-size: contain;
            z-index: -1;
            background-repeat: no-repeat;
            background-position: center center;
        
            @media (min-width: 61.25em) {
                top: -20px;
            }
        }
    }
}

.home-template {
    footer.c-footer {
        margin-top: 0;
    }
}

/*
Footer top
*/
.footer-top {
    .tagline {
        font-family: var(--font-family-playfair);
        font-style: italic;
        font-weight: 400;
        font-size: 20px;
        letter-spacing: -1px;
        color: var(--color-text-secondary);
        margin-left: -9px;

        @media (min-width: 61.25em) {
            margin-left: 0;
        }
    }
}

/*
Footer Middle
*/
.footer-middle {
    display: flex;
    justify-content: start;
    gap: 20px;
    flex-wrap: wrap;
    margin: 40px 0;
    max-width: 570px;
    width: 100%;
    
    @media (min-width: 61.25em) {
        justify-content: center;
        gap: 45px;
        flex-wrap: nowrap;
        margin-left: 0;
    }

    &>* {
        flex: 1;

        @media (min-width: 61.25em) {
            flex: 1;
        }
    }


    h3.menu-title {
        font-family: var(--gh-font-heading);
        font-weight: 600;
        margin-bottom: 16px;
        text-transform: uppercase;
        font-size: 18px;
        letter-spacing: 1.5px;
    }

    ul {
        list-style: none;
        margin: 0;
        padding: 0;
        font-family: var(--font-family-sansSerif);

        li {
            margin-bottom: 16px;
            font-size: inherit;
            line-height: inherit;
            font-weight: normal;
            text-transform: inherit;
            letter-spacing: inherit;
            white-space: nowrap;

            &:not(:first-child) {
                padding-left: 0;

                &:before {
                    border-left: 0;
                }
            }
            
            a {
                color: var(--color-text-secondary);
                font-size: 16px;
                font-weight: 400;

                &:hover {
                    text-decoration: underline;
                }
            }
        }
    }


}

/*
Footer Bottom
*/
.footer-bottom {
    padding: 24px 0;
    border-top: 1px solid var(--color-border-secondary);
    color: var(--color-text-secondary);

    .c-footer__content>*+* {
        margin: 0;
    }
    
    .c-footer__content {
        display: flex;
        justify-content: center;
        flex-direction: column;
        gap: 15px;
        font-size: 16px;
        line-height: 1.5;
        text-transform: uppercase;
        align-items: center;

        @media (min-width: 61.25em) {
            flex-direction: row;
            justify-content: space-between;
            gap: 40px;
            align-items: start;
        }

        .copyright-text {
            text-align: center;
            @media (min-width: 61.25em) {
                text-align: left;
            }

            #dev-credit {
                font-style: italic;
                color: var(--color-text-primary);
            }
        }

        .legal-nav {
            list-style: none;
            margin: 0 auto;
            padding: 0;
            display: flex;
            gap:16px;
            align-items: center;

            @media (min-width: 61.25em) {
                margin: 0;
            }

            li {
                line-height: 16px;

                &:first-child {
                    border-right: 1px solid var(--color-border-secondary);
                    padding-right: 16px;
                }

                a {
                    /* color: ; */
                    font-size: 15px;
        
                    &:hover {
                        text-decoration: underline;
                    }
                }
            }
        }
    }
}

/*===================
Ghost Branding
Remove
===============*/
.gh-portal-popup-wrapper {
    .gh-portal-powered {
        visibility: hidden;
        opacity: 0;

        a {
            display: none;
        }
    }
}


/*===================
Migration
===============*/
/* Playfair Display for italic/em text to match Squarespace */
h1 em,
h2 em,
h3 em,
h4 em,
.c-hero__description em,
.c-content em,
.kg-header-card-subheader {
    font-family: var(--font-family-playfair);
    font-style: italic !important;
    letter-spacing: -1px !important;
}

/* Section taglines in Playfair Display */
.c-section-heading__title span,
.c-section-heading__tagline {
    font-family: var(--font-family-playfair);
    font-style: italic !important;
    font-weight: 400 !important;
    letter-spacing: -1px !important;
}