/*
Theme Name: TCDCNJ
Theme URI: https://thechildrensdentalcenter.com/
Author: Abuv
Author URI: https://abuvdesign.com/
Description: Custom theme for The Children's Dental Center.
Version: 1.0
*/

:root {
    --light-blue: #8DD7F7;
    --blue: #33C6F4;
    --med-blue: #62B8E4;
    --dark-blue: #0071BB;
    --yellow: #FFF584;
    --pink: #D490BE;
    --purple: #403F98;
    --dark-purple: #181770;
    --blue-30: #63b8e4;
}
.encode-sans-<uniquifier> {
  font-family: "Encode Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}
*  {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    font-family: 'Calibri', sans-serif;
    width: 100%;
    height: auto;
    min-height: 100vh;
    margin: 0;
    padding: 0;
    background-color: var(--light-blue);
    color: var(--dark-purple);
}
body.home {
    background-color: var(--blue);
}
ul {
    margin: 0;
}
ul li {
    list-style: none;
    font-size: 24px;
    font-weight: 600;
    margin: 10px 0;
}
h1, h2, h3, h4, h5, h6 {
    margin: 0;
    padding: 0;
    font-family: 'Titan One', sans-serif;
    font-weight: 400;
    font-style: normal;
    color: var(--dark-purple);
    text-transform: uppercase;
    line-height: 1;
}
h1 {
    font-size: 88px;
}
h2 {
    font-size: 56px;
}
h3 {
    font-size: 44px;
}
h4 {
    font-size: 32px;
}
h5 {
    font-size: 24px;
}
p {
    font-size: 24px;
    margin: 10px 0 10px;
    font-weight: 600;
    text-indent: 20px;
}
iframe {
  height: auto;
  width: 100%;
  aspect-ratio: 16 / 9;
}
a {
    text-decoration: none;
    color: var(--dark-purple);
    transition: all 0.3s ease-in-out;
    font-weight: 600;
}
a:hover {
    color: var(--dark-blue);
}
/* Header */
header {
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 20px 5%;
}
.logo {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    max-width: 300px;
}
.logo img {
    width: 100%;
    height: auto;
    display: block;
}
nav {
    flex: 1 1 auto;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    flex-direction: column;
    gap: 20px;
}
nav ul {
    padding: 0;
    margin: 0;
    display: flex;
    gap: 20px;
    align-items: center;
    justify-content: flex-end;
}
header nav ul:first-child li:nth-child(2) {
    width: 150px;
}
nav ul:first-child li:nth-child(2) a {
    display: inline-block;
    width: 100%;
}
nav ul:first-child li:nth-child(2) a svg {
    width: 100%;
    height: auto;
}
nav ul:first-child li:nth-child(2) a svg g {
    transition: clip-path 0.3s ease-in-out, fill 0.3s;
}
nav ul:first-child li:nth-child(2) a svg g#cyo-text {
    fill: var(--yellow);
}
nav ul:first-child li:nth-child(2) a svg g#jq-text {
    fill: var(--purple);
}
nav ul:first-child li:nth-child(2) a:hover svg g#cyo-text {
    fill: var(--med-blue);
}
nav ul:first-child li:nth-child(2) a:hover svg g#jq-text {
    fill: var(--dark-blue);
}
header nav ul:last-child:not(nav ul.mobile-menu-list) {
    gap: 40px;
}
nav ul li a {
    font-size: 20px;
}
.button {
    display: flex;
    padding: 12px 25px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: var(--yellow);
    text-decoration: none;
    line-height: normal;
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 600;
    background: var(--dark-purple);
    transition: clip-path 0.3s ease-in-out, background 0.3s;
    /* aspect-ratio: 6; */
	clip-path: shape(from 99.91% 20.12%,curve by -7.15% -17.99% with -0.59% -10.57%/-4.34% -15.95%,curve by -5.96% -0.93% with -2.07% -1.48%/-3.84% -1.48%,curve by -60.18% 2.97% with -21.1% 5.56%/-37.61% -7.42%,curve by -10.79% 6.49% with -6.46% 2.97%/-9.61% 5.93%,curve by -12.42% 20.58% with -4.24% 1.85%/-11.34% 5.01%,curve by -3.35% 50.25% with 0% 0.19%/-3.11% 45.8%,curve by 9.76% 16.69% with -0.74% 13.72%/6.85% 20.03%,curve by 0.35% -1.11% with 0.2% -0.19%/0.39% -0.56%,curve by 0% 0% with 0% 0%/0% 0%,curve by 4.68% 1.3% with 0.05% 1.85%/3.89% 1.48%,curve by 79.4% -16.5% with 38.69% -2.78%/73.29% 12.61%,curve by 0.89% -6.3% with 0.44% -2.04%/0.59% -3.89%,curve by 4.78% -50.07% with 2.27% -21.14%/2.17% -13.35%,curve by 0% -5.56% with 0.15% -3.71%/0.1% -3.52%,close);
}
.dark > * {
    color: var(--yellow);
}
.dark .button {
    background-color: var(--yellow);
    color: var(--dark-purple, #181770);
}
.dark .button:hover {
    background-color: var(--pink);
    color: var(--yellow);
}
.button:hover {
    background: var(--dark-blue);
    color: var(--yellow);
}
nav#categories {
    background-color: var(--dark-purple);
    padding: 10px 5%;
    width: 100%;
}
nav#categories ul {
    width: 100%;
    display: flex;
    gap: 20px;
    align-items: center;
    justify-content: center;
}
nav#categories ul li {
    font-size: 20px;
    text-transform: uppercase;
}
nav#categories ul li a.active {
    color: var(--light-blue);
}
a.social svg path {
    fill: var(--dark-blue);
    transition: all 0.3s ease-in-out;
}
a.social:hover svg path {
    fill: var(--purple);
}
.main-info {
    position: relative;
    min-height: 400px;
    overflow: hidden;
    width: 100%;
}
.main-info > h1 {
    position: relative;
    z-index:20;
    margin: 20px 20% 0;
}
main > section:not(:first-child) > div {
    display: flex;
    gap: 40px;
    position: relative;
    width: 100%;
    z-index: 10;
}
main > section.purp-background > div {
    background-color: var(--purple);
}
main > section.med-blue > div {
    background-color: var(--med-blue);
}
.info {
    width: 100%;
    padding: 0 10%;
    display: flex;
    gap: 60px;
    align-items: stretch;
}
.info > * {
    flex: 1 1 auto;
    max-width: 50%;
}
.info > div:first-child {
    padding-bottom: 40px;
    display: flex;
    flex-direction: column;
}
#for-families .info > div:first-child {
    gap: 40px;
}
.info > div:last-child {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.info > div:last-child svg {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-end;
    height: auto;
}
.info > div.floating-img {
    justify-content: flex-start;
}
.recent-blog {
    width: 100%;
    padding: 0 10%;
    display: flex;
    gap: 60px;
    align-items: stretch;
}
.recent-blog > * {
    flex: 1 1 auto;
    max-width: 50%;
}
.recent-blog > div:first-child {
    padding-bottom: 40px;
    display: flex;
    flex-direction: column;
}
.recent-blog > div:first-child a {
    margin-top: 20px;
    align-self: flex-end;
}
.recent-blog > div:last-child {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
.recent-blog > div:last-child svg {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-end;
    height: auto;
}
.recent-blog > div.floating-img {
    justify-content: flex-start;
}
.recent-blog > div > svg > image {
    width: 100%;
    height: auto;
}
h2.subtitle {
    width: 100%;
    padding: 0 30%;
}
#the-post {
    width: 100%;
    padding: 0 0 0 10%;
    display: flex;
    gap: 60px;
    align-items: stretch;
}
#the-post > * {
    flex: 1 1 auto;
    max-width: 50%;
}
#the-post > div:first-child {
    padding-bottom: 40px;
    display: flex;
    flex-direction: column;
}
#blog-post > div:first-of-type {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    z-index: 20;
    margin: 20px 20% 0;
    gap: 20px;
}
#blog-post > div:first-of-type h1 {
    flex: 1 1 100%;
    margin: 0;
}
#blog-post > div:first-of-type h4:last-child {
    font-family: 'Calibri', sans-serif;
    font-weight: 600;
}
#blog-post #the-post > div:first-child p strong {
    text-stroke: 1px var(--dark-purple);
    -webkit-text-stroke: 1px var(--dark-purple);
}
#the-post > div:first-child {
    max-width: 60%;
}
#the-post > div:last-child {
    display: flex;
    justify-content: flex-end;
    max-width: 40%;
}
#the-post > div:last-child svg image {
    height: 100%;
    width: auto;
}
#information {
    width: 100%;
    display: flex;
    position: relative;
    z-index: 10;
    flex-direction: column;
}
#information > div#contact-info {
    width: 100%;
    padding: 40px 25% 375px;
    background-image: url(./assets/tcdc-contact.png);
    background-size: cover;
    background-position: top center;
    background-repeat: no-repeat;
    max-width: unset;
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    align-items: flex-start;
    margin-top: -250px;
}
#information > div#contact-info p {
    text-indent: 0;
    padding-top: 20px;
}
#information > #contact-form {
    display: flex;
    gap: 40px;
    padding: 40px 10%;
    background-color: var(--blue);
}
#information > #contact-form > div {
    flex: 1 1 auto;
    max-width: 50%;
}
form {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
form > div {
    display: flex;
    flex-direction: column;
    width: calc(50% - 20px);
    flex: 1 1 auto;
    gap: 5px;
}
form > #message {
    width: 100%;
}
form p {
	text-indent: 0;
	font-weight: normal;
	display: flex;
    flex-direction: column;
	gap: 5px;
	margin: 0;
}
form label {
    font-size: 20px;
}
form p > span {
	display: flex;
	flex-direction: column;
	gap: 5px;
}
form input, form textarea, form select {
    width: calc(100% - 20px);
    padding: 10px;
    background-color: var(--dark-blue);
    border: none;
    color: var(--yellow);
    font-family: 'Calibri', sans-serif;
    resize: vertical;
	flex: 1 1 auto;
}
form textarea {
    min-height: 100px;
}
form input.button {
    cursor: pointer;
    align-self: flex-end;
    border: none;
	width: unset;
}
img.smile-proud {
    max-width: 650px;
    position: absolute;
    top: 0;
    left: 15%;
    transform: rotate(-5deg);
    z-index: 15;
}
.clouds-container {
    padding: 0 0 100px;
}
.cloud {
    position: absolute;
    z-index: -1;
    animation: cloud-move 6s ease-in-out infinite alternate;
}
.left-cloud {
    top: 35px;
    left: -120px;
}
.center-cloud {
    top: 20px;
    left: 50%;
}
.right-cloud {
    top: 10px;
    right: -120px;
}
.left-cloud {
    animation-duration: 5s;
    animation-delay: 0s;
}
.center-cloud {
    animation-duration: 7s;
    animation-delay: 2s;
}
.right-cloud {
    animation-duration: 6s;
    animation-delay: 1s;
}
.swoosh-1 {
    max-width: unset;
    width: 100%;
    background: linear-gradient(to bottom, var(--purple) 0%, var(--purple) calc(100% - 10px), var(--light-blue) calc(100% - 10px), var(--light-blue) 100%);
    background-repeat: no-repeat;
    height: auto;
    display: flex;
}
.swoosh-2 {
    max-width: unset;
    width: 100%;
    background: linear-gradient(
        to bottom,
        rgba(141, 215, 247, 0) 0%, /* var(--light-blue) */
        rgba(141, 215, 247, 0) calc(100% - 10px),
        var(--med-blue) calc(100% - 10px),
        var(--med-blue) 100%
    );
    background-repeat: no-repeat;
    height: auto;
}
.swoosh-3 {
    max-width: unset;
    width: 100%;
    background: linear-gradient(to bottom, var(--purple) 0%, var(--purple) calc(100% - 10px), var(--med-blue) calc(100% - 10px), var(--med-blue) 100%);
    background-repeat: no-repeat;
    height: auto;
    z-index: 5;
}
img.swoosh-img {
    pointer-events: none;
    user-select: none;
    -webkit-user-drag: none;
    position: relative;
    z-index: 10;
}
#welcome {
    display: flex;
    gap: 40px;
    padding: 300px 10% 0;
}
#welcome > div {
    flex: 1 1 auto;
    max-width: 50%;
    position: relative;
    z-index: 10;
}
#welcome .swoosh-1 {
    max-width: unset;
    position: absolute;
    z-index: 1;
    background: linear-gradient(to bottom, var(--blue) 0%, var(--blue) calc(100% - 10px), var(--light-blue) calc(100% - 10px), var(--light-blue) 100%);
    bottom: 0;
    left: 0;
}
#welcome > div:nth-child(2) {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
#welcome > div > img {
    width: 100%;
    height: auto;
}
#cyoj {
    background-color: var(--light-blue);
}
#cyoj > #cyoj-cta {
    padding: 40px 10% 0;
    position: relative;
    z-index: 20;
    display: flex;
    gap: 60px;
}
#cyoj > .swoosh-2 {
    margin-top: -250px;
    padding-bottom: 100px;
    background: linear-gradient(to bottom, var(--light-blue) 0%, var(--light-blue) calc(100% - 100px), var(--med-blue) calc(100% - 100px), var(--med-blue) 100%)
}
#cyoj-cta > div {
    max-width: 50%;
}
#cyoj-cta > div img {
    width: 100%;
    height: auto;
}
.book-appointment {
    display: flex;
    gap: 40px;
    padding: 40px 20%;
    z-index: 20;
}
.book-appointment > div:first-child, .book-appointment#bp-2 > div:last-child > div:first-child {
    flex: 1 1 auto;
    max-width: 60%;
    position: relative;
    z-index: 15;
    margin-top: -15%;
}
.book-appointment#bp-2 > div:last-child > div:first-child {
    margin-top: 0;
}
.book-appointment > div img {
    width: 100%;
    height: auto;
}
.book-appointment > div:last-child, .book-appointment#bp-2 > div:last-child > div:last-child {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    gap: 10px;
    z-index: 20;
}
.book-appointment#bp-1 {
    background-color: var(--purple);
    padding: 0 20% 0;
    display: flex;
    position: relative;
    margin-top: -50px;
    align-items: center;
}
.book-appointment#bp-2 {
    padding: 0;
    display: block;
    position: relative;
    margin-top: 0;
    align-items: center;
    background: var(--med-blue);
}
.book-appointment#bp-2 > div:first-child {
    max-width: 100%;
    margin-top: 0;
}
.book-appointment#bp-2 > div:last-child {
    display: flex;
    flex-direction: row-reverse;
    padding: 0 20%;
    justify-content: space-between;
    align-items: center;
    margin-top: -275px;
}
.book-appointment#bp-3 {
    background-image: url(./assets/swoosh-3.svg), linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, var(--blue-30) 50%, var(--blue-30) 100%);
    background-position: 0 0, 0 0;
    background-color: var(--light-blue);
    background-repeat: no-repeat, no-repeat;
    padding: 100px 20% 80px;
    display: flex;
    position: relative;
    margin-top: 0;
    align-items: center;
    flex-direction: row-reverse;
}
footer > .swoosh-3 {
    background: linear-gradient(to bottom, var(--light-blue) 0%, var(--light-blue) calc(100% - 10px), var(--purple) calc(100% - 10px), var(--purple) 100%);
    transform: scaleX(-1);
}
footer > .swoosh-4 {
    background: linear-gradient(to bottom, var(--med-blue) 0%, var(--med-blue) calc(100% - 10px), var(--purple) calc(100% - 10px), var(--purple) 100%);
    transform: scaleX(-1);
}
footer > .swoosh-5 {
    background: linear-gradient(to bottom, var(--blue) 0%, var(--blue) calc(100% - 10px), var(--purple) calc(100% - 10px), var(--purple) 100%);
    transform: scaleX(-1);
}
footer > #cyoj-cta {
    background-color: var(--purple);
}
footer > #cyoj-cta {
    padding: 40px;
    display: flex;
    gap: 20px;
}
footer > #cyoj-cta > div:first-child {
    background-color: var(--light-blue);
    padding: 40px;
    border-radius: 60px;
    align-self: center;
}
.foot-nav {
    z-index: 25;
    position: relative;
}
.foot-nav > div:last-child {
    display: flex;
    padding: 0 5% 40px;
    gap: 10%;
    position: relative;
    align-items: center;
    background: var(--light-blue);
}
.foot-nav > .swoosh-1 {
    width: 100%;
}
.foot-nav div:last-child > #logo {
    max-width: 300px;
    height: auto;
}
.foot-nav > div:last-child > #logo img {
    width: 100%;
    height: auto;
}
.foot-nav > div:last-child > * {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
    padding: 0;
}
.foot-nav > div:last-child > div:last-child {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
.foot-nav > div:last-child > div:last-child > ul {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 10px;
}
.foot-nav div:last-child > ul > li {
    margin: 0;
    font-size: 18px;
}
.foot-nav#bp-2 > div:first-child {
    background: linear-gradient(to bottom, var(--blue-30) 0%, var(--blue-30) calc(100% - 10px), var(--light-blue) calc(100% - 10px), var(--light-blue) 100%);
}
#cyoj-cta > div:first-child {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
#cyoj-cta > div:first-child > a {
    align-self: flex-end;
}
#office-hours ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(5, auto);
    gap: 0.25em 1.5em;
    list-style: none;
    padding: 0;
    margin: 0;
}
#office-hours ul li {
    font-size: 18px;
}
@keyframes cloud-move {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(40px);
    }
}
section#team-blog {
    background-color: var(--light-blue);
    padding: 40px 0;
    width: 100%;
}
section#team-blog > div {
    display: flex;
    width: 100%;
    padding: 0 0 0 10%;
    margin: 0;
}
section#team-blog > div > svg {
    height: auto;
}
section#team-blog > div:nth-child(odd) {
    flex-direction: row-reverse;
    padding: 0 10% 0 0;
}
section#team-blog > div {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 32px;
}
section#team-blog > div > div {
    flex: 1 1 auto;
    max-width: 60%;
}
section#team-blog > div > div > a {
    justify-self: flex-end;
}
section#team-blog > div > div h3 {
    font-family: Calibri, sans-serif;
    font-weight: 600;
    font-style: italic;
}
section#team-blog > div > div p, .welcome p {
    font-weight: 600;
}
#blog-section svg image {
    width: 100%;
    height: auto;
}
#the-team {
    background-color: var(--purple);
    padding: 40px 10%;
    width: 100%;
    margin: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
}
.dark h2, .dark h3, .dark h4, .dark h5, .dark ul, .dark p, .dark a {
    color: var(--yellow);
}
.dark a:hover {
    color: var(--pink);
}
#the-team ul {
    font-size: 24px;
}
#the-team h2 {
    grid-column: 1 / -1;
    margin-bottom: 20px;
}
#other-posts {
    background-color: var(--purple);
    padding: 40px 10%;
    width: 100%;
    margin: 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 60px;
}
#other-posts > div:not(:last-child) {
    display: flex;
}
#other-posts > div:not(:last-child) > a {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.3s ease-in-out;
}
#other-posts > div:not(:last-child) > a > *:last-child {
    align-self: flex-end;
}
#other-posts > div:not(:last-child) > a > svg {
    width: 100%;
    height: auto;
}
#other-posts > div:not(:last-child) > a > * {
    transition: all 0.3s ease-in-out;
}
#other-posts > div:not(:last-child) > a:hover > * {
    color: var(--pink);
}
#other-posts > div:not(:last-child) > a:hover > span {
    background-color: var(--pink);
    color: var(--yellow);
}
#pagination {
    width: 100%;
    grid-column: 1 / span 3;
    flex-direction: row!important;
    display: flex;
    justify-content: space-between;
}
#pagination span#prev a {
    padding: 0 0 30px 30px;
    position: relative;
}
#pagination span#next {
    margin-left: auto;
}
#pagination span#next a {
    padding: 0 30px 30px 0;
    position: relative;
    align-self: flex-end;
}
#pagination span a::after {
    content: '';
    display: inline-block;
    width: 100%;
    height: 100%;
    background-image: url('./assets/arrow.svg')!important;
    background-size: 94px 36px;
    background-repeat: no-repeat;
    background-position: right bottom;
    position: absolute;
    bottom: 0;
    right: 0;
    transition: all 0.3s ease-in-out;
}
#pagination span#next a::after {
    transform:none!important;
}
#pagination span#prev a::after {
    transform: scaleX(-1);
}
#pagination span a::after {
    background-image: url('./assets/arrow-hover.svg');
}
#pagination a.disabled {
    pointer-events: none;
    opacity: 0;
}
#pagination a.disabled::after {
    background-image: url('./assets/arrow-disabled.svg')!important;
}
.person {
    display: flex;
    gap: 40px;
    transition: all ease-in-out 0.3s;
    padding: 5%;
}
.details {
    display: flex;
    flex-direction: column;
    max-width: 60%;
}
.details ul li {
    list-style-type: "• ";
    list-style-position: inside;
    font-size: 18px !important;
}
.details ul li::marker {
    color: var(--yellow);
    margin-right: 5px;
}
.expandable {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.5s ease, opacity 0.5s ease;
}
.person.expand .expandable {
    max-height: 1000px; /* large enough to fit content */
    opacity: 1;
}
.person > div:first-child {
    text-align: center;
    position: relative;
}
.person > div:first-child > span {
    cursor: pointer;
    display: inline-block;
    margin-top: 20px;
}
.person.expand > div:first-child > span {
    position: sticky;
    top: 20px;
}
.person.expand {
    background-color: var(--dark-purple);
    border-radius: 60px;
    transition: all ease-in-out 0.3s;
}
.description p, .description ul li {
    font-size: 20px;
}
/*Pediatric Services */
#at-home-care > p {
    margin: 0;
}
#at-home-care > .slideshow:nth-of-type(even) {
    flex-direction: row-reverse;
}
#at-home-illustartion img {
    width: 100%;
    height: auto;
}
.slideshow p {
 width: 100%;
}
#our-resources > div:not(:first-child) {
    flex-direction: column;
    padding-bottom: 250px;
    gap: 40px;
}
#our-resources  > div:not(:first-child) .slideshow .context {
    width: 50%;
    justify-self: center;
    max-width: unset;
}
#our-resources  > div:not(:first-child) iframe {
    width: 100%;
}
#our-resources  > div:not(:first-child) > div:last-child div {
    display: flex;
    gap: 20px;
    padding: 0 20%;
    width: 100%;
}
#our-resources  > div:not(:first-child) > div:last-child div img {
    width: 100%;
    height: auto;
}
#saythis ul {
    padding: 0;
    display: flex;
    flex-direction: column;
}
#saythis ul li {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 5px 0;
    justify-content: space-between;
    margin: 0;
    cursor: pointer;
}
#saythis ul li:first-child h3 {
    color: var(--dark-blue);
}
#saythis ul li div {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
}
#saythis ul li:not(:first-child) div {
    transform: scaleX(0);
    transition: transform 0.3s ease-in-out;
    transform-origin: left;
}
#saythis ul li:not(:first-child):hover div {
    transform: scaleX(1);
}
#saythis ul li h4 {
    font-family: 'Calibri', sans-serif;
    font-weight: 600;
    text-transform: unset;
}
#saythis ul li div hr {
    width: calc(100% - 10px);
    background-color: var(--purple);
    height: 4px;
    margin: 0;
    border: none;
}
.purp-background {
    background-color: var(--purple);
    color: var(--yellow);
    width: 100%;
    margin: 0;
    gap: 40px;
    display:flex;
    flex-direction: column;
}
.purp-background > div {
    display: flex;
    gap: 40px;
    align-items: flex-start;
}
.content {
    padding: 40px 10%;
}
section > h2 {
    padding: 40px 10% 0;
}
section > p, section > h3 {
    padding: 0 10%;
}
.slideshow {
    position: relative;
    z-index: 50;
}
.slideshow > div {
    flex: 1 1 auto;
    padding: 20px;
    position: relative;
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 20px;
    row-gap: 20px;
    width: 100%;
}
.slideshow > div:first-child {
    max-width: 40%;
    display: flex;
    position: relative;
}
.slideshow > div:first-child > div {
    display: flex;
    flex-direction: column;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    opacity: 0;
}
.slideshow > div:first-child > div.shown {
    position: relative;
    opacity: 1;
    z-index: 1;
}
.slideshow > div:first-child > div img {
    width: 100%;
    height: auto;
}
.slideshow > div > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    justify-content: center;
}
.slideshow > div:last-child > div {
    cursor: pointer;
    text-align: center;
}
.slideshow > div:last-child > div > svg path {
    stroke: var(--yellow);
}
.dark .slideshow > div:last-child > div.current > h5 {
    color: var(--pink);
}
.slideshow > div:last-child > div.current > h5 {
    color: var(--dark-blue);
}
.dark .slideshow > div:last-child > div.current > svg path {
    stroke: var(--pink);
}
.slideshow > div:last-child > div > svg path.purp-filled {
    fill: var(--purple);
}
.slideshow > div:last-child > div > svg path.yellow-filled {
    fill: var(--yellow);
}
.slideshow > div:last-child > div.current > svg path.yellow-filled {
    fill: var(--pink);
}
#first-visit > div {
    max-width: 50%;
    flex: 1 1 auto;
}
#first-visit > div > a {
    justify-self: flex-end;
}
#first-visit > div:first-child iframe {
    width:100%;
}
#solea > div > div {
    flex: 1 1 auto;
    max-width: 50%;
    position: relative;
    z-index: 10;
}
#solea > div > div:first-child {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
#solea > div > div:first-child ul {
    padding: 0 5%;
}
#solea > div > div:first-child ul li {
    list-style: disc;
}
#solea > div > div:last-child {
    max-height: 1000px;
    margin-top: -200px;
}
#solea > div > div:last-child img {
    width: 100%;
    height: auto;
}
#walkthrough {
    position: relative;
}
#walkthrough > div {
    display: flex;
    gap: 40px;
}
#walkthrough > div > div {
    flex: 1 1 auto;
    max-width: 50%;
}
/* Basic styles for the header and menu container */
.mobile-nav-header {
    display: flex;
    justify-content: flex-end; /* Align hamburger to the right */
    align-items: center;
    padding: 15px 20px;
    background-color: #f8f8f8; /* Light background from the site */
    border-bottom: 1px solid #eee;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    position: relative; /* For absolute positioning of the nav */
    z-index: 1000; /* Ensure it's above other content */
}

