/* am24 pages.css — Phase E, builder C (category, listing, auth, add-listing). Tokens only. */

/* ---------- shared: page frame ---------- */
body:not(.home-page) #content > h1,
body:not(.home-page) .listing-header h1 {
    font-family: var(--am24-font);
    font-size: 28px;
    line-height: 40px;
    font-weight: var(--am24-fw-head);
    color: var(--am24-text);
    margin: 0 0 var(--am24-s2);
}
.inside-container { max-width: var(--am24-container); }

/* ---------- category page ---------- */
#content { position: relative; }
.am24-count {
    position: absolute;
    top: 0; right: 0;
    height: 40px; line-height: 40px;
    font-size: var(--am24-fs-sm);
    color: var(--am24-muted);
    font-weight: 500;
}
#content > h1 { padding-right: 96px; }

/* sidebar cards */
aside.left .side_block {
    background: var(--am24-surface);
    border: 1px solid var(--am24-border);
    border-radius: var(--am24-radius);
    box-shadow: none;
    padding: var(--am24-s2);
    margin-bottom: var(--am24-s2);
}
aside.left .side_block > h3 {
    font-size: var(--am24-fs-sm);
    font-weight: var(--am24-fw-head);
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--am24-text);
    margin: 0 0 var(--am24-s1);
    padding: 0;
    background: none;
    border: 0;
}
aside.left .side_block a { color: var(--am24-accent); }
aside.left .side_block a:hover { color: var(--am24-accent-hover); }
aside.left .side_block ul { list-style: none; margin: 0; padding: 0; }
aside.left .side_block li { padding: 4px 0; font-size: var(--am24-fs-sm); }
aside.left .side_block .counter { color: var(--am24-muted); font-size: var(--am24-fs-xs); }
aside.left .categories-box ul { max-height: 360px; overflow: auto; }
aside.left .categories-box li a { color: var(--am24-text); }
aside.left .categories-box li a:hover { color: var(--am24-accent); }
aside.left .categories-box li span.counter,
aside.left .categories-box li > span { color: var(--am24-muted); }

/* For sale / Adoption switch */
.am24-typeswitch {
    display: flex;
    margin-bottom: var(--am24-s3) !important;
    background: var(--am24-surface-2);
    border-radius: var(--am24-radius-pill);
    padding: 4px;
    margin: 0 0 var(--am24-s2);
}
.am24-typeswitch a {
    flex: 1;
    text-align: center;
    min-height: 36px;
    line-height: 36px;
    border-radius: var(--am24-radius-pill);
    font-size: var(--am24-fs-sm);
    font-weight: 600;
    color: var(--am24-text) !important;
    text-decoration: none;
}
.am24-typeswitch a.active { background: var(--am24-accent); color: #fff !important; }

/* filter fieldsets */
.categoryFilter .fieldset > header {
    background: none;
    border: 0;
    padding: var(--am24-s1) 0;
    font-size: var(--am24-fs-sm);
    font-weight: 600;
    color: var(--am24-text);
    text-transform: none;
}
.categoryFilter .fieldset { border-top: 1px solid var(--am24-border); margin-top: var(--am24-s1); }
.categoryFilter .fieldset:first-child { border-top: 0; margin-top: 0; }
.categoryFilter .fieldset .body ul { max-height: 240px; overflow: auto; }
.categoryFilter .cf-apply a { font-weight: 600; }
.categoryFilter .ui-slider,
.categoryFilter .irs-line { background: var(--am24-surface-2); }
.categoryFilter .irs-bar,
.categoryFilter .ui-slider-range { background: var(--am24-accent); }
.categoryFilter .irs-slider,
.categoryFilter .ui-slider-handle {
    background: var(--am24-accent);
    border-color: var(--am24-accent);
}
.categoryFilter .slider-values { font-size: var(--am24-fs-xs); color: var(--am24-muted); }

/* sort + view toggle */
.grid_navbar { align-items: center; margin-bottom: var(--am24-s2); }
.grid_navbar .sorting .current {
    background: var(--am24-surface);
    border: 1px solid var(--am24-border);
    border-radius: var(--am24-radius-pill);
    padding: 0 var(--am24-s2);
    min-height: 40px;
    display: inline-flex; align-items: center; gap: 6px;
    font-size: var(--am24-fs-sm);
    color: var(--am24-text);
    cursor: pointer;
}
.grid_navbar .sorting .current .link { color: var(--am24-accent); font-weight: 600; }
.grid_navbar .sorting ul.fields {
    background: var(--am24-surface);
    border: 1px solid var(--am24-border);
    border-radius: var(--am24-radius-input);
    box-shadow: var(--am24-shadow-hover);
    padding: var(--am24-s1) 0;
}
.grid_navbar .sorting ul.fields a { color: var(--am24-text); }
.grid_navbar .sorting ul.fields a.active,
.grid_navbar .sorting ul.fields a:hover { color: var(--am24-accent); }
.grid_navbar .switcher .buttons > div span { background: var(--am24-muted); border-color: var(--am24-muted); }
.grid_navbar .switcher .buttons > div.active span,
.grid_navbar .switcher .buttons > div:hover span { background: var(--am24-accent); border-color: var(--am24-accent); }
.grid_navbar .switcher .buttons > div.active { border-color: var(--am24-accent); }
.grid_navbar .filter-icon { fill: none; stroke: var(--am24-accent); width: 28px; height: 28px; }

/* ---------- listing card (category, similar, home grid) ---------- */
section#listings .main-column,
section.similarListings .main-column {
    background: var(--am24-surface);
    box-shadow: none;
    border: 1px solid var(--am24-border);
    border-radius: var(--am24-radius);
    overflow: hidden;
    position: relative;
    transition: box-shadow .15s, transform .15s;
}
section#listings .main-column:hover { box-shadow: var(--am24-shadow-hover); }
section#listings div.picture { padding-bottom: 75%; border: 0; }
section#listings div.picture > img { background-color: var(--am24-surface-2); }
section#listings.grid ul.card-info { padding: 12px 14px 14px; }
section#listings ul.card-info a.link-large {
    color: var(--am24-text);
    font-weight: 600;
    font-size: 15px !important;
    line-height: 1.35;
}
section#listings ul.card-info a.link-large:hover { color: var(--am24-accent); }
section#listings.grid ul.card-info > li.title a {
    display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;
}
section#listings .fields { color: var(--am24-muted); }
section#listings .fields span {
    display: inline-block;
    background: var(--am24-surface-2);
    border-radius: var(--am24-radius-pill);
    padding: 2px 10px;
    margin: 0 4px 0 0;
    font-size: var(--am24-fs-xs);
    color: var(--am24-text);
}
section#listings .price-tag,
section#listings .price-tag > span {
    color: var(--am24-text);
    font-weight: var(--am24-fw-head);
    font-size: 18px;
}
section#listings div.picture > div.label {
    background: var(--am24-accent);
    color: #fff;
    border-radius: var(--am24-radius-pill);
    top: 8px; left: 8px;
    padding: 2px 10px;
    font-size: 11px;
    letter-spacing: .03em;
}
section#listings div.picture > span { border-color: rgba(255,255,255,.9); }
section#listings.grid .navigation-column {
    position: absolute;
    top: 8px; right: 8px;
    z-index: 3;
}
section#listings.grid ul.nav-column { margin: 0; padding: 0; }
section#listings.grid ul.nav-column > li.favorite,
section#listings.grid ul.nav-column > li:first-child {
    width: 36px; height: 36px; margin: 0;
    background: rgba(255,255,255,.95);
    border-radius: 50%;
    padding: 0;
    display: block;
}
section#listings ul.nav-column > li.favorite .icon,
section#listings.grid .icon {
    background: var(--am24-muted);
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E") center/20px no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E") center/20px no-repeat;
    width: 36px !important; height: 36px !important;
    top: 0 !important; left: 0 !important;
    opacity: 1;
}
section#listings ul.nav-column > li.favorite.remove .icon {
    background: var(--am24-accent);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E");
}
section#listings.grid ul.card-info > li.system { min-height: 28px; }

/* list view keeps working but in the same style */
section#listings.list .main-column { min-height: 160px; }
section#listings.list div.picture { width: 240px; height: 180px; padding-bottom: 0; }
section#listings.list .navigation-column { position: absolute; top: 12px; right: 12px; }
section#listings.list ul.nav-column > li.favorite { padding: 0; width: 36px; height: 36px; }
section#listings.list ul.nav-column > li.favorite .link { display: none; }
section#listings.list ul.card-info { padding: 12px 64px 12px 16px; }

