/* AVA Core: Deals page (1575) update, client 14 Oct 2026. Figma "Deals - Desktop" 1296:8828 / "Deals - Mobile" 1296:9907.
   [ava_deals_offers] (dealsub.php): Weekly Deals 1296:8919 / 1296:9983, House Specials 1296:8972 / 1296:10035,
   Mark Your Calendar 1296:9020 / 1296:10083. Hero contour 1296:8882 / 1296:9946 (white, 50%). Loaded on page 1575 only. */

/* ---------- hero contour: behind the hero content, clipped by the hero ---------- */
.elementor-1575 .elementor-element-7629cdb { position: relative; overflow: hidden; }
.elementor-1575 .elementor-element-7629cdb > .e-con-inner { position: relative; z-index: 1; }
.elementor-1575 .elementor-element-7629cdb::before {
    content: ""; position: absolute; z-index: 0; pointer-events: none; opacity: .5;
    width: 492px; height: 882px; left: calc(50% - 141px); top: -260px; /* frame x 579 of 1440, y -260 of the hero */
    background: url("img/deals-hero-contour.svg") no-repeat 0 0 / 100% 100%;
}

/* ---------- sections ---------- */
.ava-dw { font-family: 'Krub', sans-serif; }
.ava-dw__sec { box-sizing: border-box; padding: 56px 20px; }
.ava-dw__in { display: flex; flex-direction: column; gap: 28px; max-width: 1240px; margin: 0 auto; }
.ava-dw__sec--weekly { background: #ffffff; }
.ava-dw__sec--house { background: #EDEBE1; }
.ava-dw__sec--cal { background: #FF4438; padding-top: 48px; padding-bottom: 48px; }
.ava-dw p, .ava-dw h2, .ava-dw h3 { margin: 0; }

.ava-dw__head { display: flex; flex-direction: column; gap: 6px; }
.ava-dw .ava-dw__eyebrow { font-size: 12px; font-weight: 600; line-height: 1.2; letter-spacing: 1.44px; text-transform: uppercase; color: #FF4438; }
.ava-dw .ava-dw__title { font-family: 'Krub', sans-serif; font-size: 30px; font-weight: 700; line-height: 1.1; letter-spacing: -0.3px; color: #151515; text-transform: none; }
.ava-dw__sec--house .ava-dw__head { gap: 10px; }
.ava-dw__sec--house .ava-dw__eyebrow { line-height: normal; letter-spacing: 1px; }
.ava-dw .ava-dw__sec--house .ava-dw__title { font-size: 33px; line-height: normal; letter-spacing: 0; }
.ava-dw .ava-dw__intro { max-width: 720px; font-size: 15px; line-height: normal; color: #6B695E; }

.ava-dw__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.ava-dw__card {
    position: relative; box-sizing: border-box; display: flex; flex-direction: column; justify-content: space-between; gap: 12px;
    min-height: 200px; padding: 22px; border: 1px solid #DBD9C9; border-radius: 12px; background: #EDEBE1;
}
.ava-dw__sec--house .ava-dw__card { min-height: 168px; background: #ffffff; }
.ava-dw__top { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.ava-dw .ava-dw__brand { font-size: 11px; font-weight: 600; line-height: normal; letter-spacing: .8px; color: #6B695E; }
.ava-dw .ava-dw__product { font-family: 'Krub', sans-serif; font-size: 19px; font-weight: 700; line-height: normal; letter-spacing: 0; color: #151515; text-transform: none; }
.ava-dw .ava-dw__offer {
    display: inline-flex; padding: 5px 11px; border-radius: 100px; background: #FF4438;
    font-size: 12px; font-weight: 700; line-height: normal; letter-spacing: .4px; color: #ffffff; white-space: nowrap;
}
.ava-dw__sec--house .ava-dw__offer { background: #AD8C5C; }
.ava-dw .ava-dw__note { font-size: 13px; line-height: normal; color: #6B695E; }
.ava-dw .ava-dw__link { font-size: 13px; font-weight: 600; line-height: normal; color: #FF4438; text-decoration: none; }
.ava-dw__link::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.ava-dw .ava-dw__link:hover, .ava-dw .ava-dw__link:focus-visible { text-decoration: underline; text-underline-offset: 3px; }
.ava-dw .ava-dw__link:focus-visible { outline: none; }
.ava-dw .ava-dw__link:focus-visible::after { outline: 2px solid #151515; outline-offset: 2px; }
.ava-dw .ava-dw__foot { font-size: 12px; line-height: normal; color: #6B695E; }

/* Mark your calendar */
.ava-dw .ava-dw__caltitle { font-family: 'Krub', sans-serif; font-size: 12px; font-weight: 600; line-height: normal; letter-spacing: 1.2px; color: #ffffff; text-transform: none; }
.ava-dw__row { display: flex; gap: 18px; }
.ava-dw__promo {
    position: relative; box-sizing: border-box; flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; justify-content: space-between; gap: 12px;
    min-height: 150px; padding: 20px 22px; border: 1px solid #DBD9C9; border-radius: 12px; background: #ffffff;
}
.ava-dw__ptop { display: flex; flex-direction: column; gap: 7px; }
.ava-dw__ph { display: flex; align-items: center; gap: 9px; }
.ava-dw .ava-dw__badge { display: inline-flex; padding: 3px 9px; border-radius: 100px; background: #0E0E0E; font-size: 11px; font-weight: 700; line-height: normal; letter-spacing: .4px; color: #ffffff; white-space: nowrap; }
.ava-dw .ava-dw__promo--terp .ava-dw__badge { background: #FF4438; }
.ava-dw .ava-dw__ptitle { font-family: 'Krub', sans-serif; font-size: 19px; font-weight: 700; line-height: normal; letter-spacing: 0; color: #151515; text-transform: none; }
.ava-dw .ava-dw__pdesc { font-size: 13px; line-height: normal; color: #6B695E; }
.ava-dw .ava-dw__promo .ava-dw__link { color: #151515; }
.ava-dw .ava-dw__promo--terp .ava-dw__link { color: #FF4438; }

/* tablet: two cards a row */
@media (min-width: 768px) and (max-width: 900px) {
    .ava-dw__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .ava-dw__row { flex-wrap: wrap; }
    .ava-dw__promo { flex: 1 1 calc(50% - 9px); }
}

/* phones (frame 375) */
@media (max-width: 767px) {
    .elementor-1575 .elementor-element-7629cdb::before {
        width: 433px; height: 776px; left: -172px; top: var(--ava-dw-hero-top, -125px); /* frame x -172, y -125 of the hero incl. breadcrumb */
        background-image: url("img/deals-hero-contour-m.svg");
    }
    .ava-dw__sec { padding: 24px 18px; }
    .ava-dw__in { gap: 16px; }
    .ava-dw__head { gap: 4px; }
    .ava-dw .ava-dw__title { font-size: 22px; line-height: 1.2; letter-spacing: 0; }
    .ava-dw__sec--house .ava-dw__head { gap: 7px; }
    .ava-dw__sec--house .ava-dw__eyebrow { font-size: 11px; letter-spacing: .8px; }
    .ava-dw .ava-dw__sec--house .ava-dw__title { font-size: 24px; line-height: normal; }
    .ava-dw .ava-dw__intro { font-size: 13px; }
    .ava-dw__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
    .ava-dw__card { min-height: 178px; padding: 16px; border-color: #DCD8CA; }
    .ava-dw__sec--house .ava-dw__card { min-height: 138px; border-color: #DBD9C9; }
    .ava-dw__top { gap: 6px; }
    .ava-dw .ava-dw__brand { font-size: 10px; letter-spacing: .6px; }
    .ava-dw .ava-dw__product { font-size: 15px; }
    .ava-dw .ava-dw__offer { padding: 4px 9px; font-size: 11px; letter-spacing: .3px; }
    .ava-dw .ava-dw__note { font-size: 12px; }
    .ava-dw .ava-dw__link { font-size: 12px; }
    .ava-dw .ava-dw__foot { font-size: 11px; }
    .ava-dw__sec--cal { padding: 24px 18px; }
    .ava-dw__sec--cal .ava-dw__in { gap: 24px; }
    .ava-dw .ava-dw__caltitle { font-size: 11px; letter-spacing: 1px; }
    .ava-dw__row { flex-direction: column; gap: 12px; }
    .ava-dw__promo { flex: 0 0 auto; min-height: 0; justify-content: flex-start; gap: 6px; padding: 14px 16px; border-radius: 11px; }
    .ava-dw__ptop { gap: 6px; }
    .ava-dw__ph { gap: 8px; }
    .ava-dw .ava-dw__badge { padding: 3px 8px; font-size: 10px; letter-spacing: .3px; }
    .ava-dw .ava-dw__ptitle { font-size: 16px; }
    .ava-dw .ava-dw__pdesc { font-size: 12px; }
    .ava-dw .ava-dw__promo--420 .ava-dw__badge { background: #2E6E3E; }
    .ava-dw .ava-dw__promo--420 .ava-dw__link { color: #2E6E3E; }
    .ava-dw .ava-dw__promo--710 .ava-dw__badge { background: #AD8C5C; }
    .ava-dw .ava-dw__promo--710 .ava-dw__link { color: #AD8C5C; }
}
