/**
 * Theme Name:     BlankSlate Child
 * Author:         TidyThemes
 * Template:       blankslate
 * Text Domain:	   blankslate-child
 * Description:    Donations: https://calmestghost.com/donate. BlankSlate is the definitive WordPress boilerplate starter theme. We\&#039;ve carefully constructed the most clean and minimalist theme possible for designers and developers to use as a base to build websites for clients or to build completely custom themes from scratch. Clean, simple, unstyled, semi-minified, unformatted, and valid code, SEO-friendly, jQuery-enabled, no programmer comments, standardized and as white label as possible, and most importantly, the CSS is reset for cross-browser-compatability and no intrusive visual CSS styles have been added whatsoever. A perfect skeleton theme. For support and suggestions, go to: https://github.com/tidythemes/blankslate/issues. Thank you.
 */
 
 
 
/*************************************
SITE FONTS
**************************************/

@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');


/*************************************
CSS RESET
**************************************/


*, ::before, ::after { box-sizing: border-box; }

html {
    line-height: normal;
}

body { margin: 0; }

[hidden] { display: none; }

h1 { font-size: 2rem; }
h2 { font-size: 1.5rem; }
h3 { font-size: 1.17rem; }
h4 { font-size: 1.00rem; }
h5 { font-size: 0.83rem; }
h6 { font-size: 0.67rem; }

pre { white-space: pre-wrap; }

hr {
  border-style: solid;
  border-width: 1px 0 0;
  color: inherit;
  height: 0;
  overflow: visible;
}

img, svg, video, canvas, audio, iframe, embed, object {
  display: block;
  /* vertical-align: middle; */
  max-width: 100%;
}
audio:not([controls]) { display:none; }

picture { display: contents; }
source { display: none; }

img, svg, video, canvas {
  height: auto;
}

audio { width: 100%; }

img { border-style: none; }

svg { overflow: hidden; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

[type='checkbox'],
[type='radio'] {
  box-sizing: border-box;
  padding: 0;
}



/***************************************************************************
****************************************************************************
**
** SITE STYLING
**
****************************************************************************
****************************************************************************/

html {
    font-size: 10px;
    font-family: 'Roboto', sans-serif;
    background: radial-gradient(69.45% 80.22% at 9.49% 0%, #FFFFFF 0%, var(--primary-color-30) 100%);
    height: 100%;
}

body {
	position: relative;
    height: 100%;
    background-color: #EDECE7;
    background: #ffffff;

    width: 100%;
    max-width: 102.4rem;
    margin: 0 auto;
    box-shadow: 0.4rem 0.4rem 1rem rgba(0, 0, 0, 0.15);
}

/* body.page-id-177 {
    max-width: 1280px;
} */

html, body {
	min-height: 100%;
    height: fit-content;
}

#logo-for-hospital {
	height: 100%;
    max-height: 6rem;
    /*max-width: calc(100% - 11.7em);*/
    max-width: 22.0rem;
    width: 100%;
    display: flex;
    align-items: center;
    align-self: flex-start;
}

#homepage-background-image {
	position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
}

#radial-overlay {
	position: absolute;
    width: 100%;
    height: 25.6rem;
    left: 0;
    bottom: calc(0% + 49.5rem);
    background: radial-gradient(50% 50% at 50% 50%, #FFFFF7 0%, rgba(255, 255, 245, 0) 100%);
    transform: translateY(50%);
}

#wrapper {
    z-index: 1;
    position: relative;
}

#donor-bar {
    display: flex;
    padding-left: 20px;
    margin-bottom: 20px;
}

#donor-bar a {
    display: inline-block;
    padding-left: 4px;
}

header#header {
	display: flex;
    align-items: center;
    justify-content: space-between;
    position: absolute;
    top: 30px;
    left: 0;
    width: 100%;
    padding-left: 40px;
    padding-right: 30px;
    z-index: 1;
}

@media screen and (max-width: 600px) {
    
    header#header {
        top: 20px;
        padding-left: 20px;
        padding-right: 20px;
    }

}

.login-link,
.login-link:visited {
    border: 0.5px solid var(--primary-color);
    border-radius: 5px;
	color: #ffffff;
    font-size: 1.4rem;
    font-weight: 700;
    text-decoration: none;
    letter-spacing: 3%;
    padding: 11px 20px;
}

