@charset "utf-8";

.special-terms-container { height: 100%; display: flex; flex-direction: column; min-height: 100vh; }

.special-terms-container .special-terms-header { position: relative; padding: 1.5rem; border-bottom: none; margin-bottom: 3rem; flex-shrink: 0; background: rgb(255, 255, 255); width: 100%; box-sizing: border-box; }

.special-terms-container .special-terms-header .special-terms-title { font-weight: 500; font-size: 22px; color: rgb(29, 37, 44); margin: 0px; padding-right: 4rem; line-height: 1.4; overflow-wrap: break-word; max-width: calc(100% - 4rem); }

.special-terms-container .special-terms-header .special-terms-close { position: absolute; top: 1.5rem; right: 1.5rem; padding: 0.5rem; background: none; border: none; border-radius: 4px; cursor: pointer; z-index: 1000; }

.special-terms-container .special-terms-header .special-terms-close:focus { outline: rgb(0, 102, 204) solid 2px; outline-offset: 2px; }

.special-terms-container .special-terms-content { flex: 1 1 0%; overflow-y: auto; padding: 0px 1.5rem 1.5rem; background: rgb(255, 255, 255); box-sizing: border-box; }

.special-terms-container .special-terms-content .special-terms-disclaimer { font-size: 14px; line-height: 1.5; color: rgb(29, 37, 44); margin: 0px; overflow-wrap: break-word; padding: 0px; }

.special-terms-container:not(.c-spoke-content *) { min-height: auto; max-height: 80vh; }

.special-terms-container:not(.c-spoke-content *) .special-terms-header { margin-bottom: 0px; }

.special-terms-container:not(.c-spoke-content *) .special-terms-header .special-terms-title { font-size: 22px; }

.special-terms-container:not(.c-spoke-content *) .special-terms-content { padding: 0px 4rem 1.5rem 1.5rem; }

.special-terms-container:not(.c-spoke-content *) .special-terms-content .special-terms-disclaimer { font-size: 11px; line-height: 1.4; margin-bottom: 10px; }

.c-spoke-content .special-terms-container { height: 100%; min-height: calc(-60px + 100vh); padding: 0px; margin: 0px; }

.visitor-optimization-banner.special-banner { background: linear-gradient(45deg, rgb(112, 38, 191), rgb(0, 30, 115)); color: rgb(251, 251, 251); position: relative; max-width: none; margin: 0px; justify-content: center; }

.visitor-optimization-banner .main-content { max-width: 1520px; margin: 0px; width: 100%; justify-content: flex-start; align-items: flex-start; text-align: left; flex: 1 1 0%; }

.visitor-optimization-banner .banner-text { color: rgb(251, 251, 251); font-weight: 400; font-size: small; max-width: 90%; }

.visitor-optimization-banner .activated-offer-button { color: rgb(251, 251, 251); }

.visitor-optimization-banner .button-disclaimer-wrapper { display: flex; align-items: center; gap: 4rem; }

.visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button, .visitor-optimization-banner .button-disclaimer-wrapper .see-details-button { flex: 0 0 auto; min-width: 97px; }

.visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button button { border: 1px solid rgb(244, 193, 56); }

.visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button button span { font-size: var(--button-font-size); }

.visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button .flex.p-100.gap-50.justify-center, .visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button div[data-added-to-cart], .visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button div[data-cart-icon] { background-color: rgb(245, 245, 245); border: 1px solid rgb(209, 213, 219); border-radius: var(--button-radius); padding: var(--button-padding); }

.visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button .flex.p-100.gap-50.justify-center { min-width: var(--button-width); min-height: var(--button-height); box-sizing: border-box; align-items: center; }

.visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button .flex.p-100.gap-50.justify-center span { font-size: var(--button-font-size); }

.visitor-optimization-banner .button-disclaimer-wrapper .disclaimer-text { font-weight: 400; flex: 0 0 auto; max-width: 183px; margin-bottom: 0px; }

.vo-lv .visitor-optimization-banner .main-content { display: flex; flex-direction: column; height: 100%; justify-content: flex-start; align-items: flex-start; }

