h1, h2, h3, h4 {
    width: 100%;
}
.wp-block-button__link:hover {
    background-color: var(--wp--preset--color--drsg-hover-red) !important;
}
/* Subscribe box pattern styles */
.dmtdrsg-subscribe-box {
    background-color: var(--wp--preset--color--drsg-red);
    background-image: url('images/running.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 168px;
    box-sizing: border-box;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.18);
}
    /* Octopus styles */
    .inline-container {
        width: 400px!important;
        max-width: 100%!important;
    }
    .main-form {
        flex-wrap: nowrap!important;
        align-items: center!important;
    }
    .inner p {
        display: none!important;
    }
    .main-form input[type="submit"] {
        background-color: var(--wp--preset--color--drsg-red)!important;
        color: var(--wp--preset--color--drsg-offwhite);
        border-radius: 8px!important;
        border: 1px solid var(--wp--preset--color--drsg-offwhite)!important;
        padding: 0 0 2px 0!important;
        height: 48px;
        font-size: 0.9rem!important;
        line-height: 1.0rem!important;
        font-weight: bold;
        border: none;
        cursor: pointer;
        font-weight: 400!important;
        font-family: 'gamay-condensed', sans-serif!important;
        margin: 0 0 0 6px!important;
        display: flex;
        align-items: center;
        height: 44px!important;
        width: 96px!important;
    }
    .emailoctopus-form-row.form-group.mb-2 {
        width: 100%;
        position: relative;
        display: flex;
        margin-bottom: 0!important;

    }
    #field_0 {
        background-color:var(--wp--preset--color--drsg-pink);
        border-radius: 8px;
        font-size: 0.9rem;
        padding: 0 16px;
        line-height: 1.0rem;
        border: 1px solid var(--wp--preset--color--drsg-pink);
        color: var(--wp--preset--color--drsg-secondary-green);
        height: 44px!important;
        margin-right: 8px!important;
    }
    .main-form input[type="submit"]:hover {
        background-color: var(--wp--preset--color--drsg-hover-red)!important;        ;
        color: var(--wp--preset--color--lucia-light-gold)!important;
        border: 1px solid var(--wp--preset--color--drsg-offwhite)!important;
    }
    #field_0:focus {
        background-color: var(--wp--preset--color--drsg-offwhite)!important;
        border: 1px solid var(--wp--preset--color--drsg-hover-red)!important;
    }
    .emailoctopus-success-message {
        color: var(--wp--preset--color--lucia-light-gold)!important;
        font-weight: 300!important;
        font-family: 'gamay-condensed', sans-serif!important;
    }
    @media screen and (max-width: 660px) {
    .dmtdrsg-subscribe-box {
        background-image: url('images/running.png');
        background-position: right center;
        background-size: 72px;
        align-items: center;
        text-align: center;
        padding-top: 32px!important;
        padding-bottom: 16px!important;
    }
    .dmtdrsg-subscribe-box p {
        margin: 8px 0 !important;
    }
    .dmtdrsg-subscribe-box > div > p:nth-of-type(2) {
        margin-right: 32px!important;
    }
    .dmtdrsg-subscribe-box > div {
        margin: 0!important;
    }
    .main-form {
        display: inline;
    }
    .inline-container {
        width: 100%!important;

    }
    .eo-form-fields-container > .btn {
        min-width: 94px;
    }
}


/* Footer CSS */
.dmtdrsg-footer-links {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}
.dmtdrsg-footer-links a {
    text-decoration: none;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.5rem;
}
.dmtdrsg-footer-links ul {
    list-style-type: none;
    padding: 0;
    margin: 0 0 0 0;
    flex: 1 1 120px; /* force all lists to take equal space but allow wrapping */
    min-width: 120px;
}
.dmtdrsg-footer-links li {
    padding: 4px 0;
    margin: 0;
}
.footer-grid a {
    color: var(--wp--preset--color--drsg-offwhite)!important;
    text-decoration: none;
}
.footer-grid a:hover {
    text-decoration: underline;
}
/* News and archive styling */
.drsg-archive-news .wp-block-post-featured-image a {
    display: block; /* or block, depending on your layout */
    margin: auto;
    align-self: center;
}
.dmtsrg-news-post-featured-image img {
    aspect-ratio: 16 / 8 !important;
}
.drsg-archive-news {
    column-gap: 24px;
}
@media screen and (max-width: 780px) {
    .drsg-archive-news {
        gap: 0px!important;
    }
    .drsg-archive-news .wp-block-post-featured-image img {
    width: 100%;
    height: 100%;
    max-height: none !important;
    aspect-ratio: 4 / 2;
    object-fit: cover;
    }
}
.drsg-archive-news .wp-block-post-featured-image a > img {
    object-fit: cover;
    width: 100%;
    max-width: 100%;
    max-height: 208px;
    border-radius: 20px;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
}
.drsg-archive-news > div {
    text-align: center;
    position: relative;
}
.drsg-archive-news-post-details-stack {
    text-align: left!important;
}
.drsg-post-excerpt .wp-block-post-excerpt__more-link {
    margin-top: 8px;
    color: var(--wp--preset--color--drsg-green);
    text-decoration: none;
    padding: 3px 12px 6px 12px;
    border-radius: 8px;
    font-family: 'gamay-condensed', sans-serif;
    font-weight: 700;
    font-size: 0.75;
    align-items: center;
    background-color: var(--wp--preset--color--drsg-pink);
}

