.ColorBlackImp {
    color: #000 !important;
}

.ColorRedImp {
    color: #DF0000 !important;
}

.ColorBlueImp {
    color: #465dff !important;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
}

.PageLoadNewStyle {
    align-items: center;
    justify-content: center;
    display: flex;
    position: fixed;
    _position: absolute;
    top: 0;
    _top: expression(eval(document.body.scrollTop));
    right: 0;
    left: 0;
    width: 100%;
    filter: alpha(opacity=40);
    background-color: #ffffff;
    color: #293085;
    height: 100%;
    font-size: 24pt;
    font-family: Arial;
    z-index: 2000;
    font-family: -webkit-pictograph;
    /* padding-top: 20%;*/
}

.PageLoadNewStyle span {
    margin-top: 0px;
    font-family: Apercu, sans-serif;
    color: #293085;
    font-size: 30px;
    line-height: 30px;
    letter-spacing: -0.5px;
    display: block;
    max-width: 60%;
}

.displayNone {
    display: none;
}

.displayNoneImp {
    display: none !important;
}

/* Task19253_19262-560574 (spec section 4): breed / coverage page template styles */
.breed-page-container {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 20px;
}

.breed-page .breadcrumb {
    margin-bottom: 24px;
    font-family: Apercu, sans-serif;
    font-size: 14px;
    color: #7a7f9a;
}

.breed-page .breadcrumb a {
    color: #465dff;
    text-decoration: none;
}

.breed-page .breadcrumb a:hover {
    text-decoration: underline;
}

.breed-page .breadcrumb .breadcrumb-sep {
    margin: 0 8px;
    color: #b7bacb;
}

.breed-page .breadcrumb .breadcrumb-current {
    color: #293085;
    font-weight: 600;
}

.breed-intro {
    margin-bottom: 24px;
}

.breed-hero-button {
    margin-bottom: 32px;
}

.breed-image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    border-radius: 16px;
    margin: 8px 0 32px;
}

.related-breeds-grid {
    display: flex;
    flex-flow: row wrap;
    gap: 16px;
    width: 100%;
    margin-top: 16px;
}

.related-breed-card {
    flex: 1 1 0;
    min-width: 180px;
    padding: 18px 20px;
    border: 1px solid #e3e5f0;
    border-radius: 12px;
    text-align: center;
    text-decoration: none;
    color: #293085;
    font-family: Apercu, sans-serif;
    font-weight: 600;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.related-breed-card:hover {
    border-color: #465dff;
    box-shadow: 0 4px 14px rgba(70, 93, 255, .12);
}

/* breed hub (/dog-breeds) — auto-built card grid + how-to-get-covered steps (spec section 6) */
.breed-hub-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 20px;
    margin: 20px 0 8px;
}

.breed-hub-card {
    display: block;
    background: #fff;
    border: 1px solid #e3e5f0;
    border-radius: 14px;
    overflow: hidden;
    text-decoration: none;
    color: #293085;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.breed-hub-card:hover {
    border-color: #465dff;
    box-shadow: 0 6px 18px rgba(70, 93, 255, .14);
    transform: translateY(-2px);
}

.breed-hub-card-img {
    display: block;
    width: 100%;
    height: 160px;
    object-fit: cover;
}

.breed-hub-card-img.placeholder {
    background: linear-gradient(135deg, #e9e8ef, #d7d6e3);
}

.breed-hub-card-name {
    padding: 14px 16px;
    text-align: center;
    font-family: Apercu, sans-serif;
    font-weight: 600;
}

.breed-hub-steps {
    display: flex;
    flex-flow: row wrap;
    gap: 20px;
    margin: 16px 0 8px;
}

.breed-hub-step {
    flex: 1 1 220px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 18px 20px;
    border: 1px solid #e3e5f0;
    border-radius: 12px;
}

.breed-hub-step-num {
    flex: 0 0 auto;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #465dff;
    color: #fff;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

.breed-hub-step-text {
    font-family: Apercu, sans-serif;
    line-height: 1.5;
}

/* homepage internal-links block (spec section 8) */
.home-explore-section {
    padding: 40px 30px;
}

.home-explore-container {
    max-width: 1000px;
    margin: 0 auto;
}

.home-explore-container .body-paragraph {
    line-height: 1.65;
}

/* breed page vertical rhythm (spec section 4) — give the sections room to breathe */
.breed-page {
    padding-top: 56px;
}

.breed-page .heading-1 {
    margin-bottom: 20px;
}

.breed-page .secondary-heading {
    margin-top: 48px;
    margin-bottom: 14px;
}

.breed-page .body-paragraph {
    margin-bottom: 22px;
    line-height: 1.65;
}

.breed-page .breed-faqs {
    margin-top: 20px;
}

.breed-faqs.accordion.faqs {
    display: block;
}

.breed-faqs .accordion-item {
    display: block;
    width: 100%;
    margin-bottom: 12px;
}

/* pull the CTA + related block together on breed pages (global .home-cta-section stays untouched) */
.breed-cta-section {
    padding-top: 16px;
    padding-bottom: 28px;
}

.related-breeds {
    padding: 0 0 64px;
    margin-top: 0;
}

.related-breeds .secondary-heading {
    margin-top: 0;
    text-align: center;
}

.related-breeds .related-breeds-grid {
    justify-content: center;
}