/* ---------- pagination ---------- */
ul.pagination { gap: 8px; align-items: center; flex-wrap: wrap; margin-top: var(--am24-s3); }
ul.pagination li { list-style: none; }
ul.pagination li.navigator,
ul.pagination li.navigator a,
ul.pagination a.button {
    background: var(--am24-accent);
    border-radius: var(--am24-radius-pill);
    color: #fff;
}
ul.pagination li.navigator:hover,
ul.pagination li.navigator a:hover { background: var(--am24-accent-hover); }
ul.pagination input[type=text] {
    height: 40px; width: 56px; text-align: center;
    border: 1px solid var(--am24-border); border-radius: var(--am24-radius-input);
}
ul.pagination li.transit { color: var(--am24-text); }

/* ---------- listing page ---------- */
.listing-header { margin-bottom: var(--am24-s2); align-items: center; }
.listing-details .main-section,
.listing-details .content-section { background: transparent; }
.listing-details .price-tag,
.listing-details .price-tag > span {
    font-size: 32px;
    font-weight: var(--am24-fw-head);
    color: var(--am24-text);
    line-height: 1.2;
}
.listing-details .content-section .title,
.listing-details .content-section .fieldset > header,
.listing-details header {
    color: var(--am24-text);
    font-weight: 600;
}
.listing-details .fieldset > header {
    background: none; border: 0; border-bottom: 1px solid var(--am24-border);
    text-transform: none; font-size: var(--am24-fs-h3); padding: var(--am24-s1) 0;
}
.listing-details .fieldset > header .arrow { display: none; }
.listing-details .table-cell .name { color: var(--am24-muted); }
.listing-details .table-cell .value { color: var(--am24-text); }
.listing-details .table-cell { border-bottom: 1px solid var(--am24-border); padding: 8px 0; }
.listing-details a { color: var(--am24-accent); }

/* right column = sticky seller card + similar ads */
@media (min-width: 992px) {
    
    body.view-details-page aside.left { align-self: flex-start; }
    aside.left .seller-short { position: sticky; top: calc(var(--am24-header-h) + 16px); }
}
aside.left .seller-short .name,
aside.left .seller-short .name a { font-weight: var(--am24-fw-head); font-size: 18px; color: var(--am24-text); }
aside.left .seller-short .type { color: var(--am24-muted); font-size: var(--am24-fs-sm); }
aside.left .seller-short input[type=button],
aside.left .seller-short .button,
.seller-short .contact-owner,
.seller-short .call-owner {
    display: block;
    width: 100%;
    min-height: 48px;
    border-radius: var(--am24-radius-pill);
    background: var(--am24-accent);
    border: 0;
    color: #fff;
    font-weight: 600;
    font-family: var(--am24-font);
    cursor: pointer;
}
.seller-short .call-owner { background: var(--am24-surface); color: var(--am24-accent); border: 2px solid var(--am24-accent); }
.seller-short .contact-owner:hover { background: var(--am24-accent-hover); }
.seller-short .listings-button a.button { background: var(--am24-tint); color: var(--am24-accent); min-height: 36px; line-height: 36px; padding: 0 16px; width: auto; display: inline-block; }
.seller-short .row { margin: 0; }
.seller-short .row > [class*=col-] { padding: 0; }

/* similar ads */
section.similarListings .item { border-bottom: 1px solid var(--am24-border); }
section.similarListings a { color: var(--am24-text); font-weight: 600; }
section.similarListings a:hover { color: var(--am24-accent); }
section.similarListings .price-tag,
section.similarListings .price-tag > span { font-weight: var(--am24-fw-head); color: var(--am24-text); }
section.similarListings img { border-radius: var(--am24-radius-input); }

/* stay safe box (listing page, 3 steps) */
.am24-howbuy {
    background: var(--am24-tint);
    border-radius: var(--am24-radius);
    padding: var(--am24-s3);
    margin: var(--am24-s3) 0;
}
.am24-howbuy__title { font-size: var(--am24-fs-h3); font-weight: var(--am24-fw-head); margin: 0 0 var(--am24-s2); color: var(--am24-text); }
.am24-howbuy ol { list-style: none; counter-reset: s; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--am24-s2); }
.am24-howbuy li { counter-increment: s; position: relative; padding-top: 40px; font-size: var(--am24-fs-sm); color: var(--am24-text); }
.am24-howbuy li::before {
    content: counter(s);
    position: absolute; top: 0; left: 0;
    width: 32px; height: 32px; border-radius: 50%;
    background: var(--am24-accent); color: #fff;
    font-weight: 700; text-align: center; line-height: 32px;
}
.am24-howbuy li strong { display: block; margin-bottom: 4px; }
.am24-howbuy li span { color: var(--am24-muted); }

/* mobile sticky CTA (Nova component) */
.contact-owner-navbar {
    position: fixed; left: 0; bottom: 0; z-index: 100;
    background: var(--am24-surface) !important;
    border-top: 1px solid var(--am24-border);
    box-shadow: 0 -4px 16px rgba(16,24,16,.08);
}
.contact-owner-navbar .contact-owner,
.contact-owner-navbar .call-owner {
    min-height: 48px; border-radius: var(--am24-radius-pill); font-weight: 600; font-family: var(--am24-font);
    background: var(--am24-accent); color: #fff; border: 0;
}
.contact-owner-navbar .call-owner { background: var(--am24-surface); color: var(--am24-accent); border: 2px solid var(--am24-accent); }

/* ---------- login / registration / add listing ---------- */
body.login-page #content,
body.remind-page #content { max-width: 480px; margin-left: auto; margin-right: auto; float: none; }
body.login-page #content > h1,
body.remind-page #content > h1 { text-align: center; padding-right: 0; }
body.login-page #controller_area,
body.remind-page #controller_area {
    background: var(--am24-surface);
    border: 1px solid var(--am24-border);
    border-radius: var(--am24-radius);
    padding: var(--am24-s3);
}
#controller_area input[type=text],
#controller_area input[type=password],
#controller_area input[type=email],
#controller_area input[type=tel],
#controller_area input[type=number],
#controller_area select,
#controller_area textarea {
    border-radius: var(--am24-radius-input);
    border-color: var(--am24-border);
    background: var(--am24-surface);
    font-family: var(--am24-font);
    max-width: 100%;
}
#controller_area input[type=text],
#controller_area input[type=password],
#controller_area input[type=email],
#controller_area input[type=tel],
#controller_area input[type=number],
#controller_area select { min-height: 48px; }
#controller_area input:focus, #controller_area select:focus, #controller_area textarea:focus {
    border-color: var(--am24-accent); outline: 0; box-shadow: 0 0 0 3px var(--am24-tint);
}
#controller_area .submit-cell .name, #controller_area label { color: var(--am24-text); font-weight: 500; }
#controller_area a { color: var(--am24-accent); }
#controller_area input[type=submit],
#controller_area input[type=button].button,
#controller_area a.button,
#controller_area button.button {
    background: var(--am24-accent); color: #fff; border: 0;
    border-radius: var(--am24-radius-pill); min-height: 48px; padding: 0 var(--am24-s4);
    font-weight: 600; font-family: var(--am24-font);
}
#controller_area input[type=submit]:hover { background: var(--am24-accent-hover); }
body.registration-page #controller_area,
body.add-listing-page #controller_area,
.content-padding { background: transparent; }
#controller_area .fieldset > header { color: var(--am24-text); border-bottom: 1px solid var(--am24-border); background: none; }
#controller_area .fieldset > header .arrow { border-color: var(--am24-accent); }
.step_line, #step_line { color: var(--am24-muted); }
.plans-container .plan, .plan-item { border-radius: var(--am24-radius); }

/* ---------- mobile ---------- */
@media (max-width: 991px) {
    #content > h1 { font-size: 24px; padding-right: 72px; }
    body.view-details-page { padding-bottom: 88px; }
    .contact-owner-navbar-crossbar { display: block; }
    aside.left .seller-short { position: static; }
}
@media (max-width: 575px) {
    .am24-howbuy ol { grid-template-columns: 1fr; }
    section#listings .price-tag, section#listings .price-tag > span { font-size: 16px; }
    section#listings.grid ul.card-info { padding: 10px; }
    section#listings .fields span { padding: 1px 8px; }
    .listing-details .price-tag, .listing-details .price-tag > span { font-size: 26px; }
    .grid_navbar .sorting .current { min-height: var(--am24-tap); }
    body.login-page #controller_area { padding: var(--am24-s2); }
}