.drsg-post-excerpt .wp-block-post-excerpt__more-link:hover {
    text-decoration: none;
    background-color: #f9acac; 
}
.drsg-archive-news-post-details-stack a:hover {
    text-decoration: underline;
}
.taxonomy-category {
    margin: 6px 0 0 0
}
.taxonomy-category a {
    background-color: var(--wp--preset--color--drsg-red);
    border-radius: 16px;
    padding: 4px 12px;
    font-size: 0.75rem;
    font-weight: 600;
    text-decoration: none;
    color: var(--wp--preset--color--drsg-offwhite);
    text-transform: uppercase;
    margin-top: 4px!important;
}
.taxonomy-category a:hover {
    text-decoration: none;
    background-color: var(--wp--preset--color--drsg-hover-red);
}

/* DRSG Related news */
.drsg-related-news li {
    display: flex!important;
    flex-direction: column;
    justify-content: flex-start;
}
.drsg-related-news .drsg-post-excerpt {
    display: flex!important;
    flex-direction: column;
    flex-grow: 1;
}
.drsg-related-news .wp-block-post-featured-image {
    display: block; /* or block, depending on your layout */
    align-self: center;
    width: 100%;
}
.drsg-related-news .wp-block-post-excerpt__more-text {
    margin: auto 0 0 0!important;
}
.drsg-related-news h2 {
    font-size: clamp(20px, 24px, 24px);
    line-height: 1.2;
    text-wrap: balance;
}
.drsg-related-news .wp-block-post-featured-image > img {
    object-fit: cover;
    width: 100%;
    max-width: 100%;
    height: 176px;
    border-radius: 20px;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
}
/* Pagination styles */
.wp-block-query-pagination-numbers {
    display: flex;
    gap: 12px;
}
.dog-page-numbers {
    font-size: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    list-style-type: none;
    gap: 0.75rem;
    margin-top: 1.5rem!important;
}
.page-numbers, .dog-page-number {
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    font-size: 1rem;
    font-family: 'gamay-condensed', sans-serif;
    align-items: center;
    padding-bottom: 2px;
    border-radius: 50%;
    background-color: var(--wp--preset--color--drsg-pink);
    color: var(--wp--preset--color--drsg-green-black);
    text-decoration: none;
    box-sizing: border-box;
}
.dog-page-number.current, .page-numbers.current, .dog-page-number:hover, .page-numbers:hover {
    background-color: var(--wp--preset--color--drsg-red);
    color: var(--wp--preset--color--drsg-offwhite);
}
.wp-block-query-pagination-next, .wp-block-query-pagination-previous {
    display: none!important;
}

