@font-face {
    font-family: 'FuturaLt';
    src: url('../fonts/FuturaLT-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'FuturaLt';
    src: url('../fonts/FuturaLT-Book.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'FuturaLt';
    src: url('../fonts/FuturaLT.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'FuturaLt';
    src: url('../fonts/FuturaLT-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

:root {
    --dflasher-background: #121212;
    --dflasher-surface: #1e1e1e;
    --dflasher-surface-alt: #242424;
    --dflasher-border: #333;
    --dflasher-text: #FFFFFF;
    --dflasher-text-dim: #a0a0a0;
    --dflasher-accent: #ffc500;
    /* updated */
    --dflasher-accent-hover: #ffcc00;
    /* updated */
    --dflasher-danger: #dc3545;
    --dflasher-success: #4CAF50;
    --dflasher-text-accent: #0069FF;
    --font-base: 'FuturaLt', 'Work Sans', WorkSans, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
    --font-headings: 'FuturaLt', 'Work Sans', WorkSans, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
}

html,
body {
    background-color: var(--dflasher-background) !important;
    color: var(--dflasher-text);
    font-family: var(--font-base);
}

/* Global typography overrides (exclude icon classes to prevent breaking icon fonts) */
body,
p,
span,
li,
a:not([class^="icon-"]):not([class*=" icon-"]),
div,
td,
th,
label,
input,
select,
textarea,
button,
.btn,
.Menu li>a,
.Menu li>div,
.product-box,
.product-box .card-title a,
.quick-view-overview,
.form-control,
.custom-select,
.breadcrumb,
.newsletter,
.footer,
.header-nav-container,
.header-bottom {
    font-family: var(--font-base) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.generalTitle,
.qv-title,
.wrapper .content .top-title,
.wrapper .content .bottom-title,
.product-box .actual-price,
.product-box .add-to-cart-button,
.btn,
.Menu li>ul.gallery>li.-hasSubmenu>a {
    font-family: var(--font-headings) !important;
}

/* --- overrides: text-dark & replace pure white text --- */
.text-dark {
    color: var(--dflasher-text, #e0e0e0) !important;
}

/* Softer replacement for pure white text in dark theme */
.store-selector-container .inside-container .close-add .text,
.c-picker .toggle-button,
.c-picker .content .buttons .accept-button,
.b-toast-info.toast,
.b-toast-info .toast .toast-header,
.no-data.alert.alert-info,
.wrapper .content .button .btn,
.newsletter .newsletter-title,
.footer .title,
.product-box .sale-label span,
.product-box .flag-label span,
.product-details-page .product-label span,
.modal-close:hover,
.modal-close:focus,
.modal-close:not(:disabled):not(.disabled):active,
.up-btn:not(.up-btn__hide) div::before,
.up-btn:not(.up-btn__hide) div::after {
    color: var(--dflasher-text, #e0e0e0) !important;
}

/* Cards & surfaces */
.card,
.modal-content,
.dropdown-menu,
.advanced-search-results,
.product-box,
.product-box .card-footer,
.product-box::before,
.product-box .card-footer::before,
.b-sidebar,
.Menu ul,
.Menu li>ul,
.c-picker .content,
#search-box .modal-body,
.attr-container .image-container,
.product-box .spec-container table,
.product-box .spec-container,
.list-group-item,
.form-control,
.custom-select {
    background-color: var(--dflasher-surface) !important;
    color: var(--dflasher-text);
    border-color: var(--dflasher-border) !important;
}

/* Borders */
hr,
.border,
.product-box .prices::before,
.product-box .prices::after {
    border-color: var(--dflasher-border) !important;
}

/* Inputs */
.form-control,
.custom-select {
    background-color: var(--dflasher-surface-alt) !important;
    color: var(--dflasher-text) !important;
}

.form-control:focus,
.custom-select:focus {
    background-color: var(--dflasher-surface-alt) !important;
    border-color: var(--dflasher-accent) !important;
    box-shadow: none;
}

.form-control::placeholder {
    color: var(--dflasher-text-dim);
}

.form-control::placeholder {
    color: var(--dflasher-text-dim);
}

/* Header / Footer */
.header-bottom,
.header-nav-container,
.footer,
.footer .footer-bottom,
.left-side-container {
    background-color: var(--dflasher-surface) !important;
}

.footer a {
    color: var(--dflasher-text-dim);
}

.footer a:hover {
    color: var(--dflasher-accent);
}

.Menu ul,
.Menu li>ul {
    background-color: var(--dflasher-surface-alt);
}

/* Buttons */

.btn-primary:hover,
.btn-info:hover {
    background-color: var(--dflasher-accent-hover) !important;
    border-color: var(--dflasher-accent-hover) !important;
}

.btn-outline-secondary {
    color: var(--dflasher-text);
    border-color: var(--dflasher-border);
}

.btn-outline-secondary:hover {
    background-color: var(--dflasher-accent) !important;
    border-color: var(--dflasher-accent) !important;
    color: #fff !important;
}

.btn-secondary {
    background-color: var(--dflasher-surface-alt);
    border-color: var(--dflasher-border);
}

.btn-secondary:hover {
    background-color: var(--dflasher-accent) !important;
    border-color: var(--dflasher-accent) !important;
}

/* Product box */
.product-box,
.product-box .card-footer {
    background-color: var(--dflasher-surface) !important;
}

.product-box .card-title a,
.product-box .actual-price {
    color: var(--dflasher-text) !important;
}

.product-box .old-price {
    color: var(--dflasher-text-dim) !important;
}

.product-box .desc {
    color: var(--dflasher-text-dim) !important;
}

.product-box .other-buttons .btn.btn-outline-secondary {
    background-color: var(--dflasher-surface-alt);
    border-color: var(--dflasher-border);
}

.product-box .other-buttons .btn.btn-outline-secondary:hover {
    background-color: var(--dflasher-accent);
    border-color: var(--dflasher-accent);
}

/* Tables */
.table,
table {
    color: var(--dflasher-text) !important;
}

.table thead th {
    background-color: var(--dflasher-surface-alt) !important;
    color: var(--dflasher-text);
}

/* Modals */
.modal-content {
    background-color: var(--dflasher-surface) !important;
}

.modal-close {
    background-color: var(--dflasher-surface-alt);
    border-color: var(--dflasher-border);
    color: var(--dflasher-text);
}

.modal-close:hover {
    background-color: var(--dflasher-accent);
    border-color: var(--dflasher-accent);
}

/* Dropdown */
.btn.dropdown-toggle+.dropdown-menu {
    background-color: var(--dflasher-surface-alt) !important;
    border-color: var(--dflasher-border);
}

.btn.dropdown-toggle+.dropdown-menu .dropdown-item {
    color: var(--dflasher-text-dim);
}

.btn.dropdown-toggle+.dropdown-menu .dropdown-item:hover {
    color: var(--dflasher-accent);
    background-color: var(--dflasher-surface);
}

/* Search modal */
#search-box .modal-body .search-box-text {
    color: var(--dflasher-text);
    border-color: var(--dflasher-accent);
}

.search-box-text::placeholder {
    color: var(--dflasher-text-dim);
}

.advanced-search-results {
    background-color: var(--dflasher-surface-alt) !important;
    border-color: var(--dflasher-border);
}

.advanced-search-results .title {
    color: var(--dflasher-accent);
}

.advanced-search-results p {
    color: var(--dflasher-text-dim);
}

/* Newsletter */
.newsletter-email {
    background-color: var(--dflasher-surface-alt);
    border-color: var(--dflasher-border);
    color: var(--dflasher-text);
}

.newsletter-email::placeholder {
    color: var(--dflasher-text-dim);
}

.newsletter-email-button {
    background-color: var(--dflasher-accent);
    color: #fff;
    border-color: var(--dflasher-accent);
}

.newsletter-email-button:hover {
    background-color: var(--dflasher-accent-hover);
    border-color: var(--dflasher-accent-hover);
}

/* Breadcrumb */
.breadcrumb-item,
.breadcrumb-item.active {
    color: var(--dflasher-text-dim);
}

/* Rating */
.b-rating .b-rating-value {
    color: var(--dflasher-text-dim);
}

/* Inputs, pickers */
.c-picker .content {
    background-color: var(--dflasher-surface-alt) !important;
}

.c-picker .content input {
    background-color: var(--dflasher-surface);
    color: var(--dflasher-text);
    border-color: var(--dflasher-border);
}

.c-picker .content .buttons .accept-button {
    background-color: var(--dflasher-accent);
}

/* Toasts */
.b-toast-info.toast,
.b-toast-info .toast .toast-header,
.no-data.alert.alert-info {
    background-color: var(--dflasher-surface-alt);
    border-color: var(--dflasher-accent);
}

/* Scrollbar */
::-webkit-scrollbar-track {
    background: var(--dflasher-surface);
}

::-webkit-scrollbar-thumb {
    background: var(--dflasher-surface-alt);
}

::-webkit-scrollbar-thumb:hover {
    background: var(--dflasher-accent);
}

/* Misc */
.preloader-container {
    background: var(--dflasher-background) !important;
}

/* Ensure images with white backgrounds stand out */
img {
    background-color: transparent;
}

/* --- overrides: text-dark & replace pure white text --- */
.text-dark {
    color: var(--dflasher-text, #e0e0e0) !important;
}

/* Softer replacement for pure white text in dark theme */
.store-selector-container .inside-container .close-add .text,
.c-picker .toggle-button,
.c-picker .content .buttons .accept-button,
.b-toast-info.toast,
.b-toast-info .toast .toast-header,
.no-data.alert.alert-info,
.wrapper .content .button .btn,
.newsletter .newsletter-title,
.footer .title,
.product-box .sale-label span,
.product-box .flag-label span,
.product-details-page .product-label span,
.modal-close:hover,
.modal-close:focus,
.modal-close:not(:disabled):not(.disabled):active,
.up-btn:not(.up-btn__hide) div::before,
.up-btn:not(.up-btn__hide) div::after {
    color: var(--dflasher-text, #e0e0e0) !important;
}

/* Accent color overrides: replace legacy #50b890 with new accent */
:root {
    /* already updated above, ensure again */
    --dflasher-accent: #ffc500;
    --dflasher-accent-hover: #ffcc00;
}

/* Product box image container background override */
.product-box .picture-container .img-container,
.product-box .picture-container .img-container img,
.product-box .picture-container {
    background-color: var(--dflasher-surface) !important;
}

/* Buttons & interactive elements */

.btn-info:hover,
.btn-info:focus,
.brand .btn-category:hover,
.picker-container .toggle-button:hover,
.c-picker .content .buttons .accept-button:hover,
.up-btn:hover,
.product-box .add-to-cart-button.btn.btn-outline-secondary:hover,
.product-details-page .add-to-cart-button.btn-info:hover,
.quick-view .add-to-cart-button:hover,
#ModalBanner .content #send-interactive-form.btn-success:hover {
    background-color: var(--dflasher-accent-hover) !important;
    border-color: var(--dflasher-accent-hover) !important;
}

/* Borders / lines using old accent */
.product-box .sale-label span::after,
.product-details-page .product-label span::after {
    border-left-color: var(--dflasher-accent) !important;
    border-right-color: var(--dflasher-accent) !important;
}

/* Preloader internal bars */
.preloader,
.preloader:before,
.preloader:after {
    border-color: var(--dflasher-accent) !important;
}

.preloader:after {
    background-color: var(--dflasher-accent) !important;
}

/* Countdown / info boxes */
.countdown-box.alert-info {
    border-color: var(--dflasher-border, #333) !important;
}

/* Replace any remaining inline green-ish accent in gradient underlines */
.product-details-page .nav-tabs .nav-link.active::before,
.product-details-page .nav-tabs .nav-link:hover::before {
    background: var(--dflasher-accent) !important;
}

/* Newsletter social icons (if relying on invert keep unaffected) */

/* Ensure hover states use accent variable */
.product-box .other-buttons .btn.btn-outline-secondary:hover {
    background-color: var(--dflasher-accent) !important;
    border-color: var(--dflasher-accent) !important;
}

/* Generic utility to force any element with inline style color:#50b890 overridden */
[style*="#50b890"] {
    color: var(--dflasher-accent) !important;
}

[style*="background-color:#50b890"],
[style*="background:#50b890"] {
    background-color: var(--dflasher-accent) !important;
}

.home-product-grid {
    background-image: url('/Plugins/Theme.Sport/Content/images/productboxbg.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding-top: 30px;
    padding-bottom: 30px;
}

/* Welcome page section */
.welcome-page-section {
    margin-top: 40px;
    text-align: center;
}

.welcome-page-section .welcome-title {
    font-weight: 700;
}

.welcome-page-section .description {
    max-width: 900px;
    margin: 10px auto 0;
}

.welcome-page-section .download-title {
    font-weight: 700;
}

.welcome-page-section .store-badges {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    margin-top: 24px;
}

.welcome-page-section .store-badges img {
    height: 128px;
}

#mainMenu > li > a :hover {
    color: var(--dflasher-accent) !important;
}

#mainMenu > li > ul > li > a :hover {
    color: var(--dflasher-accent) !important;
}

#mainMenu > li > ul > li > ul > li > a :hover {
    color: var(--dflasher-accent) !important;
}

.go-to-website-btn {
    background-color: var(--dflasher-text-accent);
    color: var(--dflasher-text) !important;
    padding: 8px 14px;
    font-weight: 700;
    font-style: italic;
    text-decoration: none;
    display: inline-block;
    border: 0;
    margin-left: 20px;
}

.go-to-website-btn :hover {
    filter: brightness(0.75);
    text-decoration: none;
    color: var(--dflasher-text) !important;
}

.Menu > li.category > a {
    color: var(--dflasher-text);
}

.page-title {
    color: var(--dflasher-accent);
}