/* slider (bootstrap-slider in categoryFilter) */
.filter-area .slider .slider-track { background: var(--am24-surface-2) !important; box-shadow: none; }
.filter-area .slider .slider-selection { background: var(--am24-accent) !important; }
.filter-area .slider-handle,
.filter-area .slider-handle.custom {
    background: var(--am24-accent) !important;
    border-color: var(--am24-accent) !important;
    box-shadow: none !important;
}
.filter-area .slider-handle.custom::before { color: var(--am24-accent) !important; background: none; }
/* empty banner placeholder above content on inner pages */
body:not(.home-page) .header-banner-cont { display: none !important; }
aside.left .seller-short .listings-button a.button,
.seller-short .listings-button a.button {
    background: var(--am24-tint) !important; color: var(--am24-accent) !important; border: 0; font-weight: 600; text-transform: none;
}
@media (max-width: 575px) {
    #content > h1 { padding-right: 0; margin-bottom: 4px; }
    .am24-count { position: static; display: block; height: auto; line-height: 1.4; margin-bottom: var(--am24-s1); }
}
@media (max-width: 767px) {
    .listing-header h1 { padding-right: 0; }
    .grid_navbar .filter-icon {
        width: var(--am24-tap); height: var(--am24-tap); padding: 10px; margin: 0 var(--am24-s1) 0 0 !important;
        background: var(--am24-surface); border: 1px solid var(--am24-border); border-radius: 50%;
    }
    section#listings.grid ul.card-info > li.title a { -webkit-line-clamp: 2; }
}