/* Hamburger Menu Styles */
.hamburger-menu {
    display: none; /* Hidden by default on large screens */
    width: 50px;
    height: 50px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    border: 5px solid var(--light-blue);
    z-index: 1001; /* Ensure button is clickable */
    background-color: var(--light-blue);
    position: fixed;
    top: 20px; /* Adjust as needed */
    right: 20px;
}

.hamburger-menu .bar {
    display: block;
    width: 100%;
    height: 3px;
    background-color: var(--dark-purple); /* Dark color for bars */
    border-radius: 2px;
    transition: all 0.3s ease;
    margin-bottom: 5px; /* Space between bars */
}

.hamburger-menu .bar:last-child {
    margin-bottom: 0;
}

/* Animation for the hamburger to close icon */
.hamburger-menu.is-active .bar:nth-child(2) {
    opacity: 0;
}

.hamburger-menu.is-active .bar:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
}

.hamburger-menu.is-active .bar:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
}


/* Mobile Navigation Menu Styles */
.mobile-navigation {
    display: none; /* Hidden by default */
    position: fixed;
    top: 0; /* Position below the header */
    left: 0;
    width: 100%;
    background-color: var(--light-blue); /* White background for the menu */
    box-shadow: 0 5px 10px rgba(0,0,0,0.15);
    z-index: 999;
    padding: 20px 0;
    transition: transform 0.3s ease-out; /* Smooth transition */
    transform: translateX(-100%); /* Initially off-screen to the left */
    height: 100%;
}

