/*!
Theme Name: Danforth Health
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: danforth-health
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Danforth Health is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms


--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
:root {
    --primary-color: #2F0356;
    --secondary-color: #A34DE5;
}



body,
html {
    margin: 0;
    padding: 0;
    font-size: 16px;
    line-height: 140%;
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    -webkit-font-smoothing: antialiased;
    color: #70667B;
    overflow-x: hidden;
    scroll-behavior: smooth;

}

main{
    padding-top: 125px;
}

img {
    max-width: 100%;
}

* {
    box-sizing: border-box;
}

.txt-r {
    text-align: right;
}


/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/


h1,
h2,
h3,
h4,
h5 {
    font-family: "Raleway", sans-serif;
}



h1 {
    font-size: 64px;
    font-style: normal;
    font-weight: 700;
    line-height: 110%;
    margin: 20px 0;
}

h1.entry-title{
    color: var(--Primary-Danforth-Violet-500, #2F0356);
/* H1 */
font-size: 64px;
font-style: normal;
font-weight: 700;
line-height: 110%; /* 70.4px */
}





.single-post h1{
    color:#2F0356;
}

.dh-hero-block-content h1{
    color:#fff;
}

.single-post h2{
    color:#A34DE5;
}
.single-post h3{
    color:#2F0356;
}