.login-link:hover,
.login-link:active {
	border: 1px solid rgba(66, 42, 30, 0.5);
}

article.page .entry-content h2 {
	font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 0.8rem;
}

section.hero {
    width: 100%;
    height: 540px;
    position: relative;
}

section.hero .hero-text-container {
    position: absolute;
    top: 84px;
    left: 40px;
    width: 320px;
}

.program-title {
    font-size: 2.0rem;
    position: relative;
    z-index: 1;
}

section.hero .program-title {
    margin-bottom: 0.5rem;
}

h1.entry-title {
	font-size: 3.7rem;
    font-weight: 700;
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 32rem;
    margin-top: 47px;
}

h2.main-subtitle {
    font-size: 2.0rem;
    font-weight: 300;
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 32rem;
    margin-top: 1.6rem;
    line-height: 120%;
}

#video-container {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 0;
}

#video-container::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(27.69% 99.93% at 13.48% 9.46%, #FFFFFF 13.22%, rgba(255, 255, 255, 0) 100%);
    pointer-events: none;
}

#video-container mux-player {
    display: block;
    width: 100%;
    aspect-ratio: 320 / 169;
    object-fit: cover;
    object-position: center;
}

#header #container {
	padding: 0 2rem;
}

#footer {
	padding: 2.6rem 2rem 32rem 2rem;
}

.item-links-container {
	display: flex;
    gap: 2rem;
    margin-bottom: 1.7rem;
    flex-wrap: wrap;
}

a.item-links.home,
a.item-links.home:visited {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
	width: 14.6rem;
	height: 15.3rem;
	background: rgba(211, 207, 198, 0.25);
	border: 1px solid rgba(66, 42, 30, 0.25);
	border-radius: 0.4rem;
    text-decoration: none;
    color: #000000;
    font-weight: 700;
    font-size: 1.6rem;
}

@media screen and (max-width: 374px) {

    a.item-links.home,
    a.item-links.home:visited {
        width: 12rem;
        height: 12.6rem;
        font-size: 1.4rem;
    }


    
}

a.item-links.home:hover,
a.item-links.home:active {
	border: 1px solid rgba(66, 42, 30, 0.5);
    background: rgba(211, 207, 198, 0.5);
}

a.item-links.home .item-title {
	height: 100%;
    display: flex;
    align-items: center;
    padding: 0 1rem 0 1rem;
}

a.back-link {
    font-size: 1.4rem;
    font-weight: 500;
    color: var(--primary-color);
    padding-left: 1.6rem;
    position: relative;
}

a.back-link::before {
    content: "";
    background-color: var(--primary-color);

    mask-image: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.41406 0.707031L1.41406 6.70703L7.41406 12.707' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-size: contain;
    mask-position: center;

    -webkit-mask-image: url("data:image/svg+xml,%3Csvg width='9' height='14' viewBox='0 0 9 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.41406 0.707031L1.41406 6.70703L7.41406 12.707' stroke='black' stroke-width='2'/%3E%3C/svg%3E");
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    -webkit-mask-position: center;

    position: absolute;
    left: 0;
    top: calc(50% + 1px);
    transform: translateY(-50%);
    width: 0.9rem;
    height: 1.4rem;
}

a.back-link.bottom-of-page {
    margin-left: 40px;
}


/* Restore semantic emphasis removed by the reset (font: inherit resets weight/style) */
b,
strong {
  font-weight: bolder;
}

em,
i {
  font-style: italic;
}





section.call-to-action {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
    width: 100%;
    max-width: 790px;
    padding: 4rem 2rem 4rem 2rem;
    margin: 0 auto;
}

section.call-to-action .call-to-action__item {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 30px;
}

section.call-to-action .call-to-action__item:nth-child(2) {
    margin-bottom: -20px;
}

section.call-to-action .call-to-action__item .button-container {
    width: 390px;
    min-width: 390px;
    text-align: right;
}

section.call-to-action .call-to-action__item .button-container a {
    display: inline-block;
    white-space: nowrap;
}

section.call-to-action .call-to-action__item .call-to-action__description {
    font-size: 16px;
    font-weight: 300;
}

