File: D:/web/hyperflight/2026-07-17/prev/css/styles.css
@charset "utf-8";
/* CSS Document */
/* (SS,15/02/26) Bootstrap 5 version for HyperFlight */
/* Header */
.top-section {
background: white;
}
.header-currency,
.header-search,
.header-status {
display: flex;
align-items: center;
}
.header-currency,
.header-search {
justify-content: center;
}
.header-status {
justify-content: flex-end;
}
.header-search-form {
width: 100%;
}
.header-search-form .form-control,
.header-search-form .btn {
border-color: #d6dbe0;
box-shadow: none;
}
.header-search-form .btn {
background-color: transparent;
color: #000;
}
.header-search-form .btn:hover,
.header-search-form .btn:focus {
background-color: #f2f2f2;
border-color: #d6dbe0;
color: #000;
}
.header-search-form .fa-magnifying-glass {
font-size: 1.1rem;
}
.header-basket {
position: relative;
text-align: right;
}
.header-vat-text {
position: absolute;
top: 100%;
right: 0.50rem;
margin-top: 0.2rem;
color: #6c757d;
font-size: 0.75rem;
line-height: 1.2;
white-space: nowrap;
}
/* Header */
.header-logo {
max-width: 254px;
height: auto;
}
.header-currency,
.header-search,
.header-status {
display: flex;
align-items: center;
}
.header-currency,
.header-search {
justify-content: center;
}
.header-status {
justify-content: flex-end;
}
.header-currency .currency-selector {
width: 220px;
max-width: 100%;
}
.header-search-form {
width: 100%;
max-width: 300px;
}
/* Currency selector */
.currency-selector {
position: relative;
width: 220px;
}
.currency-selected {
width: 100%;
min-height: 42px;
display: grid;
grid-template-columns: 1fr 32px 1rem;
column-gap: 0.75rem;
align-items: center;
padding: 0.35rem 0.6rem;
background: white;
border: 1px solid #adb5bd;
border-radius: 0.375rem;
text-align: left;
color: #000; /* prevents blue text on iPhone */
}
.currency-option {
width: 100%;
display: grid;
grid-template-columns: 1fr 32px;
column-gap: 0.75rem;
align-items: center;
padding: 0.35rem 0.6rem;
border: 0;
border-bottom: 1px solid #e5e5e5;
background: white;
color: #000; /* to force blank on iPhone for currency code in dropdown */
text-align: left;
}
.currency-selected-text,
.currency-option > span:first-child {
min-width: 0;
}
.currency-code {
display: block;
font-weight: 700;
line-height: 1.1;
}
.currency-name {
display: block;
color: #6c757d;
font-size: 0.875rem;
line-height: 1.1;
}
.currency-selected-flag,
.currency-option .currency-flag {
justify-self: end;
}
.currency-caret {
justify-self: end;
}
.currency-options {
display: none;
position: absolute;
z-index: 1050;
top: 100%;
left: 0;
width: 100%;
max-height: 70vh;
overflow-y: auto;
background: white;
border: 1px solid #adb5bd;
border-top: 0;
box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.12);
}
.currency-selector.open .currency-options {
display: block;
}
.currency-option:hover,
.currency-option:focus,
.currency-option.selected {
background: #f2f8fc;
}
/* Currency flag sprite */
.currency-flag {
display: inline-block;
width: 32px;
height: 32px;
background-image: url("/common/flags/currency/currency-flags-32.png");
background-repeat: no-repeat;
background-size: auto 32px;
flex-shrink: 0;
}
.currency-flag-gbp { background-position: 0 0; }
.currency-flag-eur { background-position: -32px 0; }
.currency-flag-usd { background-position: -64px 0; }
.currency-flag-aud { background-position: -96px 0; }
.currency-flag-cad { background-position: -128px 0; }
.currency-flag-chf { background-position: -160px 0; }
.currency-flag-cny { background-position: -192px 0; }
.currency-flag-czk { background-position: -224px 0; }
.currency-flag-dkk { background-position: -256px 0; }
.currency-flag-jpy { background-position: -288px 0; }
.currency-flag-krw { background-position: -320px 0; }
.currency-flag-nok { background-position: -352px 0; }
.currency-flag-nzd { background-position: -384px 0; }
.currency-flag-pln { background-position: -416px 0; }
.currency-flag-ron { background-position: -448px 0; }
.currency-flag-rub { background-position: -480px 0; }
.currency-flag-sek { background-position: -512px 0; }
.currency-flag-twd { background-position: -544px 0; }
.currency-flag-zar { background-position: -576px 0; }
/* Narrow desktop / portrait monitor */
@media (min-width: 768px) and (max-width: 1199.98px) {
.header-currency,
.header-search {
position: relative;
left: 3rem;
}
}
/* Tablet / mobile */
@media (max-width: 991.98px) {
.header-currency,
.header-search,
.header-status {
justify-content: center;
margin-top: 0.5rem;
}
.header-status {
margin-bottom: 0.25rem;
}
}
/* narrow currency selector, search box etc. for medium (~iPad) size */
@media (min-width: 768px) and (max-width: 991.98px) {
.header-logo {
max-width: 210px;
}
.header-currency .currency-selector {
width: 140px;
}
.header-currency {
position: relative;
left: 2.5rem;
top: -2px;
}
.header-search-form {
max-width: 220px;
}
.header-search {
position: relative;
left: 1.5rem;
top: -2px;
}
.currency-selected {
min-height: 37px;
padding: 0.1rem 0.45rem;
grid-template-columns: 1fr 26px 0.75rem;
column-gap: 0.35rem;
}
.currency-selected .currency-name {
display: none;
}
.currency-selected .currency-code {
line-height: 1;
}
.currency-selected-flag {
width: 26px;
height: 26px;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
}
.currency-selected-flag .currency-flag {
transform: scale(0.75);
transform-origin: center;
}
.header-status {
position: relative;
left: 0;
padding-right: 0.5rem;
}
.main-menu .nav-link {
padding-left: 0.45rem;
padding-right: 0.45rem;
font-size: 0.95rem;
}
/* wrap the add button for this size */
.related-product-buy-row {
flex-wrap: wrap;
}
.related-product-price {
flex: 1 1 100%;
}
/* Compact Account and Basket buttons on tablets */
.header-status {
justify-content: flex-end;
margin-top: 0;
margin-bottom: 0;
}
.header-status .header-basket {
position: static;
width: auto;
text-align: right;
}
.header-status .header-shopping-actions {
flex-direction: row;
flex-wrap: nowrap;
gap: 0.15rem;
}
.header-status .header-account,
.header-status .header-basket-link {
position: relative;
display: inline-flex;
align-items: center;
justify-content: center;
width: 36px;
min-width: 36px;
height: 40px;
padding: 0;
border: 0 !important;
background-color: transparent;
font-size: 1.1rem;
}
.header-status .header-account-text,
.header-status .header-basket-text {
display: none;
}
.header-status .header-basket-link .fa-cart-shopping {
margin-right: 0 !important;
}
.header-status .header-basket-count {
position: absolute;
top: -0.15rem;
right: -0.15rem;
min-width: 1.25rem;
padding: 0.2rem 0.3rem;
font-size: 0.68rem;
line-height: 1;
}
.header-status .header-vat-text {
display: none;
}
}
/* Header account and basket */
.header-shopping-actions {
display: flex;
align-items: center;
justify-content: flex-end;
gap: 0.25rem;
}
.header-account,
.header-basket-link {
position: relative;
display: inline-flex;
flex: 0 0 auto;
align-items: center;
justify-content: center;
min-height: 40px;
border: 0;
border-radius: 0.375rem;
background: transparent;
color: #000;
text-decoration: none;
white-space: nowrap;
}
.header-account {
width: 40px;
min-width: 40px;
padding: 0;
}
.header-basket-link {
padding: 0 0.35rem;
}
.header-account:hover,
.header-account:focus,
.header-basket-link:hover,
.header-basket-link:focus {
background-color: #f2f2f2;
color: #000;
text-decoration: none;
}
.header-account .fa-user,
.header-basket-link .fa-cart-shopping {
font-size: 1.1rem;
}
.header-account-text,
.header-basket-text {
display: none;
}
.header-basket-subtotal {
margin-left: 0.4rem;
font-weight: 600;
white-space: nowrap;
}
.header-basket-count {
margin-left: 0.4rem;
}
/* Compact Account and Basket below wide desktop */
@media (max-width: 991.98px) {
.header-basket-subtotal {
display: none;
}
.header-account,
.header-basket-link {
width: 36px;
min-width: 36px;
height: 40px;
padding: 0;
}
.header-basket-count {
position: absolute;
top: -0.15rem;
right: -0.15rem;
min-width: 1.25rem;
margin-left: 0;
padding: 0.2rem 0.3rem;
font-size: 0.68rem;
line-height: 1;
}
.header-vat-text {
display: none;
}
}
/* Subtle currency selector on tablet and desktop */
@media (min-width: 768px) {
.header-currency .currency-selector {
width: 104px;
min-width: 104px;
max-width: 104px;
}
.header-currency .currency-selected {
min-height: 40px;
grid-template-columns: 1fr 28px 0.7rem;
column-gap: 0.3rem;
padding: 0.2rem 0.35rem;
background-color: transparent;
border: 0;
border-radius: 0.375rem;
box-shadow: none;
}
/* Show code but hide the full currency name */
.header-currency .currency-selected .currency-name {
display: none;
}
.header-currency .currency-selected-flag {
display: flex;
width: 28px;
height: 28px;
align-items: center;
justify-content: center;
overflow: hidden;
}
.header-currency .currency-selected-flag .currency-flag {
transform: scale(0.875);
transform-origin: center;
}
.header-currency .currency-selected:hover,
.header-currency .currency-selected:focus {
background-color: #f2f2f2;
}
/* Keep the opened list wide enough for names and flags */
.header-currency .currency-options {
width: 220px;
min-width: 220px;
}
}
/* Main menu */
.main-menu {
background-color: transparent;
border-top: 0;
border-bottom: 0;
padding-top: 0;
padding-bottom: 0;
}
.main-menu > .container {
background-color: #D9EFFD;
border-top: 1px solid #BEE3FC;
border-bottom: 1px solid #BEE3FC;
}
.main-menu .navbar-nav {
flex-wrap: wrap;
}
.main-menu .nav-link {
color: black;
}
.main-menu .nav-link:hover,
.main-menu .nav-link.show,
.main-menu .show > .nav-link {
color: black;
background-color: #BEE3FC;
}
.main-menu .dropdown-menu {
margin-top: 0;
border-color: #ccc;
border-radius: 0 0 0.375rem 0.375rem;
box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.12);
}
.main-menu .dropdown-item:hover,
.main-menu .dropdown-item:focus {
color: black;
background-color: #BEE3FC;
}
/* Compact mobile header */
@media (max-width: 767.98px) {
.desktop-header {
display: none;
}
.main-menu {
padding: 0;
background-color: #fff;
border-top: 0;
border-bottom: 0;
}
.main-menu > .container {
display: flex;
flex-wrap: wrap;
align-items: center;
padding-left: 0 !important;
padding-right: 0 !important;
background-color: #fff;
}
/* Visible top bar */
.mobile-topbar {
display: grid;
grid-template-columns: auto minmax(0, 1fr) auto;
column-gap: 0.15rem;
align-items: center;
width: 100%;
min-height: 64px;
padding: 0.3rem 0.2rem;
background-color: #fff;
}
.mobile-topbar-left {
display: flex;
align-items: center;
justify-content: flex-start;
gap: 0;
min-width: 0;
}
.mobile-menu-brand {
justify-self: center;
min-width: 0;
margin: 0;
padding: 0;
}
.mobile-menu-logo {
display: block;
width: 140px;
max-width: 34vw;
height: auto;
}
.mobile-topbar-right {
display: flex;
align-items: center;
justify-content: flex-end;
min-width: 0;
padding-right: 0.35rem;
}
/* Hamburger and search buttons */
.mobile-menu-toggle,
.mobile-search-toggle {
display: inline-flex;
align-items: center;
justify-content: center;
width: 36px;
min-width: 36px;
height: 40px;
padding: 0;
border: 0;
background-color: transparent;
}
.mobile-menu-toggle:focus,
.mobile-search-toggle:focus {
box-shadow: none;
}
.mobile-search-toggle {
font-size: 1.2rem;
}
/* Account and basket icons */
.mobile-topbar-right .header-status {
position: static;
width: auto;
max-width: none;
margin: 0;
padding: 0;
justify-content: flex-end;
transform: none;
}
.mobile-topbar-right .header-basket {
position: static;
width: auto;
text-align: right;
}
.mobile-topbar-right .header-shopping-actions {
gap: 0.05rem;
}
.mobile-topbar-right .header-account,
.mobile-topbar-right .header-basket-link {
position: relative;
display: inline-flex;
align-items: center;
justify-content: center;
width: 36px;
min-width: 36px;
height: 40px;
padding: 0;
border: 0 !important;
background-color: transparent;
font-size: 1.1rem;
}
.mobile-topbar-right .header-account-text,
.mobile-topbar-right .header-basket-text {
display: none;
}
.mobile-topbar-right .header-basket-link .fa-cart-shopping {
margin-right: 0 !important;
}
.mobile-topbar-right .header-basket-count {
position: absolute;
top: -0.15rem;
right: -0.15rem;
min-width: 1.25rem;
padding: 0.2rem 0.3rem;
font-size: 0.68rem;
line-height: 1;
}
.mobile-topbar-right .header-vat-text {
display: none;
}
/* Search panel */
.mobile-search-panel {
width: 100%;
background-color: #fff;
}
.mobile-search-slot {
width: 100%;
padding: 0.4rem 0.75rem 0.7rem;
border-top: 1px solid #eee;
}
.mobile-search-slot .header-search {
position: static;
width: 100%;
max-width: none;
margin: 0;
padding: 0;
justify-content: center;
transform: none;
}
.mobile-search-slot .header-search-form {
width: 100%;
max-width: none;
}
/* Collapsed mobile navigation */
.main-menu .navbar-collapse {
width: 100%;
background-color: #fff;
}
.mobile-header-controls {
display: none;
}
/* Blue category navigation */
.main-menu .navbar-nav {
width: 100%;
margin: 0;
padding: 0.4rem 0.75rem 0.5rem;
background-color: #d9effd;
border-top: 1px solid #bee3fc;
border-bottom: 1px solid #bee3fc;
}
.main-menu .nav-link {
padding-top: 0.35rem;
padding-bottom: 0.35rem;
line-height: 1.25;
}
.main-menu .nav-link:hover,
.main-menu .nav-link:focus,
.main-menu .nav-link.show,
.main-menu .show > .nav-link {
background-color: #bee3fc;
}
.main-menu .dropdown-menu {
margin: 0;
padding: 0.25rem 0 0.35rem 1rem;
background-color: #d9effd;
border: 0;
border-radius: 0;
box-shadow: none;
}
.main-menu .dropdown-item {
padding: 0.35rem 0.75rem;
background-color: transparent;
color: #000;
}
.main-menu .dropdown-item:hover,
.main-menu .dropdown-item:focus {
background-color: #bee3fc;
color: #000;
}
}
/* Compact currency selector in mobile top bar */
@media (max-width: 767.98px) {
.mobile-topbar-left {
gap: 0.1rem;
}
.mobile-topbar-right {
gap: 0.05rem;
}
.mobile-topbar-currency {
position: relative;
display: flex;
align-items: center;
}
.mobile-topbar-currency .header-currency {
position: static;
width: auto;
margin: 0;
padding: 0;
justify-content: center;
transform: none;
}
/* Closed selector: code, flag and caret */
.mobile-topbar-currency .currency-selector {
position: relative;
width: 80px;
min-width: 80px;
max-width: 80px;
}
.mobile-topbar-currency .currency-selected {
min-height: 40px;
display: grid;
grid-template-columns: 1fr 22px 0.55rem;
column-gap: 0.15rem;
align-items: center;
padding: 0.2rem 0.2rem;
background: transparent;
border: 0;
border-radius: 0;
box-shadow: none;
}
.mobile-topbar-currency .currency-selected:focus-visible {
outline: 2px solid #86b7fe;
outline-offset: 2px;
border-radius: 0.25rem;
}
.mobile-topbar-currency .currency-selected-text {
text-align: center;
}
.mobile-topbar-currency .currency-selected .currency-name {
display: none;
}
.mobile-topbar-currency .currency-code {
display: block;
font-size: 0.75rem;
font-weight: 700;
line-height: 1;
}
.mobile-topbar-currency .currency-selected-flag {
display: flex;
width: 26px;
height: 26px;
align-items: center;
justify-content: center;
overflow: hidden;
}
.mobile-topbar-currency .currency-selected-flag .currency-flag {
transform: scale(0.8125);
transform-origin: center;
}
.mobile-topbar-currency .currency-caret {
justify-self: end;
font-size: 0.7rem;
}
/* Full-sized opened currency list */
.mobile-topbar-currency .currency-options {
left: 0;
right: auto;
width: 220px;
max-width: calc(100vw - 1rem);
max-height: 60vh;
z-index: 2000;
}
}
/* Page content */
.page-content {
padding: 1.25rem 0.5rem 1.25rem;
}
/* Smaller gap only when the hamburger menu is used */
@media (max-width: 767.98px) {
.page-content {
padding-top: 0.5rem;
margin-top: 0;
}
}
/* Basket */
/* Mobile basket order */
@media (max-width: 767.98px) {
.basket-summary-top {
display: none;
}
}
.basket-summary {
width: 100%;
max-width: 250px;
margin-left: auto;
}
.basket-summary .basket-totals {
margin-left: auto;
}
/* Added-to-basket confirmation */
.basket-toast-positioner {
position: fixed;
top: 9.5rem;
right: 0;
left: 0;
z-index: 1090;
pointer-events: none;
}
.basket-added-toast {
width: 360px;
max-width: calc(100% - 1.5rem);
background-color: #fff;
box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.18);
pointer-events: auto;
}
/* Hide basket subtotal in header */
.header-basket-subtotal {
display: none;
}
/* Header account and basket icons */
.header-basket-link {
position: relative;
width: 42px;
min-width: 42px;
padding: 0;
}
.header-account .fa-user,
.header-basket-link .fa-cart-shopping {
font-size: 1.35rem;
line-height: 1;
}
.header-basket-count {
position: absolute;
top: -0.3rem;
right: -0.05rem;
left: auto;
transform: none;
min-width: 1.25rem;
height: 1.25rem;
margin: 0;
padding: 0 0.3rem;
display: inline-flex;
align-items: center;
justify-content: center;
border-radius: 999px;
background-color: #198754;
color: #fff;
font-size: 0.7rem;
font-weight: 700;
line-height: 1;
}
/* Phones */
@media (max-width: 767.98px) {
.basket-toast-positioner {
top: 4.5rem;
padding-right: 0.75rem;
padding-left: 0.75rem;
}
.basket-toast-positioner > .container {
max-width: none;
justify-content: center !important;
}
.basket-added-toast {
width: 100%;
max-width: 390px;
}
}
/* Shallow landscape screens */
@media (min-width: 768px) and (max-height: 600px) and (orientation: landscape) {
.basket-toast-positioner {
top: 4.5rem;
}
.basket-toast-positioner > .container {
justify-content: center !important;
}
.basket-added-toast {
width: 390px;
max-width: calc(100% - 1.5rem);
}
}
/* Breadcrumb bar */
.breadcrumb-bar {
margin-top: 0; /* 1.20rem; */
margin-bottom: 0.5rem;
padding: 0.75rem 1rem;
background-color: #d9effd;
border-radius: 0.25rem;
}
.breadcrumb-bar .breadcrumb {
margin-bottom: 0;
}
/* Section heading */
.section-heading {
margin-top: 0;
margin-bottom: 0.5rem;
padding: 0.75rem 1rem;
background-color: #d9effd;
border-radius: 0.25rem;
color: #212529;
font-size: 1.25rem;
font-weight: 600;
line-height: 1.25;
}
/* Home page notices / intro */
.home-notices {
font-size: 1.05rem;
line-height: 1.55;
}
.home-scam-warning {
margin-bottom: 1rem;
padding: 1rem 1.25rem;
}
.home-intro p {
margin-bottom: 0.75rem;
}
.home-intro p:last-child {
margin-bottom: 0;
}
.home-section-divider {
margin-top: 1.25rem;
margin-bottom: 1.25rem;
}
/* Home banner / carousel */
.home-banner {
margin-top: 0; /* 1.25rem; */
margin-bottom: 1.5rem;
}
.home-banner-carousel {
overflow: hidden;
margin: auto;
}
.home-banner-carousel .carousel-indicators {
bottom: -1.25rem;
}
/* Home panels */
.home-panel {
border: 1px solid #d6d6d6;
border-radius: 0.375rem;
background: white;
overflow: hidden;
}
.home-panel-heading {
background-color: #d9effd;
border-bottom: 1px solid #d6d6d6;
padding: 0.65rem 1rem;
font-size: 1.15rem;
font-weight: 600;
}
.home-panel-body {
padding: 1rem;
}
/* Featured products */
.home-highlights {
font-size: 0.95rem;
line-height: 1.4;
}
.home-highlights .highlights-product-name {
font-size: 1rem;
}
/* product list cards */
.product-list-item {
border: 1px solid #ccc;
text-align: center;
padding: 10px;
margin-top: 15px;
margin-bottom: 15px;
background: white;
}
.product-list-item-image {
margin-left: auto;
margin-right: auto;
}
.product-list-item-name {
display: block;
line-height: 1.5em;
min-height: 3em;
overflow: hidden;
}
.product-list-item-price {
padding-bottom: 0;
}
/* Product list prices */
.product-list-item-price .price-std,
.product-list-item-price .price-sale {
font-size: 1.05rem;
}
.product-list-item-price .price-std-crossed-out {
font-size: 0.95rem;
}
/* new product styles */
/* product prices */
/* following used by apputils for ShowProductPriceV2 */
.price-std,
.price-sale {
font-weight: bold;
}
.price-std {
color: #212529;
}
.price-sale {
color: #dc3545;
}
.price-save,
.price-save-pc {
color: #dc3545;
}
.price-std-crossed-out {
color: #6c757d;
text-decoration: line-through;
}
/* Subcategory list */
#subcategory-list {
margin-bottom: 2rem;
}
#subcategory-list-heading {
margin-bottom: 0;
}
#subcategory-list-heading h1 {
margin-bottom: 0;
}
#subcategory-list-cat-details {
margin-bottom: 1.5rem;
}
#subcategory-list-content {
margin-top: 0;
}
.subcategory-list-item-link {
display: block;
height: 100%;
color: #212529;
text-decoration: none;
}
.subcategory-list-item-link:hover,
.subcategory-list-item-link:focus {
color: #0d6efd;
text-decoration: none;
}
.subcategory-list-item {
height: 100%;
padding: 0.75rem;
text-align: center;
background: white;
border: 1px solid #dee2e6;
transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, transform 0.15s ease-in-out;
}
.subcategory-list-item-link:hover .subcategory-list-item,
.subcategory-list-item-link:focus .subcategory-list-item {
border-color: #c7d2fe;
box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.10) !important;
transform: translateY(-2px);
}
.subcategory-list-item-image {
display: block;
width: 100%;
max-width: 100%;
height: auto;
margin: 0 auto 1rem;
}
.subcategory-list-item-title {
border-top: 1px solid #e9ecef;
padding: 0.85rem 0.5rem 0.25rem;
color: inherit;
font-size: 1.1rem;
font-weight: 500;
line-height: 1.25;
}
/* basket styles */
/* Bootstrap 5 basket items */
.basket-item-card {
min-height: 0;
border: 1px solid #ccc;
}
.basket-item-image-col {
flex: 0 0 120px;
width: 120px;
padding: 0.25rem 0.5rem 0.25rem 0.25rem;
}
.basket-item-image {
display: block;
max-width: 105px;
max-height: 105px;
width: auto;
height: auto;
object-fit: contain;
}
.basket-item-details {
min-width: 0;
padding: 0.15rem 1.75rem 0.15rem 0.4rem;
}
.basket-item-remove {
position: absolute;
top: 0.45rem;
right: 0.6rem;
line-height: 1;
}
.basket-item-name-link {
color: #0d6efd;
}
.basket-item-name-link:hover,
.basket-item-name-link:focus {
color: #0a58ca;
}
.basket-item-options {
margin-right: 0.25rem;
}
.basket-item-controls {
margin-top: 0.25rem;
}
.basket-item-qty {
width: 142px;
margin-bottom: 0;
}
.basket-item-qty .input-group-text {
padding: 0.3rem 0.55rem;
}
.basket-item-qty .form-control {
flex: 0 0 48px;
max-width: 48px;
padding: 0.3rem 0.25rem;
}
.basket-item-price {
min-width: 90px;
white-space: nowrap;
}
.basket-item-total {
font-size: 1.1rem;
line-height: 1.2;
}
.basket-item-each {
margin-top: 0.15rem;
line-height: 1.2;
}
@media (max-width: 575.98px) {
.basket-item-card {
padding: 0.5rem !important;
}
.basket-item-image-col {
flex-basis: 90px;
width: 90px;
padding: 0.15rem 0.35rem 0.15rem 0;
}
.basket-item-image {
max-width: 80px;
max-height: 80px;
}
.basket-item-details {
padding-left: 0.25rem;
padding-right: 1.5rem;
}
.basket-item-controls {
flex-wrap: wrap;
}
}
table.basket {
border-collapse: collapse;
width: 100%;
}
table.basket th, table.basket td {
font-weight: bold;
padding: 4px;
}
table.basket th {
/* color: #fff; */
/* background-color: #999; */
}
table.basket td {
/* color: #000; */
/* background-color: #E0E0E0; */
border-bottom: 1px solid #B5B5B5;
}
.bsk-thumbnail {
border: 1px solid #B5B5B5;
width: 75px;
height: 75px;
}
.bsk-prod-name {
text-decoration: none; /* underline; */
font-weight: normal; /* bold; */
}
.bsk-options-list {
font-size: 11px;
margin-top: 3px;
}
.bsk-prod-code {
font-weight: normal;
margin-top: 10px;
}
/* (SS,6/7/22) replaced 75% with 100% */
#basket-info {
float: left;
width: 100%; /* 600px */
}
#basket-info p {
margin: 10px 5px 10px 5px;
}
#basket-totals {
float: right;
margin-top: 10px;
}
table.basket-totals {
width: 100%;
border-spacing: 5px;
text-align: right;
}
table.basket-totals th {
font-weight: normal;
padding-right: 10px; /* (SS,11/6/24) */
}
table.basket-totals td {
font-weight: bold;
}
/* Basket summary form labels */
.basket-summary-label {
display: block;
margin-bottom: 0.5rem;
font-weight: 600;
line-height: 1.25;
}
/* end of basket styles */
/* for custom specification table */
/* latest news */
/* Recent reviews */
#recent-reviews {
font-size: 0.95rem;
line-height: 1.4;
}
.recent-reviews-item {
line-height: 1.4;
}
.recent-reviews-stars {
color: #f8b805;
white-space: nowrap;
}
.recent-reviews-stars .fa-star {
font-size: 1.1rem;
}
.recent-reviews-date {
color: #6c757d;
font-size: 0.875rem;
}
.recent-reviews-title {
font-size: 1.05rem;
font-weight: 700;
margin-top: 0.25rem;
}
.recent-reviews-text {
margin-top: 0.35rem;
}
.recent-reviews-name {
margin-top: 0.35rem;
}
/* reviews */
/* review stars and rating */
.review-stars-full,
.review-stars-half {
color: #ff9900;
}
.review-stars-empty {
color: #dee2e6;
}
.review-rating-text {
font-size: 0.95rem;
}
/* reviews page */
/* top section */
/* main section */
/* bottom sections */
/* page title */
/* other pages */
/* product detail sharing */
/* product description table */
/* Product detail */
.product-detail-title {
margin-top: 1rem;
margin-bottom: 1.25rem;
/*
border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd;
*/
text-align: center;
}
.product-detail-main {
margin-bottom: 1.5rem;
}
.product-detail-left,
.product-detail-right {
display: flex;
flex-direction: column;
}
.product-detail-main-image {
text-align: center;
}
.product-detail-main-image .MagicZoom {
display: inline-block;
}
.product-detail-main-image img {
display: block;
margin-left: auto;
margin-right: auto;
}
.product-detail-code {
margin-top: 0;
margin-bottom: 0.25rem;
}
.product-detail-qty {
width: auto;
min-width: 70px;
}
.product-detail-buy-box {
padding-top: 0.25rem;
}
.product-detail-description-section,
.product-detail-related {
margin-top: 1.25rem;
}
.product-code-with-pick-id {
cursor: help;
}
/* ==========================================================================
Product description spacing - Bootstrap 5
========================================================================== */
/* Hide legacy <br><br> generated after the section heading */
.product-detail-description-section .section-heading + br,
.product-detail-description-section .section-heading + br + br {
display: none;
}
/* Bullet and numbered lists generated by {bullet} tokens */
.product-description-html ul,
.product-description-html ol {
margin-top: 0.35rem;
margin-bottom: 1rem;
padding-left: 1.5rem;
}
/* Description tables generated by {table} tokens */
.product-description-html table.table-description {
margin-top: 1.5rem;
margin-bottom: 1.5rem;
}
/* Bootstrap 5 video wrappers */
.product-description-html .ratio {
margin-top: 1.5rem;
margin-bottom: 1.5rem;
}
/* Controlled paragraph gap created from <br><br> in product descriptions */
.product-description-html .product-desc-gap {
display: block;
height: 1rem;
}
/* ==========================================================================
Product download / extra file links - Bootstrap 5
========================================================================== */
.product-downloads {
margin-top: 1.5rem;
margin-bottom: 2rem;
}
.product-downloads-title {
font-weight: 700;
margin-bottom: 0.5rem;
}
.product-downloads-list {
list-style: none;
padding-left: 0;
margin-bottom: 0;
}
.product-downloads-item {
margin-bottom: 0.5rem;
}
.product-downloads-item:last-child {
margin-bottom: 0;
}
.product-downloads-item i {
font-size: 1.35rem;
width: 1.45rem;
text-align: center;
margin-top: 0.1rem;
flex: 0 0 auto;
}
.product-downloads-item a,
.product-downloads-item a:hover,
.product-downloads-item a:focus {
text-decoration: none;
}
.product-downloads-item a:hover .product-download-name,
.product-downloads-item a:focus .product-download-name {
text-decoration: underline;
}
.product-downloads-item a:hover .product-download-size,
.product-downloads-item a:focus .product-download-size {
text-decoration: none;
}
.product-download-text {
min-width: 0;
}
.product-download-name {
overflow-wrap: anywhere;
}
.product-download-size {
display: inline-block;
font-size: 0.8em;
font-weight: 600;
color: #6c757d;
background-color: #f8f9fa;
border: 1px solid #dee2e6;
border-radius: 0.35rem;
padding: 0.05rem 0.35rem;
margin-left: 0.45rem;
vertical-align: 0.05em;
white-space: nowrap;
}
/* Product detail order on mobile */
@media (max-width: 767.98px) {
.product-detail-main {
margin-left: 0;
margin-right: 0;
}
/*
Allow the contents of the two desktop columns to be
reordered individually on mobile.
*/
.product-detail-left,
.product-detail-right {
display: contents;
}
.product-detail-images,
.product-detail-buy-box,
.product-detail-description-section,
.product-detail-related {
flex: 0 0 100%;
width: 100%;
min-width: 0;
}
.product-detail-images {
order: 1;
}
.product-detail-buy-box {
order: 2;
margin-top: 1rem;
}
.product-detail-description-section {
order: 3;
}
.product-detail-related {
order: 4;
}
}
/* Product detail thumbnails */
.product-detail-thumbnails {
display: grid;
grid-template-columns: repeat(auto-fit, 82px);
gap: 0.4rem;
justify-content: center;
margin-top: 1rem;
}
.product-detail-thumbnails a,
.product-detail-thumbnails .MagicZoom,
.product-detail-thumbnails .mz-thumb {
display: flex !important;
align-items: center;
justify-content: center;
width: 82px !important;
height: 82px !important;
padding: 0.25rem;
border: 1px solid #ddd;
border-radius: 0.25rem;
background-color: white;
box-sizing: border-box;
overflow: hidden;
}
.product-detail-thumbnails img,
.product-detail-thumbnails .MagicZoom img,
.product-detail-thumbnails .mz-thumb img {
display: block;
max-width: 100% !important;
max-height: 100% !important;
width: auto !important;
height: auto !important;
object-fit: contain;
}
/* Product detail sections */
.product-detail-section {
margin-bottom: 1rem;
}
.product-detail-section-body {
padding-top: 0.5rem;
}
/* Product detail price */
.product-detail-price {
margin-top: 0.45rem;
margin-bottom: 0.45rem;
font-size: 1.85rem;
font-weight: 700;
line-height: 1.2;
color: #212529;
}
.product-detail-price-label {
color: #212529;
}
.product-detail-price .price-std,
.product-detail-price .price-sale {
font-size: inherit;
font-weight: inherit;
}
.product-detail-price .price-std-crossed-out {
font-size: 1.1rem;
}
/* Product options */
.product-options-heading {
margin-top: 1rem;
margin-bottom: 0.75rem;
font-size: 1.45rem;
font-weight: 500;
line-height: 1.2;
}
.product-options-hint {
display: block;
margin-top: 0.5rem;
}
.product-option {
margin-bottom: 0.75rem;
}
.product-option-required {
color: #dc3545;
margin-right: 0.15rem;
}
.product-option-value-row {
display: flex;
align-items: center;
gap: 0.75rem;
border: 1px solid #ddd;
padding: 0.4rem 0.6rem;
min-height: 4rem;
background-color: #fff;
}
.product-option-value-row + .product-option-value-row {
border-top: 0;
}
.product-option-value-control {
flex: 0 0 auto;
}
.product-option-value-label {
flex: 1 1 auto;
line-height: 1.3;
}
.product-option-value-label label {
margin-bottom: 0;
font-weight: 600;
}
/* Product option images */
.product-option-value-image {
flex: 0 0 80px;
text-align: right;
}
.product-option-image-inner {
width: 80px;
}
.product-option-image-link {
display: inline-block;
}
.product-option-image {
width: 75px;
height: 75px;
object-fit: contain;
}
/* Related products */
.related-products {
display: block;
}
.related-product-item {
display: flex;
gap: 0.75rem;
padding: 0.875rem;
margin-bottom: 0.75rem;
border: 1px solid #dfe3e8;
border-radius: 0.5rem;
background: #fff;
}
.related-product-image {
flex: 0 0 95px;
display: flex;
justify-content: center;
}
.related-product-image img {
max-width: 95px;
max-height: 95px;
width: auto;
height: auto;
object-fit: contain;
}
.related-product-info {
flex: 1 1 auto;
min-width: 0;
}
.related-product-name {
margin-bottom: 0.35rem;
line-height: 1.3;
}
.related-product-buy-row {
display: flex;
align-items: center;
gap: 0.5rem;
margin-top: 0.35rem;
}
.related-product-price {
flex: 0 0 72px;
font-weight: 700;
line-height: 1.35;
}
.related-product-add-button {
flex: 0 0 auto;
min-width: 48px;
padding: 0.25rem 0.55rem;
line-height: 1.2;
}
.related-product-stock {
margin-top: 0.15rem;
line-height: 1.35;
}
/* Related categories */
.related-category-path {
margin-bottom: 0.35rem;
}
.related-category-path .breadcrumb {
margin-bottom: 0;
font-size: 0.95rem;
}
/* bank transfer */
/* Bank transfer modal */
.bank-transfer-option {
display: flex;
align-items: center;
gap: 1rem;
margin-bottom: 1.25rem;
}
.bank-transfer-option:last-child {
margin-bottom: 0;
}
@media (min-width: 576px) {
.bank-transfer-option {
margin-bottom: 1.5rem;
}
}
.bank-transfer-button-width {
flex: 0 0 176px;
width: 176px;
}
.bank-transfer-option-text {
flex: 1 1 auto;
min-width: 0;
font-size: 1.05rem;
line-height: 1.35;
}
@media (max-width: 575.98px) {
.bank-transfer-option {
flex-direction: column;
align-items: stretch;
gap: 0.5rem;
}
.bank-transfer-button-width {
width: 100%;
flex-basis: auto;
}
}
/* Stock notification form */
.stock-notify-form {
max-width: 720px;
}
.stock-notify-security img {
max-width: 100%;
height: auto;
display: block;
margin-bottom: 0.5rem;
}
/* home notices and intro */
/* Recently viewed */
.recently-viewed-wrapper {
padding-bottom: 1.25rem;
}
.recently-viewed-section {
margin-bottom: 0;
}
.recently-viewed-section img {
border: 1px solid #e0e0e0;
border-radius: 0.375rem;
padding: 0.25rem;
background-color: white;
}
.recently-viewed-section a {
display: inline-block;
margin-right: 0.25rem;
margin-bottom: 0.25rem;
}
/* footer */
/* (SS,15/5/26) main footer */
/* (SS,24/6/26) change to non-continuous */
.footer-main {
background-color: transparent;
border-top: 0;
}
.footer-main .container {
background-color: #c7ebff;
border-top: 1px solid #aee0fb;
}
.footer-main h5 {
color: #111;
font-weight: 700;
}
.footer-main a {
color: #0d6efd;
}
.footer-main a:hover,
.footer-main a:focus {
color: #0a58ca;
text-decoration: underline;
}
/* (SS,18/5/26) links in footer */
.footer-link-list {
align-items: flex-start;
line-height: 1.35;
}
.footer-link-list .nav-item {
margin-bottom: 0.5rem;
}
.footer-link-list .nav-item:last-child {
margin-bottom: 0;
}
.footer-contact-links li {
margin-bottom: 0.45rem;
}
.footer-contact-links li:last-child {
margin-bottom: 0;
}
/* ==========================================================================
Footer payment logos - Bootstrap 5
========================================================================== */
.footer-payment-logos {
max-width: 260px;
}
.footer-payment-wallets {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
align-items: center;
}
.footer-payment-logo {
display: block;
max-width: 100%;
height: auto;
}
.footer-payment-logo-wallet {
width: 100px;
}
.footer-payment-logo-wide {
width: 240px;
}
/* ==========================================================================
Useful links page - Bootstrap 5
========================================================================== */
.links-page h2 {
margin-top: 1.5rem;
margin-bottom: 0.5rem;
}
.links-page ul {
margin-bottom: 1.25rem;
}
.links-page li {
margin-bottom: 0.15rem;
}
.links-page .link-external {
font-weight: 400;
}
/* Cookie bar */
/* (SS,29/5/26) tidy old jquery.cookiebar styling for Bootstrap 5 */
#cookie-bar {
background: #111111;
color: #eeeeee;
text-align: center;
padding: 0.3rem 1rem;
font-size: 0.95rem;
line-height: 1.4;
font-weight: 600;
}
#cookie-bar p {
margin: 0;
padding: 0;
}
#cookie-bar a {
color: #ffffff;
display: inline-block;
border-radius: 0.2rem;
text-decoration: none;
padding: 0.15rem 0.55rem;
margin-left: 0.5rem;
line-height: 1.3;
}
#cookie-bar .cb-enable {
background: #007700;
}
#cookie-bar .cb-enable:hover {
background: #009900;
}
#cookie-bar .cb-policy {
background: #0033bb;
}
#cookie-bar .cb-policy:hover {
background: #0055dd;
}
#cookie-bar a:hover,
#cookie-bar a:focus {
color: #ffffff;
text-decoration: none;
}