/* heading margins beat the shorthand above */
@media (max-width: 767px) {
    body:not(.home-page) .listing-header { margin-left: 0; margin-right: 0; }
    .contact-owner-navbar { bottom: 56px; }
    body.view-details-page { padding-bottom: 150px; }
}
.listing-details #df_field_price, .listing-details #df_field_price > span, .listing-details #df_field_price a {
    font-weight: var(--am24-fw-head) !important; color: var(--am24-text) !important; font-family: var(--am24-font);
}
.listing-header .icons { display: flex; gap: 8px; justify-content: flex-end; }
.listing-header .icons a, .listing-header .icons > span.favorite { width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; }
.listing-header .icons span span, .listing-header .icons a > span, .listing-header .icons > span.favorite > span.icon {
    width: 24px !important; height: 24px !important; display: block; background: var(--am24-accent) !important;
    -webkit-mask-size: contain; mask-size: contain; -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center;
}
.listing-header .icons a.print > span { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M6 9V3h12v6M6 18H4v-8h16v8h-2M6 14h12v7H6z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M6 9V3h12v6M6 18H4v-8h16v8h-2M6 14h12v7H6z'/%3E%3C/svg%3E"); }
.listing-header .icons .favorite > span, .listing-header .icons .favorite span.icon { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E"); }
.listing-header .icons .favorite.remove > span, .listing-header .icons .favorite.remove span.icon { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E"); }

section.similarListings .favorite .icon, .side_block .favorite .icon {
    background: var(--am24-accent) !important; width: 22px; height: 22px !important;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E") center/contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E") center/contain no-repeat;
}
section.similarListings .favorite.remove .icon, .side_block .favorite.remove .icon { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' stroke='%23000' stroke-width='2' d='M12 21s-8-5.2-8-11a4.5 4.5 0 0 1 8-2.8A4.5 4.5 0 0 1 20 10c0 5.800-8 11-8 11z'/%3E%3C/svg%3E"); }

/* =====================================================================
   ROUND 2 (designer punch list 19-39)
   ===================================================================== */
:root { --am24-stage: #EDEBE6; }

/* --- title row: h1 + count (22) --- */
.am24-titlerow { display: flex; align-items: baseline; flex-wrap: wrap; gap: 12px; margin: 0 0 var(--am24-s2); }
.am24-titlerow > h1 { margin: 0 !important; padding: 0 !important; }
.am24-titlerow .am24-count { position: static; height: auto; line-height: 1.4; }
@media (max-width: 767px) { .am24-titlerow > h1, .am24-titlerow .am24-count { margin-left: 0 !important; margin-right: 0 !important; } }

/* --- cards (25, 26, 29) --- */
section#listings ul.card-info > li.title { margin-bottom: 6px; }
section#listings ul.card-info > li.fields { margin-bottom: 8px; }
section#listings ul.card-info > li.system.no-price { min-height: 0; height: 0; margin: 0; padding: 0; overflow: visible; }
section#listings.grid ul.card-info { padding-bottom: 14px; }
section#listings div.picture > div.label {
    background: var(--am24-surface); color: var(--am24-accent);
    font-size: 11px; font-weight: 600; line-height: 22px; height: 22px; padding: 0 10px;
    border-radius: var(--am24-radius-pill); box-shadow: 0 1px 4px rgba(16, 24, 16, .18); text-transform: none;
}
section#listings div.picture > span {
    display: inline-flex; align-items: center; min-width: 0; height: 24px; border: 0 !important;
    background: rgba(20, 24, 20, .62); color: #fff; border-radius: var(--am24-radius-pill);
    padding: 0 10px 0 28px; left: 8px; bottom: 8px;
    font-size: 12px; font-weight: 600;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2'%3E%3Cpath d='M4 8h3l2-3h6l2 3h3v11H4z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: 8px center; background-size: 14px;
}
section#listings div.picture > span:after { position: static; background: none; box-shadow: none; width: auto; height: auto; left: auto; top: auto; line-height: 1; color: #fff; font-size: 12px; }

/* --- pagination (21) --- */
ul.pagination { justify-content: center !important; gap: 8px; }
ul.pagination li.am24-page { margin: 0; }
ul.pagination li.am24-page a, ul.pagination li.am24-page > span, ul.pagination li.navigator a.button {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 40px; height: 40px; padding: 0 6px; border-radius: var(--am24-radius-input);
    font-size: 15px; font-weight: 600; text-decoration: none; box-sizing: border-box;
}
ul.pagination li.am24-page a { background: var(--am24-surface); border: 1px solid var(--am24-border); color: var(--am24-text); }
ul.pagination li.am24-page a:hover { border-color: var(--am24-accent); color: var(--am24-accent); }
ul.pagination li.am24-page.active > span { background: var(--am24-accent); color: #fff; border: 1px solid var(--am24-accent); }
ul.pagination li.am24-page.gap > span { color: var(--am24-muted); min-width: 24px; }
ul.pagination li.navigator a.button { background: var(--am24-surface); border: 1px solid var(--am24-border); color: var(--am24-text); font-size: 20px; }
ul.pagination li.navigator a.button:hover { border-color: var(--am24-accent); color: var(--am24-accent); background: var(--am24-surface); }

/* --- sidebar category list (23) + filter (24) + mobile filters button (27) --- */
.categories-bc a { font-size: 14px; color: var(--am24-muted) !important; }
.categories-bc .categories-box__arrow { fill: var(--am24-muted); width: 8px; height: 14px; }
.categories-box__parent { padding: 0 !important; min-height: 36px; }
.categories-box__parent > div { flex: 1; justify-content: space-between; }
.categories-box__parent-link { font-size: 15px; color: var(--am24-text) !important; }
.categories-box__parent-link:hover { color: var(--am24-accent) !important; }
.categories-box__parent-counter { font-size: 13px; color: var(--am24-muted); margin-left: auto !important; }
.categories-box__parent-counter span { color: var(--am24-muted); }
.categories-box__item.active .categories-box__parent-link, .categories-box__parent-link.active, .categories-box__parent.active .categories-box__parent-link { color: var(--am24-accent) !important; font-weight: 600; }
.categories-box__slide { padding-left: 0 !important; }
.categoryFilter .cf-apply { margin-top: 8px; }
.categoryFilter .cf-apply a {
    display: flex; align-items: center; justify-content: center; width: 100%; min-height: 44px;
    background: var(--am24-accent); color: #fff !important; border-radius: var(--am24-radius-pill); font-weight: 600; text-decoration: none;
}
.categoryFilter .cf-apply a:hover { background: var(--am24-accent-hover); }
.categoryFilter .cf-apply .counter { display: none; }
.categoryFilter .slider-values__min::before, .categoryFilter .slider-values__max::before { content: 'AED '; }
@media (max-width: 991px) {
    .grid_navbar .filter-icon { width: auto; min-width: var(--am24-tap); height: var(--am24-tap); border-radius: var(--am24-radius-pill); }
    .grid_navbar .hook { display: flex; align-items: center; }
}

/* --- listing page grid (30) --- */
@media (min-width: 992px) {
    body.view-details-page .inside-container > .row:not(.listing-header) {
        display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 32px; margin: 0; align-items: start;
    }
    body.view-details-page .inside-container > .row:not(.listing-header) > aside.left { grid-column: 2; grid-row: 1; width: auto; max-width: none; padding: 0; flex: none; position: sticky; top: 88px; align-self: start; }
    body.view-details-page .inside-container > .row:not(.listing-header) > section#content { grid-column: 1; grid-row: 1; width: auto; max-width: none; padding: 0; flex: none; }
    body.view-details-page aside.left { display: flex; flex-direction: column; }
    body.view-details-page aside.left .seller-short { position: static; }
}
body.view-details-page .listing-header { margin: 0 0 var(--am24-s3); align-items: flex-start; flex-wrap: nowrap; }
body.view-details-page .listing-header h1 { font-size: 28px; line-height: 36px; font-weight: 700; margin: 0; }
body.view-details-page .listing-header .col-md-2 { flex: 0 0 auto; width: auto; margin-left: auto; padding-right: 0; }
body.view-details-page .listing-header .icons { height: 36px; align-items: center; }
.am24-price { font-size: 32px; font-weight: 700; line-height: 1.2; color: var(--am24-text); font-family: var(--am24-font); }
.am24-chips { list-style: none; margin: 8px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.am24-chips li { background: var(--am24-surface-2); border-radius: var(--am24-radius-pill); padding: 4px 12px; font-size: var(--am24-fs-sm); color: var(--am24-text); }

/* buy box: sidebar seller card */
aside.left .am24-buybox { padding: var(--am24-s3); border-radius: var(--am24-radius); }
.am24-buybox .seller-short.row { display: flex; flex-direction: column; margin: 0; }
.am24-buybox .seller-short.row > div { width: 100%; max-width: none; flex: none; padding: 0; }
.am24-buybox .seller-short.row > .form { order: -1; margin: 16px 0; }
.am24-buybox .seller-short.row > .form > div { display: flex; flex-direction: column; gap: 12px; }
.am24-buybox .call-owner, .am24-buybox .contact-owner { margin: 0 !important; min-height: 48px; }
.am24-buybox .contact-owner { background: var(--am24-accent); color: #fff; }
.am24-buybox .seller-short .picture { display: none; }
.am24-buybox .seller-info { list-style: none; margin: 0; padding: 0; }
.am24-buybox .seller-info .name { font-size: 16px; }
.am24-buybox .owner-details { display: none; }
.am24-buybox .listings-button { margin-top: 8px; }
.am24-buybox .listings-button a.button { font-size: var(--am24-fs-sm); }
.am24-buybox .seller-info .about { display: none; }

/* --- gallery (31), desktop/tablet only: Nova swaps to a slider under 768px --- */
@media (min-width: 768px) {
    div.gallery > #media { padding-bottom: 0 !important; height: 480px; }
    div.gallery > #media .preview {
        height: 480px; background: var(--am24-stage); border-radius: var(--am24-radius);
        display: flex; align-items: center; justify-content: center; overflow: hidden; padding: 0;
    }
    div.gallery > #media img.default-picture {
        position: static !important; width: auto !important; height: auto !important; max-width: 100%; max-height: 100%;
        object-fit: contain; margin: 0; background: none !important; border-radius: 0;
    }
    div.gallery > #media iframe { position: absolute; inset: 0; width: 100%; height: 100%; }
    div.gallery > #media .nav-buttons { position: absolute; left: 12px; top: 12px; right: 12px; display: flex; justify-content: space-between; z-index: 3; pointer-events: none; }
    div.gallery > #media .nav-button {
        pointer-events: auto; background: var(--am24-surface) !important; color: var(--am24-text) !important; border-radius: var(--am24-radius-pill);
        padding: 0 14px; height: 32px; line-height: 32px; font-size: 13px; font-weight: 600; box-shadow: 0 1px 4px rgba(16, 24, 16, .18); opacity: 1; position: static;
    }
    div.gallery > div.thumbs { margin: 12px 0 0; padding: 0; }
    div.gallery > div.thumbs .f-carousel__viewport { margin: 0 !important; padding: 0; }
    div.gallery > div.thumbs .f-carousel__track { justify-content: flex-start; margin: 0 !important; padding: 0; gap: 8px; }
    div.gallery > div.thumbs .f-carousel__slide { width: 80px !important; height: 60px !important; flex: 0 0 80px; margin: 0 !important; padding: 0; border-radius: 8px; overflow: hidden; border: 2px solid transparent; box-sizing: border-box; }
    div.gallery > div.thumbs .f-carousel__slide.active { border-color: var(--am24-accent); }
    div.gallery > div.thumbs .f-carousel__slide img { width: 100%; height: 100%; object-fit: cover; display: block; }
    div.gallery > div.thumbs .f-button { display: none; }
}

/* --- details sections (36) --- */
.listing-details .fieldset > header::after, .listing-details .fieldset > header::before { display: none !important; }
.listing-details .fieldset > header span { display: none; }
.listing-details-stat { padding: 0; margin-top: var(--am24-s3); }
.listing-details-stat ul.controls { margin: 0 !important; padding: 0; list-style: none; }
.listing-details-stat .offset-sm-2 { margin-left: 0 !important; }
.listing-details-stat li { padding: 2px 0; }
.listing-details-stat #listing_rating_dom, .listing-details-stat #listing_rating_dom li { font-size: 13px; color: var(--am24-muted); }

/* --- similar ads (33) --- */
@media (min-width: 992px) {
    aside.left .similarListings ul.featured { display: block; margin: 0; }
    aside.left .similarListings ul.featured > li { display: grid !important; grid-template-columns: 96px 1fr; column-gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--am24-border); width: 100%; max-width: none; flex: none; }
    aside.left .similarListings ul.featured > li:last-child { border-bottom: 0; }
    aside.left .similarListings ul.featured .picture { width: 96px; height: 72px; padding: 0; position: relative; }
    aside.left .similarListings ul.featured .picture img { width: 96px; height: 72px; object-fit: cover; border-radius: 8px; display: block; position: static; }
    aside.left .similarListings ul.featured .card-info { display: flex; flex-direction: column; gap: 4px; padding: 0; min-width: 0; }
    aside.left .similarListings ul.featured .card-info li.title a { font-size: 14px; color: var(--am24-text); font-weight: 500; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
    aside.left .similarListings ul.featured .card-info li.fields { display: none; }
    aside.left .similarListings ul.featured .price_tag { display: flex; flex-direction: row-reverse; justify-content: space-between; align-items: center; font-size: 15px; font-weight: 700; }
    aside.left .similarListings ul.featured .price_tag span { color: var(--am24-text); }
}
@media (max-width: 991px) {
    .similarListings ul.featured { display: grid; grid-template-columns: 1fr 1fr; gap: 12px !important; margin: 0; }
    .similarListings ul.featured > li { width: 100%; max-width: none; padding: 0; background: var(--am24-surface); border: 1px solid var(--am24-border); border-radius: var(--am24-radius); overflow: hidden; }
    .similarListings ul.featured .picture img { width: 100%; height: auto; aspect-ratio: 4/3; object-fit: cover; }
    .similarListings ul.featured .card-info { padding: 8px 10px 10px; }
    .similarListings ul.featured .card-info li.title a { font-size: 13px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
}

/* --- get more details (34) --- */
.get_more_details { background: transparent !important; box-shadow: none !important; border: 0 !important; padding: 0 !important; }
.get_more_details > h3 { font-weight: 600; font-size: var(--am24-fs-h2); }
.get_more_details .row.seller-short > div:first-child:not(:last-child) { display: none; }
.get_more_details .row.seller-short > div { flex: 0 0 100%; max-width: 560px; padding: 0; }
.get_more_details .row.seller-short { margin: 0; }
.get_more_details #security_code, .get_more_details input[name=security_code] { width: 120px !important; height: 48px; }

/* --- recently viewed strip (35) --- */
#rv_listings .rv-container { display: flex; align-items: center; justify-content: center; gap: 16px; flex-wrap: nowrap; }
#rv_listings .rv_first, #rv_listings .rv_last { white-space: nowrap; width: auto; flex: 0 0 auto; }
#rv_listings .rv_items { display: flex; gap: 8px; flex: 0 1 auto; }
#rv_listings .rv_last { margin-left: auto; }
#rv_listings { background: var(--am24-surface); border-radius: var(--am24-radius); }
#rv_listings a { color: var(--am24-accent); }

/* --- mobile listing page (32) --- */
@media (max-width: 991px) {
    body.view-details-page .mb-menu, body.view-details-page .mobile-menu-bottom, body.view-details-page [class*="mb-menu-bar"],
    body.view-details-page nav.mb-menu-bottom { display: none !important; }
    .contact-owner-navbar { bottom: 0 !important; background: var(--am24-surface) !important; border-top: 1px solid var(--am24-border); padding: 8px 16px calc(8px + env(safe-area-inset-bottom)); box-shadow: none; }
    .contact-owner-navbar > div, .contact-owner-navbar .container { padding: 0; margin: 0; max-width: none; }
    .contact-owner-navbar .d-flex { padding: 0 !important; gap: 12px !important; flex-wrap: nowrap !important; }
    .contact-owner-navbar .call-owner { order: 1; flex: 1 1 0; min-height: 48px; background: var(--am24-surface); color: var(--am24-accent); border: 2px solid var(--am24-accent); border-radius: var(--am24-radius-pill); font-weight: 600; }
    .contact-owner-navbar .contact-owner { order: 2; flex: 1 1 0; min-height: 48px; background: var(--am24-accent); color: #fff; border: 0; border-radius: var(--am24-radius-pill); font-weight: 600; }
    body.view-details-page { padding-bottom: 72px !important; }
    .contact-owner-navbar-crossbar { display: none !important; }
    .am24-price--mobile { font-size: 26px; margin: 0 0 var(--am24-s2); }
    body.view-details-page .listing-header .icons a.print { display: none; }
    body.view-details-page .listing-header h1 { font-size: 24px; line-height: 32px; }
    aside.left .am24-buybox { display: none; }
    aside.left { padding: 0; }
}

/* --- auth cards (37, 38, 39) --- */
#controller_area:has(> .login-page-form) {
    background: var(--am24-surface); border: 1px solid var(--am24-border); border-radius: var(--am24-radius);
    padding: 32px; max-width: 480px; margin: 0 auto; box-sizing: border-box;
}
#controller_area .login-page-form { width: 100%; max-width: none; padding: 0; }
#controller_area .login-page-form form, #controller_area .login-page-form input[type=text], #controller_area .login-page-form input[type=password] { width: 100%; }
body.login-page #content, body.add-listing-page #content { max-width: 480px; margin-left: auto; margin-right: auto; float: none; }
body.login-page #controller_area { background: none; border: 0; padding: 0; }
body.login-page #controller_area:has(> .login-page-form) { background: var(--am24-surface); border: 1px solid var(--am24-border); padding: 32px; }
body.login-page #content > h1, body.add-listing-page #content > h1 { text-align: center; }
body.login-page .notification:not(.notice), body.add-listing-page .notification:not(.notice) {
    position: static !important; transform: none !important; max-width: 480px; margin: 24px auto 0; width: auto; left: auto; top: auto;
    background: none !important; border: 0 !important; box-shadow: none !important; padding: 0 !important;
}
body.login-page .notification:not(.notice) > div, body.add-listing-page .notification:not(.notice) > div { background: none !important; border: 0 !important; box-shadow: none !important; }
body.login-page .notification:not(.notice) .message, body.add-listing-page .notification:not(.notice) .message {
    background: var(--am24-tint); color: var(--am24-text); border-left: 4px solid var(--am24-accent); border-radius: 8px; padding: 12px 16px;
}
body.login-page .notification:not(.notice) ul, body.add-listing-page .notification:not(.notice) ul { margin: 0; padding: 0; list-style: none; }
body.login-page .notification:not(.notice) .close, body.add-listing-page .notification:not(.notice) .close, body.login-page .notification:not(.notice) svg, body.add-listing-page .notification:not(.notice) svg { display: none; }
@media (max-width: 575px) {
    #controller_area:has(> .login-page-form), body.login-page #controller_area:has(> .login-page-form) { margin: 0 16px; padding: 24px 16px; max-width: none; }
    body.login-page .notification:not(.notice), body.add-listing-page .notification:not(.notice) { margin: 16px 16px 0; }
}
/* registration */
body.registration-page aside.left { display: none; }
body.registration-page #content { max-width: 640px; margin: 0 auto; float: none; flex: none; width: 100%; }
body.registration-page #controller_area { background: var(--am24-surface); border: 1px solid var(--am24-border); border-radius: var(--am24-radius); padding: 32px; }
body.registration-page #controller_area input[type=text], body.registration-page #controller_area input[type=password], body.registration-page #controller_area select { width: 100% !important; max-width: 100%; }
body.registration-page ul.steps { display: flex; background: var(--am24-tint); border-radius: var(--am24-radius-input); padding: 4px; gap: 4px; list-style: none; margin: 0 0 var(--am24-s3); }
body.registration-page ul.steps li { flex: 1; background: none !important; border: 0 !important; }
body.registration-page ul.steps li::before, body.registration-page ul.steps li::after { display: none !important; }
body.registration-page ul.steps li a { display: flex; align-items: center; justify-content: center; height: 40px; border-radius: 8px; color: var(--am24-text) !important; font-weight: 600; background: none !important; }
body.registration-page ul.steps li.current a { background: var(--am24-accent) !important; color: #fff !important; }
@media (max-width: 575px) { body.registration-page #controller_area { border: 0; padding: 16px; } }
section#listings .fields span::after, section#listings .fields span:after { content: none !important; }

/* fixes after review */
body.login-page .notification:not(.notice) *, body.add-listing-page .notification:not(.notice) * { background-color: transparent !important; box-shadow: none !important; }
body.login-page .notification:not(.notice) .message, body.add-listing-page .notification:not(.notice) .message { background-color: var(--am24-tint) !important; color: var(--am24-text) !important; }
body.login-page .notification:not(.notice) .message *, body.add-listing-page .notification:not(.notice) .message * { color: var(--am24-text) !important; }
/* inline error / warning by the form (login, post ad): red / amber edge, no list bullet */
body.login-page .notification:not(.notice) li, body.add-listing-page .notification:not(.notice) li { list-style: none; padding: 0; }
body.login-page .notification.error .message, body.add-listing-page .notification.error .message { background-color: #FDECEA !important; border-left-color: var(--am24-danger); }
body.login-page .notification.warning .message, body.add-listing-page .notification.warning .message { background-color: #FEF4E6 !important; border-left-color: #B54708; }
.contact-owner-navbar .call-owner, .am24-buybox .call-owner { color: var(--am24-accent) !important; }
.am24-buybox .call-owner { background: var(--am24-surface); border: 2px solid var(--am24-accent); border-radius: var(--am24-radius-pill); font-weight: 600; }
@media (max-width: 991px) {
    body.view-details-page .listing-header { position: relative; margin-bottom: 52px; }
    body.view-details-page .listing-header .col-md-2 { position: absolute; right: 16px; bottom: -48px; padding: 0; width: auto; z-index: 5; }
    body.view-details-page .listing-header .icons > span.favorite { background: var(--am24-surface); border-radius: 50%; width: 36px; height: 36px; box-shadow: 0 1px 4px rgba(16,24,16,.18); }
    .am24-price--mobile { margin-top: -40px; }
}
section#listings ul.card-info > li.fields { display: flex; flex-wrap: wrap; gap: 4px 4px; white-space: normal; overflow: visible; text-overflow: clip; }
section#listings ul.card-info > li.fields > span { margin: 0; max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
ul.pagination li.navigator { background: none !important; border-radius: 0; padding: 0; margin: 0; }
ul.pagination li.navigator a.button { background: var(--am24-surface) !important; color: var(--am24-text) !important; }
ul.pagination li.navigator a.button:hover { color: var(--am24-accent) !important; }
@media (max-width: 575px) { ul.pagination { flex-wrap: nowrap; gap: 6px; padding-left: 0; } ul.pagination li.am24-page a, ul.pagination li.am24-page > span, ul.pagination li.navigator a.button { min-width: 38px; height: 38px; } }


/* ===== ROUND 3 ===== */
/* gutter comes from .point1 (base.css): neutralise Bootstrap row/col padding on inner pages */
body:not(.home-page) .inside-container > .row { margin-left: 0; margin-right: 0; }
body:not(.home-page) .inside-container > .row > #content,
body:not(.home-page) .inside-container > .row > aside { padding-left: 0; padding-right: 0; }
body:not(.home-page) .listing-header { margin-left: 0; margin-right: 0; }
body:not(.home-page) .listing-header > [class*="col-"] { padding-left: 0; padding-right: 0; }
@media (max-width: 767px) {
    #controller_area > .ml-3.mr-3 { margin-left: 0 !important; margin-right: 0 !important; }
    .grid_navbar { padding: 0; }
}

/* card body: chips wrap, no fixed heights */
section#listings .main-column { height: auto; min-height: 0; }
section#listings.grid .main-column { display: flex; flex-direction: column; height: 100%; }
section#listings.grid ul.card-info { display: flex; flex-direction: column; height: auto; flex: 1 1 auto; overflow: visible; }
section#listings.grid ul.card-info > li { position: static; height: auto; }
section#listings.grid ul.card-info > li.system { margin-top: auto; }
section#listings ul.card-info > li.fields { overflow: visible; height: auto; max-height: none; }
@media (max-width: 575px) {
    section#listings ul.card-info > li.fields > span:nth-child(n+3) { display: none; }
}

/* listing favourite: full 36px circle, nothing clipped */
.listing-header .col-md-2, .listing-header .icons { overflow: visible; }
.listing-header .icons { height: 36px; align-items: center; }
.listing-header .icons > span.favorite, .listing-header .icons > .favorite {
    width: 36px !important; height: 36px !important; padding: 0 !important; border-radius: 50%; box-sizing: border-box;
    display: inline-flex !important; align-items: center; justify-content: center; overflow: visible; position: relative; line-height: 0;
}
.listing-header .icons > .favorite > span.icon { width: 24px !important; height: 24px !important; position: static !important; margin: 0 !important; flex: none; }
.listing-header .icons > .favorite > span.link { display: none; }

/* registration: captcha on one row, strength meter */
body.registration-page .submit-cell .field, body.registration-page #controller_area .field { min-width: 0; }
body.registration-page #controller_area:has(img[src*="captcha"]) .field { display: block; }
body.registration-page .captcha-row, body.registration-page .field:has(> img) { display: flex; align-items: center; gap: 12px; flex-wrap: nowrap; }
body.registration-page #controller_area .field:has(> img) > input[type=text] { width: 160px !important; max-width: 160px; flex: 0 0 160px; margin: 0 !important; }
body.registration-page .field:has(> img) > img { flex: 0 0 auto; }
body.registration-page #controller_area .submit-cell { max-width: 100%; box-sizing: border-box; }
@media (max-width: 575px) {
    body.registration-page .field:has(.password_strength) { display: flex; flex-wrap: wrap; }
    body.registration-page .password_strength { flex: 0 0 100%; width: 100%; margin: 6px 0 0 !important; float: none !important; padding: 0 !important; }
    body.registration-page .password_strength .scale { width: 100%; }
}
@media (max-width: 991px) { .grid_navbar, .grid_navbar.listings-area { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important; } }
@media (max-width: 575px) {
    body.registration-page .field.two-inline { flex-wrap: wrap !important; width: 100%; }
    body.registration-page .field.two-inline > div:has(.password_strength) { flex: 0 0 100% !important; width: 100% !important; max-width: 100% !important; margin: 6px 0 0 !important; padding: 0 !important; }
    body.registration-page .field.two-inline > input, body.registration-page .field.two-inline > div:not(:has(.password_strength)) { flex: 0 0 100%; width: 100% !important; max-width: 100%; }
    body.registration-page .submit-cell { flex-direction: column; align-items: stretch; }
}

/* orchestrator final fixes (5.4): favourite heart was clipped by .icons overflow; rating stars neutral (no second hue) */
.listing-header .icons { overflow: visible !important; display: flex; align-items: center; justify-content: flex-end; gap: 4px; height: auto; }
.listing-header .icons > span.favorite, .listing-header .icons > .favorite { display: inline-flex !important; align-items: center; justify-content: center; vertical-align: top; margin: 0 !important; top: 0 !important; }
.listing_rating_ul, .listing_rating_ul li { filter: grayscale(1) opacity(.6) !important; }

/* ======================= ROUND 4 ======================= */
/* 1. sidebar category list (type roots: plus icon + name + count) */
.categories-box__parent > div { justify-content: flex-start !important; align-items: center; flex: 1 1 auto; min-width: 0; }
.categories-box__parent .categories-box__plus { width: 14px !important; height: 14px !important; flex: 0 0 14px; margin: 0 8px 0 0 !important; fill: var(--am24-muted); }
.categories-box__parent-link { flex: 1 1 auto; min-width: 0; text-align: left !important; font-size: 15px; line-height: 1.3; }
.categories-box__parent-counter, .categories-box__parent-counter span { font-size: 13px !important; line-height: 1; font-weight: 400; color: var(--am24-muted) !important; }
.categories-box__parent-counter { margin-left: auto !important; padding-left: 8px; flex: 0 0 auto; }
.categories-box__subcategory-link { font-size: 14px; color: var(--am24-text) !important; text-align: left; }
.categories-box__subcategories { padding-left: 22px; }
.categories-box__item { text-align: left; }

/* 2. card: price always below the chips */
section#listings.grid ul.card-info { display: flex !important; flex-direction: column; }
section#listings.grid ul.card-info > li.title, section#listings.grid ul.card-info > li.fields, section#listings.grid ul.card-info > li.system {
    position: static !important; width: auto; max-width: 100%; float: none; clear: both;
}
section#listings.grid ul.card-info > li.fields { flex: 0 0 auto; }
section#listings.grid ul.card-info > li.system { flex: 0 0 auto; margin-top: auto !important; padding-top: 4px; }
section#listings.grid ul.card-info > li.system.no-price { padding-top: 0; }
section#listings ul.card-info > li.fields > span { display: inline-block; max-width: 100%; }

/* 3. pagination prev/next = same 40x40 squares */
ul.pagination li.navigator a.button, ul.pagination li.navigator a {
    width: 40px !important; min-width: 40px !important; height: 40px !important; padding: 0 !important; margin: 0 !important;
    border-radius: 8px !important; line-height: 38px !important; font-size: 22px !important; display: inline-flex !important; align-items: center; justify-content: center;
}
ul.pagination li.navigator { height: 40px; width: auto; }

/* 4. masked phone number + "Show number" */
.hidden-phone { display: inline-flex; align-items: center; gap: 4px; font-weight: 600; color: var(--am24-text); }
.hidden-phone > span { margin: 0 !important; letter-spacing: .02em; }
.show-phone { display: inline-block; margin-top: 6px; }
.hidden-phone + .show-phone { margin-left: 12px; margin-top: 0; }
.show-phone a {
    display: inline-flex; align-items: center; min-height: 36px; padding: 0 16px; border-radius: var(--am24-radius-pill);
    background: var(--am24-tint); color: var(--am24-accent) !important; font-weight: 600; font-size: var(--am24-fs-sm); text-decoration: none;
}
.show-phone a:hover { background: var(--am24-accent); color: #fff !important; }
.table-cell.phone .value { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }

/* 5. news */
body.news-page #content > h1 { font-size: 40px; line-height: 1.2; font-weight: 700; }
.am24-chip {
    display: inline-flex; align-items: center; height: 28px; padding: 0 12px; border-radius: var(--am24-radius-pill);
    background: var(--am24-tint); color: var(--am24-accent) !important; font-size: 13px; font-weight: 600; text-decoration: none;
}
.am24-chip:hover { background: var(--am24-accent); color: #fff !important; }
.am24-news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
@media (max-width: 1023px) { .am24-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 575px) { .am24-news-grid { grid-template-columns: 1fr; gap: 16px; } }
.am24-news-card { background: var(--am24-surface); border: 1px solid var(--am24-border); border-radius: var(--am24-radius); overflow: hidden; display: flex; flex-direction: column; margin: 0; transition: box-shadow .15s; }
.am24-news-card:hover { box-shadow: var(--am24-shadow-hover); }
.am24-news-card__pic { display: block; aspect-ratio: 16 / 9; background: var(--am24-tint); overflow: hidden; position: relative; }
.am24-news-card__pic img { width: 100%; height: 100%; object-fit: cover; display: block; }
.am24-news-card__pic.no-picture::after {
    content: ""; position: absolute; inset: 0; opacity: .5;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232F6B3F' stroke-width='1.5'%3E%3Cpath d='M4 5h16v14H4z'/%3E%3Cpath d='M4 16l5-5 4 4 3-3 4 4'/%3E%3Ccircle cx='9' cy='9' r='1.5'/%3E%3C/svg%3E") center / 48px no-repeat;
}
.am24-news-card__body { padding: 16px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.am24-news-card__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; font-size: 13px; color: var(--am24-muted); }
.am24-news-card__meta .date { color: var(--am24-muted); }
.am24-news-card__title h4 { margin: 0; font-size: 18px; line-height: 1.35; font-weight: 700; color: var(--am24-text); }
.am24-news-card__title:hover h4 { color: var(--am24-accent); }
.am24-news-card__excerpt { font-size: 14px; line-height: 1.5; color: var(--am24-muted); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; word-break: break-word; }
.am24-news-card__excerpt * { display: inline; font-size: inherit !important; margin: 0; }

/* article */
body.news-page:has(.am24-article) aside.left { display: none; }
body.news-page:has(.am24-article) .inside-container > .row > #content {
    flex: 0 0 100%; max-width: 860px; margin: 0 auto; background: var(--am24-surface); border-radius: var(--am24-radius); padding: 40px 48px;
    border: 1px solid var(--am24-border);
}
body.news-page:has(.am24-article) #content > h1 { font-size: 40px; line-height: 1.2; margin-bottom: 16px; }
.am24-article__hero { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--am24-radius); margin: 0 0 20px; background: var(--am24-tint); }
.am24-article__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 24px; font-size: 14px; color: var(--am24-muted); }
.am24-article__meta .date { color: var(--am24-muted); }
.am24-article__views { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; }
.am24-article__views svg { width: 14px; height: 10px; fill: var(--am24-muted); }
.news-article__content { font-size: 17px; line-height: 1.7; color: var(--am24-text); overflow-wrap: anywhere; }
.news-article__content h2 { font-size: 28px; line-height: 1.25; font-weight: 700; margin: 40px 0 12px; }
.news-article__content h3 { font-size: 21px; line-height: 1.3; font-weight: 700; margin: 28px 0 8px; }
.news-article__content h2 + *, .news-article__content h3 + * { margin-top: 0; }
.news-article__content p { margin: 0 0 16px; }
.news-article__content ul, .news-article__content ol { margin: 0 0 16px; padding-left: 24px; }
.news-article__content li { margin-bottom: 6px; }
.news-article__content a { color: var(--am24-accent); text-decoration: underline; text-underline-offset: 2px; }
.news-article__content img { max-width: 100% !important; height: auto !important; border-radius: 8px; }
.news-article__content table { display: block; max-width: 100%; overflow-x: auto; }
.news-article__content iframe, .news-article__content video { max-width: 100%; }
.news-article__content blockquote { margin: 16px 0; padding: 4px 0 4px 16px; border-left: 4px solid var(--am24-accent); color: var(--am24-muted); }
.am24-cta { display: flex; align-items: center; justify-content: space-between; gap: 24px; background: var(--am24-tint); border-radius: var(--am24-radius); padding: 24px; margin: 40px 0 16px; }
.am24-cta__title { font-size: 20px; font-weight: 700; margin: 0 0 4px; }
.am24-cta__text { margin: 0; color: var(--am24-muted); font-size: 15px; }
.am24-cta__btn { flex: 0 0 auto; background: var(--am24-accent) !important; color: #fff !important; border-radius: var(--am24-radius-pill) !important; min-height: 48px; display: inline-flex; align-items: center; padding: 0 28px; font-weight: 600; text-decoration: none; }
.am24-cta__btn:hover { background: var(--am24-accent-hover) !important; }
.am24-article__back a { color: var(--am24-accent); font-weight: 600; }
@media (max-width: 767px) {
    body.news-page:has(.am24-article) .inside-container > .row > #content { padding: 20px 16px; border-radius: 0; border-left: 0; border-right: 0; }
    body.news-page #content > h1, body.news-page:has(.am24-article) #content > h1 { font-size: 28px; }
    .news-article__content h2 { font-size: 23px; }
    .am24-cta { flex-direction: column; align-items: stretch; text-align: left; }
    .am24-cta__btn { justify-content: center; }
}
@media (min-width: 992px) {
    body:not(.home-page):not(.view-details-page) .inside-container > .row { flex-wrap: nowrap; gap: 32px; }
    body:not(.home-page):not(.view-details-page) .inside-container > .row > aside.left { flex: 0 0 272px; max-width: 272px; width: 272px; }
    /* post/edit ad keep their own centred 760px column (e2-account.css); this rule out-ranked it (2026-10-24) */
    body:not(.home-page):not(.view-details-page):not(.add-listing-page):not(.edit-listing-page) .inside-container > .row > #content { flex: 1 1 0; min-width: 0; max-width: none; width: auto; }
    body.news-page:has(.am24-article) .inside-container > .row > #content { flex: 0 1 860px; max-width: 860px; margin: 0 auto; }
    body.registration-page .inside-container > .row > #content { flex: 0 1 640px; margin: 0 auto; }
    body.login-page .inside-container > .row > #content, body.add-listing-page .inside-container > .row > #content { flex: 0 1 480px; margin: 0 auto; }
}
.news-article__content a { color: var(--am24-accent) !important; }
aside.left .am24-buybox input.call-owner { background: var(--am24-surface) !important; color: var(--am24-accent) !important; border: 2px solid var(--am24-accent) !important; }
aside.left .am24-buybox input.call-owner:hover { background: var(--am24-tint) !important; }
aside.left .am24-buybox ul.am24-chips { margin: 8px 0 0; }
aside.left .side_block .am24-chips li { padding: 4px 12px; background: var(--am24-surface-2); border-radius: var(--am24-radius-pill); }
ul.pagination li.navigator a.button, ul.pagination li.navigator a { min-height: 40px !important; max-height: 40px; box-sizing: border-box; }

/* ======================= ROUND 5 ======================= */
/* seller card <=991: reuse the "Get more details" seller column as a white card */
@media (max-width: 991px) {
    .get_more_details .row.seller-short > div:first-child:not(:last-child) {
        display: block !important; background: var(--am24-surface); border: 1px solid var(--am24-border); border-radius: var(--am24-radius);
        padding: 16px; margin-bottom: 16px; max-width: none; flex: 0 0 100%;
    }
    .get_more_details .seller-short .picture { display: block; float: left; margin: 0 12px 0 0; max-width: 64px; }
    .get_more_details .seller-info { list-style: none; margin: 0; padding: 0; }
    .get_more_details .seller-info .name, .get_more_details .seller-info .name a { font-size: 16px; font-weight: 700; color: var(--am24-text); }
    .get_more_details .owner-details { display: none; }
    .get_more_details .listings-button a.button { background: var(--am24-tint) !important; color: var(--am24-accent) !important; }
}

/* similar ads: no leaking Nova borders */
.similarListings ul.featured .card-info, .similarListings ul.featured .card-info > li, .similarListings ul.featured .picture { border: 0 !important; box-shadow: none !important; }

/* similar ads <=991: same look as the category card */
@media (max-width: 991px) {
    .similarListings ul.featured > li { border: 1px solid var(--am24-border); }
    .similarListings ul.featured .card-info li.title, .similarListings ul.featured .card-info li.title a { color: var(--am24-text) !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1.35; }
    .similarListings ul.featured .card-info li.fields { display: block; font-size: 12px; color: var(--am24-muted); }
    .similarListings ul.featured .price_tag, .similarListings ul.featured .price_tag span { font-size: 16px; font-weight: 700; color: var(--am24-text) !important; }
    .similarListings ul.featured .price_tag { display: flex; flex-direction: row-reverse; justify-content: space-between; align-items: center; }
}

/* mobile gallery gap + photo count */
.am24-photo-count { display: none; }
@media (max-width: 767px) {
    div.gallery { padding-bottom: 0 !important; margin-bottom: 16px; position: relative; }
    div.gallery > #media { padding-bottom: 66% !important; }
    .am24-photo-count {
        display: inline-flex; align-items: center; position: absolute; right: 12px; bottom: 12px; z-index: 6;
        height: 24px; padding: 0 10px; border-radius: 999px; background: rgba(20, 24, 20, .62); color: #fff; font-size: 12px; font-weight: 600; pointer-events: none;
    }
}

/* recently viewed strip on phones */
@media (max-width: 767px) {
    #rv_listings .rv-container { justify-content: flex-start; gap: 12px; padding: 12px 16px; }
    #rv_listings .rv_first { text-align: left !important; width: auto !important; flex: 0 0 auto; font-size: 13px; }
    #rv_listings .rv_items { margin: 0 !important; flex: 0 0 auto; }
    #rv_listings .rv_last { margin-left: auto !important; text-align: right !important; width: auto !important; font-size: 13px; }
}

/* news */
@media (min-width: 992px) and (max-width: 1199px) { .am24-news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
body.news-page .content-padding { padding-left: 0 !important; padding-right: 0 !important; }
body:not(.home-page) #content > h1 { padding-left: 0; }
.more_news_block { background: none !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; margin: 32px 0 0; }
.more_news_block > h3, .more_news_block h3 { font-size: 28px; line-height: 1.25; font-weight: 700; margin: 0 0 16px; }
.more_news_block .am24-news-card { box-shadow: none; }
@media (max-width: 767px) { .more_news_block > h3 { font-size: 23px; } }
.more_news_block, .more_news_block > div { margin-left: 0 !important; margin-right: 0 !important; padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important; }
.more_news_block > h3 { font-weight: 700 !important; font-family: var(--am24-font); }
aside.bottom { padding: 0 !important; margin-left: 0; margin-right: 0; }
@media (max-width: 767px) {
    #rv_listings .rv-container { display: flex !important; flex-direction: row !important; flex-wrap: nowrap !important; align-items: center; }
    #rv_listings .rv_first, #rv_listings .rv_items, #rv_listings .rv_last { display: block; float: none !important; position: static !important; }
    #rv_listings .rv_items { display: flex !important; }
}
@media (max-width: 767px) {
    #rv_listings .rv_items { width: auto !important; min-width: 64px; flex: 0 0 auto !important; }
    #rv_listings .rv_items .item { width: 64px !important; height: 48px !important; flex: 0 0 64px; }
    #rv_listings .rv_items .item img { width: 64px !important; height: 48px !important; border-radius: 8px; background-size: cover !important; }
}
@media (max-width: 767px) {
    #rv_listings .rv-container { gap: 10px; padding: 12px; }
    #rv_listings .rv_first { white-space: normal; font-size: 13px; max-width: 90px; }
    #rv_listings .rv_last { white-space: normal !important; flex: 1 1 0 !important; min-width: 0; font-size: 13px; line-height: 1.3; }
}

/* ======================= ROUND 6: category sidebar like Pets4homes ======================= */
/* keyword search */
.am24-sidesearch { position: relative; margin: 0 0 var(--am24-s2); }
.am24-sidesearch input[type=text] {
    width: 100%; height: 44px; padding: 0 44px 0 14px; border: 1px solid var(--am24-border); border-radius: var(--am24-radius-input);
    background: var(--am24-surface); font-size: 15px; font-family: var(--am24-font); color: var(--am24-text); box-sizing: border-box;
}
.am24-sidesearch input[type=text]:focus { border-color: var(--am24-accent); outline: 0; box-shadow: 0 0 0 3px var(--am24-tint); }
.am24-sidesearch button {
    position: absolute; right: 4px; top: 4px; width: 36px; height: 36px; border: 0; border-radius: 6px; background: transparent; padding: 0; cursor: pointer; min-height: 0;
}
.am24-sidesearch button svg { width: 20px; height: 20px; fill: none; stroke: var(--am24-accent); stroke-width: 2; stroke-linecap: round; }
.am24-sidesearch button:hover { background: var(--am24-tint); }

/* groups: heading + chevron */
aside.left section.categories-box > h3, .categoryFilter .fieldset > header {
    display: flex !important; align-items: center; justify-content: space-between; cursor: pointer; user-select: none;
    width: 100%; box-sizing: border-box; text-transform: none; letter-spacing: 0; font-size: 15px; font-weight: 700; color: var(--am24-text);
}
aside.left section.categories-box > h3 { padding: 4px 0 8px; margin: 0; }
aside.left section.categories-box > h3::after, .categoryFilter .fieldset > header::after {
    content: ""; flex: 0 0 auto; width: 8px; height: 8px; margin-left: 8px; border-right: 2px solid var(--am24-muted); border-bottom: 2px solid var(--am24-muted);
    transform: rotate(45deg) translate(-2px, -2px); transition: transform .15s;
}
aside.left section.categories-box.am24-collapsed > h3::after, .categoryFilter .fieldset.am24-collapsed > header::after { transform: rotate(-45deg); }
aside.left section.categories-box.am24-collapsed > .clearfix { display: none; }
.categoryFilter .fieldset.am24-collapsed > .body { display: none !important; }
.categoryFilter .fieldset > header span.arrow { display: none !important; }
.categoryFilter > h3:empty { display: none !important; }
.categoryFilter .fieldset { border-top: 1px solid var(--am24-border); margin: 0; padding: 12px 0 4px; }
.categoryFilter .fieldset:first-child { border-top: 0; padding-top: 0; }
.categoryFilter .fieldset > .body > div { border-top: 0 !important; padding: 8px 0 8px !important; }

/* breed list: first 10, rest behind "Show all" */
.categories-box__item.am24-more-hidden { display: none; }
.categories-box.am24-expanded .categories-box__item.am24-more-hidden { display: block; }
.categories-box .am24-longlist { max-height: none; overflow: visible; }
.categories-box.am24-expanded .am24-longlist { max-height: 420px; overflow-y: auto; padding-right: 4px; }
.am24-showall {
    display: block; width: 100%; margin: 8px 0 0; min-height: 40px; padding: 0 12px; border: 1px solid var(--am24-border); border-radius: var(--am24-radius-pill);
    background: var(--am24-surface); color: var(--am24-accent); font-weight: 600; font-size: 14px; font-family: var(--am24-font); cursor: pointer;
}
.am24-showall:hover { background: var(--am24-tint); border-color: var(--am24-accent); }
.categories-box__parent-link_active, .categories-box__item .categories-box__parent-link_active { color: var(--am24-accent) !important; font-weight: 700 !important; }
.categories-box__item:has(.categories-box__parent-link_active) .categories-box__parent { background: var(--am24-tint); border-radius: 8px; padding: 0 8px !important; margin: 0 -8px; }

/* price min/max */
.am24-pricerange { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0 0 12px; }
.am24-pricerange label { display: block; font-size: 13px; color: var(--am24-muted); }
.am24-pricerange label > span:first-child { display: block; margin-bottom: 4px; }
.am24-inp { display: flex; align-items: center; height: 44px; border: 1px solid var(--am24-border); border-radius: var(--am24-radius-input); background: var(--am24-surface); padding: 0 10px; gap: 6px; }
.am24-inp i { font-style: normal; font-size: 12px; color: var(--am24-muted); }
.am24-inp input { border: 0 !important; box-shadow: none !important; background: transparent !important; width: 100%; min-width: 0; height: 40px; min-height: 0; padding: 0 !important; font-size: 15px; font-family: var(--am24-font); -moz-appearance: textfield; }
.am24-inp input::-webkit-outer-spin-button, .am24-inp input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.am24-inp:focus-within { border-color: var(--am24-accent); box-shadow: 0 0 0 3px var(--am24-tint); }

/* city / age lists */
.categoryFilter .fieldset .body ul { max-height: 232px; overflow-y: auto; }
.categoryFilter .fieldset .body ul li { padding: 6px 0; font-size: 14px; }
.categoryFilter .fieldset .body ul li a { color: var(--am24-text); }
.categoryFilter .fieldset .body ul li a:hover { color: var(--am24-accent); }
.categoryFilter .search-item.two-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.categoryFilter .search-item.two-fields input { width: 100% !important; height: 44px; margin: 0; }

/* sort select */
.grid_navbar .am24-sorting-legacy { display: none !important; }
.am24-sort { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 14px; color: var(--am24-muted); }
.am24-sort select {
    height: 44px; min-width: 170px; padding: 0 36px 0 14px; border: 1px solid var(--am24-border); border-radius: var(--am24-radius-pill);
    background: var(--am24-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235F6673' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center / 12px;
    -webkit-appearance: none; appearance: none; font-size: 14px; font-weight: 600; color: var(--am24-text); font-family: var(--am24-font); cursor: pointer;
}
.am24-sort select:focus { border-color: var(--am24-accent); outline: 0; box-shadow: 0 0 0 3px var(--am24-tint); }

/* mobile: Filters pill + drawer */
.am24-filters-label { display: none; }
@media (max-width: 991px) {
    .grid_navbar .hook {
        display: inline-flex !important; align-items: center; height: 44px; padding: 0 16px 0 10px; border: 1px solid var(--am24-border);
        border-radius: var(--am24-radius-pill); background: var(--am24-surface); cursor: pointer;
    }
    .grid_navbar .hook .filter-icon { width: 22px !important; height: 22px !important; min-width: 0 !important; padding: 0 !important; margin: 0 6px 0 0 !important; border: 0 !important; background: none !important; border-radius: 0 !important; }
    .am24-filters-label { display: inline-flex !important; align-items: center; height: 44px; font-size: 14px; font-weight: 600; color: var(--am24-text); }
    .am24-sort { flex: 1 1 auto; min-width: 0; }
    .am24-sort > span { display: none; }
    .am24-sort select { width: 100%; min-width: 0; }
    .filter-container { background: var(--am24-surface) !important; padding-bottom: 88px; }
    .filter-container__header { min-height: 56px; border-bottom: 1px solid var(--am24-border); }
    .filter-container__header-title { font-size: 18px !important; font-weight: 700 !important; }
    .filter-container__body { padding: 16px !important; }
    .filter-container section.side_block { background: none !important; border: 0 !important; border-bottom: 1px solid var(--am24-border) !important; border-radius: 0 !important; padding: 0 0 16px !important; margin: 0 0 16px !important; box-shadow: none !important; }
    .filter-container section.side_block:last-child { border-bottom: 0 !important; }
    .am24-drawer-bar { display: none; position: fixed; left: 0; right: 0; bottom: 0; z-index: 310; padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); background: var(--am24-surface); border-top: 1px solid var(--am24-border); }
    .filter-container_opened .am24-drawer-bar { display: block; }
    .am24-show-results { width: 100%; height: 48px; border: 0; border-radius: var(--am24-radius-pill); background: var(--am24-accent); color: #fff; font-size: 16px; font-weight: 600; font-family: var(--am24-font); cursor: pointer; }
    html.am24-drawer-open body { overflow: hidden; }
}
@media (min-width: 992px) { .am24-drawer-bar { display: none !important; } }
.categoryFilter #fs_cf_price .slider-values { display: none; }
.categoryFilter .cf-apply { margin-top: 10px; }
.categoryFilter #fs_cf_age .cf-apply a, .categoryFilter #fs_cf_age .cf-apply > span:not(.hide):not(.counter):not(.empty) {
    display: flex; align-items: center; justify-content: center; width: 100%; min-height: 44px; border-radius: var(--am24-radius-pill);
    background: var(--am24-accent); color: #fff !important; font-weight: 600; text-decoration: none;
}
.categories-box__parent-link { text-decoration: none !important; }
.categories-box__parent-link, .categories-box__parent-link_active { border-bottom: 0 !important; }
.filter-container .categoryFilter > h3 { font-size: 15px; font-weight: 700; text-transform: none; letter-spacing: 0; margin: 0 0 8px; }
@media (min-width: 576px) { .am24-sort { flex: 0 0 auto; } .am24-sort select { width: auto; } }
aside.left .categoryFilter:not(:has(.cf-apply)):not(:has(li)) { display: none !important; }
