#pb-customer-access .pb-access-hero {
    margin-bottom: 28px;
    padding: 30px;
    border: 1px solid #ddd;
    border-radius: 4px;
    background: #fff;
}

#pb-customer-access .pb-access-intro {
    max-width: 760px;
    margin: 12px 0 20px;
    font-size: 18px;
    line-height: 1.55;
}

#pb-customer-access .pb-access-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 20px;
}

#pb-customer-access .pb-access-trial {
    margin: 0 0 20px;
    color: #1e91cf;
    font-size: 18px;
    line-height: 1.5;
}

#pb-customer-access .pb-access-path {
    margin-bottom: 30px;
}

#pb-customer-access .pb-access-path ol {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    padding: 0;
    list-style: none;
    counter-reset: pb-access-step;
}

#pb-customer-access .pb-access-path li {
    min-height: 92px;
    padding: 16px;
    border: 1px solid #ddd;
    border-radius: 4px;
    counter-increment: pb-access-step;
    font-size: 18px;
    line-height: 1.45;
}

#pb-customer-access .pb-access-path li::before {
    content: counter(pb-access-step);
    display: block;
    margin-bottom: 8px;
    color: #2e8b57;
    font-size: 22px;
    font-weight: 700;
}

@media (max-width: 767px) {
    #pb-customer-access .pb-access-hero {
        padding: 20px;
    }

    #pb-customer-access .pb-access-path ol {
        grid-template-columns: 1fr;
    }
}

/* PB Studio homepage – Printing Buddy visual treatment */

/* Welcome panel */
#pb-customer-access .pb-access-hero {
    padding: 30px;
    border: 1px solid #d7e5ec;
    border-top: 5px solid #00aeef;
    border-radius: 6px;
    background: #eef6fa;
    box-shadow: 0 3px 12px rgba(27, 55, 75, 0.08);
}

#pb-customer-access .pb-access-hero h1 {
    margin-top: 0;
    color: #18354a;
}

#pb-customer-access .pb-access-trial {
    color: #007fae;
}

/* Four-step pathway */
#pb-customer-access .pb-access-path li {
    box-sizing: border-box;
    min-height: 145px;
    padding: 18px;
    border-width: 1px;
    border-style: solid;
    border-top-width: 5px;
    border-radius: 6px;
    color: #243746;
    font-size: 18px;
    line-height: 1.45;
    box-shadow: 0 3px 10px rgba(27, 55, 75, 0.07);
}

/* Number badges */
#pb-customer-access .pb-access-path li::before {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    margin-bottom: 14px;
    border-radius: 50%;
    color: #fff;
    font-size: 22px;
    font-weight: 700;
}

/* Step 1 – Cyan */
#pb-customer-access .pb-access-path li:nth-child(1) {
    border-color: #b9eaf7;
    border-top-color: #00aeef;
    background: #e5f8fd;
}

#pb-customer-access .pb-access-path li:nth-child(1)::before {
    background: #00aeef;
}

/* Step 2 – Magenta */
#pb-customer-access .pb-access-path li:nth-child(2) {
    border-color: #f4bddb;
    border-top-color: #ec008c;
    background: #fde6f2;
}

#pb-customer-access .pb-access-path li:nth-child(2)::before {
    background: #ec008c;
}

/* Step 3 – Yellow */
#pb-customer-access .pb-access-path li:nth-child(3) {
    border-color: #eee48c;
    border-top-color: #fff200;
    background: #fffde0;
}

#pb-customer-access .pb-access-path li:nth-child(3)::before {
    color: #243746;
    background: #fff200;
}

/* Step 4 – Key grey */
#pb-customer-access .pb-access-path li:nth-child(4) {
    border-color: #d4d4d4;
    border-top-color: #4a4a4a;
    background: #eeeeee;
}

#pb-customer-access .pb-access-path li:nth-child(4)::before {
    background: #4a4a4a;
}

/* Tablet layout */
@media (max-width: 991px) {
    #pb-customer-access .pb-access-path ol {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile layout */
@media (max-width: 767px) {
    #pb-customer-access .pb-access-path ol {
        grid-template-columns: 1fr;
    }
}

/* OpenCart top utility bar – telephone, account, wishlist and cart */
#top {
    min-height: 46px;
    border-bottom: 1px solid #d7e5ec;
    background: #eef6fa;
}

#top .container {
    padding-top: 5px;
    padding-bottom: 5px;
}

#top .btn-link,
#top-links a,
#top-links li {
    color: #18354a;
    font-size: 16px;
    font-weight: 600;
    line-height: 30px;
    text-shadow: none;
}

#top .btn-link i,
#top-links a i {
    margin-right: 5px;
    color: #007fae;
    font-size: 17px;
}

#top .btn-link:hover,
#top .btn-link:focus,
#top-links a:hover,
#top-links a:focus {
    color: #ec008c;
    text-decoration: none;
}

#top .dropdown-menu a {
    color: #243746;
    font-size: 15px;
    font-weight: 500;
    line-height: 22px;
}

#top .dropdown-menu a:hover,
#top .dropdown-menu a:focus {
    color: #18354a;
    background: #e5f8fd;
}