a.primary {
    color: #ffffff;
    background-color: var(--primary-color);
    font-size: 14px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    padding: 11px 20px;
    border-radius: 5px;
    position: relative;
    overflow: hidden;
    transition: background-color 0.35s ease;
}

a.primary::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(
        circle at 50% 50%,
        rgba(255, 255, 255, 0.24) 0%,
        rgba(255, 255, 255, 0.10) 38%,
        rgba(255, 255, 255, 0) 72%
    );
    opacity: 0;
    transition: opacity 0.35s ease;
    pointer-events: none;
}

a.primary:hover {
    background-color: color-mix(in srgb, var(--primary-color) 82%, white);
}

a.primary:hover::after {
    opacity: 0.5;
}

a.secondary {
    color: var(--primary-color);
    background-color: #ffffff;
    border: 0.5px solid var(--primary-color);
    border-radius: 5px;
    font-size: 14px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    padding: 11px 20px;
    position: relative;
    overflow: hidden;
}


.thumbnail-container {
	border-radius: 0 0 0.4rem 0.4rem;
    height: 50%;
}

.thumbnail-container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

#home-layout-container {
	display: flex;
    gap: 2.9rem;
    flex-wrap: wrap;
}

#home-layout-container .column-2 {
	padding-top: 2.2rem;
    flex-grow: 1;
    flex-shrink: 1;
    flex-basis: 179px;
    min-width: 179px;
    max-width: 100%;
}

@media screen and (max-width:530px) {

	#home-layout-container {
		flex-direction: column;
	}

}

.title.program-overview,
.title.mentor-overview,
.quote-text {
	font-size: 1.6rem;
    font-weight: 700;
    line-height: 120%;
}

.quote-text {
    font-size: 1.4rem;
}

.description.program-overview,
.description.mentor-overview {
	font-size: 1.3rem;
    padding-bottom: 2rem;
    line-height: 120%;
}

.name-of-quote-person,
.title-of-quote-person {
	font-size: 1.3rem;
    font-style: italic;
    margin-top: 0.2rem;
}

.title-of-quote-person {
	padding-left: 0.9rem;
}

.contact-text,
.contact-us-link {
	font-size: 1.6rem;
	display: inline-block;
    margin-bottom: 30px;
}

.contact-us-link,
.contact-us-link:visited {
	padding-left: 0.5rem;
    font-weight: 700;
    color: #42C0C0;
}

@media screen and (max-width: 600px) {
    
    .contact-text,
    .contact-us-link {
        margin-bottom: 0;
    }

}

@media screen and (max-width: 500px) {

	#radial-overlay {
    	bottom: 32rem;
    }

}


@media screen and (max-width:400px) {

	h1.entry-title {
        font-size: 2.8rem;
        font-weight: 700;
    }
    
    #container {
		padding: 0 1rem;
	}
    
    #footer {
		padding: 2.6rem 1rem 24rem 1rem;
	}

}




.page-template-patient-stories article.page,
.page-template-request-support header.header,
.page-template-become-a-mentor header.header,
.page-template-share-your-story header.header,
.page-template-homepage header.header {
    padding: 85px 0 0 0;
}

.page-template-request-support header.header,
.page-template-become-a-mentor header.header,
.page-template-share-your-story header.header,
.page-template-homepage header.header {
    margin-left: 40px;
}

.page-template-homepage header.header {
    position: absolute;
}

.page-template-patient-stories .back-link,
.page-template-request-support .back-link,
.page-template-become-a-mentor .back-link,
.page-template-share-your-story .back-link {
    margin-top: 32px;
    display: block;
    margin-bottom: 7px;
}

.page-template-patient-stories header.header,
.page-template-become-a-mentor header.header,
.page-template-share-your-story header.header {
    margin-left: 40px;
}

.page-template-patient-stories h1.entry-title,
.page-template-request-support h1.entry-title,
.page-template-become-a-mentor h1.entry-title,
.page-template-share-your-story h1.entry-title {
    max-width: unset;
    margin-top: 6px;
}



section.featured-patient-stories-container {
    width: 100%;
    padding: 30px 30px 30px 40px;
    margin: 0 auto 3rem auto;
}

section.featured-patient-stories-container .featured-patient-stories-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

