/* Original SFPTotal appearance adapted to local Bootstrap 5. */
:root {
  --bs-body-font-family: "Play", "Open Sans", Helvetica, Verdana, Sans Serif;
  --bs-font-sans-serif: "Play", "Open Sans", Helvetica, Verdana, Sans Serif;
  --bs-body-font-size: 1rem;
  --bs-body-line-height: 1.42857143;
  --bs-body-color: #444;
  --bs-body-color-rgb: 68, 68, 68;
  --bs-border-color: #dee2e6;
  --bs-border-radius: .25rem;
  --bs-border-radius-sm: .2rem;
  --bs-border-radius-lg: .3rem;
  --bs-primary-rgb: 0, 123, 255;
  --bs-success-rgb: 40, 167, 69;
  --bs-link-color: #7462ca;
  --bs-link-hover-color: #5847a7;
}
body.site-modern { font-size:var(--bs-body-font-size); font-family:"Play", "Open Sans", Helvetica, Verdana, Sans Serif !important; line-height:1.42857143; color:#444; }
.site-modern :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6) { margin-bottom:.5rem; font-family:inherit; font-weight:500; line-height:1.2; }
.site-modern :is(h1,.h1) { font-size:2.5rem; }
.site-modern :is(h2,.h2) { font-size:2rem; }
.site-modern :is(h3,.h3) { font-size:1.75rem; }
.site-modern :is(h4,.h4) { font-size:1.5rem; }
.site-modern :is(h5,.h5) { font-size:1.25rem; }
.site-modern :is(h6,.h6) { font-size:1rem; }
body.site-modern h1 { font-size:1.75rem !important; margin-bottom:.5rem !important; font-weight:500 !important; line-height:1.2 !important; }
.site-modern p { margin-bottom:1rem; }
.site-modern .info-visual__step p, .site-modern .info-visual__note { font-size:var(--bs-body-font-size); }
.site-modern img { max-width:100%; }
.site-modern small, .site-modern .small { font-size:80%; }
.site-modern .row, .site-modern .container { --bs-gutter-x:30px; }
@media (min-width:1200px) { .site-modern .container { max-width:1140px; } }
.site-modern .site-header {
  padding:.5rem 1rem;
  background-color:#433d61;
  background-position:center 60%;
  background-size:cover;
  background-repeat:no-repeat;
  color:#fefefe;
}
.site-header .navbar-brand img { width:149px; }
.site-header .nav-link { font-size:var(--bs-body-font-size); }
.site-modern .navbar-dark .navbar-nav .nav-link { color:rgba(255,255,255,.7); }
.site-modern .navbar-dark .navbar-nav .nav-link:is(:hover,:focus) { color:rgba(255,255,255,.75); }
.site-modern .navbar-dark .navbar-nav .nav-link:is(.active,.show),
.site-modern .navbar-dark .navbar-nav .show > .nav-link { color:#fff; }
.site-modern .navbar .dropdown-menu { --bs-dropdown-font-size:var(--bs-body-font-size); }
.site-modern .site-header .dropdown-menu { box-shadow:none; }
.site-modern .site-header .dropdown-item, .site-modern .site-header .dropdown-item :is(.small,p) { color:#000; text-decoration:none; }
.site-header .dropdown-item .small { font-size:80%; }
.site-modern .site-header .dropdown-item:hover { background-color:#f8f9fa; }
.site-modern .site-header .dropdown-item:is(:active,:focus) { color:#fff; }
.site-modern .site-header .dropdown-item:is(:active,:focus) .small { color:inherit; }
.site-modern .btn { padding:.375rem .75rem; border-radius:.25rem; font-family:inherit; font-size:var(--bs-body-font-size); font-weight:400; line-height:1.5; box-shadow:none; }
.site-modern .btn-lg { padding:.5rem 1rem; border-radius:.3rem; font-size:1.25rem; }
.site-modern .btn-sm { padding:.25rem .5rem; border-radius:.2rem; font-size:.875rem; }
.site-modern a.btn:not(.btn-link) { color:var(--bs-btn-color); text-decoration:none; }
.site-modern a.btn:not(.btn-link):hover { color:var(--bs-btn-hover-color); }
.site-modern a.btn:not(.btn-link):active { color:var(--bs-btn-active-color); }
.site-modern .product-feedback-button {
  --bs-btn-color:#61588c; --bs-btn-bg:transparent; --bs-btn-border-color:#61588c;
  --bs-btn-hover-color:#61588c; --bs-btn-hover-bg:#f0edf6; --bs-btn-hover-border-color:#61588c;
  --bs-btn-focus-shadow-rgb:97,88,140;
  --bs-btn-active-color:#61588c; --bs-btn-active-bg:#e5e0ef; --bs-btn-active-border-color:#61588c;
  --bs-btn-disabled-color:#61588c; --bs-btn-disabled-bg:transparent; --bs-btn-disabled-border-color:#61588c;
}
.site-modern .btn-success { --bs-btn-bg:#28a745; --bs-btn-border-color:#28a745; --bs-btn-hover-bg:#218838; --bs-btn-hover-border-color:#1e7e34; }
.site-header .btn-outline-light {
  --bs-btn-color:#fff; --bs-btn-bg:#61588c; --bs-btn-border-color:#433d61;
  --bs-btn-hover-color:#fff; --bs-btn-hover-bg:#6f64a7; --bs-btn-hover-border-color:#7c6ebd;
}
.site-modern .btn-info.solution-details-button {
  --bs-btn-color:#fff; --bs-btn-bg:#17a2b8; --bs-btn-border-color:#17a2b8;
  --bs-btn-hover-color:#fff; --bs-btn-hover-bg:#138496; --bs-btn-hover-border-color:#117a8b;
  --bs-btn-active-color:#fff; --bs-btn-active-bg:#117a8b; --bs-btn-active-border-color:#10707f;
}
.site-modern .form-control, .site-modern .form-select { padding:.375rem .75rem; border-color:#ced4da; border-radius:.25rem; color:#495057; font-size:var(--bs-body-font-size); line-height:1.5; }
.site-modern .form-control:focus, .site-modern .form-select:focus { border-color:#80bdff; box-shadow:0 0 0 .2rem rgb(0 123 255 / 25%); }
.auth-form-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem; }
.auth-form-actions > a { white-space:nowrap; }
.site-modern .card { --bs-card-border-color:rgb(0 0 0 / 12.5%); --bs-card-spacer-x:1.25rem; --bs-card-spacer-y:1.25rem; box-shadow:none; }
.site-modern .card-header, .site-modern .card-footer { padding:.75rem 1.25rem; background-color:rgb(0 0 0 / 3%); }
.site-modern .list-group { --bs-list-group-item-padding-x:1.25rem; --bs-list-group-item-padding-y:.75rem; --bs-list-group-border-radius:.25rem; --bs-list-group-border-color:rgb(0 0 0 / 12.5%); }
.site-modern .list-group-item.active:not(.delivery-address) { color:#fff; background-color:#61588c; border-color:#433d61; }
.site-modern .alert { padding:.75rem 1.25rem; border-radius:.25rem; }
.site-modern .alert-dismissible { padding-right:4rem; }
.site-modern .table { --bs-table-color:#444; --bs-table-border-color:#dee2e6; }
.site-modern .table-striped { --bs-table-striped-color:var(--bs-table-color); }
.site-modern .table > :not(caption) > * > * { padding:.75rem; }
.site-modern .breadcrumb { padding:.75rem 1rem; margin-bottom:1rem; font-size:var(--bs-body-font-size); }
.site-modern .inner-content { overflow-wrap:anywhere; }
.site-modern .inner-content img { max-width:100%; height:auto; }
.site-modern .inner-content table { display:block; max-width:100%; overflow-x:auto; }
.account-content { min-width:0; overflow-wrap:anywhere; }
.private-data-table { max-width:100%; margin-bottom:1rem; }
.private-data-table > .table { margin-bottom:0; }
@media (max-width:991.98px) {
  .site-modern .pagination { flex-wrap:wrap; row-gap:.25rem; }
  .site-modern .bootstrap-select .dropdown-menu { width:100%; max-width:100%; }
  .site-modern .bootstrap-select .dropdown-item { white-space:normal; overflow-wrap:anywhere; }
  .order-delivery-column { margin-top:1rem; }
  .order-summary-row { row-gap:.5rem; overflow-wrap:anywhere; }
  .order-summary-row > div { text-align:left !important; }
  .order-product-row { padding-bottom:1rem; margin-bottom:1rem !important; border-bottom:1px solid #dee2e6; }
  .private-list-toolbar { row-gap:.75rem; }
  .private-list-toolbar > div { flex:0 0 100%; width:100%; text-align:left !important; }
  .private-list-toolbar .input-group { row-gap:.5rem; }
  .private-list-toolbar .input-group > .dropdown-toggle { flex:0 0 100%; width:100%; white-space:normal; border-radius:.25rem !important; }
  .private-list-toolbar .input-group > form { flex:1 1 100%; min-width:0; }
  .private-list-toolbar .form-control { margin-left:0 !important; }
  .private-list-toolbar .dropdown-menu { max-width:100%; }
  .private-list-toolbar .dropdown-item { white-space:normal; }
}
.site-modern .card-body pre { max-width:100%; overflow-x:auto; }
.site-modern .product-content { background-color:#ededed; }
.site-modern .product-gallery > .row:first-child > div:first-child img { filter:none; }
.site-modern .product-gallery > .list-group .list-group-item { font-size:1.0625rem; }
.site-modern .product-gallery > .list-group a { color:#000 !important; }
.site-modern .product-details #ProductButton { max-width:100%; margin-bottom:1rem; white-space:normal; }
.product-contact-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:8px; margin-top:12px; width:100%; }
.site-modern .product-contact-actions > .btn { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-width:0; min-height:34px; max-width:100%; padding:.375rem .625rem; font-size:.875rem; line-height:1.3; white-space:normal; }
.product-contact-actions > .btn > span { min-width:0; }
.product-contact-actions :is(i,.svg-inline--fa) { flex-shrink:0; }
@media (max-width:575.98px) {
  .site-modern .product-contact-actions > .btn { gap:4px; padding-inline:.375rem; font-size:.8125rem; }
}
.site-modern .product-sku {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.375rem .625rem;
  margin-bottom:.75rem;
}
.product-sku-code { color:#888; }
.product-stock-badge {
  flex-shrink:0;
  border-color:currentColor !important;
  font-size:.75rem;
  white-space:nowrap;
}
.product-feedback-actions {
  display:flex;
  align-items:stretch;
  gap:.5rem;
  max-width:100%;
  margin-bottom:1rem;
}
.site-modern .product-feedback-actions > .btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.375rem;
  min-width:0;
  min-height:44px;
  white-space:normal;
  line-height:1.35;
}
.product-feedback-actions > .btn > span { min-width:0; overflow-wrap:anywhere; }
.product-feedback-actions .svg-inline--fa { flex-shrink:0; }
.product-offer-row + br { display:none; }
@media (max-width:575.98px) {
  .product-feedback-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .site-modern .product-feedback-actions > .btn { padding:.5rem .375rem; gap:.25rem; font-size:.875rem; line-height:1.4; }
  .product-feedback-actions > .btn > span { white-space:nowrap; overflow-wrap:normal; }
}
@media (max-width:359.98px) {
  .site-modern .product-feedback-actions > .btn { padding-inline:.25rem; gap:.125rem; }
}
.site-modern :is(#fixed-sidebar,#fixed-sidebar1,.list-group:has(> a[href="/customer/profile"])) a { font-size:1rem; color:#495057; text-decoration:none; }
.site-modern :is(#fixed-sidebar,#fixed-sidebar1,.list-group:has(> a[href="/customer/profile"])) a:not(.active):is(:hover,:focus) { color:#495057; background-color:#f8f9fa; }
.site-modern :is(#fixed-sidebar,#fixed-sidebar1,.list-group:has(> a[href="/customer/profile"])) a:not(.active):active { color:#212529; background-color:#e9ecef; }
.site-modern :is(#fixed-sidebar,#fixed-sidebar1,.list-group:has(> a[href="/customer/profile"])) a.active { color:#fff; }
.site-modern #information { scroll-margin-top:100px; }
/* Keep anchored wiki table rows visible below the fixed navigation. */
html:has(body.site-modern .wiki-material) { scroll-padding-top:100px; }
.site-modern .cookie-notice { background:#333; color:#f1f1f1; border-color:#333; border-radius:.6rem; }
.site-modern .cookie-notice .h6 { color:inherit; }
.site-modern .cookie-notice-link { color:#d8d8d8; }
/* Retain the quantity fix with the original compact controls. */
.site-modern .cart-quantity { width:132px; max-width:100%; flex-wrap:nowrap; margin-inline:auto; }
.site-modern .cart-quantity .btn { display:inline-flex; align-items:center; justify-content:center; flex:0 0 36px; width:36px; height:36px; min-height:36px; padding:0; border-radius:0; }
.site-modern .cart-quantity .button-minus { border-radius:.25rem 0 0 .25rem; }
.site-modern .cart-quantity .button-plus { border-radius:0 .25rem .25rem 0; }
.site-modern .cart-quantity .product_quantity { flex:1 1 0; width:0; min-width:0; height:36px; min-height:36px; padding:.25rem .2rem; border-radius:0; text-align:center; }
/* Keep basket previews compact without cropping photographs. */
.shopping-cart .cart-item-image { display:flex; align-items:center; justify-content:center; padding:12px; }
.site-modern .shopping-cart .cart-item-image img { display:block; width:120px; max-width:100%; height:96px !important; object-fit:contain; }
.site-modern .shopping-cart .cart-catalog .card-img-top { display:block; width:200px; max-width:100%; height:150px !important; margin:12px auto 0; padding:8px; object-fit:contain; }
@media (max-width:991.98px) {
  .site-header .navbar-brand img { display:block; width:140px; }
  .site-header .navbar-toggler { margin-left:auto; }
  .product-gallery > .row:first-child > div:first-child { width:100%; }
  .product-details .product-spec-row { margin-bottom:.35rem; }
}