.single-post-hero{
    background: var(--Secondary-Amethyst-500, #A34DE5);
    color:#fff;
    padding: 30px 0;
}

.single-post-hero h1{
    color:#fff;
}


.privacy-policy h1, .privacy-policy h2, .privacy-policy h3, .privacy-policy h4{
    color: var(--Primary-Danforth-Violet-500, #2F0356);
}

.page-id-556 h1,   .page-id-556 h2, .page-id-556 h3, .page-id-556 h4{
    color: var(--Primary-Danforth-Violet-500, #2F0356);
}

.privacy-policy ol li, .privacy-policy ul li, .page-id-556 ol li, .page-id-556 ul li{
    font-size: 14px;
    margin-top: 10px;
    line-height: 1.3;
}

.privacy-policy a, .page-id-556 a{
    color: var(--Secondary-Amethyst-500, #A34DE5);

}

.privacy-policy h2, .page-id-556 h2{

    scroll-margin-top: 150px;
}





@media screen and (max-width: 640px) {
    h1, h1.entry-title{
        font-size: 36px;
    }
}

h2 {
    font-size: 37px;
    font-style: normal;
    font-weight: 700;
    line-height: 110%;
}

@media screen and (max-width: 640px) {
    h2{
        font-size: 24px;
font-style: normal;
font-weight: 700;
line-height: 115%;
    }
}

h3 {
    font-size: 30px;
    font-style: normal;
    font-weight: 600;
    line-height: 100%;
    
}

h4 {
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
}

h5 {
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 110%;
}

.post-container h5{
    color: var(--Secondary-Amethyst-500, #A34DE5);
font-size: 37px;
font-style: normal;
font-weight: 700;
line-height: 110%;
}

.post-container a{
    color:#2F0356;
    font-weight: bold;
    text-decoration: none;
}

p {
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    /* 28px */
    letter-spacing: -0.4px;
}

p.has-large-font-size{
    font-family: "Raleway", sans-serif;
    font-size: 24px !important;
font-style: normal;
font-weight: 700;
line-height: 100%;
}

p.has-medium-font-size{
    font-family: Raleway;
font-size: 31px !important;
font-style: normal;
font-weight: 400;
line-height: 150%; /* 46.5px */
}

.wp-block-button__link{
    font-weight: 600;
    line-height: 100%;
    font-size: 18px;
}

.button{
    color: #FFF;

text-align: center;
font-family: Inter;
font-size: 16px;
font-style: normal;
font-weight: 600;
line-height: 100%; /* 16px */
padding:12px 20px;
border-radius: 37px;
background: var(--Secondary-Amethyst-500, #A34DE5);
display: inline-block;
text-decoration: none;
}

.in-front{
    z-index: 100;
    position: relative;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/

.header-wrapper{
    top:0;
    left: 0;
    position: fixed;
    width:100%;
    z-index: 1000;
}

.utility-nav {
    background: #A34DE5;
    height: 35px;
    text-align: right;
}

.utility-nav ul {
    margin: 0;
    padding: 0;
}

.utility-nav ul li {
    list-style: none;
    margin: 4px 10px;
    padding: 0;
    display: inline-block;
}

.utility-nav ul li a {
    text-decoration: none;
}

.utility-nav ul li a img {
    vertical-align: middle;
}


header.site-header {
    height: 90px;
    background: #2F0356;
    position: relative;
  
}

header.site-header .row {
    align-items: center;
    height: 100%;
}

header.site-header .container {
    height: 100%;
}

header.site-header nav {
    position: absolute;
    top: 100%;
    right: 0;
    width: 1027px;
    max-width: 100%;
    height: auto;
    background: linear-gradient(0deg, #2F0356 27.17%, #160128 120.82%);
    padding: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    pointer-events: none;
    transition: all .3s ease;
    z-index: 10;
}

header.site-header nav.active {
    opacity: 1;
    pointer-events: all;
}

header.site-header nav>ul {
    width: 800px;
    max-width: 100%;
    margin: 0;
    padding: 0;


}

header.site-header nav>ul>li {
    display: block;
    list-style: none;
    margin: 5.5vh 0;
    padding: 0;
}

header.site-header nav>ul>li>a {
    font-family: Raleway;
    font-size: 30px;
    font-style: normal;
    font-weight: 800;
    line-height: 100%;
    /* 30px */
    text-transform: capitalize;
    color: #D9B8F5;
    transition: all .3s ease;

    text-decoration: none;
}

header.site-header nav>ul>li>a:hover{
    color: #fff;
    transform: scale(1.05);

}

header.site-header nav>ul>li ul {
    display: flex;
    flex-wrap: wrap;
    margin: 2vh 0;
    padding: 0;
}

header.site-header nav>ul>li ul li {
    width: 50%;
    list-style: none;
    padding: 5px;
    margin: 0;
    padding-left: 0;
}


header.site-header nav>ul>li ul li a {
    color: #FFF;
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 186%;
    /* 44.64px */
    text-decoration: none;
    transition: all .3s ease;
}


header.site-header nav>ul>li ul li a[data-id="1"]:hover{
    transform: scale(1.05);
    color: #1DCCBB
}

header.site-header nav>ul>li ul li a[data-id="4"]:hover{
    color: #B13895;
    transform: scale(1.05);

}

header.site-header nav>ul>li ul li a[data-id="2"]:hover{
    color: #CC2E62;
    transform: scale(1.05);

}

header.site-header nav>ul>li ul li a[data-id="5"]:hover{
    color: #00AAC6;
    transform: scale(1.05);

}

header.site-header nav>ul>li ul li a[data-id="3"]:hover{
    color: #9C23E6;
    transform: scale(1.05);

}

header.site-header nav>ul>li ul li a[data-id="6"]:hover{
    color: #3481C1;
    transform: scale(1.05);

}





header.site-header .hamburger {
    position: relative;
    z-index: 100;
}


@media screen and (max-width:640px) {
    header.site-header nav>ul>li {

        margin: 4.5vh 0;

    }

    header.site-header nav>ul>li ul {
        margin: 1vh 0;
    }
    

    header.site-header nav>ul>li ul li {
        width: 100%;
        padding: 3px 5px;
    
    }

    header.site-header nav>ul>li ul li a {
        font-size: 18px;
    }


header.site-header nav>ul>li>a {

    font-size: 22px;

}
}


/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/



footer.site-footer {
    padding: 55px 0;
    background-color: var(--primary-color);
    color: #fff;
}

footer.site-footer ul {
    margin: 0;
    padding: 0;
}

footer.site-footer ul li {
    margin: 0;
    padding: 5px 0;
    list-style: none;
}

footer.site-footer ul li a {
    text-decoration: none;
    color: #fff;
    font-size: 14px;
}

footer p{
    color: #FFF;

font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: normal;
margin:0;
}

footer .title{
    color:  #C894EF;
font-family: Raleway;
font-size: 22.65px;
font-style: normal;
font-weight: 800;
line-height: 100%;
 display: block;
 margin:20px 0;
}


.footer-form{
    position: relative;
    margin-top: 20px;
}

.footer-form input{
    background-color: #fff;
    width:100%;
    display: block;
    padding: 10px 20px;
    border-radius: 5px;
    border: none;
    outline: none;
    font-size: 16px;
    font-weight: 600;
   
}
.footer-form input::placeholder{
    color: var(--Secondary-Amethyst-500, #A34DE5);
font-family: "Inter";
font-size: 14px;
font-style: normal;
font-weight: 600;
line-height: normal;
}

.footer-form button{
    position: absolute;
    right: 10px;
    top: 6px;
    background-color: transparent;
    border: none;
    outline: none;
    cursor: pointer;
}

@media screen and (max-width: 640px) {
    footer .txt-r{
        text-align: left;
        
    }


    .footer-form .row > div{
        margin-bottom: 30px;
    }
}

/*--------------------------------------------------------------
# PAGES
--------------------------------------------------------------*/

section.wp-block-group {
    padding-top: 100px;
    padding-bottom: 100px;
}

section.wp-block-group.full-screen{
height: calc(100vh - 125px);
display: flex;
align-items: center;
}

section.wp-block-group.cta{
    padding-top: 160px;
    padding-bottom: 160px;

}

section.wp-block-group.cta img{
display: none;
}

@media screen and (max-width: 640px) {
    section.wp-block-group.cta{
        padding-top: 100px;
        padding-bottom: 0px;
        background-image: none !important;
        
    }
    section.wp-block-group.cta .wp-block-image{
        text-align: right;
    }

    section.wp-block-group.cta .wp-block-buttons{
        position: relative;
        z-index: 10;
    }

    section.wp-block-group.cta img{
        display: inline-block;
        margin-right: -20px;
        margin-top: -40px;

        }
}

.wp-block-columns.alignfull,
.wp-block-group.alignfull {
    margin-left: calc(-50vw + (1280px / 2));
    margin-right: calc(-50vw + (1280px / 2));
    padding-left: calc(50vw - (1280px / 2));
    padding-right: calc(50vw - (1280px / 2));

}


@media screen and (max-width: 1280px) {
    .wp-block-columns.alignfull,
.wp-block-group.alignfull {
    margin-left:-20px;
    margin-right: -20px;
    padding-left: 20px;
    padding-right:20px;
}
}


.page-template-page-home .hero {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9; /* Modern browsers */
    overflow: hidden;
    background: rgb(97, 32. 151);
}

.page-template-page-home .hero video{
    position: absolute;
    top: 0; 
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/*--------------------------------------------------------------
# BLOCK CLASSES
--------------------------------------------------------------*/

.service-bg{
    position: absolute;
    right:0;
    top:0;
    margin:0;
    max-width: 60%;
}

/*--------------------------------------------------------------
# POST CATEGORY EYEBROW
--------------------------------------------------------------*/

.post-category-eyebrow {
    margin-bottom: 25px;
    font-size: 16px;
font-style: normal;
font-weight: 700;
line-height: 110%; /* 17.6px */
color: var(--Neutral-Shade-Neutral-800, #4A4450);
text-transform: uppercase;
font-family: "Raleway", sans-serif;
}



/*--------------------------------------------------------------
# NEWS PAGE
--------------------------------------------------------------*/

.news-grid-container{
    padding-top: 100px;
    padding-bottom: 100px;
}

.news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-bottom: 60px;
}

.news-card{
    padding-right: 15%;
}

.news-card-image {
    position: relative;
    overflow: hidden;
}

.news-card-image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.news-card:hover .news-card-image img {
    transform: scale(1.05);
}



.news-card-eyebrow {
    margin-bottom: 12px;
}

.news-card-eyebrow a {
    display: inline-block;
    font-size: 16px;
font-style: normal;
font-weight: 700;
line-height: 110%;
color:#4A4450;
text-decoration: none;
text-transform: uppercase;
font-family: "Raleway", sans-serif;

}

.news-card-eyebrow a:hover {
    background: #8a3dd8;
}

.news-card-title {
    margin-bottom: 12px;
    font-size: 20px;
    line-height: 1.3;
}

.news-card-title a {
    color: var(--primary-color);
    text-decoration: none;
    transition: color 0.3s ease;
}

.news-card-title a:hover {
    color: var(--secondary-color);
}

.news-card-snippet {
    margin-bottom: 16px;
    font-size: 14px;
    line-height: 1.5;
    color: #666;
}

.news-card-meta {
    font-size: 12px;
    color: #999;
}

.news-card-meta time {
    font-style: italic;
}

.no-posts {
    grid-column: 1 / -1;
    text-align: center;
    padding: 60px 20px;
    color: #666;
}

@media (max-width: 1024px) {
    .news-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }
}

@media (max-width: 640px) {
    .news-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .news-page-header {
        margin-bottom: 40px;
        padding: 20px 0;
    }
    
    .news-card-content {
        padding: 20px;
    }
    
    .news-card-title {
        font-size: 18px;
    }
}

.load-more-container {
    text-align: center;
    margin-top: 40px;
    padding: 20px 0;
}

.load-more-button {
    background: var(--primary-color);
    color: #fff;
    border: none;
    padding: 12px 32px;
    border-radius: 6px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.2s ease;
    margin:0 auto;
}

.load-more-button:hover {
    background: #1a0233;
    transform: translateY(-2px);
}

.load-more-button:disabled {
    background: #ccc;
    cursor: not-allowed;
    transform: none;
}

.load-more-spinner {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 20px;
}

.spinner {
    width: 20px;
    height: 20px;
    border: 2px solid #f3f3f3;
    border-top: 2px solid var(--primary-color);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}


/*--------------------------------------------------------------
# POSTS
--------------------------------------------------------------*/

.post-cta{
    background: #F6EDFC;
    padding: 100px 0;

}

.post-cta h2{
    color: var(--Primary-Danforth-Violet-500, #2F0356);

}

.justify-content-center{
    justify-content: center;
}

/* Button Hover Styles for WordPress Block Buttons */
.wp-block-button__link{
    transition: all .3s ease;
}
/* Default button hover */
.cta .wp-block-button__link:hover {
  background: #7d36b2 !important;
}

/* Clinical category button hover */
.clin.cta .wp-block-button__link:hover {
  background: #F7D5E0 !important;
  color: #791B3A !important;
}

/* Commercial category button hover */
.comm.cta .wp-block-button__link:hover {
  background: #FFF !important;
  color: #8F2D78 !important;
}

/* Finance category button hover */
.finance.cta  .wp-block-button__link:hover {
  background: #E0FFFC !important;
}

/* PR category button hover */
.pr.cta .wp-block-button__link:hover {
  background: #FFF !important;
  color: #490D6E !important;
}

/* MA category button hover */
.ma.cta .wp-block-button__link:hover {
  background: #FFF !important;
  color: #204E75 !important;
}

.insights.cta .wp-block-button__link:hover {
    background: #FFF !important;
    
  }