.mobile-navigation.is-open {
    display: block; /* Make it visible */
    transform: translateX(0); /* Slide into view */
}

.mobile-menu-list {
    display: flex;
    flex-direction: column;
    list-style: none;
    padding: 0;
    margin: 0;
    text-align: center;
    width: 100%;
    height: 100%;
    justify-content: space-evenly;
}

.mobile-menu-list li {
    margin-bottom: 15px;
}

.mobile-menu-list li:last-child {
    margin-bottom: 0;
}

.mobile-menu-list a {
    text-decoration: none;
    font-family: 'Open Sans', sans-serif; /* Example font from the site */
    font-size: 1.1em;
    padding: 10px 0;
    display: block;
    transition: color 0.2s ease;
}
@media (max-width: 1200px) {
    .hd-inner {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        padding: 16px;
    }
    .hd-right {
        align-items: flex-start;
    }
    .main-info > h1 {
        margin: 20px 5% 0;
        text-align: center;
    }
    h2 {
        text-align: center;
        width: 100%;
        font-size: 36px;
    }
    h3 {
        font-size: 24px;
    }
    .foot-nav {
        margin-top: unset;
    }
    #the-team {
        grid-template-columns: 1fr;
    }
    .slideshow    .slideshow > div, .slideshow > div:first-child {
        max-width: calc(100% - 40px);
    }
    #first-visit > div {
        max-width: 100%;
    }
    #solea {
        overflow: hidden;
    }
    #solea > div div {
        position: relative;
        z-index: 10;
        max-width: 100%;
    }
    #solea > div div:last-child {
        position: absolute;
        z-index: 0;
        right: -300px;
        top: -60px;
        display: none;
    }
    #walkthrough {
        flex-direction: column;
        gap: 20px;
    }
    #walkthrough > div {
        max-width: 100%;
    }
    .info {
        flex-direction: column;
        z-index: 20;
        position: relative;
        gap: 20px;
    }
    .info > * {
        max-width: 100%;
    }
    .book-appointment#bp-1 {
        flex-direction: column;
        padding: 0 10% 0;
        width: 100%;
    }
    .book-appointment > div:first-child {
        max-width: 100%;
    }
    .book-appointment > div:last-child {
        max-width: 100%;
        align-items: center;
    }
    .book-appointment#bp-2 > div:last-child {
        flex-direction: column;
        align-items: center;
        margin-top: -150px;
        padding: 0 10%;
        position: relative;
        z-index: 20;
        gap: 40px;
    }
    .book-appointment > div:first-child, .book-appointment#bp-2 > div:last-child > div:first-child {
        max-width: 100%;
        margin-top: 0;
    }
    #main-navigation {
        display: none;
    }
    .hamburger-menu {
        display: block;
    }
    .recent-blog {
        display: block;
    }
    .recent-blog > div:first-child {
        width: 100%;
        max-width: unset;
        z-index: 20;
        position: relative;
    }
    .recent-blog > div:last-child {
        position:absolute;
        bottom: -150px;
        width: 50%;
        right: -150px
    }
    #other-posts {
        grid-template-columns: 1fr 1fr;
        padding: 40px 10%;
    }
    div#pagination {
        grid-column: 1 / span 2;
    }
    #office-hours ul {
        gap: .25em .25em;
    }
    #office-hours ul li {
        margin: 0;
    }
    .foot-nav > div:last-child {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 40px;
    }
    .foot-nav > div > div:nth-child(4) {
        grid-column: 1;
    }
    .foot-nav > div > div:nth-child(4) > ul li:nth-child(even) {
        text-align: right;
    }
    .foot-nav > div > div:last-child {
        grid-column: 2 / span 2;
        text-align: right;
    }
    #cyoj > #cyoj-cta {
        display: flex;
        padding: 0 10% 40px;
        background-color: var(--med-blue);
    }
    #cyoj {
        padding: 0;
    }
}
@media (max-width: 750px) {
    h1 {
        font-size: 48px;
    }
    h4 {
        font-size: 24px;
    }
    .button {
        font-size: 16px;
    }
    .clouds-container {
        padding: 0 0 210px;
    }
    #welcome {
        display: flex;
        flex-direction: column;
        padding: 0 10%;
    }
    #welcome > div {
        max-width: 100%;
    }
    img.smile-proud {
        position: relative;
        left: 0;
        top: 125px;
        margin: 10%;
        width: 80%;
    }
    .hd-inner {
        padding: 8px;
    }
    .logo-left img {
        height: 40px;
    }
    .hd-top-list img,
    .hd-top-list svg {
        height: 24px;
        width: 24px;
    }
    .hd-bottom-list li a {
        font-size: 14px;
        padding: 6px 10px;
    }
    .person > div:first-child {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .details {
        max-width: unset;
    }
	footer > #cyoj-cta {
		flex-direction: column-reverse;
		align-items: center;
	}
	footer > #cyoj-cta > div {
		max-width: unset;
	}
    .foot-nav > div:last-child {
        display: grid;
        grid-template-columns: 1fr 1fr;
        justify-content: flex-start;
        gap: 20px;
        padding: 0 10%;
    }
    .foot-nav div:last-child > #logo {
        max-width: unset;
        grid-column: 1 / -1;
    }
    .foot-nav > div:last-child > ul:nth-child(3) {
        text-align: right;
    }
    #office-hours {
        grid-column: 1 / -1;
        margin-top: 20px;
    }
    #office-hours > span {
        font-size: 18px;
    }
    #office-hours ul li:nth-child(even) {
        text-align: right;
    }
    .foot-nav > div:last-child > div:last-child {
        grid-column: 1 / -1;
        text-align: center;
        padding: 0 0 20px;
    }
    #saythis ul li {
        cursor: unset;
    }
    #saythis ul li h3 {
        font-size: 22px;
    }
    #saythis ul li:first-child {
        margin-bottom: 15px;
        border-bottom: 2px dotted var(--dark-blue);
    }
    #saythis ul li h4 {
        font-size: 18px;
    }
    #saythis ul li:not(:first-child) div {
        transform: scaleX(1);
    }
    .slideshow {
        gap: 20px!important;
    }
    #our-resources .slideshow {
        display: flex;
        flex-direction: column;
    }
    .slideshow > div {
        padding: 0;
    }
    main > section.purp-background > div {
        flex-direction: column-reverse;
        padding: 0 10%;
    }
    .slideshow > div:first-child {
        max-width: unset;
        flex: 1 1 auto;
    }
    #at-home-care > .slideshow:first-of-type > .context, #pediatric-services > .context {
        background-color: var(--dark-purple);
        border-radius: 60px;
        padding: 20px 40px;
    }
    .slideshow > div:first-child h5 {
        font-size: 20px;
        text-align: center;
    }
    .slideshow > div:last-child h5 {
        font-size: 16px;
    }
    .slideshow > div:first-child p {
        font-size: 16px;
    }
    #at-home-care .slideshow:last-child {
        flex-direction: column;
    }
    #at-home-care .slideshow:last-child > div {
        max-width: 100%;
        flex: 1 1 auto;
    }
    #at-home-care .slideshow:last-child > div:last-child {
        display: grid;
        width: 100%;
    }
    #our-resources > div:not(:first-child) .slideshow .context {
        width: 100%;
        max-width: unset;
    }
    #our-resources > div:not(:first-child) > div:last-child div {
        flex-direction: column;
        align-items: center;
        padding: 0;
    }
    div#first-visit {
        flex-direction: column;
    }
    div#first-visit > div:first-child, #walkthrough > .content > div {
        width: 100%;
        max-width: unset;
    }
    #walkthrough > .content {
        flex-direction: column;
        padding-bottom: 200px;
    }
    .book-appointment#bp-1 > div:first-child {
        margin-top: -150px;
    }
    section#team-blog > div:nth-child(odd), #team-blog > div:nth-child(even) {
        flex-direction: column-reverse;
        padding: 0;
    }
    section#team-blog > div:nth-child(odd) {
        align-items: flex-start;
    }
    section#team-blog > div:nth-child(even) {
        align-items: flex-end;
    }
    main > section:not(:first-child) > div {
        flex-direction: column-reverse;
    }
    main > section:not(:first-child) > div.person {
        flex-direction: column;
    }
    section#team-blog > div:nth-child(odd) div:first-child,section#team-blog > div:nth-child(even) div:first-child {
        padding: 0 10%;
        max-width: unset;
        width: 100%;
    }
    section#team-blog {
        display: flex;
        flex-direction: column;
        gap: 40px;
    }
    section#team-blog > div > svg {
        height: auto;
        width: 60%;
    }
    .recent-blog > div:last-child {
        display: none;
    }
    #cyoj > #cyoj-cta {
        display: flex;
        flex-direction: column-reverse;
        padding: 40px 10% 300px;
        background-color: var(--med-blue);
		gap: 0;
    }
    #cyoj {
        padding: 0;
    }
    #cyoj > #cyoj-cta > div {
        width: 100%;
        max-width: unset;
    }
    #cyoj > #cyoj-cta > div:first-child {
        gap: 20px;
    }
    #for-families > .info > div.floating-img {
        margin-bottom: 50px;
    }
    nav#categories > ul {
        flex-direction: column;
        gap: 0;
    }
    #other-posts {
        display: flex;
        flex-direction: column;
        padding-bottom: 100px;
    }
    #other-posts > div:not(:last-child) > a {
        gap: 20px;
    }
    #other-posts > div:not(:last-child) > a > h5 {
        font-size: 20px;
    }
    .main-info {
        min-height: unset;
    }
    main > section:not(:first-child) > #contact-form {
        flex-direction: column;
    }
    #information > div#contact-info {
        padding: 40px 10% 100px 10%;
        text-align: right;
        align-items: flex-end;
        background-size: contain;
        background-position: center bottom;
        gap: 30px;
    }
    #contact-info >div:first-child > svg {
        width:  65%;
        transform: scaleY(-1) rotate(35deg);
    }
    #information > #contact-form {
        padding-bottom: 200px;
    }
    #information > #contact-form > div {
        max-width: unset;
    }
    #information > #contact-form > div > form {
        flex-direction: column;
    }
    #information > #contact-form > div > form > div {
        width: 100%;
    }
    #blog-post {
        flex-direction: column;
        gap: 20px;
    }
    #blog-post > div:first-of-type {
        margin: 0;
        padding: 0 10%;
    }
    #blog-post > div:first-of-type h1 {
        font-size: 36px;
    }
    #blog-post .clouds-container {
        padding: 0;
    }
    #blog-post #the-post {
        flex-direction: column-reverse;
        padding: 0;
        gap: 20px;
    }
    #blog-post #the-post > div {
        max-width: unset;
    }
    #blog-post #the-post > div:first-child {
        padding: 0 10% 200px;
    }
    #blog-post #the-post > div:last-child {
        display: none;
    }
    #the-post > div:last-child svg image {
        width: 100%;
        height: auto;
    }
}