.vo-lv .visitor-optimization-banner .banner-text { font-weight: 400; font-size: medium; max-width: 100%; text-align: left; }

.vo-lv .visitor-optimization-banner .button-disclaimer-wrapper { flex-direction: row; align-items: center; gap: 4rem; margin-top: auto; }

.vo-lv .visitor-optimization-banner .button-disclaimer-wrapper .see-details-button { min-width: 97px; flex: 0 0 auto; }

.vo-lv .visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button { min-width: 97px; }

.vo-lv .visitor-optimization-banner .button-disclaimer-wrapper .disclaimer-text { font-weight: 400; margin-left: 0px; font-size: medium; text-align: left; flex: 0 0 auto; max-width: 450px; }

.vo-lv .visitor-optimization-banner .button-disclaimer-wrapper .disclaimer-text .disclaimer-link { color: rgb(251, 251, 251); }

.visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button:has(.flex.p-100.gap-50.justify-center) { min-width: 160px; }

.vo-sv .visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button:has(.flex.p-100.gap-50.justify-center) { min-width: 130px; }

.visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button .flex.p-100.gap-50.justify-center:has(svg) { background-color: rgb(245, 245, 245); border: 1px solid rgb(209, 213, 219); }

.visitor-optimization-banner.special-banner .see-details-button button { background-color: rgb(1, 79, 211); border: 1px solid rgb(1, 79, 211); }

.vo-lv .visitor-optimization-banner .button-disclaimer-wrapper .add-to-cart-button:has(.flex.p-100.gap-50.justify-center) { width: auto; }

.visitor-optimization-banner { --button-font-size: medium; --button-height: 48px; --button-width: 96px; --button-padding: 8px 16px; --button-radius: 8px; }

.visitor-optimization-banner.vendor-rewards-banner { background: linear-gradient(45deg, rgb(112, 38, 191), rgb(0, 30, 115)); color: rgb(251, 251, 251); position: relative; max-width: none; margin: 0px; justify-content: center; }

.visitor-optimization-banner .close-button { position: absolute; z-index: 10; pointer-events: auto; }

.visitor-optimization-banner .main-content-vendor { max-width: 1520px; margin: 0px; width: 100%; justify-content: flex-start; align-items: center; text-align: left; flex: 1 1 0%; }

.visitor-optimization-banner .vendor-rewards-image-rect { background: rgb(255, 255, 255); width: 116px; height: 48px; display: flex; align-items: center; justify-content: center; margin-right: 2rem; }

.visitor-optimization-banner .vendor-rewards-image { width: 100px; height: 15px; object-fit: contain; }

.visitor-optimization-banner .banner-text-vendor { color: rgb(251, 251, 251); font-weight: 400; font-size: small; max-width: 90%; }

.visitor-optimization-banner .banner-text-vendor strong { font-weight: 500; }

.visitor-optimization-banner .see-details-link { color: rgb(251, 251, 251); font-weight: 400; font-size: small; max-width: 90%; }

.visitor-optimization-banner .expires-text { color: rgb(251, 251, 251); font-weight: 500; font-size: small; max-width: 90%; }

.vo-lv .visitor-optimization-banner { --button-font-size: medium; }

.vo-lv .visitor-optimization-banner .main-content-vendor { display: flex; flex-direction: row; height: 100%; justify-content: flex-start; align-items: center; }

.vo-lv .visitor-optimization-banner .banner-text-vendor { font-weight: 400; font-size: medium; max-width: 100%; text-align: left; }

.vo-sv .visitor-optimization-banner { --button-font-size: small; --button-height: 36px; --button-width: 80px; --button-padding: 6px 12px; --button-radius: 6px; }

.visitor-optimization-banner.vendor-rewards-banner .see-details-button button { background-color: rgb(1, 79, 211); border: 1px solid rgb(1, 79, 211); }

.visitor-optimization-banner { max-width: 1520px; margin: 0px auto; }

.visitor-optimization-banner .vo-apply-offer-button { width: 121px; }

