#mm-footer-wrapper { display: none; } .miles-more-footer-info { .footer-content-wrapper { img { height: auto; } } &.desktop-only { .footer-content-wrapper { margin: 20px 0; img { max-width: 150px; } } } &.mobile-only { .footer-content-wrapper { text-align: center; padding: 15px; border-bottom: solid 1px #fff; img { max-width: 130px; } } } } .media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen__m) { .miles-more-footer-info { &.desktop-only { display: block !important; } &.mobile-only { display: none !important; } } } .media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen__m) { .miles-more-footer-info { &.desktop-only { display: none !important; } &.mobile-only { display: block !important; } } } /* miles and more info box */ .miles-and-more-info-box { clear: both; .miles-content { font-size: 10px; padding: 15px 0; display: flex; .mm-symbol { align-items: center; justify-content: center; display: flex; img { position: relative; top: -2px; max-width: 27px; margin-right: 12px; } } a { color: inherit; text-decoration: underline; } } } /* product page */ .catalog-product-view .page-wrapper .page-main .columns .column.main { .miles-content { border-bottom: 1px solid #141e28; } } .checkout-cart-index, .checkout-index-index { .miles-and-more-info-box { border-bottom: 1px solid #C2C5D1; margin-bottom: 3.5rem; .miles-content { font-size: 1.3rem; padding-bottom: 3.5rem; } } } .media-width(@extremum, @breakpoint) when (@extremum = 'max') and (@breakpoint = @screen__m) { .catalog-product-view .page-wrapper .page-main .columns .column.main .product-details-page-main .mes_main_details .mes_main_product_container { .miles-content { border-top: 1px solid #141e28; border-bottom: 0; margin: 0 28px; } } .checkout-cart-index, .checkout-index-index { .miles-and-more-info-box { border-bottom: 1px solid #C2C5D1; margin-bottom: 15px; } } } /* */ .miles-and-more-container { .info-box { padding: 15px; background-color: #f4f4f4; border-radius: 4px; .title { font-weight: bold; color: #002d51; } } .checkout-integration { margin-top: 10px; display: flex; align-items: center; .earn-points-icon { width: 24px; margin-right: 8px; } } } .media-width(@extremum, @break) when (@extremum = 'max') and (@break = @screen__s) { .miles-and-more-container { .info-box { padding: 10px; } } } // ============================================================================ // Miles & More Landing Page Styles // ============================================================================ // ---------------------------------------------------------------------------- // Container // ---------------------------------------------------------------------------- .mm-container { max-width: 1396px; margin-left: auto; margin-right: auto; padding-left: 36px; padding-right: 36px; box-sizing: border-box; } // ---------------------------------------------------------------------------- // Hero Section // ---------------------------------------------------------------------------- .mm-hero { padding: 48px 0; letter-spacing: -1px; &__wrapper { display: flex; justify-content: space-between; align-items: flex-start; gap: 32px; } &__logo { flex-shrink: 0; max-width: 300px; order: 2; img { max-width: 100%; height: auto; display: block; } } &__content { flex: 1; order: 1; max-width: 60%; } &__title { font-size: 32px; font-weight: 700; line-height: 1.2; color: #333333; margin: 0 0 24px 0; } &__intro { font-size: 16px; font-weight: 400; line-height: 1.6; color: #333333; margin-bottom: 24px; } } // ---------------------------------------------------------------------------- // Steps Section // ---------------------------------------------------------------------------- .mm-steps { padding: 32px 0; background-color: #f5f1ee; letter-spacing: -1px; max-width: 1440px; margin: 0 auto; &__title { font-size: 24px; font-weight: 700; line-height: 1.2; color: #333333; margin: 0 0 24px 0; } &__list { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 16px; } &__item { font-size: 16px; font-weight: 400; line-height: 1.6; color: #333333; padding-left: 24px; position: relative; &::before { content: "•"; position: absolute; left: 0; color: #333333; font-weight: 700; font-size: 20px; } } } // ---------------------------------------------------------------------------- // CTA Section // ---------------------------------------------------------------------------- .mm-cta { padding: 48px 0; text-align: center; letter-spacing: -1px; &__title { font-size: 24px; font-weight: 700; line-height: 1.2; color: #333333; margin: 0 0 32px 0; } &__buttons { display: flex; justify-content: center; align-items: center; gap: 20px; flex-wrap: wrap; } } // ---------------------------------------------------------------------------- // Button Component // ---------------------------------------------------------------------------- .mm-button { display: inline-block; font-size: 10px; font-weight: 400; line-height: 0; letter-spacing: 1px; text-align: center; text-transform: uppercase; text-decoration: none; width: 100%; padding: 20px 15px; border-radius: 0; box-sizing: border-box; cursor: pointer; transition: background 0.25s ease-in-out, color 0.25s ease-in-out; &--primary { color: #ffffff; background-color: #141e28; &:hover, &:focus { background: #ff7548; color: #ffffff; } &:visited { color: #ffffff; } } } // ---------------------------------------------------------------------------- // Responsive Styles // ---------------------------------------------------------------------------- // Tablet/Mobile (641px - 767px) - Bereich zwischen small und medium @media only screen and (min-width: 641px) and (max-width: 767px) { .mm-hero { padding: 32px 0; &__wrapper { flex-direction: column; gap: 24px; } &__logo { order: 1; max-width: 250px; margin: 0 auto; } &__content { order: 2; max-width: 100%; } &__title { font-size: 28px; margin-bottom: 16px; } } .mm-steps { padding: 24px 0; &__title { font-size: 22px; } &__item { font-size: 14px; } } .mm-cta { padding: 32px 0; &__title { font-size: 22px; margin-bottom: 24px; } &__buttons { flex-direction: column; gap: 16px; align-items: stretch; } } .mm-button { max-width: none; width: 100%; } } // Mobile Small (<= 640px) @media only screen and (max-width: 640px) { .mm-container { padding-left: 16px; padding-right: 16px; } .mm-hero { padding: 24px 0; &__wrapper { flex-direction: column; gap: 24px; } &__logo { order: 1; max-width: 250px; margin: 0 auto; } &__content { order: 2; max-width: 100%; } &__title { font-size: 24px; margin-bottom: 16px; } } .mm-steps { padding: 24px 0; &__title { font-size: 20px; } &__item { font-size: 14px; } } .mm-cta { padding: 24px 0; &__title { font-size: 20px; margin-bottom: 24px; } &__buttons { flex-direction: column; gap: 16px; align-items: stretch; } } .mm-button { max-width: none; width: 100%; } } // Desktop (>= 1024px) .media-width(@extremum, @break) when (@extremum = 'min') and (@break = @screen__l) { .mm-hero__wrapper { display: flex; justify-content: space-between; align-items: flex-start; } .mm-hero__logo { order: 2; max-width: 300px; } .mm-hero__content { order: 1; max-width: 60%; } }