/* Extracted from newlook-ui-cleaned.css: newlook-catalog.css */

/* ==========================================================
   PUBLIC COURSE CATALOG
   Page class: newlook-public-catalog-page
   ========================================================== */

.newlook-ui.newlook-public-catalog-page {
    min-height: 100vh;
    color: #dbe8f4;
    background:
        radial-gradient(
            circle at 82% 8%,
            rgba(0, 113, 255, 0.13),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #020914 0%,
            #031225 52%,
            #020a15 100%
        );
}

.newlook-ui.newlook-public-catalog-page .newlook-public-main {
    width: min(100%, 1580px);
    margin: 0 auto;
    padding: 30px 34px 70px;
}



/* ==========================================================
   CATALOG HERO
   ========================================================== */

.newlook-ui .newlook-catalog-hero {
    position: relative;
    display: grid;
    grid-template-columns:
        minmax(480px, 1fr)
        minmax(430px, 0.9fr);
    gap: 38px;
    align-items: center;
    min-height: 470px;
    padding: 48px 48px 38px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 82% 34%,
            rgba(0, 118, 255, 0.22),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            rgba(4, 28, 61, 0.98),
            rgba(2, 14, 34, 0.97)
        );
    border: 1px solid rgba(62, 145, 220, 0.42);
    border-radius: 18px;
    box-shadow:
        0 28px 70px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.newlook-ui .newlook-catalog-hero::before {
    position: absolute;
    inset: 0;
    z-index: 0;
    content: "";
    pointer-events: none;
    background:
        linear-gradient(
            rgba(70, 151, 226, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(70, 151, 226, 0.035) 1px,
            transparent 1px
        );
    background-size: 46px 46px;
}

.newlook-ui .newlook-catalog-hero__copy,
.newlook-ui .newlook-catalog-hero__image {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.newlook-ui .newlook-catalog-hero .newlook-eyebrow {
    margin: 0 0 14px;
    color: #1da1ff;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.newlook-ui .newlook-catalog-hero h1 {
    max-width: 760px;
    margin: 0;
    color: #f7fbff;
    font-size: clamp(46px, 5.4vw, 76px);
    line-height: 1.02;
    letter-spacing: -0.035em;
}

.newlook-ui .newlook-catalog-hero h1 span {
    display: block;
    color: #1686ff;
    text-shadow: 0 0 28px rgba(0, 118, 255, 0.16);
}

.newlook-ui .newlook-catalog-hero__intro {
    max-width: 760px;
    margin: 22px 0 0;
    color: #b7c5d4;
    font-size: 18px;
    line-height: 1.65;
}

.newlook-ui .newlook-catalog-hero__image {
    display: flex;
    min-height: 340px;
    align-items: center;
    justify-content: center;
}

.newlook-ui .newlook-catalog-hero__image img {
    display: block;
    width: 118%;
    max-width: 660px;
    height: auto;
    object-fit: contain;
    filter:
        drop-shadow(
            0 30px 38px rgba(0, 0, 0, 0.32)
        );
}


/* ==========================================================
   HERO SEARCH
   ========================================================== */

.newlook-ui .newlook-catalog-search {
    max-width: 780px;
    margin-top: 30px;
}

.newlook-ui .newlook-catalog-search__control {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    min-height: 62px;
    padding: 5px 6px 5px 18px;
    background: rgba(1, 15, 34, 0.84);
    border: 1px solid rgba(63, 150, 222, 0.5);
    border-radius: 11px;
    box-shadow:
        0 14px 34px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.025);
    transition:
        border-color 150ms ease,
        box-shadow 150ms ease;
}

.newlook-ui .newlook-catalog-search__control:focus-within {
    border-color: #1d9eff;
    box-shadow:
        0 0 0 3px rgba(27, 153, 255, 0.13),
        0 16px 38px rgba(0, 0, 0, 0.22);
}

.newlook-ui .newlook-catalog-search__control > i {
    color: #2ba7ff;
    font-size: 17px;
}

.newlook-ui .newlook-catalog-search input {
    width: 100%;
    min-width: 0;
    height: 50px;
    margin: 0;
    padding: 0;
    color: #f4f8fc;
    font: inherit;
    font-size: 15px;
    background: transparent;
    border: 0;
    outline: none;
    box-shadow: none;
}

.newlook-ui .newlook-catalog-search input::placeholder {
    color: #74879b;
    opacity: 1;
}

.newlook-ui .newlook-catalog-search button {
    min-width: 112px;
    min-height: 50px;
    padding: 10px 18px;
    color: #ffffff;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    background:
        linear-gradient(
            180deg,
            #1ba5ff,
            #075ecb
        );
    border: 1px solid #3eb2ff;
    border-radius: 8px;
    box-shadow:
        0 10px 24px rgba(0, 103, 215, 0.23),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
    transition:
        transform 150ms ease,
        border-color 150ms ease,
        box-shadow 150ms ease;
}

.newlook-ui .newlook-catalog-search button:hover,
.newlook-ui .newlook-catalog-search button:focus-visible {
    border-color: #7dcaff;
    outline: none;
    box-shadow:
        0 13px 30px rgba(0, 112, 226, 0.3);
    transform: translateY(-1px);
}


/* ==========================================================
   HERO FACTS
   ========================================================== */

.newlook-ui .newlook-catalog-hero__facts {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 34px;
    margin-top: 28px;
}

.newlook-ui .newlook-catalog-hero__facts > div {
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 9px;
    align-items: baseline;
}

.newlook-ui .newlook-catalog-hero__facts > div:not(:last-child)::after {
    position: absolute;
    top: 2px;
    right: -18px;
    width: 1px;
    height: 34px;
    content: "";
    background: rgba(87, 145, 199, 0.28);
}

.newlook-ui .newlook-catalog-hero__facts strong {
    color: #2aaaff;
    font-size: 23px;
    line-height: 1;
}

.newlook-ui .newlook-catalog-hero__facts span {
    color: #9caec0;
    font-size: 12px;
    line-height: 1.35;
}


/* ==========================================================
   SECTION HEADINGS
   ========================================================== */

.newlook-ui .newlook-catalog-filter-section,
.newlook-ui .newlook-catalog-results {
    margin-top: 34px;
}

.newlook-ui .newlook-catalog-section-heading,
.newlook-ui .newlook-catalog-results__header {
    display: flex;
    gap: 30px;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 20px;
    padding: 0 3px;
}

.newlook-ui .newlook-catalog-section-heading .newlook-card-label,
.newlook-ui .newlook-catalog-results__header .newlook-card-label {
    margin: 0 0 7px;
    color: #149cff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.095em;
    text-transform: uppercase;
}

.newlook-ui .newlook-catalog-section-heading h2,
.newlook-ui .newlook-catalog-results__header h2 {
    margin: 0;
    color: #ffffff;
    font-size: 31px;
    line-height: 1.25;
}

.newlook-ui .newlook-catalog-section-heading > p,
.newlook-ui .newlook-catalog-results__header > div > p:last-child {
    max-width: 580px;
    margin: 0;
    color: #95a9bb;
    font-size: 14px;
    line-height: 1.55;
}

.newlook-ui .newlook-catalog-results__header > div > p:last-child {
    margin-top: 7px;
}


/* ==========================================================
   PRODUCT TYPE FILTERS
   ========================================================== */

.newlook-ui .newlook-catalog-type-filters {
    display: grid;
    grid-template-columns:
        repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.newlook-ui .newlook-catalog-type-filter {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    min-height: 84px;
    padding: 15px 16px;
    color: #dce8f3;
    text-decoration: none;
    background:
        linear-gradient(
            145deg,
            rgba(5, 37, 76, 0.88),
            rgba(2, 21, 47, 0.92)
        );
    border: 1px solid rgba(68, 141, 207, 0.4);
    border-radius: 11px;
    box-shadow:
        0 13px 28px rgba(0, 0, 0, 0.16);
    transition:
        transform 150ms ease,
        border-color 150ms ease,
        background-color 150ms ease,
        box-shadow 150ms ease;
}

.newlook-ui .newlook-catalog-type-filter:hover,
.newlook-ui .newlook-catalog-type-filter:focus-visible,
.newlook-ui .newlook-catalog-type-filter.is-active {
    color: #ffffff;
    background:
        linear-gradient(
            145deg,
            rgba(8, 69, 138, 0.92),
            rgba(3, 36, 76, 0.95)
        );
    border-color: #1d9eff;
    outline: none;
    box-shadow:
        0 17px 34px rgba(0, 0, 0, 0.2),
        0 0 20px rgba(0, 127, 255, 0.08);
    transform: translateY(-2px);
}

.newlook-ui .newlook-catalog-type-filter > i {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    color: #2aa8ff;
    font-size: 18px;
    background: rgba(11, 96, 182, 0.26);
    border: 1px solid rgba(42, 155, 242, 0.38);
    border-radius: 9px;
}

.newlook-ui .newlook-catalog-type-filter span {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    min-width: 0;
}

.newlook-ui .newlook-catalog-type-filter strong {
    color: inherit;
    font-size: 14px;
    line-height: 1.35;
}

.newlook-ui .newlook-catalog-type-filter small {
    display: inline-flex;
    min-width: 28px;
    height: 28px;
    padding: 0 7px;
    align-items: center;
    justify-content: center;
    color: #39afff;
    font-size: 11px;
    font-weight: 700;
    background: rgba(6, 75, 148, 0.28);
    border: 1px solid rgba(37, 147, 233, 0.35);
    border-radius: 20px;
}


/* ==========================================================
   CLEAR FILTER BUTTON
   ========================================================== */

.newlook-ui .newlook-catalog-clear {
    display: inline-flex;
    min-height: 42px;
    padding: 9px 14px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #d6e3ef;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    background: rgba(4, 38, 78, 0.68);
    border: 1px solid rgba(70, 142, 209, 0.46);
    border-radius: 8px;
    transition:
        color 150ms ease,
        border-color 150ms ease,
        background-color 150ms ease;
}

.newlook-ui .newlook-catalog-clear:hover,
.newlook-ui .newlook-catalog-clear:focus-visible {
    color: #ffffff;
    background: rgba(8, 68, 135, 0.77);
    border-color: #1c9eff;
    outline: none;
}


/* ==========================================================
   PRODUCT GRID
   ========================================================== */

.newlook-ui .newlook-catalog-grid {
    display: grid;
    grid-template-columns:
        repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.newlook-ui .newlook-catalog-card {
    display: grid;
    grid-template-rows: auto 1fr auto;
    min-width: 0;
    overflow: hidden;
    background:
        linear-gradient(
            145deg,
            rgba(5, 31, 65, 0.97),
            rgba(2, 17, 38, 0.97)
        );
    border: 1px solid rgba(68, 139, 205, 0.43);
    border-radius: 13px;
    box-shadow:
        0 20px 44px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.035);
    transition:
        transform 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

.newlook-ui .newlook-catalog-card:hover {
    border-color: rgba(37, 160, 249, 0.72);
    box-shadow:
        0 26px 54px rgba(0, 0, 0, 0.26),
        0 0 24px rgba(0, 125, 255, 0.08);
    transform: translateY(-4px);
}

.newlook-ui .newlook-catalog-card__image {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background:
        linear-gradient(
            145deg,
            rgba(8, 60, 120, 0.62),
            rgba(2, 25, 55, 0.8)
        );
    border-bottom: 1px solid rgba(71, 143, 210, 0.34);
}

.newlook-ui .newlook-catalog-card__image::after {
    position: absolute;
    inset: 0;
    content: "";
    pointer-events: none;
    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(1, 12, 28, 0.68) 100%
        );
}

.newlook-ui .newlook-catalog-card__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 280ms ease;
}

.newlook-ui .newlook-catalog-card:hover .newlook-catalog-card__image img {
    transform: scale(1.035);
}

.newlook-ui .newlook-catalog-card__type {
    position: absolute;
    z-index: 2;
    top: 14px;
    left: 14px;
    display: inline-flex;
    min-height: 32px;
    padding: 6px 10px;
    align-items: center;
    gap: 7px;
    color: #e7f5ff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    background: rgba(1, 24, 53, 0.84);
    border: 1px solid rgba(47, 163, 249, 0.48);
    border-radius: 20px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.newlook-ui .newlook-catalog-card__type i {
    color: #2aa8ff;
}

.newlook-ui .newlook-catalog-card__body {
    padding: 22px 22px 18px;
}

.newlook-ui .newlook-catalog-card__body h3 {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    line-height: 1.3;
}

.newlook-ui .newlook-catalog-card__body h3 a {
    color: inherit;
    text-decoration: none;
}

.newlook-ui .newlook-catalog-card__body h3 a:hover,
.newlook-ui .newlook-catalog-card__body h3 a:focus-visible {
    color: #3bb0ff;
    outline: none;
}

.newlook-ui .newlook-catalog-card__body > p {
    margin: 13px 0 0;
    color: #a9bacb;
    font-size: 14px;
    line-height: 1.58;
}

.newlook-ui .newlook-catalog-card__details {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    margin-top: 18px;
}

.newlook-ui .newlook-catalog-card__details span {
    display: inline-flex;
    gap: 7px;
    align-items: center;
    color: #8fa5b8;
    font-size: 12px;
    line-height: 1.4;
}

.newlook-ui .newlook-catalog-card__details i {
    color: #269fef;
}

.newlook-ui .newlook-catalog-card__footer {
    display: flex;
    gap: 18px;
    align-items: center;
    justify-content: space-between;
    padding: 17px 22px;
    background: rgba(1, 14, 31, 0.44);
    border-top: 1px solid rgba(76, 137, 193, 0.25);
}

.newlook-ui .newlook-catalog-card__footer > strong {
    color: #ffffff;
    font-size: 18px;
    line-height: 1;
}

.newlook-ui .newlook-catalog-card__footer > a {
    display: inline-flex;
    min-height: 38px;
    padding: 8px 13px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #e6f3fd;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    background: rgba(7, 70, 140, 0.58);
    border: 1px solid rgba(37, 149, 238, 0.47);
    border-radius: 7px;
    transition:
        transform 150ms ease,
        border-color 150ms ease,
        background-color 150ms ease;
}

.newlook-ui .newlook-catalog-card__footer > a:hover,
.newlook-ui .newlook-catalog-card__footer > a:focus-visible {
    color: #ffffff;
    background: rgba(11, 91, 180, 0.76);
    border-color: #2aa7ff;
    outline: none;
    transform: translateY(-1px);
}


/* ==========================================================
   EMPTY AND ERROR MESSAGES
   ========================================================== */

.newlook-ui .newlook-catalog-message {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    gap: 16px;
    align-items: flex-start;
    padding: 24px;
    color: #dce8f2;
    background:
        linear-gradient(
            145deg,
            rgba(5, 36, 74, 0.9),
            rgba(2, 20, 44, 0.93)
        );
    border: 1px solid rgba(71, 142, 207, 0.42);
    border-radius: 12px;
}

.newlook-ui .newlook-catalog-message > i {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    color: #2ca8ff;
    font-size: 19px;
    background: rgba(8, 88, 170, 0.27);
    border: 1px solid rgba(42, 155, 242, 0.38);
    border-radius: 10px;
}

.newlook-ui .newlook-catalog-message strong {
    display: block;
    margin-bottom: 7px;
    color: #ffffff;
    font-size: 17px;
}

.newlook-ui .newlook-catalog-message p {
    margin: 0;
    color: #a5b6c6;
    font-size: 14px;
    line-height: 1.55;
}

.newlook-ui .newlook-catalog-message a {
    display: inline-block;
    margin-top: 12px;
    color: #31aaff;
    font-weight: 700;
}

.newlook-ui .newlook-catalog-message.is-error {
    background:
        linear-gradient(
            145deg,
            rgba(105, 21, 39, 0.35),
            rgba(52, 14, 27, 0.44)
        );
    border-color: rgba(255, 91, 111, 0.5);
}

.newlook-ui .newlook-catalog-message.is-error > i {
    color: #ff6e7e;
    background: rgba(142, 27, 48, 0.28);
    border-color: rgba(255, 91, 111, 0.45);
}


/* ==========================================================
   PAGINATION
   ========================================================== */

.newlook-ui .newlook-catalog-pagination {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    margin-top: 30px;
}

.newlook-ui .newlook-catalog-pagination > a,
.newlook-ui .newlook-catalog-pagination > span,
.newlook-ui .newlook-catalog-pagination__pages a {
    display: inline-flex;
    min-height: 40px;
    padding: 8px 13px;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #dbe8f3;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    background: rgba(4, 39, 80, 0.69);
    border: 1px solid rgba(69, 143, 210, 0.45);
    border-radius: 8px;
    transition:
        color 150ms ease,
        border-color 150ms ease,
        background-color 150ms ease;
}

.newlook-ui .newlook-catalog-pagination > a:hover,
.newlook-ui .newlook-catalog-pagination > a:focus-visible,
.newlook-ui .newlook-catalog-pagination__pages a:hover,
.newlook-ui .newlook-catalog-pagination__pages a:focus-visible,
.newlook-ui .newlook-catalog-pagination__pages a.is-active {
    color: #ffffff;
    background: rgba(8, 82, 161, 0.8);
    border-color: #21a1ff;
    outline: none;
}

.newlook-ui .newlook-catalog-pagination__pages {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.newlook-ui .newlook-catalog-pagination__pages a {
    min-width: 40px;
    padding-right: 8px;
    padding-left: 8px;
}

.newlook-ui .newlook-catalog-pagination .is-disabled {
    cursor: not-allowed;
    opacity: 0.42;
}


/* ==========================================================
   RESPONSIVE LAYOUT
   ========================================================== */

@media (max-width: 1320px) {

    .newlook-ui .newlook-public-header__inner,
    .newlook-ui.newlook-public-catalog-page .newlook-public-main {
        padding-right: 26px;
        padding-left: 26px;
    }

    .newlook-ui .newlook-catalog-hero {
        grid-template-columns:
            minmax(430px, 1fr)
            minmax(340px, 0.74fr);
    }

    .newlook-ui .newlook-catalog-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

}


@media (max-width: 1100px) {

    .newlook-ui .newlook-public-header__inner {
        grid-template-columns: 1fr auto;
    }

    .newlook-ui .newlook-public-menu-toggle {
        display: grid;
    }

    .newlook-ui .newlook-public-navigation {
        position: absolute;
        top: 100%;
        right: 20px;
        left: 20px;
        display: none;
        padding: 14px;
        background:
            linear-gradient(
                180deg,
                rgba(3, 20, 44, 0.99),
                rgba(2, 13, 30, 0.99)
            );
        border: 1px solid rgba(66, 143, 212, 0.46);
        border-radius: 10px;
        box-shadow: 0 18px 44px rgba(0, 0, 0, 0.33);
    }

    .newlook-ui .newlook-public-navigation.is-open {
        display: grid;
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    .newlook-ui .newlook-public-navigation a {
        min-height: 44px;
        padding: 9px 12px;
        justify-content: center;
        background: rgba(5, 45, 91, 0.45);
        border: 1px solid rgba(60, 132, 198, 0.34);
        border-radius: 7px;
    }

    .newlook-ui .newlook-public-navigation a::after {
        display: none;
    }

    .newlook-ui .newlook-catalog-hero {
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .newlook-ui .newlook-catalog-hero__copy {
        max-width: 860px;
    }

    .newlook-ui .newlook-catalog-hero__image {
        min-height: 250px;
    }

    .newlook-ui .newlook-catalog-hero__image img {
        width: 76%;
        max-width: 680px;
    }

    .newlook-ui .newlook-catalog-type-filters {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    .newlook-ui .newlook-catalog-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}


@media (max-width: 780px) {

    .newlook-ui .newlook-public-brand span {
        display: none;
    }

    .newlook-ui .newlook-catalog-section-heading,
    .newlook-ui .newlook-catalog-results__header {
        display: grid;
        grid-template-columns: 1fr;
        align-items: start;
    }

    .newlook-ui .newlook-catalog-type-filters {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .newlook-ui .newlook-catalog-grid {
        grid-template-columns: 1fr;
    }

    .newlook-ui .newlook-catalog-pagination {
        grid-template-columns: 1fr;
    }

    .newlook-ui .newlook-catalog-pagination > a,
    .newlook-ui .newlook-catalog-pagination > span {
        width: 100%;
    }

}


@media (max-width: 620px) {

    .newlook-ui .newlook-public-header__inner {
        min-height: 78px;
        padding-right: 16px;
        padding-left: 16px;
    }

    .newlook-ui .newlook-public-brand img {
        width: 100px;
    }

    .newlook-ui .newlook-public-navigation {
        right: 12px;
        left: 12px;
    }

    .newlook-ui .newlook-public-navigation.is-open {
        grid-template-columns: 1fr;
    }

    .newlook-ui.newlook-public-catalog-page .newlook-public-main {
        padding: 20px 14px 50px;
    }

    .newlook-ui .newlook-catalog-hero {
        padding: 28px 20px 18px;
        border-radius: 14px;
    }

    .newlook-ui .newlook-catalog-hero h1 {
        font-size: 43px;
    }

    .newlook-ui .newlook-catalog-hero__intro {
        font-size: 16px;
    }

    .newlook-ui .newlook-catalog-search__control {
        grid-template-columns: 22px minmax(0, 1fr);
        padding: 8px 14px;
    }

    .newlook-ui .newlook-catalog-search button {
        grid-column: 1 / -1;
        width: 100%;
    }

    .newlook-ui .newlook-catalog-hero__facts {
        display: grid;
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .newlook-ui .newlook-catalog-hero__facts > div:not(:last-child)::after {
        display: none;
    }

    .newlook-ui .newlook-catalog-hero__image {
        min-height: 190px;
    }

    .newlook-ui .newlook-catalog-hero__image img {
        width: 100%;
    }

    .newlook-ui .newlook-catalog-type-filters {
        grid-template-columns: 1fr;
    }

    .newlook-ui .newlook-catalog-card__footer {
        align-items: stretch;
        flex-direction: column;
    }

    .newlook-ui .newlook-catalog-card__footer > a {
        width: 100%;
    }

}


@media (max-width: 430px) {

    .newlook-ui .newlook-catalog-hero h1 {
        font-size: 37px;
    }

    .newlook-ui .newlook-catalog-section-heading h2,
    .newlook-ui .newlook-catalog-results__header h2 {
        font-size: 27px;
    }

    .newlook-ui .newlook-catalog-type-filter {
        grid-template-columns: 40px minmax(0, 1fr);
        min-height: 76px;
        padding: 13px;
    }

    .newlook-ui .newlook-catalog-type-filter > i {
        width: 40px;
        height: 40px;
    }

}


/* ==========================================================
   PRINT
   ========================================================== */

@media print {

    .newlook-ui .newlook-public-header,
    .newlook-ui .newlook-catalog-search,
    .newlook-ui .newlook-catalog-type-filters,
    .newlook-ui .newlook-catalog-clear,
    .newlook-ui .newlook-catalog-pagination {
        display: none !important;
    }

    .newlook-ui.newlook-public-catalog-page {
        color: #000000;
        background: #ffffff;
    }

    .newlook-ui.newlook-public-catalog-page .newlook-public-main {
        width: 100%;
        padding: 0;
    }

    .newlook-ui .newlook-catalog-hero,
    .newlook-ui .newlook-catalog-card {
        color: #000000;
        background: #ffffff;
        border: 1px solid #cccccc;
        box-shadow: none;
    }

}

/* ==========================================================
   PUBLIC PRODUCT DETAIL PAGE
   Page class: newlook-public-product-page
   Requires the shared public header and catalog-card CSS.
   ========================================================== */

.newlook-ui.newlook-public-product-page {
    min-height: 100vh;
    color: #dbe8f4;
    background:
        radial-gradient(
            circle at 82% 7%,
            rgba(0, 113, 255, 0.12),
            transparent 28%
        ),
        linear-gradient(
            180deg,
            #020914 0%,
            #031225 52%,
            #020a15 100%
        );
}

.newlook-ui.newlook-public-product-page .newlook-public-main {
    width: min(100%, 1580px);
    margin: 0 auto;
    padding: 26px 34px 72px;
}


/* ==========================================================
   BREADCRUMB
   ========================================================== */

.newlook-ui .newlook-product-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    align-items: center;
    margin: 0 0 22px;
    padding: 0 3px;
    color: #72889d;
    font-size: 12px;
    line-height: 1.45;
}

.newlook-ui .newlook-product-breadcrumb a {
    color: #9fb3c6;
    text-decoration: none;
    transition: color 150ms ease;
}

.newlook-ui .newlook-product-breadcrumb a:hover,
.newlook-ui .newlook-product-breadcrumb a:focus-visible {
    color: #35adff;
    outline: none;
}

.newlook-ui .newlook-product-breadcrumb i {
    color: #41647f;
    font-size: 9px;
}

.newlook-ui .newlook-product-breadcrumb span {
    max-width: 620px;
    overflow: hidden;
    color: #d8e4ef;
    text-overflow: ellipsis;
    white-space: nowrap;
}


/* ==========================================================
   PRODUCT ERROR
   ========================================================== */

.newlook-ui .newlook-product-error {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 22px;
    align-items: flex-start;
    padding: 34px;
    background:
        linear-gradient(
            145deg,
            rgba(89, 21, 39, 0.4),
            rgba(41, 13, 27, 0.56)
        );
    border: 1px solid rgba(255, 91, 111, 0.48);
    border-radius: 15px;
    box-shadow:
        0 24px 52px rgba(0, 0, 0, 0.24);
}

.newlook-ui .newlook-product-error__icon {
    display: grid;
    width: 64px;
    height: 64px;
    place-items: center;
    color: #ff7181;
    font-size: 26px;
    background: rgba(143, 29, 50, 0.28);
    border: 1px solid rgba(255, 91, 111, 0.44);
    border-radius: 13px;
}

.newlook-ui .newlook-product-error .newlook-card-label {
    margin: 0 0 8px;
    color: #ff8190;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.newlook-ui .newlook-product-error h1 {
    margin: 0;
    color: #ffffff;
    font-size: 33px;
    line-height: 1.22;
}

.newlook-ui .newlook-product-error p {
    margin: 14px 0 0;
    color: #d5bfc4;
    font-size: 15px;
    line-height: 1.6;
}

.newlook-ui .newlook-product-error a {
    display: inline-flex;
    width: max-content;
    min-height: 43px;
    margin-top: 22px;
    padding: 9px 15px;
    align-items: center;
    gap: 9px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    background: rgba(118, 28, 47, 0.52);
    border: 1px solid rgba(255, 108, 124, 0.47);
    border-radius: 8px;
    transition:
        background-color 150ms ease,
        border-color 150ms ease,
        transform 150ms ease;
}

.newlook-ui .newlook-product-error a:hover,
.newlook-ui .newlook-product-error a:focus-visible {
    background: rgba(151, 35, 58, 0.72);
    border-color: #ff8592;
    outline: none;
    transform: translateY(-1px);
}


/* ==========================================================
   PRODUCT HERO
   ========================================================== */

.newlook-ui .newlook-product-hero {
    position: relative;
    display: grid;
    grid-template-columns:
        minmax(390px, 0.82fr)
        minmax(520px, 1.18fr);
    gap: 42px;
    align-items: center;
    min-height: 410px;
    padding: 38px 46px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 74% 28%,
            rgba(0, 119, 255, 0.2),
            transparent 34%
        ),
        linear-gradient(
            145deg,
            rgba(5, 31, 67, 0.98),
            rgba(2, 15, 35, 0.97)
        );
    border: 1px solid rgba(64, 145, 218, 0.43);
    border-radius: 18px;
    box-shadow:
        0 28px 68px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.newlook-ui .newlook-product-hero::before {
    position: absolute;
    inset: 0;
    z-index: 0;
    content: "";
    pointer-events: none;
    background:
        linear-gradient(
            rgba(70, 151, 226, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(70, 151, 226, 0.035) 1px,
            transparent 1px
        );
    background-size: 46px 46px;
}

.newlook-ui .newlook-product-hero__image,
.newlook-ui .newlook-product-hero__copy {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.newlook-ui .newlook-product-hero__image {
    min-height: 310px;
    overflow: hidden;
    background:
        linear-gradient(
            145deg,
            rgba(7, 58, 117, 0.6),
            rgba(2, 26, 57, 0.82)
        );
    border: 1px solid rgba(64, 148, 220, 0.4);
    border-radius: 15px;
    box-shadow:
        0 22px 48px rgba(0, 0, 0, 0.26);
}

.newlook-ui .newlook-product-hero__image::after {
    position: absolute;
    inset: 0;
    content: "";
    pointer-events: none;
    background:
        linear-gradient(
            180deg,
            transparent 48%,
            rgba(1, 12, 28, 0.52) 100%
        );
}

.newlook-ui .newlook-product-hero__image img {
    display: block;
    width: 100%;
    height: 310px;
    object-fit: cover;
}

.newlook-ui .newlook-product-type-badge {
    position: absolute;
    z-index: 2;
    top: 16px;
    left: 16px;
    display: inline-flex;
    min-height: 34px;
    padding: 7px 11px;
    align-items: center;
    gap: 8px;
    color: #edf7ff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    background: rgba(1, 24, 53, 0.86);
    border: 1px solid rgba(47, 163, 249, 0.5);
    border-radius: 20px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.newlook-ui .newlook-product-type-badge i {
    color: #2ba9ff;
}

.newlook-ui .newlook-product-hero .newlook-eyebrow {
    margin: 0 0 13px;
    color: #169cff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.newlook-ui .newlook-product-hero h1 {
    max-width: 820px;
    margin: 0;
    color: #ffffff;
    font-size: clamp(38px, 4.5vw, 62px);
    line-height: 1.06;
    letter-spacing: -0.025em;
}

.newlook-ui .newlook-product-hero__intro {
    max-width: 820px;
    margin: 20px 0 0;
    color: #b8c7d5;
    font-size: 17px;
    line-height: 1.65;
}

.newlook-ui .newlook-product-hero__metadata {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 12px;
    margin-top: 27px;
}

.newlook-ui .newlook-product-hero__metadata span {
    display: inline-flex;
    min-height: 38px;
    padding: 8px 12px;
    align-items: center;
    gap: 8px;
    color: #d6e5f1;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.35;
    background: rgba(4, 42, 87, 0.6);
    border: 1px solid rgba(62, 139, 207, 0.4);
    border-radius: 8px;
}

.newlook-ui .newlook-product-hero__metadata i {
    color: #2da9ff;
}


/* ==========================================================
   PRODUCT LAYOUT
   ========================================================== */

.newlook-ui .newlook-product-layout {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(330px, 390px);
    gap: 28px;
    align-items: start;
    margin-top: 30px;
}

.newlook-ui .newlook-product-main-column,
.newlook-ui .newlook-product-purchase-column {
    display: grid;
    gap: 24px;
    min-width: 0;
}


/* ==========================================================
   CONTENT CARDS
   ========================================================== */

.newlook-ui .newlook-product-content-card,
.newlook-ui .newlook-product-purchase-card,
.newlook-ui .newlook-product-seat-pricing {
    min-width: 0;
    overflow: hidden;
    background:
        linear-gradient(
            145deg,
            rgba(5, 30, 63, 0.97),
            rgba(2, 17, 38, 0.97)
        );
    border: 1px solid rgba(72, 143, 207, 0.42);
    border-radius: 14px;
    box-shadow:
        0 20px 46px rgba(0, 0, 0, 0.21),
        inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.newlook-ui .newlook-product-content-card {
    padding: 30px;
}

.newlook-ui .newlook-product-overview {
    border-color: rgba(35, 155, 241, 0.54);
}

.newlook-ui .newlook-product-section-heading {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 17px;
    align-items: flex-start;
    margin-bottom: 24px;
}

.newlook-ui .newlook-product-section-icon {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    color: #2ba8ff;
    font-size: 20px;
    background:
        linear-gradient(
            145deg,
            rgba(13, 101, 190, 0.36),
            rgba(4, 43, 92, 0.55)
        );
    border: 1px solid rgba(48, 159, 248, 0.47);
    border-radius: 11px;
}

.newlook-ui .newlook-product-section-heading .newlook-card-label {
    margin: 0 0 6px;
    color: #159cff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.newlook-ui .newlook-product-section-heading h2 {
    margin: 0;
    color: #ffffff;
    font-size: 25px;
    line-height: 1.3;
}

.newlook-ui .newlook-product-section-heading > div:last-child > p:last-child {
    max-width: 720px;
    margin: 9px 0 0;
    color: #94a9bb;
    font-size: 13px;
    line-height: 1.5;
}


/* ==========================================================
   DATABASE RICH TEXT
   ========================================================== */

.newlook-ui .newlook-product-rich-text {
    color: #b6c5d3;
    font-size: 15px;
    line-height: 1.72;
}

.newlook-ui .newlook-product-rich-text > :first-child {
    margin-top: 0;
}

.newlook-ui .newlook-product-rich-text > :last-child {
    margin-bottom: 0;
}

.newlook-ui .newlook-product-rich-text p {
    margin: 0 0 18px;
}

.newlook-ui .newlook-product-rich-text br + br {
    line-height: 2;
}

.newlook-ui .newlook-product-rich-text h2,
.newlook-ui .newlook-product-rich-text h3,
.newlook-ui .newlook-product-rich-text h4 {
    margin: 27px 0 12px;
    color: #f1f7fc;
    line-height: 1.3;
}

.newlook-ui .newlook-product-rich-text h2 {
    font-size: 24px;
}

.newlook-ui .newlook-product-rich-text h3 {
    font-size: 20px;
}

.newlook-ui .newlook-product-rich-text h4 {
    font-size: 17px;
}

.newlook-ui .newlook-product-rich-text strong,
.newlook-ui .newlook-product-rich-text b {
    color: #f1f7fc;
}

.newlook-ui .newlook-product-rich-text ul,
.newlook-ui .newlook-product-rich-text ol {
    display: grid;
    gap: 9px;
    margin: 15px 0 21px;
    padding-left: 24px;
}

.newlook-ui .newlook-product-rich-text li {
    padding-left: 4px;
}

.newlook-ui .newlook-product-rich-text li::marker {
    color: #28a7ff;
    font-weight: 700;
}

.newlook-ui .newlook-product-rich-text a {
    color: #31aaff;
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: rgba(49, 170, 255, 0.42);
    text-underline-offset: 3px;
}

.newlook-ui .newlook-product-rich-text a:hover,
.newlook-ui .newlook-product-rich-text a:focus-visible {
    color: #ffffff;
    outline: none;
    text-decoration-color: #ffffff;
}

.newlook-ui .newlook-product-rich-text blockquote {
    margin: 22px 0;
    padding: 17px 20px;
    color: #c9d8e4;
    background: rgba(5, 51, 101, 0.48);
    border-left: 4px solid #1da0ff;
    border-radius: 0 9px 9px 0;
}

.newlook-ui .newlook-product-accreditation .newlook-product-rich-text {
    padding: 18px 20px;
    color: #abc0d1;
    background: rgba(3, 36, 75, 0.48);
    border: 1px solid rgba(60, 140, 208, 0.34);
    border-radius: 10px;
}


/* ==========================================================
   INCLUDED COMPONENT LIST
   ========================================================== */

.newlook-ui .newlook-product-included-list {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
    counter-reset: included-item;
}

.newlook-ui .newlook-product-included-list li {
    position: relative;
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    gap: 14px;
    align-items: center;
    min-height: 70px;
    padding: 13px 14px;
    background: rgba(3, 34, 71, 0.5);
    border: 1px solid rgba(66, 135, 199, 0.32);
    border-radius: 9px;
    counter-increment: included-item;
}

.newlook-ui .newlook-product-included-list li::before {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    content: counter(included-item);
    color: #35adff;
    font-size: 13px;
    font-weight: 700;
    background: rgba(8, 89, 173, 0.25);
    border: 1px solid rgba(40, 154, 241, 0.37);
    border-radius: 8px;
}

.newlook-ui .newlook-product-included-list li > div {
    min-width: 0;
}

.newlook-ui .newlook-product-included-list strong {
    display: block;
    color: #edf5fb;
    font-size: 14px;
    line-height: 1.4;
}

.newlook-ui .newlook-product-included-list span {
    display: block;
    margin-top: 4px;
    color: #849bad;
    font-size: 11px;
    line-height: 1.45;
}

.newlook-ui .newlook-product-included-list li > a {
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    color: #29a7ff;
    text-decoration: none;
    background: rgba(5, 68, 135, 0.52);
    border: 1px solid rgba(35, 145, 231, 0.4);
    border-radius: 7px;
    transition:
        color 150ms ease,
        background-color 150ms ease,
        border-color 150ms ease,
        transform 150ms ease;
}

.newlook-ui .newlook-product-included-list li > a:hover,
.newlook-ui .newlook-product-included-list li > a:focus-visible {
    color: #ffffff;
    background: rgba(9, 91, 179, 0.74);
    border-color: #27a6ff;
    outline: none;
    transform: translateX(2px);
}


/* ==========================================================
   PURCHASE CARD
   ========================================================== */

.newlook-ui .newlook-product-purchase-card {
    position: sticky;
    top: 116px;
}

.newlook-ui .newlook-product-purchase-card > header {
    padding: 27px 26px 23px;
    background:
        linear-gradient(
            180deg,
            rgba(8, 58, 115, 0.5),
            rgba(3, 25, 55, 0.18)
        );
    border-bottom: 1px solid rgba(80, 144, 203, 0.26);
}

.newlook-ui .newlook-product-purchase-card .newlook-card-label,
.newlook-ui .newlook-product-seat-pricing .newlook-card-label {
    margin: 0 0 7px;
    color: #169cff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.newlook-ui .newlook-product-price {
    color: #ffffff;
    font-size: 39px;
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -0.025em;
}

.newlook-ui .newlook-product-purchase-card > header > p:last-child {
    margin: 13px 0 0;
    color: #9fb2c4;
    font-size: 13px;
    line-height: 1.55;
}

.newlook-ui .newlook-product-purchase-facts {
    display: grid;
    padding: 8px 26px;
}

.newlook-ui .newlook-product-purchase-facts > div {
    display: grid;
    grid-template-columns: 39px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-height: 68px;
    padding: 11px 0;
    border-bottom: 1px solid rgba(78, 135, 188, 0.2);
}

.newlook-ui .newlook-product-purchase-facts > div:last-child {
    border-bottom: 0;
}

.newlook-ui .newlook-product-purchase-facts i {
    display: grid;
    width: 39px;
    height: 39px;
    place-items: center;
    color: #2ba8ff;
    font-size: 15px;
    background: rgba(7, 83, 163, 0.24);
    border: 1px solid rgba(39, 151, 238, 0.34);
    border-radius: 8px;
}

.newlook-ui .newlook-product-purchase-facts span {
    min-width: 0;
}

.newlook-ui .newlook-product-purchase-facts small {
    display: block;
    color: #71889c;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.06em;
    line-height: 1.25;
    text-transform: uppercase;
}

.newlook-ui .newlook-product-purchase-facts strong {
    display: block;
    margin-top: 4px;
    color: #e8f1f8;
    font-size: 13px;
    line-height: 1.4;
}

.newlook-ui .newlook-product-purchase-card form {
    margin: 0;
    padding: 0 26px;
}

.newlook-ui .newlook-product-primary-action,
.newlook-ui .newlook-product-secondary-action {
    display: inline-flex;
    width: calc(100% - 52px);
    min-height: 52px;
    margin-right: 26px;
    margin-left: 26px;
    padding: 11px 18px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font: inherit;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    border-radius: 9px;
    transition:
        color 150ms ease,
        background-color 150ms ease,
        border-color 150ms ease,
        box-shadow 150ms ease,
        transform 150ms ease;
}

.newlook-ui .newlook-product-purchase-card form .newlook-product-primary-action {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
}

.newlook-ui .newlook-product-primary-action {
    color: #ffffff;
    cursor: pointer;
    background:
        linear-gradient(
            180deg,
            #1ba5ff,
            #075ecb
        );
    border: 1px solid #3eb2ff;
    box-shadow:
        0 11px 26px rgba(0, 103, 215, 0.23),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.newlook-ui .newlook-product-primary-action:hover,
.newlook-ui .newlook-product-primary-action:focus-visible {
    color: #ffffff;
    background:
        linear-gradient(
            180deg,
            #35b1ff,
            #086bdc
        );
    border-color: #79c9ff;
    box-shadow:
        0 14px 31px rgba(0, 112, 226, 0.3);
    outline: none;
    transform: translateY(-1px);
}

.newlook-ui .newlook-product-secondary-action {
    margin-top: 12px;
    color: #cbd9e5;
    background: rgba(4, 39, 80, 0.62);
    border: 1px solid rgba(67, 139, 205, 0.43);
}

.newlook-ui .newlook-product-secondary-action:hover,
.newlook-ui .newlook-product-secondary-action:focus-visible {
    color: #ffffff;
    background: rgba(8, 69, 139, 0.73);
    border-color: #219fff;
    outline: none;
    transform: translateY(-1px);
}

.newlook-ui .newlook-product-purchase-card > footer {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 10px;
    align-items: flex-start;
    margin-top: 22px;
    padding: 18px 26px 21px;
    color: #7f95a9;
    background: rgba(1, 13, 29, 0.42);
    border-top: 1px solid rgba(77, 134, 188, 0.2);
}

.newlook-ui .newlook-product-purchase-card > footer i {
    margin-top: 2px;
    color: #288ed2;
    font-size: 13px;
}

.newlook-ui .newlook-product-purchase-card > footer p {
    margin: 0;
    font-size: 11px;
    line-height: 1.5;
}


/* ==========================================================
   SITE LICENSE SEAT PRICING
   ========================================================== */

.newlook-ui .newlook-product-seat-pricing {
    padding: 24px;
}

.newlook-ui .newlook-product-seat-pricing h2 {
    margin: 0;
    color: #ffffff;
    font-size: 21px;
    line-height: 1.3;
}

.newlook-ui .newlook-product-seat-pricing > div {
    display: grid;
    gap: 9px;
    margin-top: 18px;
}

.newlook-ui .newlook-product-seat-pricing span {
    display: flex;
    min-height: 50px;
    padding: 11px 13px;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    background: rgba(3, 35, 73, 0.5);
    border: 1px solid rgba(66, 136, 201, 0.3);
    border-radius: 8px;
}

.newlook-ui .newlook-product-seat-pricing strong {
    color: #dce8f2;
    font-size: 13px;
}

.newlook-ui .newlook-product-seat-pricing small {
    color: #35adff;
    font-size: 14px;
    font-weight: 700;
}


/* ==========================================================
   RELATED PRODUCTS
   ========================================================== */

.newlook-ui .newlook-product-related {
    margin-top: 40px;
}

.newlook-ui .newlook-product-view-all {
    display: inline-flex;
    min-height: 42px;
    padding: 9px 14px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #dce9f4;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    background: rgba(4, 41, 83, 0.66);
    border: 1px solid rgba(65, 140, 207, 0.44);
    border-radius: 8px;
    transition:
        color 150ms ease,
        background-color 150ms ease,
        border-color 150ms ease,
        transform 150ms ease;
}

.newlook-ui .newlook-product-view-all:hover,
.newlook-ui .newlook-product-view-all:focus-visible {
    color: #ffffff;
    background: rgba(8, 77, 153, 0.75);
    border-color: #219fff;
    outline: none;
    transform: translateY(-1px);
}


/* ==========================================================
   RESPONSIVE LAYOUT
   ========================================================== */

@media (max-width: 1320px) {

    .newlook-ui.newlook-public-product-page .newlook-public-main {
        padding-right: 26px;
        padding-left: 26px;
    }

    .newlook-ui .newlook-product-hero {
        grid-template-columns:
            minmax(340px, 0.75fr)
            minmax(470px, 1.25fr);
        gap: 32px;
        padding-right: 36px;
        padding-left: 36px;
    }

    .newlook-ui .newlook-product-layout {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(315px, 355px);
    }

}


@media (max-width: 1050px) {

    .newlook-ui .newlook-product-hero {
        grid-template-columns: 1fr;
    }

    .newlook-ui .newlook-product-hero__image {
        width: min(100%, 760px);
        min-height: 300px;
    }

    .newlook-ui .newlook-product-hero__image img {
        height: 300px;
    }

    .newlook-ui .newlook-product-hero__copy {
        max-width: 900px;
    }

    .newlook-ui .newlook-product-layout {
        grid-template-columns: 1fr;
    }

    .newlook-ui .newlook-product-purchase-column {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(280px, 0.72fr);
        align-items: start;
    }

    .newlook-ui .newlook-product-purchase-card {
        position: static;
    }

}


@media (max-width: 780px) {

    .newlook-ui .newlook-product-purchase-column {
        grid-template-columns: 1fr;
    }

    .newlook-ui .newlook-product-section-heading {
        grid-template-columns: 46px minmax(0, 1fr);
    }

    .newlook-ui .newlook-product-section-icon {
        width: 46px;
        height: 46px;
    }

    .newlook-ui .newlook-product-related .newlook-catalog-section-heading {
        display: grid;
        grid-template-columns: 1fr;
        align-items: start;
    }

    .newlook-ui .newlook-product-view-all {
        width: max-content;
    }

}


@media (max-width: 620px) {

    .newlook-ui.newlook-public-product-page .newlook-public-main {
        padding: 18px 14px 52px;
    }

    .newlook-ui .newlook-product-breadcrumb span {
        max-width: 260px;
    }

    .newlook-ui .newlook-product-hero {
        min-height: auto;
        padding: 22px 18px 26px;
        border-radius: 14px;
    }

    .newlook-ui .newlook-product-hero__image {
        min-height: 220px;
    }

    .newlook-ui .newlook-product-hero__image img {
        height: 220px;
    }

    .newlook-ui .newlook-product-hero h1 {
        font-size: 38px;
    }

    .newlook-ui .newlook-product-hero__intro {
        font-size: 16px;
    }

    .newlook-ui .newlook-product-content-card {
        padding: 23px 19px;
    }

    .newlook-ui .newlook-product-section-heading {
        grid-template-columns: 1fr;
    }

    .newlook-ui .newlook-product-included-list li {
        grid-template-columns: 38px minmax(0, 1fr);
    }

    .newlook-ui .newlook-product-included-list li::before {
        width: 38px;
        height: 38px;
    }

    .newlook-ui .newlook-product-included-list li > a {
        grid-column: 1 / -1;
        width: 100%;
    }

    .newlook-ui .newlook-product-error {
        grid-template-columns: 1fr;
        padding: 25px 20px;
    }

}


@media (max-width: 430px) {

    .newlook-ui .newlook-product-breadcrumb {
        align-items: flex-start;
    }

    .newlook-ui .newlook-product-breadcrumb span {
        max-width: 210px;
    }

    .newlook-ui .newlook-product-hero h1 {
        font-size: 33px;
    }

    .newlook-ui .newlook-product-hero__metadata {
        display: grid;
        grid-template-columns: 1fr;
    }

    .newlook-ui .newlook-product-hero__metadata span {
        width: 100%;
    }

    .newlook-ui .newlook-product-content-card {
        padding-right: 16px;
        padding-left: 16px;
    }

    .newlook-ui .newlook-product-purchase-card > header,
    .newlook-ui .newlook-product-purchase-facts,
    .newlook-ui .newlook-product-purchase-card form,
    .newlook-ui .newlook-product-purchase-card > footer {
        padding-right: 20px;
        padding-left: 20px;
    }

    .newlook-ui .newlook-product-primary-action,
    .newlook-ui .newlook-product-secondary-action {
        width: calc(100% - 40px);
        margin-right: 20px;
        margin-left: 20px;
    }

    .newlook-ui .newlook-product-purchase-card form .newlook-product-primary-action {
        width: 100%;
        margin-right: 0;
        margin-left: 0;
    }

}


/* ==========================================================
   PRINT
   ========================================================== */

@media print {

    .newlook-ui .newlook-public-header,
    .newlook-ui .newlook-product-breadcrumb,
    .newlook-ui .newlook-product-purchase-column,
    .newlook-ui .newlook-product-related {
        display: none !important;
    }

    .newlook-ui.newlook-public-product-page {
        color: #000000;
        background: #ffffff;
    }

    .newlook-ui.newlook-public-product-page .newlook-public-main {
        width: 100%;
        padding: 0;
    }

    .newlook-ui .newlook-product-hero,
    .newlook-ui .newlook-product-content-card {
        color: #000000;
        background: #ffffff;
        border: 1px solid #cccccc;
        box-shadow: none;
    }

    .newlook-ui .newlook-product-layout {
        display: block;
    }

    .newlook-ui .newlook-product-main-column {
        display: block;
    }

    .newlook-ui .newlook-product-content-card {
        margin-top: 18px;
        break-inside: avoid;
    }

}