.special-modal-content { --modal-button-font-size: larger; --modal-button-height: 48px; --modal-button-width: 96px; --modal-button-padding: 8px 16px; --modal-button-radius: 8px; padding: 2rem 1rem 1rem; }

.special-modal-content .special-header-section { display: flex; align-items: stretch; }

.special-modal-content .special-header-section .special-highlight { background-color: rgb(255, 245, 236); font-weight: 500; font-size: 12px; color: rgb(29, 37, 44); border-radius: 4px; flex: 1 1 0%; }

.special-modal-content .special-header-section .time-remaining-section { color: rgb(232, 30, 37); background-color: rgb(255, 255, 255); font-weight: 500; font-size: 12px; flex: 1 1 0%; }

.special-modal-content .special-background { background-color: rgb(255, 255, 255); color: rgb(3, 3, 3); border-radius: 0px 0px 4px 4px; }

.special-modal-content .special-content-wrapper { padding: 0px; }

.special-modal-content .special-content-section .special-content-header { color: rgb(0, 30, 115); font-size: 16px; font-weight: 500; line-height: 1.4; }

.special-modal-content .special-content-section .special-content-body { color: rgb(3, 3, 3); font-size: 16px; font-weight: 400; line-height: 1.4; margin-bottom: 20px; }

.special-modal-content .special-activated-button { background-color: rgb(0, 30, 115); color: rgb(255, 255, 255); border: 2px solid rgb(0, 30, 115); }

.special-modal-content .special-activated-button:hover { background-color: rgb(0, 26, 92); border-color: rgb(0, 26, 92); }

.special-modal-content .special-cta-section { display: flex; justify-content: flex-start; align-items: center; }

.special-modal-content .special-add-to-cart-wrapper, .special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button { width: 100%; }

.special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button button { border-color: rgb(244, 193, 56); background-color: rgb(255, 226, 0); }

.special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button button span { font-size: var(--modal-button-font-size); }

.special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button .flex.p-100.gap-50.justify-center, .special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button div[data-added-to-cart], .special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button div[data-cart-icon] { background-color: rgb(245, 245, 245); border: 1px solid rgb(209, 213, 219); border-radius: var(--modal-button-radius); padding: var(--modal-button-padding); }

.special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button .flex.p-100.gap-50.justify-center { min-width: var(--modal-button-width); min-height: var(--modal-button-height); box-sizing: border-box; align-items: center; }

.special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button .flex.p-100.gap-50.justify-center span { font-size: var(--modal-button-font-size); }

.special-modal-content .special-see-details-wrapper .special-see-details-button div[data-details-icon] { background-color: rgb(0, 30, 115); border: 2px solid rgb(0, 30, 115); border-radius: 8px; padding: 12px 24px; color: rgb(255, 255, 255); }

.special-modal-content .special-see-details-wrapper .special-see-details-button div[data-details-icon]:has(svg) svg { fill: rgb(255, 255, 255); }

.special-modal-content .special-see-details-wrapper .special-see-details-button .flex.p-100.gap-50.justify-center { background-color: rgb(0, 30, 115); border: 2px solid rgb(0, 30, 115); border-radius: 8px; padding: 12px 24px; color: rgb(255, 255, 255); }

.special-modal-content .error-state { background-color: rgb(255, 255, 255); }

.special-modal-content .error-state .error-state-text { color: rgb(3, 3, 3); }

.special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button .flex.p-100.gap-50.justify-center:has(svg) { background-color: rgb(245, 245, 245); border: 1px solid rgb(209, 213, 219); }

.special-modal-content .special-see-details-wrapper .special-see-details-button .flex.p-100.gap-50.justify-center:has(svg) svg { fill: rgb(255, 255, 255); }

.vo-lv .special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button, .vo-lv .special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button div[data-cart-icon], .vo-sv .special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button, .vo-sv .special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button div[data-cart-icon] { width: 100%; }

.special-modal-content .special-add-to-cart-wrapper .special-add-to-cart-button:has(.flex.p-100.gap-50.justify-center) { min-width: 165px; }

.vo-lv .special-modal-content .special-header-section { width: 50%; margin-left: 0px; }

