.breed-summary {
    font-size: 11px!important
}

.breed-actions {
    grid-template-columns: repeat(3,minmax(0,1fr))!important
}

.breed-btn {
    font-size: 9px!important;
    min-height: 34px!important;
    padding: 7px 5px!important
}

.breed-content-card {
    margin-top: 18px!important
}

.breed-content-card h2 {
    font-size: 20px!important
}

.breed-content-card h3 {
    font-size: 16px!important;
    margin-top: 19px!important
}

.breed-content-card p,.breed-rich,.breed-rich p, .feature-list li,.care-list li {
    font-size: 11px!important
}

.breed-bottom-cta {
    flex-direction: column!important;
    align-items: stretch!important;
    padding: 16px!important;
}

.breed-bottom-actions {
    width: 100%!important
}

.breed-bottom-actions .breed-btn {
    flex: 1!important
}

.related-breeds {
    padding: 23px 0 30px!important
}

.related-grid {
    grid-template-columns: repeat(2,minmax(0,1fr))!important;
    gap: 8px!important
}

.related-breeds .pj-heading h2 {
    font-size: 20px!important
}
}

/* ================= ASIA PET SHOP HOMEPAGE V2 ================= */
.asia-home {
    background: #fff;
    color: #17345a;
    overflow: hidden
}

.ap-wrap {
    width: min(1160px,calc(100% - 34px));
    margin: 0 auto
}

.ap-trust-strip {
    background: #f7fbff;
    padding: 10px 0
}

.ap-trust-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 14px
}

.ap-trust-grid>div {
    background: #fff;
    border-radius: 13px;
    padding: 11px 12px;
    text-align: center;
    box-shadow: 0 3px 13px rgba(21,66,110,.08);
    border: 1px solid #edf2f7;
    font-size: 13px
}

.ap-trust-grid b {
    display: block;
    color: #0750a5
}

.ap-trust-grid span {
    color: #6c7890;
    font-size: 11px
}

.ap-hero {
    height: 390px;
    position: relative;
    overflow: hidden;
    background: #dff4ff
}

.ap-hero-slides,.ap-hero-slide,.ap-hero-overlay {
    position: absolute;
    inset: 0
}

.ap-hero-slide {
    background-size: cover;
    background-position: center;
    opacity: 0;
    transform: scale(1.03);
    transition: opacity .8s ease,transform 6s ease
}

.ap-hero-slide.is-active {
    opacity: 1;
    transform: scale(1)
}

.ap-hero-overlay {
    background: linear-gradient(90deg,rgba(255,255,255,.93) 0%,rgba(255,255,255,.84) 30%,rgba(255,255,255,.08) 61%,rgba(0,0,0,.02) 100%)
}

.ap-hero-content {
    height: 100%;
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center
}

.ap-hero-copy {
    width: 46%;
    padding: 18px 0 25px
}

.ap-kicker {
    display: inline-block;
    background: #ffd33d;
    color: #183b6a;
    border-radius: 18px;
    padding: 6px 12px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .8px;
    margin-bottom: 10px
}

.ap-hero-copy h1 {
    margin: 0;
    color: #12468d;
    font-size: 49px;
    line-height: .96;
    font-weight: 900;
    letter-spacing: -1.7px
}

.ap-hero-copy h1 strong {
    color: #ed326b
}

.ap-hero-copy p {
    max-width: 450px;
    color: #354963;
    font-size: 14px;
    line-height: 1.55;
    margin: 15px 0
}

.ap-actions {
    display: flex;
    gap: 10px
}

.ap-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 25px;
    padding: 11px 17px;
    font-weight: 800;
    font-size: 13px;
    text-decoration: none;
    box-shadow: 0 5px 15px rgba(0,0,0,.1)
}

.ap-btn .pz-svg-icon {
    width: 18px;
    height: 18px
}

.ap-btn-wa {
    background: #12bd68;
    color: #fff
}

.ap-btn-call {
    background: #ff7427;
    color: #fff
}

.ap-hero-trust {
    position: absolute;
    left: 0;
    bottom: 17px;
    display: flex;
    gap: 8px;
    flex-wrap: wrap
}

.ap-hero-trust span {
    background: rgba(255,255,255,.94);
    padding: 7px 11px;
    border-radius: 16px;
    color: #17345a;
    font-size: 10px;
    font-weight: 800;
    box-shadow: 0 2px 8px rgba(0,0,0,.08)
}

.ap-hero-arrow {
    position: absolute;
    z-index: 5;
    top: 50%;
    transform: translateY(-50%);
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: #164d8f;
    font-size: 27px;
    line-height: 1;
    box-shadow: 0 3px 12px rgba(0,0,0,.14);
    cursor: pointer
}

.ap-prev {
    left: 16px
}

.ap-next {
    right: 16px
}

.ap-dots {
    position: absolute;
    z-index: 5;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 6px
}

.ap-dots button {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    border: 1px solid #fff;
    background: rgba(255,255,255,.35);
    padding: 0
}

.ap-dots button.active {
    background: #fff;
    transform: scale(1.25)
}

.ap-features {
    padding: 14px 0 18px;
    background: #fff
}

.ap-feature-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 16px
}