/* Dog Listing Styles */
.dmtdrsg-dog-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.5rem;
    margin: 1.25rem 0 !important;
    width: 100%;
}
.dmtdrsg-dog-list-item {
    display: flex;
    box-sizing: border-box;
    position: relative;
    padding: 16px;
    border-radius: 24px;
    background: #F8F8F8;
    flex-direction: column;
    align-items: center;
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.25);
    text-decoration: none;
    margin: 8px;
    font-family: 'gamay-condensed', sans-serif;
}
.non-alumni {
    transition: transform 0.2s ease-in-out;
}
.non-alumni:hover {
    transform: scale(1.02);
}
.dog-list-item-thumb {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 14px;
    width: 100%;
    height: 100%;
    transition: transform 0.05s ease-in;
}
.adoption-status {
    font-size: 14px;
    margin: 0.75rem 0;
    font-weight: 500;
    font-family: var(--wp--preset--font-family--gamay);
}
.accepting_applications {
    color: #057421;
}
.is-spotlight {
    position: absolute;
    top: 0;
    transform: translateY(-6px);
    background-color: var(--wp--preset--color--drsg-red);
    padding: 3px 12px 5px 12px;
    border-radius: 8px;
    color: var(--wp--preset--color--drsg-offwhite);
    font-family: 'gamay', sans-serif;
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 14px;
}
.is-spotlight img {
    height: 14px;
    width: 14px;
    object-fit: contain;
    object-position: center;
    margin-top: 2px;
}
.applications_opening_soon {
    color: var(--wp--preset--color--drsg-medium-grey);
}
.processing_applications {
    color: var(--wp--preset--color--drsg-medium-grey);
}
.adopted {
    color: #DA1D63;
}
.adopted::before, .adopted::after {
    content: '🎉';
    margin: 0 4px;
}
.dog-name {
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 1.2;
    color: var(--wp--preset--color--drsg-green-black);
}
.dog-name-archive {
    margin: 1rem 0 0.75rem 0;
}
.dog-item-details {
    display: flex;
    gap: 8px;
    align-items: center;
    font-size: 1rem;
    color: var(--wp--preset--color--drsg-medium-grey);
    font-weight: 300;
    margin: 0.75rem 0 0 0;
}
.dog-item-detail-sex {
    display: flex;
    align-items: center;
}
.male::before {
    content:'';
    background-image: url('./images/icons/male.svg');
    background-size: contain;
    background-repeat: no-repeat;
    width: 12px;
    height: 12px;
    margin-right: 4px;
    display: inline-block;
}
.female::before {
    content:'';
    background-image: url('./images/icons/female.svg');
    background-size: contain;
    background-repeat: no-repeat;
    width: 12px;
    height: 12px;
    margin-right: 4px;
    display: inline-block;
}
.birthday-cake::before {
    content:'';
    background-image: url('./images/icons/cake.svg');
    background-size: contain;
    background-repeat: no-repeat;
    width: 12px;
    height: 12px;
    margin-right: 4px;
    display: inline-block;
}
.page-id-23 {
    background-image: url('./images/rainbow-bridge.webp');
    background-repeat: no-repeat;
    background-position: top center;
    background-size: auto;
     background-attachment: fixed;
}
.dog-pagination {
    display: flex;
    gap: 0.75rem;
    margin: 1rem 0 0 0!important;
}

/* Ready to adopt banner */
.ready-to-adopt {
    overflow: hidden;
    position: relative;
}
.ready-to-adopt-button {
    margin-top: 20px!important;
    display: inline-block;
}
.ready-to-adopt-button a {
    text-decoration: none;
    border: 1px solid var(--wp--preset--color--drsg-green-black);
    border-radius: 16px;
    padding: 12px 24px;
    box-sizing: border-box;
}
.ready-to-adopt-button a:hover {
    color: var(--wp--preset--color--drsg-offwhite);
    background-color: var(--wp--preset--color--drsg-green-black);
}
.shop-grid {
    column-gap: 16px!important;
    row-gap: 16px!important;
}
@media screen and (max-width:765px) {
    .shop-grid {
        grid-template-columns: 1fr 1fr!important;
    }
}
@media screen and (max-width:560px) {
    .shop-grid {
        grid-template-columns: 1fr!important;
    }
}
.shop-grid-item {
    gap: 0;
    box-shadow: 0px 2px 12px 0px rgba(0, 0, 0, 0.15);
}
.shop-grid-item div:first-of-type {
    width: 100%;
    border-radius: 0 0 20px 20px;
    justify-content: center;
    padding: 8px 0!important;
}
.shop-button {
    max-width: fit-content;
}
.shop-button a {
    padding: 6px 20px 10px 20px;
    font-size: 20px!important;
}
.help-grid {
    gap: 24px;
}
@media screen and (max-width: 640px) {
    .help-grid {
        flex-wrap: wrap;
    }
}
.help-grid > div {
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.18);
}
.help-grid .wp-element-button {
    border: 1px solid var(--wp--preset--color--drsg-offwhite);
    border-radius: 12px;
    padding: 8px 32px 12px 32px;
    font-size: 20px;
}

/* Adoption guide styles */
.featured-image-w100 img {
    max-height: 200px;
    object-fit: cover;
    min-height: 180px;
}
.adoption-number {
    padding: 0 0 2px 1px!important;
    min-width: 52px;
    max-width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'gamay-condensed', sans-serif;
    font-weight: 600;
}