section.featured-patient-stories-container h2.featured-patient-stories-title {
    font-size: 28px;
    font-weight: 700;
}


section.featured-patient-stories-container .featured-patient-stories-list {
    display: flex;
    gap: 30px;
    margin-top: 10px;
}

section.featured-patient-stories-container .featured-patient-stories-list .featured-patient-story-card {
    display: block;
    width: 250px;
}

section.patient-stories-library .patient-stories-library__list {
    flex-wrap: wrap;
}

section.patient-stories-library .patient-stories-library__list .patient-stories-library__card {
    width: 293px;
}

section.featured-patient-stories-container .featured-patient-stories-list .featured-patient-story-card__media {
    border-radius: 10px;
    overflow: hidden;
}

section.featured-patient-stories-container .featured-patient-stories-list .featured-patient-story-card__question {
    font-size: 20px;
    font-weight: 700;
    margin-top: 6px;
    line-height: 120%;
}

section.featured-patient-stories-container .featured-patient-stories-list .featured-patient-story-card__answer {
    font-size: 14px;
    margin-top: 2px;
    line-height: 120%;
}

section.featured-patient-stories-container .featured-patient-stories-list .quote-container {
    margin-top: 8px;
    border-left: 2px solid var(--primary-color);
    padding-left: 10px;
}

section.featured-patient-stories-container .featured-patient-stories-list .featured-patient-story-card__quote {
    font-size: 16px;
    line-height: 120%;
    font-family: serif;
    font-style: italic;
}

section.featured-patient-stories-container .featured-patient-stories-list .featured-patient-story-card__patient-name {
    font-size: 13px;
    font-weight: 700;
    margin-top: 9px;
}

section.featured-patient-stories-container .featured-patient-stories-list .featured-patient-story-card__patient-condition {
    font-size: 13px;
    margin-top: 3px;
}


section.category-buttons {
    width: 100%;
    padding: 0 0 60px 40px;
}

section.category-buttons .category-buttons__title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 6px;
}

section.category-buttons .category-buttons__description {
    font-size: 16px;
}

a.category-buttons__button {
    display: inline-block;
    margin-top: 17px;
    margin-right: 10px;
    padding: 10px 18px;
}

nav.patient-story-category-buttons {
    margin: 14px 0 0 40px;
}

nav.patient-story-category-buttons a.category-buttons__button {
    margin-top: 0;
}

section.category-buttons a.category-buttons__button:last-child {
    margin-right: 0;
}



section.mentor-promo {
    padding: 0px 40px;
}

section.mentor-promo .mentor-promo__title {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 15px;
}

section.mentor-promo .mentor-promo__content {
    display: flex;
    gap: 40px;
    align-items: center;
}

section.mentor-promo mux-player {
    width: 100%;
    max-width: 540px;
    aspect-ratio: 2 / 1;
    object-fit: cover;
    object-position: center;
    border-radius: 10px;
    overflow: hidden;
}

section.mentor-promo .mentor-promo__quote-block {
    padding-left: 10px;
    border-left: 2px solid var(--primary-color);
}

section.mentor-promo .mentor-promo__quote {
    font-size: 20px;
    line-height: 120%;
    font-style: italic;
    font-family: serif;
    margin-bottom: 14px;
    width: 100%;
    max-width: 305px;
    min-width: 280px;
}

section.mentor-promo .mentor-promo__mentor-name {
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 2px;
}

section.mentor-promo .mentor-promo__mentor-title {
    font-size: 14px;
}

section.mentor-promo .mentor-promo__cta {
    margin-top: 18px;
}

section.mentor-promo .mentor-promo__cta-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 10px;
}

section.mentor-promo .mentor-promo__cta-content {
    display: flex;
    gap: 20px;
    align-items: center;
}

section.mentor-promo a.mentor-promo__cta-button {
    white-space: nowrap;
    min-width: min-content;
}

section.mentor-promo .mentor-promo__cta-description {
    font-size: 16px;
    font-weight: 300;
    line-height: 120%;
}

.featured-patient-story-card__categories {
    display: flex;
    gap: 10px;
    margin-top: 8px;
}

span.featured-patient-story-card__category-pill {
    font-size: 10px;
    text-transform: uppercase;
    padding: 2px 8px;
    background-color: var(--primary-color-30);
    display: inline-block;
    border-radius: 10px;
}