.ap-feature {
    border-radius: 13px;
    min-height: 66px;
    padding: 14px 15px 14px 67px;
    position: relative;
    display: flex;
    align-items: center;
    box-shadow: 0 5px 16px rgba(18,57,92,.09);
    font-size: 13px;
    overflow: hidden;
}

.ap-feature:before {
    content: "";
    position: absolute;
    left: 17px;
    top: 50%;
    transform: translateY(-50%);
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: block;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 23px 23px;
    box-shadow: 0 2px 7px rgba(20,50,80,.10);
}

.ap-feature.pink {
    background: #fff0fa;
    color: #dc3188
}

.ap-feature.blue {
    background: #eaf7ff;
    color: #0783cf
}

.ap-feature.orange {
    background: #fff5ec;
    color: #f36f20
}

.ap-feature.green {
    background: #edfbf4;
    color: #0aa95a
}

/* Inline SVG icons â€” no Font Awesome or external icon library required */
.ap-feature.pink:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dc3188' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l2.1 4.4 4.9.7-3.5 3.4.8 4.9-4.3-2.3-4.3 2.3.8-4.9L5 8.1l4.9-.7L12 3z'/%3E%3C/svg%3E");
}

.ap-feature.blue:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230783cf' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v5c0 5.2-3.4 8.2-8 10-4.6-1.8-8-4.8-8-10V6l8-3z'/%3E%3Cpath d='M8.2 12l2.4 2.4 5.2-5.2'/%3E%3C/svg%3E");
}

.ap-feature.orange:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f36f20' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 6h11v11H3z'/%3E%3Cpath d='M14 10h4l3 3v4h-7z'/%3E%3Ccircle cx='7' cy='19' r='2'/%3E%3Ccircle cx='18' cy='19' r='2'/%3E%3Cpath d='M14 14h7'/%3E%3C/svg%3E");
}

.ap-feature.green:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230aa95a' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 11.5a8 8 0 01-8 8H8l-4 2v-4.2a8 8 0 1116-5.8z'/%3E%3Cpath d='M8 11.5h.01M12 11.5h.01M16 11.5h.01'/%3E%3C/svg%3E");
}

.ap-feature:hover:before {
    transform: translateY(-50%) scale(1.08);
    transition: transform .25s ease;
}

.ap-popular {
    padding: 3px 0 30px
}

.ap-heading {
    text-align: center;
    position: relative;
    padding: 0 100px
}

.ap-heading h2 {
    display: inline-block;
    margin: 0;
    color: #104891;
    font-size: 28px;
    font-weight: 900;
    vertical-align: middle
}

.ap-heading-paw {
    display: inline-block;
    color: #ff7c2c;
    font-size: 22px;
    margin: 0 10px;
    vertical-align: middle
}

.ap-heading-paw.pink-t {
    color: #ff3b73
}

.ap-heading p {
    margin: 3px 0 15px;
    color: #73819a;
    font-size: 12px
}

.ap-heading>a {
    position: absolute;
    right: 0;
    top: 0;
    background: #164e91;
    color: #fff;
    padding: 9px 13px;
    border-radius: 7px;
    text-decoration: none;
    font-size: 11px;
    font-weight: 800
}

.ap-tabs {
    display: flex;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
    margin: 8px 0 17px
}

.ap-tabs button {
    border: 1px solid #e1e7ee;
    background: #fff;
    color: #667389;
    border-radius: 20px;
    padding: 8px 15px;
    font-size: 11px;
    cursor: pointer;
    box-shadow: 0 2px 6px rgba(0,0,0,.03)
}

.ap-tabs button.active {
    background: #1267d5;
    color: #fff;
    border-color: #1267d5
}

.ap-breed-grid {
    display: grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap: 14px
}

.ap-breed-card {
    background: #fff;
    border: 1px solid #e3e7ec;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 13px rgba(22,49,80,.09);
    transition: .22s
}

.ap-breed-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 11px 25px rgba(22,49,80,.15)
}

.ap-breed-img {
    height: 239px;
    display: block;
    position: relative;
    background: #f1f4f7;
    overflow: hidden
}

.ap-breed-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: .45s
}

.ap-breed-card:hover img {
    transform: scale(1.045)
}

.ap-heart {
    position: absolute;
    right: 7px;
    top: 7px;
    background: #fff;
    color: #ef4f70;
    border-radius: 50%;
    width: 23px;
    height: 23px;
    text-align: center;
    line-height: 23px;
    font-size: 16px;
    box-shadow: 0 2px 7px rgba(0,0,0,.12)
}

.ap-available {
    position: absolute;
    left: 7px;
    bottom: 7px;
    background: #f23d64;
    color: #fff;
    border-radius: 5px;
    padding: 5px 8px;
    font-size: 9px;
    font-weight: 900
}

.ap-breed-body {
    text-align: center;
    padding: 8px 8px 10px
}

.ap-breed-body h3 {
    margin: 0 0 2px;
    font-size: 13px
}

.ap-breed-body h3 a {
    color: #1c304d;
    text-decoration: none
}

.ap-price {
    font-size: 11px;
    color: #6e7786;
    margin-bottom: 8px
}

