/*
Theme Name: Triclimb Bricks Child
Description: Bricks child theme for the Triclimb staging migration.
Template: bricks
Version: 1.0.0
Text Domain: triclimb-bricks-child
*/

.catalogue-image { display:block; position:relative; overflow:hidden; }
.catalogue-image img.catalogue-image__primary { display:block; width:100%; height:auto; }
.catalogue-image img.catalogue-image__secondary { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; opacity:0; transition:opacity .2s ease; background:#fff; }
@media (hover:hover) and (pointer:fine) { .catalogue-image:hover img.catalogue-image__secondary { opacity:1; } }
.catalogue-image:focus-visible img.catalogue-image__secondary { opacity:1; }
.catalogue-image:focus-visible, .post-like:focus-visible { outline:2px solid #448d6f; outline-offset:4px; }
@media (prefers-reduced-motion:reduce) { .catalogue-image img.catalogue-image__secondary { transition:none; } }
.post-like { display:inline-flex; align-items:center; gap:6px; padding:4px 0; border:0; background:transparent; color:#828282; font:inherit; cursor:pointer; }
.post-like__heart { font-size:24px; line-height:1; }
.post-like[aria-pressed="true"], .post-like:hover { color:#448d6f; }
.post-like:disabled { cursor:wait; opacity:.65; }
.article-likes { margin-block:24px; }

.brxe-search {
    width: 100%;
}

.brxe-search .bricks-search-form {
    display: flex;
    align-items: stretch;
    gap: 12px;
    width: 100%;
}

.brxe-search input[type="search"] {
    flex: 1;
    min-width: 0;
    width: 100%;
    padding: 12px 18px;
    border: 1px solid #ededed;
    background: #fff;
    color: #2e2f31;
    font: inherit;
}

.brxe-search button {
    flex: none;
    padding: 12px 24px;
    border: 0;
    background: #448d6f;
    color: #fff;
    font-family: Catamaran, sans-serif;
    font-weight: 600;
    cursor: pointer;
}

.brxe-search button:hover {
    background: #4fbd96;
}

.brxe-search :is(input, button):focus-visible {
    outline: 2px solid #448d6f;
    outline-offset: 2px;
}

@media (max-width: 478px) {
    .brxe-search button {
        padding-right: 16px;
        padding-left: 16px;
    }
}

.quick-view__trigger {
    display: inline-block;
    margin: 10px auto 0;
    color: #448d6f;
    font: 600 18px Catamaran, sans-serif;
    text-decoration: underline;
}

.quick-view__layout {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: start;
    gap: 30px;
    padding-top: 0;
}

.quick-view__details {
    min-width: 0;
    gap: 16px;
    font: 18px/1.5 Catamaran, sans-serif;
}

.quick-view__details h2 {
    color: #448d6f;
    font: 400 30px/1.2 Catamaran, sans-serif;
}

.quick-view__close {
    position: sticky;
    top: 0;
    z-index: 2;
    grid-column: 1 / -1;
    justify-self: end;
    padding: 6px 14px;
    border: 0;
    background: #448d6f;
    color: #fff;
    cursor: pointer;
}

.brx-popup[data-popup-id="14976"] .brx-popup-content {
    max-height: 90dvh;
    overflow: auto;
}

.quick-view__trigger:focus-visible,
.quick-view__close:focus-visible {
    outline: 2px solid #448d6f;
    outline-offset: 3px;
}

@media (max-width: 767px) {
    .quick-view__layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }
}