.vo-lv .special-modal-content .special-content-section .special-content-header { color: rgb(3, 3, 3); font-size: large; margin-bottom: 1rem; }

.vo-lv .special-modal-content .special-content-section .special-content-body { font-size: small; }

.vo-lv .special-modal-content .special-add-to-cart-wrapper, .vo-lv .special-modal-content .special-see-details-wrapper { width: 18%; }

.vo-lv .special-modal-content .special-see-details-wrapper .special-see-details-button, .vo-lv .special-modal-content .special-see-details-wrapper .special-see-details-button div[data-details-icon] { width: 100%; }

.vo-sv .special-modal-content { --modal-button-font-size: small; --modal-button-height: 36px; --modal-button-width: 80px; --modal-button-padding: 6px 12px; --modal-button-radius: 6px; padding: 4rem 0px 0px; }

.vo-sv .special-modal-content .special-add-to-cart-wrapper, .vo-sv .special-modal-content .special-see-details-wrapper, .vo-sv .special-modal-content .special-see-details-wrapper .special-see-details-button, .vo-sv .special-modal-content .special-see-details-wrapper .special-see-details-button div[data-details-icon] { width: 100%; }

.visitor-optimization-scope.vo-lv .c-modal-grid[class*="modal"]:has(.special-modal-content), .visitor-optimization-scope.vo-lv .c-modal-grid[class*="modal"]:has(.special-terms-container) { width: auto; height: auto; max-width: 800px; min-width: 320px; }

.visitor-optimization-scope.vo-sv .c-modal-grid[class*="modal"]:has(.special-modal-content), .visitor-optimization-scope.vo-sv .c-modal-grid[class*="modal"]:has(.special-terms-container) { width: auto; height: auto; max-width: 370px; flex: 0 0 auto; }

.vendor-rewards-modal-content { --modal-button-font-size: larger; --modal-button-height: 48px; --modal-button-width: 96px; --modal-button-padding: 8px 16px; --modal-button-radius: 8px; padding: 2rem 1rem 1rem; }

.vendor-rewards-modal-content .vendor-rewards-header-section { display: flex; align-items: stretch; }

.vendor-rewards-modal-content .vendor-rewards-header-section .vendor-rewards-highlight { background-color: rgb(255, 245, 236); font-weight: 500; font-size: 12px; color: rgb(29, 37, 44); border-radius: 4px; flex: 1 1 0%; }

.vendor-rewards-modal-content .vendor-rewards-header-section .time-remaining-section { color: rgb(232, 30, 37); background-color: rgb(255, 255, 255); font-weight: 500; font-size: 12px; flex: 1 1 0%; }

.vendor-rewards-modal-content .vendor-rewards-background { background-color: rgb(255, 255, 255); color: rgb(3, 3, 3); border-radius: 0px 0px 4px 4px; }

.vendor-rewards-modal-content .vendor-rewards-content-wrapper { padding: 0px; }

.vendor-rewards-modal-content .vendor-rewards-content-section .vendor-rewards-content-header { color: rgb(3, 3, 3); font-size: 16px; font-weight: 500; line-height: 1.4; }

.vendor-rewards-modal-content .vendor-rewards-content-section .vendor-rewards-content-body { color: rgb(3, 3, 3); font-size: small; font-weight: 400; line-height: 1.4; margin-bottom: 20px; }

.vendor-rewards-modal-content .vendor-rewards-activated-button { background-color: rgb(0, 30, 115); color: rgb(255, 255, 255); border: 2px solid rgb(0, 30, 115); }

.vendor-rewards-modal-content .vendor-rewards-activated-button:hover { background-color: rgb(0, 26, 92); border-color: rgb(0, 26, 92); }

.vendor-rewards-modal-content .vendor-rewards-cta-section { display: flex; justify-content: flex-start; align-items: center; }

.vendor-rewards-modal-content .flex.p-100.gap-50.justify-center:has(svg) { background-color: rgb(245, 245, 245); border: 1px solid rgb(209, 213, 219); }

.vendor-rewards-modal-content .error-state { background-color: rgb(255, 255, 255); }