.ap-wa {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: #13c96b;
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
    padding: 8px 5px;
    font-size: 10px;
    font-weight: 800
}

.ap-wa .pz-svg-icon {
    width: 15px;
    height: 15px
}

.ap-promos {
    padding: 2px 0 23px
}

.ap-promo-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 12px
}

.ap-promo {
    height: 189px;
    border-radius: 10px;
    overflow: hidden;
    display: block;
    position: relative;
    background: #eef5ff;
    box-shadow: 0 1px 3px rgb(0 0 0);
}

.ap-promo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.ap-promo:after {
    content: '';
    position: absolute;
    inset: 0;
    /* background: linear-gradient(90deg, rgb(141 141 141 / 42%), rgba(20, 15, 70, .02) 72%); */
}

.ap-promo span {
    position: absolute;
    z-index: 2;
    left: 18px;
    top: 18px;
    color: #fff;
    display: flex;
    flex-direction: column;
    max-width: 55%
}

.ap-promo b {
    font-size: 17px;
    text-transform: uppercase
}

.ap-promo em {
    display: inline-block;
    background: #7739cf;
    color: #ffffff;
    font-style: normal;
    font-weight: 900;
    border-radius: 5px;
    padding: 6px 11px;
    margin-top: 105px;
    width: max-content;
    font-size: 10px
}

.ap-about {
    padding: 28px 0 30px;
    background: linear-gradient(180deg,#fff 0%,#f8fbff 100%)
}

.ap-about-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 46px;
    align-items: center;
    background: #fff;
    border: 1px solid #e7edf5;
    border-radius: 22px;
    padding: 24px;
    box-shadow: 0 8px 30px rgba(21,56,95,.07)
}

.ap-about-media {
    position: relative;
    min-height: 335px;
    border-radius: 18px;
    overflow: visible;
    background: #eaf5ff;
    display: flex;
    align-items: center;
    justify-content: center
}

.ap-about-image {
    width: 100%;
    height: 335px;
    object-fit: cover;
    border-radius: 18px;
    display: block;
    box-shadow: 0 10px 26px rgba(20,56,100,.14);
    position: relative;
    z-index: 2
}

.ap-about-placeholder {
    width: 100%;
    height: 335px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: linear-gradient(135deg,#eaf6ff,#fff);
    color: #12539a;
    font-weight: 900;
    font-size: 30px;
    position: relative;
    z-index: 2
}

.ap-about-media:after {
    content: '';
    position: absolute;
    left: -12px;
    bottom: -12px;
    width: 110px;
    height: 110px;
    border-radius: 24px;
    background: #ffd436;
    opacity: .85;
    z-index: 1
}

.ap-about-ring {
    position: absolute;
    right: -10px;
    top: -12px;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    background: #ff3d72;
    opacity: .14;
    z-index: 1
}

.ap-about-badge {
    position: absolute;
    left: 16px;
    bottom: 16px;
    z-index: 4;
    background: #fff;
    border-radius: 30px;
    padding: 10px 14px;
    color: #114a8f;
    font-size: 11px;
    font-weight: 900;
    box-shadow: 0 6px 18px rgba(20,56,100,.14)
}

.ap-about-copy {
    padding: 6px 8px 8px 4px
}

.ap-about-kicker {
    display: inline-block;
    color: #ef5b25;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 1.3px;
    margin-bottom: 7px
}

.ap-about-copy h2 {
    margin: 0;
    color: #104891;
    font-size: 31px;
    line-height: 1.08;
    font-weight: 900
}

.ap-about-line {
    width: 64px;
    height: 4px;
    border-radius: 10px;
    background: linear-gradient(90deg,#ff7c2c,#ff3d72);
    margin: 13px 0 16px
}

.ap-about-copy p {
    color: #5f6d82;
    font-size: 13px;
    line-height: 1.7;
    margin: 0 0 12px
}

.ap-about-points {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 16px 0 18px
}

.ap-about-points span {
    background: #f1f8ff;
    color: #17518f;
    border: 1px solid #dcecf9;
    border-radius: 18px;
    padding: 7px 10px;
    font-size: 10px;
    font-weight: 800
}

.ap-about-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #1267d5;
    color: #fff;
    text-decoration: none;
    border-radius: 24px;
    padding: 11px 17px;
    font-size: 12px;
    font-weight: 900;
    box-shadow: 0 6px 16px rgba(18,103,213,.2)
}

.ap-about-btn span {
    font-size: 16px;
    line-height: 1
}

.ap-customers {
    padding: 0 0 22px
}

.ap-customer-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 5px
}

.ap-customer-track {
    display: flex;
    gap: 10px;
    overflow: hidden;
    scroll-behavior: smooth;
    flex: 1
}

.ap-customer {
    flex: 0 0 calc((100% - 60px)/7);
    height: 225px;
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    background: #eee
}

.ap-customer img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.ap-customer span {
    position: absolute;
    right: 7px;
    top: 7px;
    background: #fff;
    color: #f24971;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    text-align: center;
    line-height: 22px
}

.ap-customer-arrow {
    flex: 0 0 31px;
    width: 31px;
    height: 31px;
    border: 0;
    background: #103e75;
    color: #fff;
    border-radius: 50%;
    font-size: 23px;
    line-height: 1;
    cursor: pointer
}