/***************************************************************************
****************************************************************************
** REQUEST SUPPORT PAGE STYLING
**
****************************************************************************
****************************************************************************/

.request-support-introduction,
.become-a-mentor-introduction,
.share-your-story-introduction {
    font-size: 1.6rem;
    margin-bottom: 2.4rem;
    margin-left: 40px;
    margin-top: 22px;
}

.request-support-iframe {
    position: relative;
    width: 100%;
    height: 900px;
    border: none;
}

.request-support-iframe::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #cccccc;
}

.request-support-iframe::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: #cccccc;
}

 .form-not-available {
    font-size: 1.4rem;
    font-style: italic;
    color: #bbbbbb;
    margin-left: 80px;
    margin-top: 22px;
    margin-bottom: 40px;
 }




footer #copyright {
    text-align: center;
}



@media screen and (max-width: 600px) {

    .page-template-homepage header.header {
        margin-left: 20px;
    }

    section.hero {
        display: flex;
        flex-direction: column-reverse;
        height: unset;
        padding-top: 121px;
    }

    section.hero #video-container {
        position: relative;
    }

    section.hero .hero-text-container {
        position: relative;
        top: unset;
        left: unset;
        width: auto;
        padding-left: 20px;
    }

    section.hero h1.entry-title {
        margin-top: 20px;
    }


    section.call-to-action .call-to-action__item {
        flex-direction: column;
        gap: 10px;
    }

    section.call-to-action .call-to-action__item .button-container {
        width: unset;
        min-width: unset;
        text-align: unset;
    }

    section.call-to-action .call-to-action__item .button-container a {
        display: inline-block;
        white-space: unset;
        text-wrap: balance;
    }

    section.featured-patient-stories-container .featured-patient-stories-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    section.featured-patient-stories-container {
        padding: 20px 0 20px 20px;
    }

    section.featured-patient-stories-container .featured-patient-stories-list {
        overflow-y: hidden;
        overflow-x: auto;
        margin-left: -20px;
        padding: 5px 20px 10px 20px;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        scroll-padding-left: 20px;
    }

    section.featured-patient-stories-container .featured-patient-stories-list .featured-patient-story-card {
        min-width: 250px;
        scroll-snap-align: start;
    }

    section.featured-patient-stories-container {
        margin-bottom: 0;
    }

    section.category-buttons {
        padding-left: 20px;
    }

    section.category-buttons .category-buttons__list {
        padding-top: 10px;
    }

    section.category-button a.category-buttons__button {
        margin-top: 9px;
    }


    section.mentor-promo {
        padding: 0 20px;
    }

    section.mentor-promo .mentor-promo__content {
        flex-direction: column;
        gap: 20px;
    }

    section.mentor-promo .mentor-promo__quote-block {
        margin-left: 30px;
        padding-right: 30px;
    }

    section.mentor-promo .mentor-promo__cta-content {
        flex-direction: column;
        align-items: flex-start;
        padding-top: 5px;
    }

    .mentor-promo__video {
        width: 100%;
    }


    .page-template-patient-stories header.header,
    .page-template-become-a-mentor header.header,
    .page-template-share-your-story header.header,
    .page-template-request-support header.header {
        margin-left: 20px;
    }

    .request-support-introduction,
    .become-a-mentor-introduction,
    .share-your-story-introduction {
        margin-left: 20px;
    }

    nav.patient-story-category-buttons {
        margin-left: 20px;
    }

    section.patient-stories-library .patient-stories-library__list .patient-stories-library__card {
        width: calc(50% - 20px);
        min-width: unset;
    }

    nav.patient-story-category-buttons a.category-buttons__button {
        margin-top: 7px;
    }

    a.back-link.bottom-of-page {
        margin-left: 20px;
    }

    .request-support-iframe,
    .become-a-mentor-iframe,
    .share-your-story-iframe {
        padding-left: 20px;
        padding-right: 20px;
        height: 500px;
    }

    .request-support-iframe iframe,
    .become-a-mentor-iframe iframe,
    .share-your-story-iframe iframe {
        height: 500px;
    }


    footer {
        padding-bottom: 15px;
    }


}