/* Team Page */
.team-grid {
    gap: 2.0rem 1.5rem;
}
.team-grid .eb-team-member-image img {
    box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.25);
    aspect-ratio: 1 / 1!important;
    object-fit: contain;
    object-position: center;
}
.eb-team-wrapper {
    overflow: visible!important;
}
.eb-team-member-job-title {
    font-weight: 400!important;
    font-size: 1.0rem!important;
    color: var(--wp--preset--color--drsg-medium-grey)!important;
}
/* Adoption Stories Grid */
.adoption-stories {
    overflow: hidden;
    box-shadow: 0px 6px 8px 0px rgba(0, 0, 0, 0.12);
}
.adoption-stories .wp-block-button a {
    font-size: 1rem!important;
}
.adoption-stories .wp-block-button {
    margin-top: 8px;
}
.grid-gap-1half {
    gap: 1.5rem;
}
.adoption-stories h2 {
    font-size: 24px;
    padding-bottom: 4px!important;
}

/* Home Hero Banner Styles */
.home-hero-columns {
    box-shadow: 0px 6px 12px 0px rgba(0, 0, 0, 0.18);
}
.home-hero-h1 {
    line-height: 1.25;
    text-wrap: balance;
}
.home-hero-right {
    position: relative;
}
.home-hero-right figure {
    height: 100%;
}
.home-hero-right img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

@media screen and (max-width: 740px) {
    .home-hero-columns {
        flex-direction: column;
        gap: 0;
    }
    .home-hero-left {
        order: 1;
    }
    .home-hero-right {
    margin: 0!important;
    order: 0;
    }
    .home-hero-right img {
    border-radius: 24px 24px 0 0!important;
    height: 35dvh;
    width: 100%;
    object-fit: cover;
    object-position: 40% center;
    }
    .home-hero-left > div {
        padding: 0 20px!important;
        margin: 20px 0!important;
    }
    .home-hero-cont {
        margin: 0 0 16px 0!important;
    }
}
@media screen and (max-width: 540px) {
    .home-hero-h1 {
        font-size: 32px;
        line-height: 1.11;
    }
}


/* Contact Form Styling */
.wpcf7 {
    width: 100%;
    max-width: 464px!important;
}
.wpcf7 label {
    font-size: 1.25rem;
    color: var(--wp--preset--color--drsg-green-black);
    font-family: 'gamay-condensed', sans-serif;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 textarea
{
    background-color: var(--wp--preset--color--drsg-subtle-pink);
    border-radius: 8px;
    padding: 12px;
    border: 1px solid var(--wp--preset--color--drsg-secondary-green);
    color: #000;
    width: calc(100% - 26px);
    margin: 8px 0;
    font-size: 1rem;
}
.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="tel"]:focus,
.wpcf7 textarea:focus {
    border-color: #333638; /* Example of a border color change */
    box-shadow: 0 0 5px rgba(31, 31, 31, 0.2); /* Example of a subtle shadow */
    outline: none; /* Removes the default outline */
    background-color: #fbfbfb; /* Optional: light background color change */
    font-family: 'gamay', sans-serif;
}

.wpcf7 input[type="submit"] {
    padding: 10px 20px 14px 24px;
    background-color: var(--wp--preset--color--drsg-red);
    color: var(--wp--preset--color--drsg-offwhite);
    font-size: 1.25rem;
    font-family: 'gamay-condensed', sans-serif;
    border-radius: 12px;
    cursor: pointer;
    border: none;
    outline: none;
}
.wpcf7 input[type="submit"]:hover {
    background-color: var(--wp--preset--color--drsg-hover-red);
    outline: none; /* Removes the default outline */
}
.wpcf7-list-item {
    margin: 0 0 0 0 !important;
    padding: 20px 0;
}
.wpcf7-list-item-label {
    margin-right: 8px;
    font-weight: 600;
    color: #242628;
}
.wpcf7-not-valid-tip {
    font-size: 1rem;
}
.wpcf7-response-output {
    background-color: var(--wp--preset--color--drsg-pink);
    box-sizing: border-box;
    padding: 16px!important;
    border: none!important;
    border-radius: 12px;
    color: var(--wp--preset--color--drsg-green-black);
    margin: 16px 0 0 0 !important;
}
.donate-group > div {
    width: 100%;
    max-width: 1024px;
}