.ap-no-customers {
    padding: 35px;
    text-align: center;
    color: #7d8798;
    border: 1px dashed #d8dee8;
    width: 100%
}

@media(max-width: 1050px) {
    .ap-wrap {
        width:min(960px,calc(100% - 24px))
    }

    .ap-breed-grid {
        grid-template-columns: repeat(4,1fr)
    }

    .ap-customer {
        flex-basis: calc((100% - 40px)/5)
    }

    .ap-hero-copy {
        width: 52%
    }

    .ap-hero {
        height: 365px
    }
}

@media(max-width: 760px) {
    .ap-about {
        padding:18px 0 24px
    }

    .ap-about-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 14px;
        border-radius: 16px
    }

    .ap-about-media {
        min-height: 245px
    }

    .ap-about-image,.ap-about-placeholder {
        height: 245px;
        border-radius: 14px
    }

    .ap-about-copy {
        padding: 0 4px 6px
    }

    .ap-about-copy h2 {
        font-size: 25px
    }

    .ap-about-copy p {
        font-size: 12px;
        line-height: 1.6
    }

    .ap-about-media:after {
        width: 78px;
        height: 78px;
        left: -6px;
        bottom: -6px
    }

    .ap-about-badge {
        font-size: 9px;
        left: 10px;
        bottom: 10px;
        padding: 8px 10px
    }

    .ap-about-points {
        gap: 6px
    }

    .ap-about-points span {
        font-size: 9px;
        padding: 6px 8px
    }

    .ap-about-btn {
        font-size: 11px;
        padding: 10px 14px
    }

    .ap-trust-grid {
        grid-template-columns: repeat(2,1fr);
        gap: 8px
    }

    .ap-trust-grid>div {
        font-size: 11px
    }

    .ap-trust-grid span {
        font-size: 9px
    }

    .ap-hero {
        height: 500px
    }

    .ap-hero-overlay {
        background: linear-gradient(90deg,rgba(255,255,255,.94),rgba(255,255,255,.60))
    }

    .ap-hero-content {
        align-items: flex-start;
        padding-top: 36px
    }

    .ap-hero-copy {
        width: 100%;
        max-width: 420px
    }

    .ap-hero-copy h1 {
        font-size: 42px
    }

    .ap-hero-copy p {
        font-size: 12px;
        max-width: 360px
    }

    .ap-hero-trust {
        bottom: 18px;
        left: 12px;
        right: 12px
    }

    .ap-hero-trust span {
        font-size: 8px;
        padding: 6px 8px
    }

    .ap-feature-grid {
        grid-template-columns: repeat(2,1fr);
        gap: 8px
    }

    .ap-feature {
        min-height: 58px;
        padding: 10px 8px 10px 47px;
        font-size: 10px
    }

    .ap-feature:before {
        left: 9px;
        width: 30px;
        height: 30px;
        font-size: 14px
    }

    .ap-heading {
        padding: 0
    }

    .ap-heading h2 {
        font-size: 23px
    }

    .ap-heading>a {
        position: static;
        display: inline-block;
        margin-top: 6px
    }

    .ap-tabs {
        justify-content: flex-start;
        overflow: auto;
        flex-wrap: nowrap;
        padding-bottom: 5px
    }

    .ap-tabs button {
        white-space: nowrap
    }

    .ap-breed-grid {
        grid-template-columns: repeat(2,1fr);
        gap: 9px
    }

    .ap-breed-img {
        height: 145px
    }

    .ap-breed-body h3 {
        font-size: 12px
    }

    .ap-wa {
        font-size: 9px
    }

    .ap-promos {
        padding-top: 0
    }

    .ap-promo-grid {
        grid-template-columns: 1fr;
        gap: 9px
    }

    .ap-promo {
        height: 125px
    }

    .ap-customer {
        flex: 0 0 calc((100% - 10px)/2);
        height: 155px
    }

    .ap-customer-arrow {
        flex-basis: 28px;
        width: 28px;
        height: 28px
    }

    .ap-btn {
        font-size: 11px;
        padding: 10px 12px
    }
}

@media(max-width: 420px) {
    .ap-hero-copy h1 {
        font-size:36px
    }

    .ap-hero {
        height: 465px
    }

    .ap-actions {
        flex-direction: column;
        max-width: 205px
    }

    .ap-breed-grid {
        grid-template-columns: repeat(2,minmax(0,1fr))
    }

    .ap-breed-img {
        height: 170px;
    }

    .ap-feature b {
        font-size: 9px
    }
}

/* Final feature-icon mobile sizing */
@media(max-width: 700px) {
    .ap-feature {
        padding-left:47px !important;
    }

    .ap-feature:before {
        left: 9px !important;
        width: 30px !important;
        height: 30px !important;
        background-size: 18px 18px !important;
    }
}

@media(max-width: 420px) {
    .ap-feature {
        min-height:58px !important;
        padding-left: 43px !important;
    }

    .ap-feature:before {
        left: 7px !important;
        width: 28px !important;
        height: 28px !important;
        background-size: 17px 17px !important;
    }
}

