#email,
#phone,
#address {
    display: none;
}

.kg-image-card {
    max-width: 100%;
    width: auto;
}

.kg-image-card img {
    width: auto;
    max-width: 100%;
}

.kg-image-card.kg-width-wide img {
    width: 100%;
}

.kg-image-card.kg-width-full figcaption {
    text-align: center;
}

.kg-width-wide {
    width: 100%;
    max-width: 100%;
}

.post-content-inner > * {
    margin-bottom: max(18px, calc(1.25vw * var(--scale)));
}

.post-content-inner-wrapper {
    margin-top: max(56px, calc(3.89vw * var(--scale)));
    width: 100%;
}

.post-content-inner {
    display: flex;
    flex-direction: column;
    padding-bottom: max(24px, calc(1.67vw * var(--scale)));
}

.post-content {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.post-content > * {
    letter-spacing: 0em;
    font-family: var(--font2);
}

.post-content * {
    text-transform: none !important;
}

.post-content h1,
.post-content h2:not(.subtitle),
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6,
.post-content blockquote {
    font-family: var(--font1);
    line-height: calc(100% * var(--heading-font-line-height-scale));
}

.post-content figure {
    overflow: initial;
}

strong,
strong * {
    font-weight: 700;
}

em {
    font-style: italic;
}

hr {
    height: 1px;
    width: 100%;
    background-color: var(--text-color);
    border: 0;
    margin: 0;
    padding: 0;
}

.right-aligned-post-content {
    margin-right: 0px;
}

.right-aligned-post-content blockquote,
.right-aligned-post-content .kg-width-wide {
    align-self: flex-end;
    min-width: 1050px;
    width: calc(73vw * var(--scale));
}

.right-aligned-post-content .post-content-inner > h2 {
    position: relative;
    max-width: max(280px, calc(19.44vw * var(--scale)));
    width: max(280px, calc(19.44vw * var(--scale)));
    right: var(--post-container-width, 100vw);
    transform: translateX(calc(100% + max(52px, 3.6vw)));
    align-self: flex-end;
    height: 0px;
    margin-bottom: 0px;
}

.right-aligned-post-content .kg-width-wide {
    max-width: none !important;
}

.right-aligned-post-content .kg-blockquote-alt,
.right-aligned-post-content .post-content-inner > h2 {
    font-style: normal;
    line-height: calc(80% * var(--heading-font-line-height-scale)) !important;
    text-transform: var(--text-style) !important;
    text-align: left;
}

.right-aligned-post-content hr {
    width: calc(var(--post-container-width, 100vw) - max(52px, 3.6vw));
    align-self: flex-end;
}

html[data-primary-font="Thunder"] .right-aligned-post-content .post-content-inner > h2 {
    top: max(12px, calc(0.83vw * var(--scale)));
}

.right-aligned-post-content .narrow-container {
    margin-right: 0px;
}

.right-aligned-post-content .kg-width-full {
    align-self: flex-end;
    right: 0 !important;
    left: max(26px, 1.8vw) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.right-aligned-post-content .post-content-inner > h2.contact-subtitle {
    text-transform: none !important;
    line-height: 0% !important;
}

.narrow-container h1 {
    font-size: max(calc(92px * var(--heading-font-scale)), calc(6.39vw * var(--scale) * var(--heading-font-scale)))
}

.narrow-container .heading-1-and-bio {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
}

.hero-border {
    height: 1px;
    width: 100%;
    background-color: var(--text-color);
    margin-top: max(56px, calc(3.89vw * var(--scale)));
}

.hero-section-no-image .author-socials {
    margin-bottom: 0px !important;
}

html:not([data-primary-font="Thunder"]) .contact-page.hero-section-no-image .post-summary-wrapper {
    margin-bottom: 0px !important;
    margin-top: 0px !important;
}

html[data-primary-font="Thunder"] .hero-section-no-image .post-summary-wrapper {
    margin-top: 0px;
}

@media screen and (max-width: 1190px) {
    .right-aligned-post-content {
        margin-right: auto;
    }
    
    .right-aligned-post-content blockquote,
    .right-aligned-post-content .kg-width-wide {
        align-self: flex-start;
        min-width: 100%;
        width: 100%;
    }
    
    .right-aligned-post-content .post-content-inner > h2.contact-subtitle  {
        position: static;
        max-width: 100%;
        width: auto;
        right: 0;
        transform: translateX(0%);
        align-self: flex-start;
        height: auto;
        margin-bottom: 43px;
    }
    
    .right-aligned-post-content .kg-width-wide {
        max-width: 100% !important;
    }

    .right-aligned-post-content .kg-blockquote-alt {
        font-style: italic;
        text-align: center;
    }
    
    .right-aligned-post-content hr {
        width: 100%;
        align-self: flex-start;
    }
    
    html[data-primary-font="Thunder"] .right-aligned-post-content .post-content-inner > h2 {
        top: 0px;
    }
    
    .right-aligned-post-content .narrow-container {
        margin-right: auto;
    }
    
    .right-aligned-post-content .kg-width-full {
        align-self: unset;
        left: 50% !important;
        right: 50% !important;
        margin-left: -50vw !important;
        margin-right: -50vw !important;
    }

    .right-aligned-post-content .post-content-inner > h2.contact-subtitle {
        line-height: 130% !important;
    }
}

@media screen and (max-width: 1080px) {
    .narrow-container h1 {
        font-size: calc(78px * var(--heading-font-scale));
    }

    .post-content-inner > * {
        margin-bottom: 13px;
    }

    .post-content-inner-wrapper {
        margin-top: max(46px, calc(3.89vw * var(--scale)));
    }

    .right-aligned-post-content .post-content-inner > h2.contact-subtitle  {
        margin-bottom: 32px;
    }

    .hero-border {
        margin-top: 46px;
    }

}

@media screen and (max-width: 767px) {
    .narrow-container h1 {
        font-size: calc(52px * var(--heading-font-scale));
    }

    .post-content-inner-wrapper {
        margin-top: max(32px, calc(3.89vw * var(--scale)));
    }  

    .hero-border {
        margin-top: 32px;
    }
}
/* Whispers Lens: links in the Contact text were default blue, hard to read on the gray page */
.post-content-inner a:not(.kg-btn) { color: #d6b560 !important; text-decoration: underline; }

/* ===== Whispers Lens approved Contact design (page has a photo) ===== */
.wl-contact-bg { position: fixed; inset: 0; z-index: 0; }
.wl-contact-bg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wl-contact-overlay { position: absolute; inset: 0; background: rgba(30,30,32,0.72); }
.wl-contact-wrap {
    position: relative; z-index: 1;
    max-width: 700px; margin: 0 auto;
    padding: 150px 24px 120px;
    text-align: center;
}
.wl-contact-label {
    font-family: var(--font2, 'Work Sans', sans-serif);
    font-size: .85rem; letter-spacing: .15em; text-transform: uppercase;
    color: var(--gold, #C7A046); margin-bottom: 20px;
}
.wl-contact-title {
    font-family: var(--font1, 'Fraunces', serif);
    font-weight: 700; font-size: 2.8rem; line-height: 1.15;
    color: var(--overlay-text-color, #f4f1ea); margin: 0 0 20px; text-transform: none;
}
.wl-contact-sub {
    font-family: var(--font2, 'Work Sans', sans-serif);
    font-size: 1.1rem; line-height: 1.6; color: #d8d5cd;
    max-width: 480px; margin: 0 auto 40px;
}
.wl-contact-stack { display: flex; flex-direction: column; align-items: center; }
.wl-contact-stack > * { order: 2; max-width: 480px; }
.wl-contact-stack > *:first-child { order: 0; }
.wl-contact-stack p {
    font-family: var(--font2, 'Work Sans', sans-serif);
    font-size: .95rem; line-height: 1.65; color: #f4f1ea;
    margin: 0 auto 26px; text-transform: none;
}
.wl-contact-stack a { color: var(--gold, #C7A046); text-decoration: none; border-bottom: 1px solid rgba(199,160,70,.4); }
.wl-contact-stack a:hover { border-bottom-color: var(--gold, #C7A046); }
.wl-contact-stack .wl-contact-socials { order: 1; max-width: none; display: flex; justify-content: center; gap: 18px; margin: 4px 0 26px; }
.wl-contact-stack .wl-contact-socials a.wl-contact-icon {
    width: 56px; height: 56px; border-radius: 50%; border: 1.5px solid var(--gold, #C7A046);
    display: flex; align-items: center; justify-content: center; color: var(--gold, #C7A046); border-bottom-width: 1.5px;
}
.wl-contact-stack .wl-contact-socials a.wl-contact-icon:hover { background: var(--gold, #C7A046); color: #2b2b2d; }
.wl-contact-stack .wl-contact-icon svg { width: 22px; height: 22px; fill: currentColor; }
.wl-contact-stack figure { order: 3; max-width: 260px; margin: 10px auto; }
@media screen and (max-width: 640px) {
    .wl-contact-wrap { padding: 110px 16px 80px; }
    .wl-contact-title { font-size: 2rem; }
    .wl-contact-sub { font-size: 1rem; }
    .wl-contact-stack p { font-size: .9rem; }
    .wl-contact-stack .wl-contact-socials { gap: 14px; }
    .wl-contact-stack .wl-contact-socials a.wl-contact-icon { width: 48px; height: 48px; }
}

/* Whispers Lens: a body paragraph holding the mailto link (kept so the old/live site shows contact info)
   is hidden here, because this design already shows the email + social icons. */
.wl-contact-stack p:has(a[href^="mailto:"]) { display: none; }