.vendor-rewards-modal-content .error-state .error-state-text { color: rgb(3, 3, 3); }

.vo-lv .vendor-rewards-modal-content .vendor-rewards-header-section { width: 50%; margin-left: 0px; }

.vo-lv .vendor-rewards-modal-content .vendor-rewards-content-section .vendor-rewards-content-header { color: rgb(3, 3, 3); font-size: large; margin-bottom: 1rem; }

.vo-lv .vendor-rewards-modal-content .vendor-rewards-content-section .vendor-rewards-content-body { font-size: small; }

.vo-lv .vendor-rewards-modal-content .vendor-rewards-see-details-wrapper { width: 18%; }

.vo-sv .vendor-rewards-modal-content { --modal-button-font-size: small; --modal-button-height: 36px; --modal-button-width: 80px; --modal-button-padding: 6px 12px; --modal-button-radius: 6px; padding: 4rem 0px 0px; }

.vo-sv .vendor-rewards-modal-content .vendor-rewards-see-details-wrapper { width: 100%; }

.visitor-optimization-scope.vo-lv .c-modal-grid[class*="modal"]:has(.vendor-rewards-modal-content), .visitor-optimization-scope.vo-lv .c-modal-grid[class*="modal"]:has(.vendor-rewards-terms-container) { width: auto; height: auto; max-width: 800px; min-width: 560px; }

.visitor-optimization-scope.vo-sv .c-modal-grid[class*="modal"]:has(.vendor-rewards-modal-content), .visitor-optimization-scope.vo-sv .c-modal-grid[class*="modal"]:has(.vendor-rewards-terms-container) { width: auto; height: auto; max-width: 370px; flex: 0 0 auto; }

.visitor-optimization-modal-content { line-height: 18px; }

.visitor-optimization-modal-content .vo-modal-cta-wrapper button { white-space: nowrap; max-width: 130px; }

.visitor-optimization-modal-content .background { background: linear-gradient(90deg, rgb(10, 37, 86), rgb(2, 51, 147)); }

.visitor-optimization-modal-content .offer-details:focus, .visitor-optimization-modal-content .offer-details:hover { text-decoration: none; color: rgb(255, 255, 255); }

.visitor-optimization-modal-content .highlight { background-color: rgb(254, 250, 186); max-width: fit-content; }

.visitor-optimization-modal-content .vo-modal-orange-text { color: rgb(255, 206, 0); }

.visitor-optimization-modal-content .offer-ends-border { border-color: rgba(255, 255, 255, 0.2); }

.visitor-optimization-modal-content .offer-value-content { min-width: 160px; }

.visitor-optimization-scope { background: rgb(254, 250, 186); }

.visitor-optimization-scope .c-modal-grid { top: 100px; min-width: 320px; border-radius: 4px; padding: 10px 16px 16px !important; }

.visitor-optimization-scope .c-modal-close-icon { top: 0px !important; right: 0px !important; }

.visitor-optimization-scope .special-terms-container ~ .c-modal-close-icon { top: 14px !important; right: 10px !important; }

.visitor-optimization-scope.vo-lv .c-modal-grid:not(:has(.special-terms-container)) { max-width: 370px; }

.visitor-optimization-scope.vo-lv .special-modal-content ~ .c-modal-close-icon, .visitor-optimization-scope.vo-lv [data-testid="SpecialModalContent"] ~ .c-modal-close-icon { top: 16px !important; right: 18px !important; }

.visitor-optimization-scope.vo-lv .offer-details-content ~ .c-modal-close-icon .c-close-icon-svg { width: 20px !important; height: 20px !important; }

.visitor-optimization-scope.vo-sv .special-modal-content ~ .c-modal-close-icon, .visitor-optimization-scope.vo-sv [data-testid="SpecialModalContent"] ~ .c-modal-close-icon { top: 8px !important; right: 6px !important; }

.visitor-optimization-scope.vo-sv .special-terms-container ~ .c-modal-close-icon { top: 11px !important; right: 20px !important; }

.visitor-optimization-scope .c-modal-window { padding: 0px !important; }