/* Header/footer matching Asia Pets reference */
.pz-top {
    background: #5148b8!important;
    color: #fff!important;
    font-size: 11px!important
}

.pz-top-inner {
    min-height: 28px!important
}

.ap-top-left,.ap-top-social {
    display: flex;
    align-items: center;
    gap: 18px
}

.ap-top-social {
    gap: 11px
}

.ap-top-social span {
    font-size: 9px
}

.ap-top-social a {
    color: #fff;
    display: inline-flex
}

.ap-top-social .pz-svg-icon {
    width: 14px!important;
    height: 14px!important
}

.top-contact,.top-email,.top-location {
    color: #fff!important;
    text-decoration: none!important;
    display: inline-flex;
    align-items: center;
    gap: 5px
}

.top-contact .pz-svg-icon,.top-email .pz-svg-icon {
    width: 12px!important;
    height: 12px!important
}

.pz-header {
    background: #fff!important;
    box-shadow: 0 2px 8px rgba(20,46,80,.08)!important
}

.pz-nav {
    min-height: 55px!important
}

.pz-logo {
    max-height: 48px!important;
    width: auto!important
}

.pz-menu {
    gap: 6px!important
}

.pz-menu>a {
    color: #182d4b!important;
    font-size: 11px!important;
    font-weight: 800!important;
    padding: 10px 10px!important;
    border-radius: 20px
}

.pz-menu>a.active,.pz-menu>a:hover {
    background: #e1f5ff!important;
    color: #0759a8!important
}

.pz-head-cta {
    background: #ffc400!important;
    color: #172c50!important;
    border-radius: 24px!important;
    font-size: 11px!important;
    font-weight: 900!important;
    padding: 10px 16px!important;
    box-shadow: 0 3px 9px rgba(255,196,0,.24)
}

.pz-head-cta .pz-svg-icon {
    width: 18px!important;
    height: 18px!important
}

.pz-search-link {
    background: #f3f6fa!important;
    border-radius: 50%!important;
    width: 34px!important;
    height: 34px!important;
    padding: 8px!important
}

