:root {
  --prospt-ink: #14171b;
  --prospt-blue: #315f9b;
  --prospt-yellow: #ffea00;
  --prospt-red: #d71f26;
  --prospt-muted: #626a73;
  --prospt-line: #dedfe2;
  --prospt-paper: #fff;
  --prospt-soft: #f6f7f8;
  --prospt-content: 1240px;
  --prospt-radius: 4px;
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--prospt-ink); background: var(--prospt-paper); font: 16px/1.55 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
img { max-width: 100%; height: auto; }
a { color: inherit; }
button, input, select, textarea { font: inherit; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid #1d5fd1; outline-offset: 3px; }
.screen-reader-text, .prospt-skip-link:not(:focus) { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.prospt-skip-link:focus { position: fixed; z-index: 10000; top: 8px; left: 8px; padding: 10px 14px; color: #fff; background: #000; }
.prospt-wrap { width: min(var(--prospt-content), calc(100% - 40px)); margin-inline: auto; }
.prospt-announcement { overflow: hidden; padding: 9px 0; color: var(--prospt-announcement-color, #111); background: var(--prospt-announcement-bg, var(--prospt-yellow)); font-size: 14px; line-height: 1.4; text-align: center; }
.prospt-announcement__viewport { overflow: hidden; white-space: nowrap; }
.prospt-announcement__track { display: flex; width: max-content; min-width: 100vw; animation: prospt-marquee 32s linear infinite; }
.prospt-announcement__track span { flex: 0 0 max(50vw, max-content); padding-inline: 2vw; }
.prospt-announcement--marquee:hover .prospt-announcement__track { animation-play-state: paused; }
@keyframes prospt-marquee { to { transform: translateX(-50%); } }
.prospt-header { position: relative; z-index: 1200; isolation: isolate; background: #fff; border-bottom: 1px solid #f0f0f0; }
.prospt-header__inner { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 26px; }
.prospt-brand { flex: 0 0 auto; min-width: 116px; }
.custom-logo-link { display: inline-flex; align-items: center; }
.custom-logo { width: auto; max-height: 55px; }
.prospt-brand__text { color: var(--prospt-blue); font-size: 34px; font-weight: 800; text-decoration: none; letter-spacing: -.06em; }
.prospt-desktop-nav { flex: 1 1 auto; display: flex; justify-content: center; }
.prospt-menu { display: flex; align-items: center; gap: clamp(16px, 2.4vw, 38px); list-style: none; margin: 0; padding: 0; }
.prospt-menu li { position: relative; }
.prospt-menu a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; text-decoration: none; }
.prospt-menu .sub-menu { position: absolute; top: 100%; left: 0; z-index: 40; display: none; min-width: 220px; padding: 8px 14px; list-style: none; border: 1px solid var(--prospt-line); background: #fff; box-shadow: 0 10px 24px rgb(0 0 0 / 10%); }
.prospt-menu li:hover > .sub-menu, .prospt-menu li:focus-within > .sub-menu, .prospt-menu li.is-open > .sub-menu { display: block; }
.prospt-menu .sub-menu a { width: 100%; min-height: 40px; }
.prospt-submenu-toggle { display: inline-grid; width: 26px; height: 30px; flex: 0 0 auto; place-items: center; margin-left: 2px; padding: 0; border: 0; color: inherit; background: transparent; font: inherit; cursor: pointer; }
.prospt-submenu-toggle__icon { font-size: 19px; line-height: 1; }
.prospt-menu > .prospt-mega-root { position: static; }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .sub-menu { top: calc(100% - 1px); left: 50%; display: none; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 18px; width: min(1440px, calc(100vw - 32px)); max-width: calc(100vw - 32px); max-height: min(72vh, 620px); overflow: auto; padding: 24px 28px; border: 0; box-shadow: 0 14px 28px rgb(0 0 0 / 13%); transform: translateX(-50%); }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root:hover > .sub-menu, .prospt-desktop-nav .prospt-menu > .prospt-mega-root:focus-within > .sub-menu, .prospt-desktop-nav .prospt-menu > .prospt-mega-root.is-open > .sub-menu, .prospt-desktop-nav .prospt-menu > .prospt-mega-root.is-hover-open > .sub-menu { display: grid; z-index: 1201; }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .sub-menu > li { min-width: 0; padding-right: 16px; border-right: 1px solid var(--prospt-line); }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .sub-menu > li:last-child { border-right: 0; }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .sub-menu > li > a { min-height: 36px; font-weight: 750; }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .sub-menu > li > .sub-menu { position: static; display: grid; min-width: 0; padding: 0; border: 0; box-shadow: none; }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .sub-menu > li > .sub-menu a { min-height: 32px; font-weight: 400; }
.prospt-desktop-nav .prospt-menu .sub-menu > li.menu-item-has-children { display: grid; grid-template-columns: minmax(0, 1fr) 30px; grid-template-areas: "label toggle" "children children"; align-content: start; align-items: start; }
.prospt-desktop-nav .prospt-menu .sub-menu > li.menu-item-has-children > a { grid-area: label; width: auto; min-width: 0; min-height: 36px; align-items: center; }
.prospt-desktop-nav .prospt-menu .sub-menu > li.menu-item-has-children > .prospt-submenu-toggle { grid-area: toggle; justify-self: end; align-self: start; width: 30px; height: 36px; margin: 0; }
.prospt-desktop-nav .prospt-menu .sub-menu > li.menu-item-has-children > .sub-menu { grid-area: children; width: 100%; margin: 0; }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .prospt-mega-menu--brands { width: min(680px, calc(100vw - 32px)); grid-template-columns: minmax(180px, .68fr) minmax(240px, 1fr) !important; grid-auto-rows: minmax(44px, auto); align-items: stretch; }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .prospt-mega-menu--brands > li:not(.prospt-brands-promo) { grid-column: 1; min-width: 0; }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .prospt-mega-menu--brands > .prospt-brands-promo { grid-column: 2; grid-row: 1 / span 5; min-width: 0; min-height: 200px; display: flex; align-items: stretch; justify-content: stretch; overflow: hidden; padding: 0 !important; border: 0 !important; }
.prospt-brands-promo__image { display: block; width: 100%; height: 100%; min-height: 200px; max-height: 250px; object-fit: cover; object-position: center; border-radius: 3px; }
.prospt-brands-promo:empty { display: none; }
.prospt-menu a:hover, .prospt-menu .current-menu-item > a { color: var(--prospt-blue); }
.prospt-desktop-nav .prospt-menu > .prospt-mega-root > .sub-menu { z-index: 1201; }
.prospt-header-actions { display: flex; align-items: center; gap: 13px; flex: 0 0 auto; }
.prospt-header-search, .prospt-mobile-nav__search { display: flex; width: min(220px, 19vw); min-width: 0; }
.prospt-header-search input[type="search"], .prospt-mobile-nav__search input[type="search"] { width: 100%; min-width: 0; height: 42px; padding: 0 15px; border: 1px solid #edf0f3; border-right: 0; border-radius: 23px 0 0 23px; background: #f7f8fa; font-size: 13px; }
.prospt-header-search button, .prospt-mobile-nav__search button { display: grid; min-width: 50px; place-items: center; border: 0; color: #fff; background: #101114; border-radius: 0 23px 23px 0; cursor: pointer; }
.prospt-header-search button svg, .prospt-mobile-nav__search button svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-width: 2; }
.prospt-icon-link { position: relative; display: inline-flex; width: 38px; height: 42px; align-items: center; justify-content: center; text-decoration: none; font-size: 22px; }
.prospt-icon-link svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.prospt-cart-count { position: absolute; top: 2px; right: -5px; min-width: 17px; height: 17px; padding: 0 4px; border-radius: 10px; color: #fff; background: var(--prospt-red); font-size: 11px; line-height: 17px; text-align: center; }
.prospt-menu-toggle { display: none; border: 0; background: transparent; color: var(--prospt-ink); padding: 10px; }
.prospt-menu-toggle__icon { display: grid; gap: 5px; width: 24px; }
.prospt-menu-toggle__icon i { display: block; width: 24px; height: 2px; background: currentColor; transition: transform .18s ease, opacity .18s ease; }
.prospt-menu-toggle[aria-expanded="true"] .prospt-menu-toggle__icon i:first-child { transform: translateY(7px) rotate(45deg); }
.prospt-menu-toggle[aria-expanded="true"] .prospt-menu-toggle__icon i:nth-child(2) { opacity: 0; }
.prospt-menu-toggle[aria-expanded="true"] .prospt-menu-toggle__icon i:last-child { transform: translateY(-7px) rotate(-45deg); }
.prospt-mobile-nav { display: none; }
.prospt-main { min-height: 45vh; padding-block: 34px 64px; }
.prospt-home { padding: 0; }
.prospt-hero { overflow: hidden; color: #fff; background: #121922; }
.prospt-hero__inner { min-height: 440px; display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 24px; padding-block: 54px; }
.prospt-hero__copy { position: relative; z-index: 2; max-width: 620px; }
.prospt-eyebrow { margin: 0 0 10px; color: #56616d; font-size: 12px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.prospt-hero .prospt-eyebrow { color: var(--prospt-yellow); }
.prospt-hero h1 { max-width: 650px; margin: 0; font-size: clamp(42px, 6vw, 76px); line-height: .99; letter-spacing: -.045em; }
.prospt-hero__copy > p:not(.prospt-eyebrow) { max-width: 470px; margin: 22px 0 26px; color: #d4d9df; font-size: 18px; }
.prospt-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; }
.prospt-hero .prospt-button { min-height: 50px; border-color: var(--prospt-yellow); color: #14171b; background: var(--prospt-yellow); }
.prospt-hero .prospt-button:hover { color: #111; background: #fff; border-color: #fff; }
.prospt-hero .prospt-text-link { color: #fff; }
.prospt-text-link { display: inline-flex; align-items: center; gap: 8px; font-weight: 700; text-decoration: none; }
.prospt-text-link:hover { color: var(--prospt-blue); }
.prospt-hero__visual { position: relative; min-height: 310px; display: grid; place-items: center; overflow: hidden; border-radius: 50% 50% 8px 8px; background: radial-gradient(circle at 50% 46%, #40546b 0, #263548 36%, #182330 68%, #111922 100%); }
.prospt-hero__ring { position: absolute; width: 270px; height: 270px; border: 1px solid rgb(255 255 255 / 24%); border-radius: 50%; }
.prospt-hero__ring--two { width: 360px; height: 360px; border-color: rgb(255 255 255 / 12%); }
.prospt-hero__word { position: absolute; right: 16px; bottom: 35px; color: rgb(255 255 255 / 78%); font-size: 13px; font-weight: 800; letter-spacing: .25em; }
.prospt-hero__mark { color: var(--prospt-yellow); font-size: clamp(150px, 23vw, 270px); font-weight: 900; line-height: .8; letter-spacing: -.1em; transform: translateX(-.05em); }
.prospt-section { padding-block: 58px; }
.prospt-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 24px; }
.prospt-section-heading h2 { margin: 0; font-size: clamp(27px, 3vw, 38px); line-height: 1.12; }
.prospt-category-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.prospt-category-card { display: grid; gap: 12px; color: inherit; text-decoration: none; }
.prospt-category-card__image { display: grid; aspect-ratio: 1 / .82; place-items: center; overflow: hidden; background: #f3f4f6; }
.prospt-category-card__image img { width: 100%; height: 100%; object-fit: contain; transition: transform .25s ease; }
.prospt-category-card:hover .prospt-category-card__image img { transform: scale(1.04); }
.prospt-category-card__fallback { color: #c8cdd3; font-size: 90px; font-weight: 900; }
.prospt-category-card__name { display: flex; justify-content: space-between; gap: 10px; font-size: 16px; font-weight: 750; }
.prospt-audience { padding-block: 22px 64px; }
.prospt-audience__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.prospt-audience-card { min-height: 230px; display: flex; flex-direction: column; align-items: flex-start; justify-content: end; padding: 30px; color: #fff; background: linear-gradient(135deg, #234366, #121922); text-decoration: none; }
.prospt-audience-card--pro { color: #151719; background: linear-gradient(135deg, #ffea00, #f4c900); }
.prospt-audience-card h2 { margin: 0 0 20px; font-size: clamp(28px, 4vw, 42px); line-height: 1; }
.prospt-audience-card .prospt-eyebrow { color: inherit; opacity: .75; }
.prospt-audience-card__link { font-weight: 700; }
.prospt-page-hero { margin: 0 0 34px; padding: 34px; color: #fff; background: #151b23; }
.prospt-page-hero .prospt-eyebrow { color: var(--prospt-yellow); }
.prospt-page-hero h1 { margin: 0 0 12px; font-size: clamp(32px, 5vw, 52px); line-height: 1.05; }
.prospt-page-hero p:last-child { max-width: 620px; margin: 0; color: #e0e4e9; }
.prospt-category-grid--landing { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.prospt-editorial-content { max-width: 880px; margin: 42px auto 0; }
.prospt-editorial-content h2 { margin-top: 28px; }
.prospt-contact-grid { display: grid; grid-template-columns: minmax(250px, .8fr) minmax(0, 1.2fr); gap: 34px; }
.prospt-contact-details, .prospt-contact-form { padding: 26px; border: 1px solid var(--prospt-line); background: #fff; }
.prospt-contact-details h2, .prospt-contact-form h2 { margin-top: 0; }
.prospt-contact-detail + .prospt-contact-detail { margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--prospt-line); }
.prospt-contact-detail h3 { margin: 0 0 4px; font-size: 14px; }
.prospt-contact-detail p { margin: 0; color: var(--prospt-muted); }
.prospt-form-row { margin-bottom: 16px; }
.prospt-form-row label { display: block; margin-bottom: 6px; font-weight: 700; }
.prospt-form-row input, .prospt-form-row textarea { width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid #aeb4ba; border-radius: 3px; }
.prospt-form-row textarea { min-height: 140px; resize: vertical; }
.prospt-form-status { margin-bottom: 16px; padding: 12px 14px; background: #edf7ed; }
.prospt-form-status--error { background: #fff1f0; }
.prospt-contact-form__trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.prospt-entry { max-width: 900px; margin-inline: auto; }
.prospt-entry h1, .prospt-page-heading h1 { margin: 0 0 24px; font-size: clamp(30px, 4vw, 48px); line-height: 1.12; }
.prospt-page-heading { margin-bottom: 20px; }
.prospt-home-products { margin-top: 48px; }
.prospt-home-products h2 { margin: 0 0 22px; text-align: center; font-size: clamp(25px, 3vw, 36px); }
.prospt-button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; padding: 10px 18px; border: 1px solid var(--prospt-ink); border-radius: var(--prospt-radius); color: #fff; background: var(--prospt-ink); font-weight: 700; text-decoration: none; cursor: pointer; }
.prospt-button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover { color: #111; background: var(--prospt-yellow); }
.woocommerce ul.products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 26px 22px; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product { float: none !important; width: auto !important; margin: 0 !important; padding: 0 0 14px; border-bottom: 1px solid var(--prospt-line); }
.woocommerce ul.products li.product a img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: contain; background: var(--prospt-soft); }
.woocommerce ul.products li.product :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) { color: var(--prospt-ink); font-size: 16px; line-height: 1.35; }
.prospt-product-card__image { position: relative; display: block; overflow: hidden; background: var(--prospt-soft); }
.prospt-product-card__image > img { width: 100%; aspect-ratio: 1 / 1; object-fit: contain; transition: transform .2s ease; }
.prospt-product-card:hover .prospt-product-card__image > img { transform: scale(1.035); }
.prospt-product-card__body { display: flex; flex-direction: column; align-items: flex-start; padding: 10px 2px 0; }
.prospt-product-card__body .star-rating { margin: 2px 0 8px; }
.prospt-product-card__body .price { margin: 0 0 12px; color: var(--prospt-ink); font-weight: 750; }
.prospt-product-card__actions .button { min-height: 40px; margin: 0; }
.prospt-product-card__image .onsale { position: absolute; z-index: 2; top: 10px; left: 10px; min-height: 0; padding: 5px 8px; border-radius: 2px; color: #fff; background: var(--prospt-red); font-size: 11px; line-height: 1.2; }
.woocommerce div.product { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .94fr); gap: 38px; align-items: start; }
.woocommerce div.product div.images, .woocommerce div.product div.summary { float: none; width: 100%; margin: 0; }
.prospt-product-layout { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr); gap: 36px; align-items: start; }
.prospt-product-layout > .woocommerce-product-gallery, .prospt-product-layout > .summary { float: none !important; width: 100% !important; margin: 0 !important; }
.prospt-product-layout > .woocommerce-tabs, .prospt-product-layout > .up-sells, .prospt-product-layout > .related { grid-column: 1 / -1; min-width: 0; }
.prospt-catalogue__heading { margin-bottom: 22px; }
.prospt-catalogue__heading h1 { margin: 0 0 10px; font-size: clamp(30px, 4vw, 46px); }
.prospt-catalogue__toolbar { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 18px; }
.prospt-catalogue__toolbar .woocommerce-result-count { margin: 0; color: var(--prospt-muted); }
.prospt-catalogue__toolbar .woocommerce-ordering { margin: 0; }
.woocommerce div.product div.images img { background: var(--prospt-soft); }
.woocommerce div.product .product_title { font-size: clamp(25px, 3vw, 38px); line-height: 1.2; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .woocommerce-page form .form-row input.input-text, .woocommerce-page form .form-row select { min-height: 46px; padding: 10px 12px; border: 1px solid #b9bdc2; border-radius: 3px; }
.woocommerce table.shop_table { border-collapse: collapse; border-color: var(--prospt-line); }
.prospt-footer { position: relative; color: var(--prospt-footer-text, #f5f6f8); background-color: var(--prospt-footer-bg, #071d39); background-image: linear-gradient(0deg, rgb(7 29 57 / var(--prospt-footer-overlay, 82%)), rgb(7 29 57 / var(--prospt-footer-overlay, 82%))), var(--prospt-footer-image, none); background-position: center; background-size: cover; }
.prospt-footer__inner { display: grid; grid-template-columns: 1.2fr repeat(4, 1fr); gap: 28px; padding-block: 44px; }
.prospt-footer__brand p, .prospt-footer__column p { color: inherit; opacity: .78; }
.prospt-footer__column h2 { margin: 0 0 15px; font-size: 17px; }
.prospt-footer__column p { margin: 0 0 10px; }
.prospt-footer__column a, .prospt-footer__brand a { color: inherit; }
.prospt-footer a:hover, .prospt-footer a:focus-visible { color: var(--prospt-footer-accent, #e5bd3e); }
.prospt-footer__column .prospt-menu { display: grid; gap: 9px; padding: 0; list-style: none; }
.prospt-footer__bottom { padding: 13px 0; border-top: 1px solid currentColor; color: inherit; font-size: 13px; }
.prospt-footer__bottom-inner { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.prospt-footer__bottom-inner p { margin: 0; opacity: .78; }
.prospt-footer__credit a { color: inherit; text-decoration: none; }
.prospt-footer__payments { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; margin: 0; padding: 0; list-style: none; }
.prospt-footer__payments li { padding: 4px 8px; border: 1px solid currentColor; border-radius: 3px; }

@media (max-width: 999px) {
  .prospt-wrap { width: min(var(--prospt-content), calc(100% - 32px)); }
  .prospt-header__inner { min-height: 70px; gap: 10px; }
  .prospt-menu-toggle { display: inline-flex; flex: 0 0 auto; }
  .prospt-desktop-nav { display: none; }
  .prospt-brand { margin-right: auto; }
  .prospt-header-search { width: 190px; }
  .prospt-header-actions { gap: 9px; }
  .prospt-mobile-nav:not([hidden]) { position: absolute; top: 100%; left: 0; right: 0; display: block; max-height: calc(100vh - 100px); overflow-y: auto; padding: 14px 20px 22px; border-top: 1px solid var(--prospt-line); background: #fff; box-shadow: 0 12px 20px rgb(0 0 0 / 12%); }
  .prospt-menu--mobile { display: grid; gap: 0; }
  .prospt-menu--mobile > li:not(.menu-item-has-children) { display: block; }
  .prospt-menu--mobile > li:not(.menu-item-has-children) > a { width: 100%; }
  .prospt-menu--mobile li.menu-item-has-children { display: grid; grid-template-columns: minmax(0, 1fr) 42px; grid-template-areas: "label toggle" "children children"; align-items: center; }
  .prospt-menu--mobile li.menu-item-has-children > a { grid-area: label; width: auto; min-width: 0; border-bottom: 0; }
  .prospt-menu--mobile li.menu-item-has-children > .prospt-submenu-toggle { grid-area: toggle; justify-self: stretch; width: 42px; height: 48px; margin: 0; border-bottom: 0; }
  .prospt-menu--mobile li.menu-item-has-children > .sub-menu { grid-area: children; width: 100%; margin: 0; }
  .prospt-menu--mobile li.menu-item-has-children::after { position: absolute; top: 47px; right: 0; left: 0; content: ''; border-bottom: 1px solid #eceef0; pointer-events: none; }
  .prospt-menu--mobile a { display: flex; min-height: 48px; align-items: center; border-bottom: 1px solid #eceef0; }
  .prospt-mobile-nav .prospt-menu--mobile li:not(.is-open) > .sub-menu { display: none !important; }
  .prospt-menu--mobile .sub-menu { position: static; display: none; flex: 0 0 100%; min-width: 0; padding: 0 0 0 14px; border: 0; box-shadow: none; }
  .prospt-menu--mobile .menu-item-has-children.is-open > .sub-menu { display: block; }
  .prospt-menu--mobile .menu-item-has-children.is-open > .prospt-submenu-toggle { color: var(--prospt-blue); }
  .prospt-menu--mobile .prospt-brands-promo { padding: 12px; }
  .prospt-mobile-nav__search { margin-top: 16px; }
}
@media (max-width: 680px) {
  .prospt-wrap { width: calc(100% - 28px); }
  .prospt-announcement { padding: 8px 0; font-size: 12px; }
  .prospt-header__inner { min-height: 64px; gap: 7px; }
  .prospt-brand { min-width: 0; }
  .custom-logo { max-height: 42px; max-width: 145px; }
  .prospt-brand__text { font-size: 29px; }
  .prospt-header-search { display: none; }
  .prospt-header-actions { gap: 6px; }
  .prospt-icon-link { width: 31px; }
  .prospt-main { padding-block: 24px 44px; }
  .prospt-hero__inner { min-height: 0; grid-template-columns: 1fr; gap: 24px; padding-block: 44px 28px; }
  .prospt-hero h1 { font-size: clamp(40px, 12vw, 58px); }
  .prospt-hero__copy > p:not(.prospt-eyebrow) { font-size: 16px; }
  .prospt-hero__visual { min-height: 220px; border-radius: 50% 50% 5px 5px; }
  .prospt-hero__ring { width: 190px; height: 190px; }
  .prospt-hero__ring--two { width: 260px; height: 260px; }
  .prospt-hero__mark { font-size: 170px; }
  .prospt-section { padding-block: 38px; }
  .prospt-section-heading { align-items: flex-start; }
  .prospt-section-heading > .prospt-text-link { white-space: nowrap; font-size: 13px; }
  .prospt-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 12px; }
  .prospt-category-grid--landing { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .prospt-category-card__name { font-size: 14px; }
  .prospt-audience__grid { grid-template-columns: 1fr; }
  .prospt-contact-grid { grid-template-columns: 1fr; gap: 16px; }
  .prospt-contact-details, .prospt-contact-form { padding: 20px; }
  .prospt-audience-card { min-height: 190px; padding: 24px; }
  .woocommerce ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 12px; }
  .woocommerce div.product { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .prospt-product-layout { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .prospt-product-layout > .woocommerce-tabs, .prospt-product-layout > .up-sells, .prospt-product-layout > .related { grid-column: auto; }
  .prospt-catalogue__toolbar { align-items: flex-start; flex-direction: column; }
  .woocommerce div.product div.images, .woocommerce div.product div.summary { width: 100%; }
  .woocommerce table.shop_table { font-size: 13px; }
  .woocommerce table.shop_table td, .woocommerce table.shop_table th { padding: 8px 6px; }
  .prospt-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; padding-block: 30px; }
  .prospt-footer__brand { grid-column: 1 / -1; }
  .prospt-footer__bottom-inner { align-items: flex-start; flex-direction: column; }
  .prospt-footer__payments { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .prospt-announcement__track { width: auto; min-width: 0; animation: none; }
  .prospt-announcement__track span[aria-hidden="true"] { display: none; }
}

/* Keep heading tracking consistent across theme and Elementor headings. */
h1, h2, h3, h4, h5, h6, .woocommerce .product_title, :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title), .elementor-widget-heading .elementor-heading-title { letter-spacing: 0.5px !important; }

/* Premium storefront design system: Cal Sans display type and Inter UI/body. */
body, button, input, select, textarea, a, p, li, label, .prospt-menu, .prospt-footer, .woocommerce { font-family: var(--prospt-body-font, 'Inter', sans-serif); }
h1, h2, h3, h4, h5, h6, .woocommerce .product_title, :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) { font-family: var(--prospt-heading-font, 'Cal Sans', sans-serif); font-weight: 400; letter-spacing: -.035em; }
:root { --prospt-radius: 5px; --prospt-content: 1280px; }
.prospt-header { border-bottom-color: #e8edf3; }
.prospt-header__inner { min-height: 86px; }
.prospt-brand__text { color: var(--prospt-blue); font-family: var(--prospt-heading-font, 'Cal Sans', sans-serif); }
.prospt-menu { gap: clamp(16px, 2vw, 31px); }
.prospt-menu a:hover, .prospt-menu .current-menu-item > a { color: var(--prospt-cobalt); }
.prospt-header-search input[type="search"], .prospt-mobile-nav__search input[type="search"] { border-color: #dce4ed; background: #f8fafc; }
.prospt-header-search button, .prospt-mobile-nav__search button { background: var(--prospt-deep); }
.prospt-announcement { padding: 8px 0; font-size: 11px; letter-spacing: .07em; text-transform: uppercase; }
.prospt-home { overflow: clip; }
.prospt-hero--slider { position: relative; min-height: 590px; isolation: isolate; color: #fff; background: var(--prospt-deep); }
.prospt-hero__slides, .prospt-hero__slide { position: absolute; inset: 0; }
.prospt-hero__slide { overflow: hidden; opacity: 0; visibility: hidden; pointer-events: none; }
.prospt-hero__slide::after { position: absolute; z-index: 1; inset: 0; content: ""; background: linear-gradient(90deg, rgb(7 29 57 / 99%) 0%, rgb(7 29 57 / 93%) 31%, rgb(7 29 57 / 55%) 54%, rgb(7 29 57 / 5%) 82%), linear-gradient(0deg, rgb(7 29 57 / 32%), transparent 34%); }
.prospt-hero__slide.is-active { opacity: 1; visibility: visible; pointer-events: auto; }
.prospt-hero__picture { position: absolute; inset: 0; z-index: 0; display: block; }
.prospt-hero__image { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 50%; }
.prospt-hero__copy { position: relative; z-index: 2; display: flex; min-height: 590px; flex-direction: column; align-items: flex-start; justify-content: center; padding-top: 26px; padding-bottom: 52px; }
.prospt-hero .prospt-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 19px; color: #f0d98f; font-family: var(--prospt-body-font, 'Inter', sans-serif); font-size: 10px; letter-spacing: .16em; }
.prospt-hero .prospt-eyebrow span { width: 23px; height: 2px; background: var(--prospt-gold); }
.prospt-hero h1 { max-width: 625px; margin: 0; color: #fff; font-size: clamp(53px, 6.4vw, 82px); font-weight: 400; line-height: .99; letter-spacing: -.045em; }
.prospt-hero__description { max-width: 490px; margin: 22px 0 27px; color: #dce6f1; font-size: 16px; line-height: 1.65; }
.prospt-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
.prospt-hero .prospt-button, .prospt-help-banner .prospt-button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; gap: 22px; padding: 0 18px; border: 1px solid var(--prospt-gold); border-radius: 2px; color: var(--prospt-deep); background: var(--prospt-gold); font-size: 12px; font-weight: 700; text-decoration: none; transition: color .2s ease, background .2s ease, transform .2s ease; }
.prospt-hero .prospt-button:hover, .prospt-help-banner .prospt-button:hover { color: var(--prospt-deep); background: #f0d98f; transform: translateY(-1px); }
.prospt-hero .prospt-text-link { display: inline-flex; align-items: center; gap: 11px; color: #fff; font-size: 12px; font-weight: 600; }
.prospt-hero .prospt-text-link:hover { color: #f0d98f; }
.prospt-hero__controls { position: absolute; right: max(calc((100vw - var(--prospt-content)) / 2), 20px); bottom: 23px; z-index: 5; display: flex; align-items: center; gap: 10px; }
.prospt-hero__arrow { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid rgb(255 255 255 / 48%); color: #fff; background: rgb(7 29 57 / 55%); font-size: 18px; cursor: pointer; transition: color .2s ease, background .2s ease; }
.prospt-hero__arrow:hover { border-color: var(--prospt-gold); color: var(--prospt-deep); background: var(--prospt-gold); }
.prospt-hero__dots { display: flex; align-items: center; gap: 5px; }
.prospt-hero__dot { width: 17px; height: 3px; padding: 0; border: 0; background: rgb(255 255 255 / 48%); cursor: pointer; transition: width .2s ease, background .2s ease; }
.prospt-hero__dot.is-active { width: 31px; background: var(--prospt-gold); }
.prospt-hero__count { min-width: 42px; color: #e5edf5; font-size: 9px; letter-spacing: .09em; }
.prospt-hero__count b { color: #f0d98f; }
.prospt-hero__slide.is-active[data-effect="fade"] { animation: prospt-hero-fade .75s ease both; }
.prospt-hero__slide.is-active[data-effect="slide"] { animation: prospt-hero-slide .7s cubic-bezier(.2,.7,.2,1) both; }
.prospt-hero__slide.is-active[data-effect="zoom"] { animation: prospt-hero-zoom .9s cubic-bezier(.2,.7,.2,1) both; }
@keyframes prospt-hero-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes prospt-hero-slide { from { opacity: 0; transform: translateX(3%); } to { opacity: 1; transform: translateX(0); } }
@keyframes prospt-hero-zoom { from { opacity: 0; transform: scale(.985); } to { opacity: 1; transform: scale(1); } }
.prospt-trust-rail { border-bottom: 1px solid #e5ebf1; background: #fff; }
.prospt-trust-rail__inner { display: grid; grid-template-columns: repeat(3, 1fr); padding-block: 20px; }
.prospt-trust-rail__inner > div { display: flex; align-items: center; gap: 12px; padding: 3px 25px; border-right: 1px solid #e5ebf1; }
.prospt-trust-rail__inner > div:first-child { padding-left: 0; }
.prospt-trust-rail__inner > div:last-child { padding-right: 0; border: 0; }
.prospt-trust-rail__inner b, .prospt-trust-rail__inner small { display: block; }
.prospt-trust-rail__inner b { color: var(--prospt-blue); font-size: 12px; }
.prospt-trust-rail__inner small { margin-top: 3px; color: var(--prospt-muted); font-size: 10px; }
.prospt-trust-rail__inner small a { color: var(--prospt-cobalt); font-weight: 600; text-decoration: none; }
.prospt-trust-rail__icon { display: grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center; border: 1px solid #e1e8ef; border-radius: 50%; color: var(--prospt-gold); font-size: 10px; font-weight: 700; }
.prospt-section { padding-block: 70px; }
.prospt-section-heading { align-items: end; margin-bottom: 27px; }
.prospt-section-heading .prospt-eyebrow, .prospt-eyebrow { color: var(--prospt-cobalt); font-family: var(--prospt-body-font, 'Inter', sans-serif); font-size: 10px; letter-spacing: .15em; }
.prospt-section-heading h2, .prospt-brand-showcase h2, .prospt-reviews h2 { color: var(--prospt-blue); font-size: clamp(30px, 3.3vw, 42px); line-height: 1.08; }
.prospt-section-heading h2 span, .prospt-reviews h2 span { color: var(--prospt-gold); }
.prospt-section-intro { margin: 8px 0 0; color: var(--prospt-muted); font-size: 13px; }
.prospt-text-link { color: var(--prospt-blue); font-size: 12px; font-weight: 700; }
.prospt-text-link:hover { color: var(--prospt-cobalt); }
.prospt-category-grid { gap: 15px; }
.prospt-category-card { gap: 0; overflow: hidden; border: 1px solid #e4eaf0; background: #fff; transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.prospt-category-card:hover { border-color: #b7c9da; box-shadow: 0 12px 28px rgb(7 29 57 / 8%); transform: translateY(-3px); }
.prospt-category-card__image { aspect-ratio: 1 / .78; background: var(--prospt-soft); }
.prospt-category-card__image img { padding: 9px; }
.prospt-category-card__name { align-items: center; padding: 14px 15px; color: var(--prospt-blue); font-size: 14px; }
.prospt-category-card__name > span { color: var(--prospt-gold); }
.prospt-brand-showcase { border-block: 1px solid #e8edf3; background: #fbfcfd; }
.prospt-brand-showcase__inner { display: flex; min-height: 140px; align-items: center; justify-content: space-between; gap: 30px; }
.prospt-brand-showcase .prospt-eyebrow { margin: 0 0 7px; }
.prospt-brand-showcase h2 { max-width: 420px; margin: 0; font-size: 24px; }
.prospt-brand-showcase img { display: block; width: min(480px, 48%); max-height: 112px; object-fit: contain; mix-blend-mode: multiply; }
.prospt-featured { background: var(--prospt-soft); }
.prospt-featured .prospt-wrap { width: min(var(--prospt-content), calc(100% - 40px)); }
.woocommerce ul.products { gap: 18px; }
.woocommerce ul.products li.product { overflow: hidden; padding: 0 0 15px; border: 1px solid #e3e9ef; background: #fff; transition: box-shadow .2s ease, transform .2s ease; }
.woocommerce ul.products li.product:hover { box-shadow: 0 12px 30px rgb(7 29 57 / 9%); transform: translateY(-3px); }
.woocommerce ul.products li.product a img { margin: 0; background: #fff; }
.woocommerce ul.products li.product :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) { min-height: 43px; padding: 0 13px; color: var(--prospt-blue); font-size: 17px; line-height: 1.25; }
.woocommerce ul.products li.product .price { padding-inline: 13px; color: var(--prospt-blue); font-family: var(--prospt-body-font, 'Inter', sans-serif); font-size: 14px; font-weight: 700; }
.woocommerce ul.products li.product .star-rating { margin-inline: 13px; color: var(--prospt-gold); }
.woocommerce ul.products li.product .button { margin: 0 13px; }
.prospt-audience { padding-block: 8px 70px; }
.prospt-audience__grid { gap: 16px; }
.prospt-audience-card { position: relative; min-height: 310px; justify-content: flex-end; overflow: hidden; padding: 30px; isolation: isolate; background: var(--prospt-deep); }
.prospt-audience-card::after { position: absolute; z-index: -1; inset: 0; content: ""; background: linear-gradient(90deg, rgb(7 29 57 / 88%), rgb(7 29 57 / 12%)); }
.prospt-audience-card > img { position: absolute; z-index: -2; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.prospt-audience-card:hover > img { transform: scale(1.035); }
.prospt-audience-card--pro { color: #fff; background: var(--prospt-deep); }
.prospt-audience-card--beginner { color: #fff; }
.prospt-audience-card .prospt-eyebrow { color: #f0d98f; }
.prospt-audience-card__content { display: block; }
.prospt-audience-card h2 { max-width: 460px; margin: 5px 0 17px; color: #fff; font-size: clamp(29px, 3vw, 40px); line-height: 1.05; }
.prospt-audience-card__link { color: #fff; font-size: 12px; }
.prospt-audience-card__link b { margin-left: 8px; color: var(--prospt-gold); }
.prospt-reviews { background: #fff; }
.prospt-review-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.prospt-review-card { padding: 22px; border: 1px solid #e3e9ef; background: #fff; }
.prospt-review-card__stars { color: var(--prospt-gold); letter-spacing: .1em; }
.prospt-review-card blockquote { margin: 13px 0 16px; color: #43566b; font-size: 13px; line-height: 1.65; }
.prospt-review-card p { margin: 0; color: var(--prospt-blue); font-size: 11px; font-weight: 700; }
.prospt-help-banner { color: #fff; background: var(--prospt-blue); }
.prospt-help-banner__inner { display: flex; min-height: 145px; align-items: center; justify-content: space-between; gap: 22px; padding-block: 27px; }
.prospt-help-banner .prospt-eyebrow { margin: 0 0 7px; color: #f0d98f; }
.prospt-help-banner h2 { max-width: 650px; margin: 0; color: #fff; font-size: clamp(25px, 3vw, 34px); }
.prospt-help-banner .prospt-button { flex: 0 0 auto; }
.prospt-footer { --prospt-footer-bg: #071d39; --prospt-footer-text: #edf3f9; --prospt-footer-accent: #d7af4c; }
.prospt-footer__column h2 { font-family: var(--prospt-heading-font, 'Cal Sans', sans-serif); font-size: 19px; font-weight: 400; }
.prospt-footer__column a, .prospt-footer__brand a { text-decoration: none; }
.prospt-header__inner { gap: clamp(12px, 2vw, 28px); }
.prospt-header-actions { gap: 12px; }
.prospt-header-search { width: clamp(185px, 17vw, 230px); }
.prospt-header-search input[type="search"] { height: 44px; }
.prospt-header-search button { min-width: 52px; }
.prospt-cart-link { width: 42px; height: 42px; border: 1px solid #e5e8ed; border-radius: 50%; background: #fff; }
.prospt-cart-count { top: -2px; right: -3px; min-width: 17px; height: 17px; border: 2px solid #fff; line-height: 13px; }
.prospt-footer__bottom-inner { flex-wrap: wrap; }
.prospt-footer__credit { margin-left: auto !important; }
.prospt-footer__credit a:hover { color: var(--prospt-footer-accent); }
@media (max-width: 999px) {
  .prospt-hero--slider, .prospt-hero__copy { min-height: 540px; }
  .prospt-hero h1 { font-size: clamp(50px, 7vw, 68px); }
  .prospt-trust-rail__inner > div { padding-inline: 14px; }
  .prospt-brand-showcase__inner { min-height: 125px; }
}
@media (max-width: 680px) {
  .prospt-announcement { font-size: 9px; }
  .prospt-hero--slider { min-height: 620px; }
  .prospt-hero__slide::after { background: linear-gradient(0deg, rgb(7 29 57 / 99%) 0%, rgb(7 29 57 / 83%) 41%, rgb(7 29 57 / 10%) 100%); }
  .prospt-hero__image { object-position: 66% center; }
  .prospt-hero__copy { min-height: 620px; justify-content: flex-end; padding-top: 80px; padding-bottom: 96px; }
  .prospt-hero h1 { max-width: 480px; font-size: clamp(43px, 13vw, 58px); line-height: 1; }
  .prospt-hero__description { max-width: 365px; margin: 15px 0 18px; font-size: 14px; }
  .prospt-hero__controls { right: 14px; bottom: 13px; gap: 7px; }
  .prospt-hero__arrow { width: 31px; height: 31px; }
  .prospt-hero__dot { width: 12px; }
  .prospt-hero__dot.is-active { width: 22px; }
  .prospt-trust-rail__inner { grid-template-columns: 1fr; padding-block: 7px; }
  .prospt-trust-rail__inner > div, .prospt-trust-rail__inner > div:first-child, .prospt-trust-rail__inner > div:last-child { min-height: 58px; padding: 8px 2px; border-right: 0; border-bottom: 1px solid #e5ebf1; }
  .prospt-trust-rail__inner > div:last-child { border-bottom: 0; }
  .prospt-section { padding-block: 48px; }
  .prospt-section-heading { align-items: flex-start; }
  .prospt-section-heading h2 { font-size: 31px; }
  .prospt-section-intro { font-size: 12px; }
  .prospt-category-grid { gap: 11px; }
  .prospt-category-card__name { padding: 10px; font-size: 12px; }
  .prospt-brand-showcase__inner { min-height: 0; flex-direction: column; align-items: flex-start; gap: 10px; padding-block: 25px; }
  .prospt-brand-showcase h2 { font-size: 22px; }
  .prospt-brand-showcase img { width: min(100%, 430px); max-height: 88px; align-self: center; }
  .prospt-featured .prospt-wrap { width: calc(100% - 28px); }
  .prospt-audience { padding-block: 0 48px; }
  .prospt-audience__grid { grid-template-columns: 1fr; }
  .prospt-audience-card { min-height: 235px; padding: 22px; }
  .prospt-review-grid { grid-template-columns: 1fr; }
  .prospt-help-banner__inner { min-height: 0; align-items: flex-start; flex-direction: column; padding-block: 25px; }
}
@media (prefers-reduced-motion: reduce) {
  .prospt-hero__slide.is-active[data-effect] { animation: none; }
}

/* Text-led homepage introduction: the homepage opens without a hero/banner. */
.prospt-home-intro { display: flex; min-height: 270px; align-items: center; justify-content: space-between; gap: 30px; margin-inline: auto; padding-block: 42px 38px; border-bottom: 1px solid #dce3eb; }
.prospt-home-intro__copy { max-width: 720px; }
.prospt-home-intro .prospt-eyebrow { margin: 0 0 10px; color: var(--prospt-cobalt); font-size: 10px; font-weight: 700; letter-spacing: .15em; }
.prospt-home-intro h1 { margin: 0 0 10px; color: var(--prospt-blue); font-size: clamp(40px, 5vw, 58px); line-height: 1; }
.prospt-home-intro__copy > p:not(.prospt-eyebrow) { max-width: 540px; margin: 0; color: var(--prospt-muted); font-size: 14px; }
.prospt-intro-link { display: inline-flex; min-height: 46px; align-items: center; gap: 18px; margin-top: 19px; padding: 0 16px; color: #fff; background: var(--prospt-blue); font-size: 11px; font-weight: 700; text-decoration: none; }
.prospt-intro-link span { color: var(--prospt-gold); font-size: 18px; }
.prospt-home-intro__tags { display: flex; align-items: center; gap: 14px; color: var(--prospt-blue); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.prospt-home-intro__tags span { padding: 9px 17px; border: 1px solid #dce3eb; border-radius: 999px; background: #fff; }
.prospt-home-intro__tags i { width: 4px; height: 4px; border-radius: 50%; background: var(--prospt-gold); }
@media (max-width: 680px) {
  .prospt-home-intro { min-height: 0; align-items: flex-start; flex-direction: column; gap: 22px; padding-block: 37px 29px; }
  .prospt-home-intro h1 { max-width: 440px; font-size: clamp(38px, 11vw, 48px); }
  .prospt-home-intro__copy > p:not(.prospt-eyebrow) { font-size: 12px; }
  .prospt-home-intro__tags { gap: 9px; font-size: 9px; }
  .prospt-home-intro__tags span { padding: 8px 13px; }
}
@media (max-width:999px){.prospt-header-search{width:190px}}
@media (max-width:680px){.prospt-header-actions{gap:5px}.prospt-mobile-nav__search{width:100%}.prospt-footer__credit{margin-left:0!important}}

/* Shared catalog presentation: these same WooCommerce cards render on the homepage and archives. */
.prospt-product-category-tabs { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; margin: 24px auto 32px; }
.prospt-product-category-tabs__link { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; padding: 0 18px; border: 1px solid transparent; border-radius: 24px; color: #23364c; background: #fff; box-shadow: 0 1px 2px rgb(17 33 54 / 5%); font-size: 13px; font-weight: 650; text-decoration: none; white-space: nowrap; transition: color .18s ease, background-color .18s ease, border-color .18s ease; }
.prospt-product-category-tabs__link:hover, .prospt-product-category-tabs__link:focus-visible { border-color: var(--prospt-blue); color: var(--prospt-blue); }
.prospt-product-category-tabs__link.is-active { color: #fff; background: var(--prospt-blue); }
.prospt-catalogue__heading { max-width: 820px; margin: 4px auto 0; text-align: center; }
.prospt-catalogue__heading .prospt-eyebrow { margin-bottom: 7px; color: var(--prospt-blue); }
.prospt-catalogue__heading h1 { margin: 0 0 8px; font-size: clamp(32px, 4vw, 46px); line-height: 1.1; }
.prospt-catalogue__heading .term-description { max-width: 660px; margin: 0 auto; color: var(--prospt-muted); font-size: 15px; }
.woocommerce ul.products { align-items: stretch; gap: 22px 20px; }
.woocommerce ul.products li.product.prospt-product-card { display: flex; min-width: 0; flex-direction: column; padding: 12px 12px 14px; overflow: hidden; border: 1px solid #e2e8ef; border-radius: 17px; background: #fff; box-shadow: 0 2px 5px rgb(19 43 69 / 4%); transition: transform .2s ease, box-shadow .2s ease; }
.woocommerce ul.products li.product.prospt-product-card:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgb(19 43 69 / 10%); }
.woocommerce ul.products li.product .prospt-product-card__image { position: relative; display: grid; width: 100%; aspect-ratio: 1.12 / 1; place-items: center; overflow: hidden; padding: 10px; border-radius: 12px; background: #f4f7fa; }
.woocommerce ul.products li.product .prospt-product-card__image img { display: block; width: 100%; height: 100%; margin: 0; object-fit: contain; transition: transform .24s ease; }
.woocommerce ul.products li.product:hover .prospt-product-card__image img { transform: scale(1.035); }
.woocommerce ul.products li.product .prospt-product-card__image .onsale { position: absolute; z-index: 2; top: 11px; left: 11px; right: auto; min-height: 0; margin: 0; padding: 5px 8px; border-radius: 4px; color: #fff; background: #315f9b; font-size: 10px; font-weight: 750; line-height: 1.2; }
.woocommerce ul.products li.product .prospt-product-card__image .prospt-product-fie-badge { position: absolute; z-index: 2; top: 11px; left: 11px; padding: 5px 8px; border-radius: 4px; color: #fff; background: #315f9b; font-size: 10px; font-weight: 800; line-height: 1.2; text-transform: uppercase; }
.woocommerce ul.products li.product .prospt-product-card__image .onsale ~ .prospt-product-fie-badge { top: 36px; }
.prospt-product-card__body { display: flex; flex: 1 1 auto; flex-direction: column; align-items: stretch; padding: 13px 2px 0; }
.prospt-product-card__category { display: block; margin-bottom: 4px; color: var(--prospt-blue); font-size: 12px; line-height: 1.35; text-decoration: none; }
.prospt-product-card__category:hover { text-decoration: underline; }
.woocommerce ul.products li.product .prospt-product-card__body :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) { min-height: 2.6em; margin: 0 0 5px; padding: 0; color: var(--prospt-ink); font-size: 16px; font-weight: 700; line-height: 1.3; }
.prospt-product-card__body :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) a { color: inherit; text-decoration: none; }
.prospt-product-card__body :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) a:hover { color: var(--prospt-blue); }
.prospt-product-card__rating { display: flex; min-height: 21px; align-items: center; gap: 6px; margin-bottom: 12px; }
.woocommerce ul.products li.product .prospt-product-card__rating .star-rating { float: none; margin: 0; color: #f4b323; font-size: 13px; }
.prospt-product-card__review-count { color: #8793a1; font-size: 11px; }
.prospt-product-card__purchase { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: auto; padding-top: 12px; border-top: 1px solid #e8edf2; }
.woocommerce ul.products li.product .prospt-product-card__purchase .price { margin: 0; color: var(--prospt-ink); font-size: 17px; font-weight: 750; line-height: 1.2; white-space: nowrap; }
.woocommerce ul.products li.product .prospt-product-card__purchase .price del { display: block; color: #8994a0; font-size: 11px; font-weight: 400; }
.woocommerce ul.products li.product .prospt-product-card__purchase .price ins { color: var(--prospt-ink); text-decoration: none; }
.woocommerce ul.products li.product .prospt-product-card__actions { flex: 0 0 auto; }
.woocommerce ul.products li.product .prospt-product-card__actions .button { min-height: 38px; margin: 0; padding: 8px 13px; border: 0; border-radius: 8px; color: #fff; background: var(--prospt-blue); font-size: 12px; line-height: 1.1; white-space: nowrap; }
.woocommerce ul.products li.product .prospt-product-card__actions .button::before { content: "+"; margin-right: 5px; font-size: 16px; font-weight: 500; line-height: .8; }
.woocommerce ul.products li.product .prospt-product-card__actions .button:hover, .woocommerce ul.products li.product .prospt-product-card__actions .button:focus-visible { color: #fff; background: #214c83; }
.prospt-featured-widget .prospt-product-category-tabs { margin-top: 18px; }
.prospt-featured-widget ul.products { align-items: stretch; }
@media (max-width: 680px) {
  .prospt-product-category-tabs { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; margin: 18px -14px 22px; padding: 2px 14px 8px; scrollbar-width: thin; }
  .prospt-product-category-tabs__link { min-height: 36px; padding-inline: 15px; font-size: 12px; }
  .woocommerce ul.products li.product.prospt-product-card { padding: 8px 8px 10px; border-radius: 13px; }
  .woocommerce ul.products li.product .prospt-product-card__image { aspect-ratio: 1 / .9; padding: 7px; border-radius: 9px; }
  .prospt-product-card__body { padding-top: 10px; }
  .prospt-product-card__category { font-size: 10px; }
  .woocommerce ul.products li.product .prospt-product-card__body :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) { min-height: 2.55em; font-size: 13px; }
  .prospt-product-card__rating { gap: 4px; margin-bottom: 8px; }
  .woocommerce ul.products li.product .prospt-product-card__rating .star-rating { font-size: 11px; }
  .prospt-product-card__review-count { font-size: 9px; }
  .prospt-product-card__purchase { align-items: flex-start; flex-direction: column; gap: 8px; padding-top: 9px; }
  .woocommerce ul.products li.product .prospt-product-card__purchase .price { font-size: 15px; }
  .woocommerce ul.products li.product .prospt-product-card__actions .button { min-height: 34px; padding: 7px 10px; font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) { .prospt-product-category-tabs__link, .woocommerce ul.products li.product.prospt-product-card, .woocommerce ul.products li.product .prospt-product-card__image img { transition: none; } }
.prospt-widget.prospt-featured-widget { width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); padding: 64px max(calc((100% - var(--prospt-content)) / 2), 20px); background: #f3f6fa; }
.prospt-featured-widget .prospt-widget-heading { justify-content: center; margin-bottom: 0; text-align: center; }
.prospt-featured-widget .prospt-widget-heading > div { max-width: 720px; }
.prospt-main.prospt-catalogue { width: 100%; max-width: none; margin: 0; padding: 38px max(calc((100% - var(--prospt-content)) / 2), 20px) 64px; background: #f3f6fa; }
@media (max-width: 680px) {
  .prospt-widget.prospt-featured-widget { padding: 42px 14px; }
  .prospt-main.prospt-catalogue { padding: 26px 14px 46px; }
  .woocommerce ul.products li.product .prospt-product-card__purchase { align-items: center; flex-direction: row; gap: 5px; padding-top: 8px; }
  .woocommerce ul.products li.product .prospt-product-card__purchase .price { font-size: 13px; }
  .woocommerce ul.products li.product .prospt-product-card__actions .button { min-height: 32px; padding: 6px 8px; font-size: 10px; }
}

/* Keep WooCommerce's local star font and fractional fill in every rating. */
.woocommerce .star-rating { font-family: star; color: var(--prospt-gold); }
.woocommerce .star-rating span { font: inherit; color: inherit; letter-spacing: inherit; }
/* Vertically centred product CTAs. */
.woocommerce ul.products li.product .prospt-product-card__actions .button { display: inline-flex !important; min-height: 38px; align-items: center !important; justify-content: center !important; box-sizing: border-box; line-height: 1.2 !important; text-align: center; vertical-align: middle; }
.prospt-product-card__actions .button .prospt-button-label { color: inherit; font: inherit; }
@media (max-width: 680px) {
  .woocommerce ul.products li.product .prospt-product-card__actions .button { min-height: 32px; }
}

/* Shop and category archive: filter rail with a compact, responsive product catalogue. */
.prospt-main.prospt-catalogue { color: #14263a; background: #f4f7fb; }
.prospt-catalogue__heading { display: flex; max-width: var(--prospt-content, 1240px); align-items: end; justify-content: space-between; gap: 24px; margin: 0 auto 26px; padding: 4px 0 20px; border-bottom: 1px solid #dfe6ef; text-align: left; }
.prospt-catalogue__heading h1 { margin: 0; color: #0b1c37; font-size: clamp(30px, 3.2vw, 40px); line-height: 1.08; }
.prospt-catalogue__heading .prospt-eyebrow { margin: 0 0 8px; color: #b48419; font-size: 11px; font-weight: 750; letter-spacing: .13em; text-transform: uppercase; }
.prospt-catalogue__heading .term-description { max-width: 700px; margin-top: 10px; color: #65758a; }
.prospt-catalogue__shop-link { flex: 0 0 auto; color: #285b98; font-size: 13px; font-weight: 700; text-decoration: none; }
.prospt-catalogue__layout { display: grid; max-width: var(--prospt-content, 1240px); grid-template-columns: minmax(215px, 260px) minmax(0, 1fr); align-items: start; gap: 28px; margin: 0 auto; }
.prospt-filter-card { overflow: hidden; border: 1px solid #dce4ee; border-radius: 17px; background: #fff; box-shadow: 0 3px 12px rgb(22 48 78 / 4%); }
.prospt-filter-card>summary { display: flex; min-height: 54px; align-items: center; justify-content: space-between; padding: 0 18px; border-bottom: 1px solid #e7edf4; color: #173a63; font-size: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; cursor: pointer; list-style: none; }
.prospt-filter-card>summary::-webkit-details-marker { display: none; }
.prospt-filter-card__summary-icon { color: #38679e; font-size: 19px; transition: transform .2s ease; }
.prospt-filter-card:not([open]) .prospt-filter-card__summary-icon { transform: rotate(-90deg); }
.prospt-filter-form { padding: 0 18px; }
.prospt-filter-group { display: grid; gap: 10px; margin: 0; padding: 17px 0; border: 0; border-bottom: 1px solid #e8edf3; }
.prospt-filter-group legend { float: left; width: 100%; margin: 0 0 11px; padding: 0; color: #172e49; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.prospt-filter-group label { display: flex; min-width: 0; align-items: center; gap: 9px; color: #53657c; font-size: 12px; line-height: 1.35; cursor: pointer; }
.prospt-filter-group input[type=checkbox], .prospt-filter-group input[type=radio] { width: 15px; height: 15px; flex: 0 0 15px; margin: 0; accent-color: #285b98; }
.prospt-filter-group label span { min-width: 0; }
.prospt-filter-group--last { padding-bottom: 15px; border-bottom: 0; }
.prospt-filter-group__check { color: #173a63!important; font-weight: 700; }
.prospt-filter-form__actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 0 17px; }
.prospt-filter-apply { min-height: 38px; padding: 0 15px; border: 0; border-radius: 7px; color: #fff; background: #285b98; font-size: 12px; font-weight: 750; cursor: pointer; }
.prospt-filter-apply:hover { background: #173d6d; }
.prospt-filter-form__actions>a { color: #285b98; font-size: 11px; font-weight: 650; }
.prospt-native-price-filter { padding: 0 18px 18px; }
.prospt-native-price-filter .widget_price_filter { margin: 0; }
.prospt-filter-heading { margin: 0 0 13px; color: #172e49; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.prospt-native-price-filter .price_slider_wrapper { padding-top: 3px; }
.prospt-native-price-filter .price_slider { height: 4px; border: 0; border-radius: 5px; background: #dbe5f0; }
.prospt-native-price-filter .ui-slider .ui-slider-range { background: #38679e; }
.prospt-native-price-filter .ui-slider .ui-slider-handle { top: -.35em; width: 14px; height: 14px; border: 2px solid #fff; border-radius: 50%; background: #285b98; box-shadow: 0 0 0 1px #285b98; cursor: ew-resize; }
.prospt-native-price-filter .price_slider_amount { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-top: 13px; color: #52647b; font-size: 11px; }
.prospt-native-price-filter .price_slider_amount .button { order: 2; min-height: 32px; padding: 5px 10px; border: 0; border-radius: 6px; color: #fff; background: #285b98; font-size: 10px; }
.prospt-catalogue__results { min-width: 0; }
.prospt-catalogue__toolbar { min-height: 42px; align-items: center; justify-content: space-between; margin: 0 0 14px; }
.prospt-catalogue__toolbar .woocommerce-result-count { color: #718096; font-size: 12px; }
.prospt-catalogue__toolbar .woocommerce-ordering { display: flex; align-items: center; gap: 10px; }
.prospt-catalogue__toolbar .woocommerce-ordering::before { content: "Sort by:"; color: #52647b; font-size: 12px; }
.prospt-catalogue__toolbar .woocommerce-ordering select { min-height: 38px; padding: 0 32px 0 12px; border: 1px solid #dce4ee; border-radius: 9px; color: #203954; background: #fff; font-size: 12px; }
.prospt-catalogue__products ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 0; }
.prospt-catalogue__products ul.products li.product.prospt-product-card { min-width: 0; }
.prospt-catalogue__products .prospt-product-card__image { aspect-ratio: 1.18 / 1; padding: 10px; border-radius: 12px; background: #f0f4f8; }
.prospt-catalogue__products .prospt-product-card__category { color: #315f9b; font-size: 10px; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.prospt-catalogue__products .prospt-product-card__body :is(.woocommerce-loop-product__title, .woocommerce-loop-category__title) { font-size: 14px; }
.prospt-catalogue__products .prospt-product-card__purchase .price { font-size: 15px; }
.prospt-catalogue__products .prospt-product-card__actions .button { min-height: 34px; padding: 7px 11px; border-radius: 7px; font-size: 11px; }
.prospt-catalogue .woocommerce-pagination { margin-top: 26px; }
.prospt-catalogue .woocommerce-pagination ul { display: flex; gap: 6px; border: 0; }
.prospt-catalogue .woocommerce-pagination li { border: 0; }
.prospt-catalogue .woocommerce-pagination a, .prospt-catalogue .woocommerce-pagination span { display: grid; min-width: 38px; height: 38px; place-items: center; border: 1px solid #dce4ee; border-radius: 8px; color: #285b98; background: #fff; }
.prospt-catalogue .woocommerce-pagination span.current { border-color: #285b98; color: #fff; background: #285b98; }

/* Single product: gallery, purchase summary, real product attributes and WooCommerce tabs. */
.prospt-product-page { padding-top: 28px!important; }
.prospt-product-layout { display: block; max-width: 1240px; margin: 0 auto; }
.prospt-product-overview { position: relative; display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr); align-items: start; gap: clamp(24px, 3vw, 42px); padding: clamp(18px, 2.6vw, 34px); border: 1px solid #dce4ee; border-radius: 22px; background: #fff; box-shadow: 0 4px 18px rgb(20 45 73 / 4%); }
.prospt-product-overview>.prospt-product-gallery-column, .prospt-product-overview>.summary { float: none!important; width: 100%!important; min-width: 0; margin: 0!important; }
.prospt-product-gallery-column { position: relative; min-width: 0; }
.prospt-product-gallery-column>.woocommerce-product-gallery { float: none!important; width: 100%!important; min-width: 0; margin: 0!important; }
.prospt-product-gallery-column>.onsale { position: absolute!important; z-index: 5; top: 10px!important; right: auto!important; left: 10px!important; min-height: 0!important; padding: 6px 9px!important; border-radius: 4px!important; line-height: 1.2!important; }
.prospt-product-fie-badge { position: absolute; z-index: 4; top: clamp(24px, 3vw, 38px); left: clamp(24px, 3vw, 38px); padding: 7px 11px; border-radius: 4px; color: #fff; background: #315f9b; font-size: 10px; font-weight: 800; letter-spacing: .04em; line-height: 1.2; text-transform: uppercase; }
.prospt-product-gallery-column>.prospt-product-fie-badge { top: 10px; right: 10px; left: auto; }

.prospt-product-overview .woocommerce-product-gallery__wrapper { overflow: hidden; border: 1px solid #e3eaf2; border-radius: 15px; background: #f0f4f8; }
.prospt-product-overview .woocommerce-product-gallery__image a { display: grid; min-height: 360px; place-items: center; }
.prospt-product-overview .woocommerce-product-gallery__image img { display: block; width: 100%; max-height: 580px; object-fit: contain; background: transparent; }
.prospt-product-overview .flex-control-thumbs { display: flex; gap: 10px; margin: 12px 0 0!important; padding: 0!important; }
.prospt-product-overview .flex-control-thumbs li { width: 72px!important; float: none!important; padding: 4px; overflow: hidden; border: 1px solid #dce4ee; border-radius: 9px; background: #f0f4f8; }
.prospt-product-overview .flex-control-thumbs li img { width: 100%; aspect-ratio: 1; object-fit: contain; opacity: .75; }
.prospt-product-overview .flex-control-thumbs li img.flex-active { opacity: 1; }
.prospt-product-overview .summary { color: #14263a; }
.prospt-product-kicker { margin: 0 0 9px; color: #b48419; font-size: 11px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.prospt-product-kicker a { color: inherit; text-decoration: none; }
.prospt-product-overview .product_title { margin: 0 0 10px; color: #0b1c37; font-size: clamp(28px, 3vw, 40px); line-height: 1.06; }
.prospt-product-overview .woocommerce-product-rating { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; }
.prospt-product-overview .woocommerce-product-rating .star-rating { float: none; margin: 0; color: #e3ae31; }
.prospt-product-overview .woocommerce-review-link { color: #66768b; font-size: 12px; text-decoration: none; }
.prospt-product-overview .price { display: inline-flex; align-items: baseline; gap: 8px; margin: 0 10px 16px 0!important; color: #0b1c37!important; font-size: clamp(26px, 3vw, 34px)!important; font-weight: 800!important; }
.prospt-product-overview .price del { color: #8a96a5; font-size: 15px; font-weight: 450; }
.prospt-product-overview .price ins { text-decoration: none; }
.prospt-stock-pill { display: inline-flex; align-items: center; gap: 7px; margin: 0 0 17px; padding: 6px 10px; border: 1px solid #b9eed9; border-radius: 20px; color: #17724e; background: #effcf6; font-size: 11px; font-weight: 700; }
.prospt-stock-pill.is-unavailable { border-color: #f2c7c7; color: #a32f2f; background: #fff3f3; }
.prospt-product-overview .woocommerce-product-details__short-description { margin: 0 0 18px; color: #596b80; font-size: 14px; line-height: 1.65; }
.prospt-product-overview .variations { width: 100%; margin: 0 0 18px; border: 0; }
.prospt-product-overview .variations tr { display: grid; gap: 7px; margin-bottom: 13px; }
.prospt-product-overview .variations th, .prospt-product-overview .variations td { display: block; padding: 0; border: 0; text-align: left; }
.prospt-product-overview .variations label { color: #243d5c; font-size: 12px; font-weight: 750; }
.prospt-product-overview .variations select { width: 100%; min-height: 44px; padding: 0 12px; border: 1px solid #d8e1eb; border-radius: 10px; color: #344b67; background: #f8fafc; font-size: 12px; }
.prospt-product-overview .reset_variations { display: inline-block; margin-top: 6px; color: #315f9b; font-size: 11px; }
.prospt-product-overview .single_variation_wrap { margin-top: 8px; }
.prospt-product-overview .quantity .qty { min-height: 44px; border: 1px solid #d8e1eb; border-radius: 8px; }
.prospt-product-overview .cart { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 18px 0 0; padding: 0 0 18px; border-bottom: 1px solid #e6ecf3; }
.prospt-product-overview .cart .quantity { margin: 0!important; }
.prospt-product-overview .cart .single_add_to_cart_button { display: inline-flex!important; min-height: 50px; flex: 1 1 190px; align-items: center!important; justify-content: center!important; gap: 8px; margin: 0!important; padding: 10px 16px!important; border: 0!important; border-radius: 10px!important; color: #fff!important; background: #315f9b!important; box-shadow: 0 7px 15px rgb(49 95 155 / 18%); font-size: 12px!important; font-weight: 800!important; letter-spacing: .04em; text-transform: uppercase; }
.prospt-product-overview .cart .single_add_to_cart_button:hover { background: #234b7e!important; }
.prospt-product-overview .cart .prospt-buy-now { flex: 0 1 155px; color: #111d2e!important; background: #d7af4c!important; }
.prospt-product-overview .cart .prospt-buy-now:hover { background: #c59b35!important; }
.prospt-product-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 15px; }
.prospt-product-spec { display: grid; gap: 5px; min-width: 0; padding: 12px 13px; border: 1px solid #e0e8f1; border-radius: 10px; background: #f6f9fc; }
.prospt-product-spec span { color: #728197; font-size: 10px; }
.prospt-product-spec strong { color: #1b3554; font-size: 12px; line-height: 1.4; }
.prospt-product-overview .product_meta { display: none; }
.prospt-product-extra { margin-top: 28px; padding: clamp(18px, 2.5vw, 32px); border: 1px solid #dce4ee; border-radius: 20px; background: #fff; }
.prospt-product-extra .woocommerce-tabs { float: none; width: 100%; margin: 0; padding: 0; }
.prospt-product-extra .woocommerce-tabs ul.tabs { display: flex; gap: 24px; margin: 0 0 20px!important; padding: 0!important; border-bottom: 1px solid #dfe6ef; }
.prospt-product-extra .woocommerce-tabs ul.tabs::before, .prospt-product-extra .woocommerce-tabs ul.tabs li::before, .prospt-product-extra .woocommerce-tabs ul.tabs li::after { display: none!important; content: none!important; }
.prospt-product-extra .woocommerce-tabs ul.tabs li { margin: 0!important; padding: 0 0 11px!important; border: 0!important; border-bottom: 2px solid transparent!important; border-radius: 0!important; background: transparent!important; }
.prospt-product-extra .woocommerce-tabs ul.tabs li.active { border-bottom-color: #315f9b!important; }
.prospt-product-extra .woocommerce-tabs ul.tabs li a { color: #697a90!important; font-size: 13px; font-weight: 700!important; }
.prospt-product-extra .woocommerce-tabs ul.tabs li.active a { color: #173a63!important; }
.prospt-product-extra .woocommerce-Tabs-panel { margin: 0!important; color: #596b80; font-size: 13px; line-height: 1.7; }
.prospt-product-extra .woocommerce-Tabs-panel h2 { margin: 0 0 10px; color: #173a63; font-size: 21px; }
.prospt-product-extra .woocommerce-Tabs-panel table.shop_attributes { border: 0; }
.prospt-product-extra .woocommerce-Tabs-panel table.shop_attributes th, .prospt-product-extra .woocommerce-Tabs-panel table.shop_attributes td { padding: 10px 12px; border: 0; border-bottom: 1px solid #e7edf4; background: transparent; }
.prospt-product-extra>.up-sells, .prospt-product-extra>.related { margin-top: 30px; }
.prospt-product-extra .up-sells h2, .prospt-product-extra .related h2 { color: #173a63; font-size: 24px; }
@media (max-width: 1024px) {
  .prospt-catalogue__layout { grid-template-columns: minmax(190px, 220px) minmax(0, 1fr); gap: 18px; }
  .prospt-catalogue__products ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .prospt-product-overview { gap: 24px; }
}
@media (max-width: 767px) {
  .prospt-catalogue__heading { align-items: flex-start; flex-direction: column; gap: 10px; margin-bottom: 16px; padding-bottom: 14px; }
  .prospt-catalogue__layout { grid-template-columns: minmax(0, 1fr); gap: 15px; }
  .prospt-catalogue__sidebar { min-width: 0; }
  .prospt-filter-card>summary { min-height: 48px; padding-inline: 14px; }
  .prospt-catalogue__toolbar { min-height: 0; flex-direction: row!important; align-items: center!important; gap: 8px; }
  .prospt-catalogue__toolbar .woocommerce-result-count { font-size: 10px; }
  .prospt-catalogue__toolbar .woocommerce-ordering { gap: 5px; }
  .prospt-catalogue__toolbar .woocommerce-ordering::before { font-size: 10px; }
  .prospt-catalogue__toolbar .woocommerce-ordering select { max-width: 155px; min-height: 34px; padding-inline: 8px 25px; font-size: 10px; }
  .prospt-catalogue__products ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
  .prospt-catalogue__products .prospt-product-card__image { aspect-ratio: 1 / .95; padding: 6px; }
  .prospt-product-overview { grid-template-columns: minmax(0, 1fr); gap: 22px; padding: 13px; border-radius: 16px; }
  .prospt-product-overview .woocommerce-product-gallery__image a { min-height: 260px; }
  .prospt-product-overview .woocommerce-product-gallery__image img { max-height: 400px; }
  .prospt-product-overview .product_title { font-size: 29px; }
  .prospt-product-overview .summary { margin: 0!important; }
  .prospt-product-overview .cart { gap: 8px; }
  .prospt-product-overview .cart .single_add_to_cart_button { min-height: 46px; flex-basis: 145px; padding-inline: 9px!important; font-size: 10px!important; }
  .prospt-product-overview .cart .prospt-buy-now { flex-basis: 115px; }
  .prospt-product-specs { gap: 7px; }
  .prospt-product-spec { padding: 10px; }
  .prospt-product-extra { margin-top: 16px; padding: 15px; border-radius: 15px; }
  .prospt-product-extra .woocommerce-tabs ul.tabs { gap: 15px; overflow-x: auto; white-space: nowrap; }
}
@media (prefers-reduced-motion: reduce) {
  .prospt-product-overview .flex-control-thumbs li img, .prospt-product-overview .cart .single_add_to_cart_button { transition: none!important; }
}
.woocommerce div.product.prospt-product-layout{display:flex;flex-direction:column;align-items:stretch;gap:26px}
.woocommerce div.product.prospt-product-layout>.prospt-product-overview,.woocommerce div.product.prospt-product-layout>.prospt-product-extra,.woocommerce div.product.prospt-product-layout>.prospt-product-related-row{width:100%;min-width:0}
.prospt-product-related-row{min-width:0;margin-top:2px;padding:clamp(18px,2.5vw,32px);overflow:hidden;border:1px solid #dce4ee;border-radius:20px;background:#fff}
.prospt-product-related-row .related{min-width:0;margin:0!important}
.prospt-related-carousel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 14px}
.prospt-product-related-row .related .prospt-related-carousel-head>h2{margin:0;color:#173a63;font-size:clamp(22px,2.5vw,28px)}
.prospt-related-carousel-controls{display:flex;flex:0 0 auto;gap:8px}
.prospt-related-carousel-controls[hidden]{display:none}
.prospt-related-carousel-button{display:grid;width:40px;height:40px;place-items:center;border:1px solid #d5dfeb;border-radius:50%;color:#173a63;background:#fff;font-size:21px;line-height:1;cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease}
.prospt-related-carousel-button:hover,.prospt-related-carousel-button:focus-visible{border-color:#315f9b;color:#fff;background:#315f9b}
.prospt-related-carousel-button:focus-visible{outline:2px solid #d7af4c;outline-offset:2px}
.prospt-product-related-row .related ul.products{display:flex!important;gap:18px;overflow-x:auto;overflow-y:hidden;margin:0!important;padding:3px 2px 16px!important;scroll-behavior:smooth;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.prospt-product-related-row .related ul.products li.product{flex:0 0 clamp(220px,24vw,280px)!important;width:clamp(220px,24vw,280px)!important;max-width:clamp(220px,24vw,280px);scroll-snap-align:start}
.prospt-product-related-row .related ul.products li.product .prospt-product-card__image{overflow:hidden;border-radius:12px;background:#f2f5f9}
.prospt-product-related-row .related ul.products li.product img{aspect-ratio:1/1;object-fit:contain}
@media(max-width:767px){.woocommerce div.product.prospt-product-layout{gap:16px}.prospt-product-related-row{padding:15px;border-radius:15px}.prospt-related-carousel-head{gap:8px;margin-bottom:10px}.prospt-related-carousel-controls{gap:6px}.prospt-related-carousel-button{width:35px;height:35px}.prospt-product-related-row .related ul.products{gap:12px}.prospt-product-related-row .related ul.products li.product{flex-basis:72vw!important;width:72vw!important;max-width:280px}}
@media(prefers-reduced-motion:reduce){.prospt-product-related-row .related ul.products{scroll-behavior:auto}}

/* Header search must remain clickable above product-gallery overlays. */
.prospt-mobile-search-toggle{display:none;border:0;background:transparent;color:var(--prospt-deep);cursor:pointer}
.prospt-header-search button,.prospt-mobile-nav__search button{position:relative;pointer-events:auto}
.prospt-search-empty{padding:24px;border:1px solid #dce4ee;border-radius:12px;background:#fff}
.woocommerce-account .prospt-main{width:min(1440px,calc(100% - 40px));padding-block:24px 48px}
@media(max-width:680px){.prospt-mobile-search-toggle{display:inline-flex}.woocommerce-account .prospt-main{width:100%;padding-block:0 32px}.prospt-mobile-nav__search{padding:10px 16px 16px}}
.woocommerce-account .prospt-entry{width:100%;max-width:none;margin:0}
@media(max-width:680px){.woocommerce-account .prospt-header__inner{min-height:58px}.woocommerce-account .prospt-header .custom-logo{max-height:36px}}

/* Native WooCommerce category loops use the same card surface as product loops. */
.woocommerce ul.products li.product.prospt-product-category-card > a { display: flex; flex: 1 1 auto; flex-direction: column; min-width: 0; color: inherit; text-decoration: none; }
.woocommerce ul.products li.product.prospt-product-category-card > a:focus-visible { outline: 2px solid var(--prospt-blue); outline-offset: 3px; border-radius: 12px; }
.woocommerce ul.products li.product.prospt-product-category-card .woocommerce-loop-category__title .count { display: inline; padding: 0; color: var(--prospt-muted); background: transparent; font: inherit; }
.woocommerce ul.products li.product.prospt-product-category-card .prospt-product-card__purchase { justify-content: flex-end; }

/* Native footer colours take precedence over the site-wide element palette. */
.prospt-footer .prospt-footer__column h2 { color: var(--prospt-footer-heading, #fff); }
.prospt-footer :is(.prospt-footer__inner, .prospt-footer__bottom) :is(p, li, a, span) { color: var(--prospt-footer-text, #edf3f9); }
.prospt-footer a:hover, .prospt-footer a:focus-visible { color: var(--prospt-footer-accent, #d7af4c); }
.prospt-footer .prospt-footer__social { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.prospt-footer .prospt-footer__social a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-height: 44px; flex: 0 0 44px; border: 1px solid currentColor; border-radius: 50%; text-decoration: none; }
.prospt-footer .prospt-footer__social svg { display: block; width: 20px; height: 20px; flex: none; }
.prospt-footer a:focus-visible { outline: 2px solid var(--prospt-footer-accent, #d7af4c); outline-offset: 4px; }
.prospt-footer__inner > * { min-width: 0; }
.prospt-footer p, .prospt-footer a { overflow-wrap: anywhere; }
/* Nested footer menu items remain readable without the header dropdown treatment. */
.prospt-footer .prospt-menu .sub-menu { position: static; display: grid; gap: 6px; min-width: 0; padding: 8px 0 0 12px; border: 0; background: transparent; box-shadow: none; }
.prospt-footer .prospt-menu a { min-height: 32px; }
.prospt-footer .prospt-footer__column .prospt-footer__dealer-button { display: inline-flex; align-items: center; justify-content: center; max-width: 100%; min-height: 44px; margin: 8px 0 16px; padding: 11px 16px; border: 1px solid transparent; border-radius: 6px; background: var(--prospt-footer-dealer-bg, #d7af4c); color: var(--prospt-footer-dealer-text, #071d39); font-weight: 600; line-height: 1.4; text-align: center; text-decoration: none; }
.prospt-footer .prospt-footer__column .prospt-footer__dealer-button:hover, .prospt-footer .prospt-footer__column .prospt-footer__dealer-button:focus-visible { background: var(--prospt-footer-dealer-hover-bg, #edd08a); color: var(--prospt-footer-dealer-hover-text, #071d39); }
.prospt-footer .prospt-footer__payments .prospt-footer__payment--logo { display: flex; align-items: center; padding: 0; border: 0; border-radius: 4px; }
.prospt-footer .prospt-footer__payments svg { display: block; width: 72px; height: 40px; }
@media (max-width: 999px) {
  .prospt-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .prospt-footer__brand { grid-column: 1 / -1; }
  .prospt-footer__bottom-inner { align-items: flex-start; flex-direction: column; }
  .prospt-footer__payments { justify-content: flex-start; }
}
@media (max-width: 480px) { .prospt-footer__inner { grid-template-columns: minmax(0, 1fr); } .prospt-footer__brand { grid-column: auto; } }