.ap-footer {
    position: relative;
    background: linear-gradient(180deg,#064c9b,#062b59)!important;
    color: #fff!important;
    margin-top: 20px
}

.ap-footer .pz-footer-grid {
    position: relative;
    z-index: 2;
    padding-top: 52px!important;
    padding-bottom: 28px!important
}

.ap-footer-wave {
    position: absolute;
    top: -18px;
    left: 0;
    right: 0;
    height: 30px;
    background: #0a58b7;
    clip-path: ellipse(62% 65% at 50% 100%)
}

.ap-footer .pz-footer-brand img {
    max-width: 125px!important
}

.ap-footer h3 {
    color: #fff!important;
    font-size: 13px!important;
    margin-bottom: 12px!important
}

.ap-footer p,.ap-footer li,.ap-footer a {
    font-size: 17px!important;
    line-height: 1.55!important;
    font-style: inherit;
}

.ap-footer li a {
    color: #fff!important
}

.ap-footer .pz-svg-icon {
    width: 27px!important;
    height: 20px!important;
}

.ap-footer-contact {
    display: flex;
    flex-direction: column;
    gap: 12px
}

.ap-footer-contact>a {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    border-radius: 54px;
    padding: 19px 68px;
    text-decoration: none;
    background: #0ac66a;
    color: #fff!important
}

.ap-footer-contact>a:last-child {
    background: #0b4d8e;
    border: 1px solid rgba(255,255,255,.22)
}

.ap-footer-contact>a .pz-svg-icon {
    width: 28px!important;
    height: 28px!important
}

.ap-footer-contact b,.ap-footer-contact small {
    display: block;
}

.ap-footer-contact b {
    font-size: 10px
}

.ap-footer-contact small {
    font-size: 14px!important;
}

.ap-footer-bottom {
    background: rgba(0,0,0,.18)!important
}

.ap-footer-bottom .pz-wrap {
    font-size: 9px!important
}

.ap-footer-bottom span {
    float: right
}

@media(max-width: 900px) {
    .ap-top-left {
        gap:8px
    }

    .top-location {
        display: none
    }

    .pz-menu>a {
        padding: 9px 7px!important
    }

    .ap-footer .pz-footer-grid {
        grid-template-columns: repeat(2,1fr)!important
    }

    .ap-footer-contact {
        grid-column: 1/-1;
        flex-direction: row
    }

    .ap-footer-contact>a {
        flex: 1
    }
}

@media(max-width: 700px) {
    .pz-top-inner {
        padding:5px 12px!important
    }

    .ap-top-left {
        font-size: 9px
    }

    .top-email {
        display: none
    }

    .ap-top-social {
        margin-left: auto
    }

    .pz-nav {
        padding: 7px 12px!important
    }

    .pz-logo {
        max-height: 42px!important
    }

    .pz-menu {
        background: #fff!important
    }

    .pz-head-cta {
        padding: 8px 10px!important;
        font-size: 9px!important
    }

    .pz-head-cta span {
        display: none
    }

    .pz-menu>a {
        font-size: 12px!important
    }

    .ap-footer .pz-footer-grid {
        grid-template-columns: 1fr 1fr!important
    }

    .ap-footer-brand {
        grid-column: 1/-1
    }

    .ap-footer-contact {
        grid-column: 1/-1;
        flex-direction: column
    }

    .ap-footer-bottom span {
        float: none;
        display: block;
        margin-top: 5px
    }
}

/* v7 footer legal links */
.ap-footer .pz-footer-bottom a {
    color: #fff;
    text-decoration: none
}

.ap-footer .pz-footer-bottom a:hover {
    text-decoration: underline
}


/* Asia Pet Shop responsive conversion fixes */
.ap-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.ap-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}
.ap-contact-form-card,.ap-contact-info-card{padding:30px!important}
.ap-contact-kicker{font-size:10px;font-weight:900;letter-spacing:1.5px;color:#7337d5;margin-bottom:6px}
.ap-contact-intro{font-size:12px!important;line-height:1.6!important;margin:-2px 0 20px!important}
.ap-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ap-contact-form label{display:block;font-size:11px;font-weight:800;color:#26344a;margin:3px 0 5px}.ap-contact-form label em{color:#ef3d64;font-style:normal}.ap-contact-form input,.ap-contact-form textarea{font-size:12px!important;border-radius:8px!important;padding:12px!important}.ap-contact-submit{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;font-size:12px!important;cursor:pointer}.ap-contact-submit:disabled{opacity:.65;cursor:wait}
.ap-info-item{display:flex;align-items:flex-start;gap:12px;padding:13px 0;border-bottom:1px solid #eee;text-decoration:none;color:inherit}.ap-info-item svg{width:24px;height:24px;flex:0 0 auto;color:#7437d4}.ap-info-item b,.ap-info-item span{display:block}.ap-info-item b{font-size:11px;color:#172a44;margin-bottom:3px}.ap-info-item span{font-size:11px;line-height:1.5;color:#68758a}.ap-contact-actions,.ap-thank-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.ap-contact-actions a,.ap-thank-actions a{display:flex;align-items:center;justify-content:center;gap:7px;border-radius:9px;padding:12px;text-decoration:none;color:#fff;font-size:11px;font-weight:900}.ap-contact-wa{background:#13bd68}.ap-contact-call{background:#ff7626}.ap-thank-home{background:#6337d7}.ap-contact-map{margin-top:18px;border-radius:10px;overflow:hidden;border:1px solid #e7e4ed}.ap-contact-map iframe{display:block;width:100%!important;max-width:100%;min-height:290px;border:0}.ap-form-alert{margin:0 0 18px;padding:13px 15px;border-radius:9px;font-size:12px;font-weight:700}.ap-form-alert.is-error{background:#fff0f2;color:#a61c38;border:1px solid #ffd1d9}.ap-form-alert.is-success{background:#eafaf1;color:#087c45;border:1px solid #bcebd1}.ap-thank-page{min-height:55vh;display:flex;align-items:center}.ap-thank-card{max-width:720px;margin:0 auto;background:#fff;border:1px solid #ebe5dc;border-radius:18px;padding:55px 30px;text-align:center;box-shadow:0 15px 45px rgba(20,20,50,.08)}.ap-thank-icon{width:72px;height:72px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#e8faf1;color:#0bb768;font-size:36px;font-weight:900}.ap-thank-card h1{font-size:38px;color:#182e54;margin:0 0 8px}.ap-thank-card p{max-width:560px;margin:0 auto;color:#68758a;line-height:1.7;font-size:13px}
.pz-float{gap:8px!important}.pz-float-call{display:flex!important;background:#ff7626!important}.pz-float-wa{background:#13bd68!important}
@media(max-width:760px){
 .ap-contact-grid{grid-template-columns:1fr;gap:14px}.ap-contact-form-card,.ap-contact-info-card{padding:20px!important}.ap-form-row{grid-template-columns:1fr;gap:0}.ap-contact-map iframe{min-height:250px}.ap-thank-card{padding:40px 20px}.ap-thank-card h1{font-size:31px}.ap-thank-actions{grid-template-columns:1fr}.pz-float{left:10px;right:10px;bottom:10px;justify-content:stretch;gap:8px}.pz-float a{flex:1;justify-content:center;min-height:42px;padding:10px 12px!important;font-size:11px!important}.pz-float .pz-svg-icon{width:18px;height:18px}
}
@media(max-width:480px){.ap-hero{height:auto;min-height:520px;background:#f7f7fb}.ap-hero-slide{background-size:contain!important;background-repeat:no-repeat!important;background-position:center top!important;transform:none!important}.ap-hero-overlay{background:linear-gradient(180deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,.52) 55%,rgba(255,255,255,.94) 100%)}.ap-hero-content{min-height:520px;padding:220px 10px 78px!important;align-items:flex-end}.ap-hero-copy{max-width:none!important}.ap-hero-copy h1{font-size:34px!important;line-height:1!important}.ap-hero-copy p{font-size:11px!important;line-height:1.45!important;margin:9px 0!important}.ap-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.ap-btn{justify-content:center;padding:10px 8px!important;font-size:10px!important}.ap-hero-trust{display:none}.ap-hero-arrow{width:30px;height:30px;font-size:22px}.ap-prev{left:8px}.ap-next{right:8px}.ap-contact-actions{grid-template-columns:1fr}.ap-contact-submit{font-size:12px!important}.ap-contact-map iframe{min-height:220px}}

/* ==========================================================
   Asia Pet Shop - FINAL MOBILE RESPONSIVE FIXES
   Fixes: mobile hero/banner, footer CTA overlap, copyright strip
   ========================================================== */

.pz-footer-bottom{
    position:relative;
    z-index:5;
    display:block;
    width:100%;
    clear:both;
    overflow:visible;
}

.pz-footer-bottom .pz-wrap{
    display:block;
    width:min(1180px,calc(100% - 24px));
    margin:0 auto;
    line-height:1.55!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
}

@media (max-width:760px){
    /* Footer layout */
    .ap-footer .pz-footer-grid{
        grid-template-columns:1fr 1fr!important;
        gap:14px!important;
        padding:42px 0 18px!important;
    }

    .ap-footer-brand{
        grid-column:1/-1!important;
    }

    .ap-footer p,
    .ap-footer li,
    .ap-footer a{
        font-size:11px!important;
        line-height:1.45!important;
    }

    .ap-footer h3{
        font-size:12px!important;
        margin-bottom:8px!important;
    }

    .ap-footer-brand img{
        width:105px!important;
        height:auto!important;
        max-width:105px!important;
    }

    .ap-footer .pz-svg-icon{
        width:18px!important;
        height:18px!important;
    }

    /* Footer Call + WhatsApp buttons: never overlap */
    .ap-footer-contact{
        grid-column:1/-1!important;
        display:flex!important;
        flex-direction:column!important;
        width:100%!important;
        gap:8px!important;
        margin-top:4px;
    }

    .ap-footer-contact>a,
    .ap-footer-contact>a:last-child{
        width:100%!important;
        min-width:0!important;
        min-height:48px!important;
        box-sizing:border-box!important;
        display:flex!important;
        align-items:center!important;
        justify-content:flex-start!important;
        gap:10px!important;
        padding:9px 14px!important;
        border-radius:14px!important;
        margin:0!important;
        overflow:hidden!important;
    }

    .ap-footer-contact>a .pz-svg-icon{
        flex:0 0 20px!important;
        width:20px!important;
        height:20px!important;
    }

    .ap-footer-contact>a>span{
        min-width:0!important;
        display:block!important;
        overflow:hidden!important;
    }

    .ap-footer-contact b{
        font-size:10px!important;
        line-height:1.2!important;
    }

    .ap-footer-contact small{
        font-size:9px!important;
        line-height:1.3!important;
        white-space:normal!important;
    }

    /* Copyright/legal strip must remain visible below footer content */
    .ap-footer .pz-footer-bottom,
    .pz-footer-bottom{
        position:relative!important;
        z-index:6!important;
        display:block!important;
        min-height:52px!important;
        margin:0!important;
        padding:11px 0 72px!important;
        background:#ff675d!important;
        text-align:center!important;
        box-sizing:border-box!important;
    }

    .ap-footer .pz-footer-bottom .pz-wrap,
    .pz-footer-bottom .pz-wrap{
        width:calc(100% - 20px)!important;
        margin:0 auto!important;
        padding:0!important;
        font-size:9px!important;
        line-height:1.6!important;
        color:#fff!important;
        white-space:normal!important;
        overflow-wrap:anywhere!important;
    }

    .ap-footer .pz-footer-bottom a{
        font-size:9px!important;
        line-height:1.6!important;
        color:#fff!important;
    }

    .ap-footer .pz-footer-bottom span{
        float:none!important;
        display:block!important;
        margin:4px 0 0!important;
    }

    /* Floating buttons stay inside the viewport and don't cover footer text */
    .pz-float{
        left:10px!important;
        right:10px!important;
        bottom:8px!important;
        gap:7px!important;
        z-index:99999!important;
    }

    .pz-float a{
        flex:1 1 0!important;
        min-width:0!important;
        min-height:42px!important;
        padding:9px 8px!important;
        justify-content:center!important;
        gap:5px!important;
        border-radius:22px!important;
        font-size:10px!important;
        white-space:nowrap!important;
        box-sizing:border-box!important;
    }

    .pz-float .pz-svg-icon{
        width:17px!important;
        height:17px!important;
        flex:0 0 17px!important;
    }

    /* Mobile home hero/banner: image gets a real visible banner area;
       text is kept below it instead of leaving a large blank/cropped area. */
    .ap-hero{
        height:360px!important;
        min-height:360px!important;
        background:#f7f7fb!important;
    }

    .ap-hero-slide{
        background-size:100% auto!important;
        background-repeat:no-repeat!important;
        background-position:center top!important;
        transform:none!important;
    }

    .ap-hero-overlay{
        background:linear-gradient(180deg,
            rgba(255,255,255,0) 0%,
            rgba(255,255,255,.04) 28%,
            rgba(255,255,255,.66) 45%,
            rgba(255,255,255,.97) 68%,
            #fff 100%)!important;
    }

    .ap-hero-content{
        height:360px!important;
        min-height:360px!important;
        padding:125px 10px 16px!important;
        align-items:flex-end!important;
        box-sizing:border-box!important;
    }

    .ap-hero-copy{
        width:100%!important;
        max-width:none!important;
        padding:0!important;
    }

    .ap-kicker{
        font-size:8px!important;
        padding:5px 9px!important;
        margin-bottom:7px!important;
    }

    .ap-hero-copy h1{
        font-size:31px!important;
        line-height:1!important;
        letter-spacing:-.8px!important;
    }

    .ap-hero-copy p{
        max-width:100%!important;
        font-size:10px!important;
        line-height:1.4!important;
        margin:8px 0!important;
    }

    .ap-actions{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
        gap:7px!important;
        width:100%!important;
    }

    .ap-btn{
        min-width:0!important;
        width:100%!important;
        justify-content:center!important;
        box-sizing:border-box!important;
        padding:9px 6px!important;
        font-size:9px!important;
        gap:5px!important;
        white-space:nowrap!important;
    }

    .ap-btn .pz-svg-icon{
        width:15px!important;
        height:15px!important;
        flex:0 0 15px!important;
    }

    .ap-hero-trust{display:none!important}

    .ap-hero-arrow{
        width:28px!important;
        height:28px!important;
        font-size:21px!important;
    }
}

@media (max-width:380px){
    .ap-hero{
        height:345px!important;
        min-height:345px!important;
    }

    .ap-hero-content{
        height:345px!important;
        min-height:345px!important;
        padding-top:112px!important;
    }

    .ap-hero-copy h1{
        font-size:28px!important;
    }

    .ap-hero-copy p{
        font-size:9px!important;
    }

    .ap-btn{
        font-size:8px!important;
        padding:8px 4px!important;
    }

    .ap-footer .pz-footer-bottom,
    .pz-footer-bottom{
        padding-bottom:70px!important;
    }
}

/* ==========================================================
   FINAL MOBILE FOOTER OVERLAY FIX - 28 SEP 2026
   Keep fixed Call/WhatsApp bar clear of copyright/legal links.
   ========================================================== */
@media (max-width:760px){
    /* Give the legal/copyright area its own clear space. */
    .ap-footer .pz-footer-bottom,
    .pz-footer-bottom{
        position:relative!important;
        z-index:20!important;
        display:block!important;
        min-height:132px!important;
        height:auto!important;
        margin:0!important;
        padding:14px 0 108px!important;
        background:#ff675d!important;
        box-sizing:border-box!important;
        overflow:visible!important;
    }

    .ap-footer .pz-footer-bottom .pz-wrap,
    .pz-footer-bottom .pz-wrap{
        position:relative!important;
        z-index:21!important;
        width:calc(100% - 18px)!important;
        max-width:none!important;
        margin:0 auto!important;
        padding:0!important;
        font-size:9px!important;
        line-height:1.55!important;
        text-align:center!important;
        color:#fff!important;
        white-space:normal!important;
        overflow:visible!important;
        overflow-wrap:anywhere!important;
    }

    .ap-footer .pz-footer-bottom a,
    .ap-footer .pz-footer-bottom span{
        position:relative!important;
        z-index:22!important;
    }

    .ap-footer .pz-footer-bottom a{
        display:inline!important;
        font-size:9px!important;
        line-height:1.7!important;
        color:#fff!important;
        text-decoration:underline!important;
        white-space:normal!important;
    }

    .ap-footer .pz-footer-bottom span{
        float:none!important;
        display:block!important;
        margin:5px 0 0!important;
        line-height:1.5!important;
    }

    /* Fixed action bar: compact and always inside viewport. */
    .pz-float{
        position:fixed!important;
        left:8px!important;
        right:8px!important;
        bottom:7px!important;
        width:auto!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
        z-index:999999!important;
        display:flex!important;
        gap:6px!important;
        box-sizing:border-box!important;
        pointer-events:none!important;
    }

    .pz-float a{
        pointer-events:auto!important;
        flex:1 1 0!important;
        width:0!important;
        min-width:0!important;
        max-width:none!important;
        min-height:42px!important;
        height:42px!important;
        padding:8px 7px!important;
        margin:0!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        gap:5px!important;
        box-sizing:border-box!important;
        border-radius:23px!important;
        font-size:10px!important;
        line-height:1!important;
        white-space:nowrap!important;
        overflow:hidden!important;
        text-overflow:ellipsis!important;
    }

    .pz-float .pz-svg-icon{
        flex:0 0 16px!important;
        width:16px!important;
        height:16px!important;
        margin:0!important;
    }
}

@media (max-width:380px){
    .ap-footer .pz-footer-bottom,
    .pz-footer-bottom{
        min-height:140px!important;
        padding-bottom:112px!important;
    }

    .pz-float{
        left:7px!important;
        right:7px!important;
        bottom:6px!important;
        gap:5px!important;
    }

    .pz-float a{
        min-height:40px!important;
        height:40px!important;
        padding:7px 5px!important;
        font-size:9px!important;
    }

    .pz-float .pz-svg-icon{
        width:15px!important;
        height:15px!important;
        flex-basis:15px!important;
    }
}
