/* Shared catalogue and product layouts. */
select { font: inherit; color: inherit; }
.breadcrumbs { display:flex; align-items:center; flex-wrap:wrap; gap:7px; padding-top:24px; padding-bottom:24px; font-size:12px; color:#687975; line-height:1.8; }
.breadcrumbs ol { display:contents; list-style:none; margin:0; padding:0; }
.breadcrumbs li { display:inline; }
.breadcrumbs li + li::before { content:'›'; margin-right:9px; color:#a2b2ae; }
.breadcrumbs a:hover { text-decoration:underline; color:var(--action); }
.breadcrumbs [aria-current] { color:#57635f; }
/* Banners are complete uploaded creatives, without HTML copy or cropping. */
.image-only-banners .promo-card { background:transparent; border-radius:16px; align-self:start; }
.image-only-banners .promo-card > img { display:block; width:100%; height:auto; object-fit:contain; }
.image-only-banners .promo-card:hover img { opacity:.95; }
/* Compact stacked review modules preserve readable type. */
.reviews .section-head { margin-bottom:20px; }
.reviews-grid { gap:18px; }
.review-widget { padding:18px 20px 15px; border-radius:14px; }
.review-widget-head { padding-bottom:14px; }
.review-provider { gap:14px; }
.review-provider > img { width:75px; height:25px; }
.review-provider h3 { font-size:16px; }
.review-rating { gap:10px; }
.rating-value { font-size:23px; }
.actual-stars { font-size:17px; }
.review-cards { gap:12px; }
.review-card { padding:14px 16px; }
.review-initials { width:28px; height:28px; font-size:10px; }
.review-card-author { gap:8px; }
.review-card-author a { font-size:13px; }
.individual-stars { font-size:15px; margin-top:9px; }
.review-card blockquote { margin:6px 0 10px; font-size:14px; line-height:1.65; }
.positive-review { margin-top:9px; padding:3px 6px; }
.review-highlights { margin:8px 0 10px; font-size:13px; line-height:1.7; }
.review-source { padding-top:3px; }
.review-widget-foot { padding-top:12px; }
.review-widget-foot > span { font-size:11px; }
.card-rrp { color:#7a847c; font-size:12px; min-height:22px; margin-top:6px; }
.product-card .product-name { min-height:49px; }
.product-card .product-brand { margin-top:16px; }
.product-card .availability.unavailable { color:#956653; }
.availability.unavailable > span { background:#b08b79; }
.add-to-cart:disabled { background:#dce5e1; color:#69796e; }
.cashback-tag { background:#f7e9c8; color:#80652e; }
/* Category pages */
.category-intro { background:#edf5f3; border-radius:20px; padding:34px 38px; display:flex; justify-content:space-between; gap:35px; align-items:center; position:relative; overflow:hidden; }
.category-intro .eyebrow { color:#4e817e; margin-bottom:10px; }
.category-intro h1 { font-size:38px; line-height:1.2; letter-spacing:-1px; max-width:900px; }
.category-intro p { color:#5e716c; font-size:15px; line-height:1.8; max-width:800px; margin-top:15px; }
.category-intro-art { width:86px; height:86px; border-radius:50%; background:#fff9ef; display:grid; place-items:center; flex-shrink:0; color:#72a09a; }
.category-intro-art svg { width:38px; height:38px; }
.subcategory-links { display:flex; flex-wrap:wrap; gap:10px; padding:22px 0 0; }
.subcategory-links a { font-size:14px; border:1px solid #dfe9e3; background:#fff; border-radius:8px; padding:11px 15px; line-height:1.5; display:flex; gap:12px; align-items:center; }
.subcategory-links a:hover { border-color:#8ab4b0; background:#f4f9f6; }
.subcategory-links svg { width:14px; height:14px; }
.catalogue-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:32px; margin-top:35px; align-items:start; }
.filter-sidebar { border:1px solid #e4ebe5; border-radius:14px; padding:22px 20px; background:#fff; }
.filter-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-bottom:14px; }
.filter-head h2 { font-size:20px; }
.filter-clear { padding:0; font-size:12px; color:#557e7b; text-decoration:underline; }
.filter-sidebar fieldset { border:0; border-top:1px solid var(--line); padding:18px 0; margin:0; min-width:0; }
.filter-sidebar legend { float:left; width:100%; padding:0 0 12px; font-size:14px; font-weight:600; }
.filter-sidebar label { display:flex; align-items:center; gap:9px; font-size:14px; padding:5px 0; line-height:1.5; cursor:pointer; }
.filter-sidebar input[type=checkbox] { accent-color:var(--action); width:16px; height:16px; flex-shrink:0; }
.filter-sidebar .brand-filter-list { max-height:205px; overflow-y:auto; clear:both; scrollbar-width:thin; }
.price-inputs { display:flex; gap:9px; clear:both; }
.price-inputs label { display:block; font-size:12px; flex:1; }
.price-inputs input { width:100%; border:1px solid #dbe4df; padding:9px 8px; border-radius:5px; margin-top:6px; font-size:14px; background:#fff; }
.filter-category-links { border-top:1px solid var(--line); padding-top:18px; }
.filter-category-links h3 { font-size:14px; letter-spacing:0; margin-bottom:12px; }
.filter-category-links a { display:block; font-size:13px; padding:6px 0; color:#6a7972; }
.filter-category-links a.current { color:var(--action); font-weight:600; }
.filter-close, .filter-apply { display:none; }
.catalogue-results { min-width:0; }
.catalogue-toolbar { display:flex; align-items:center; justify-content:space-between; gap:15px; min-height:44px; margin-bottom:25px; }
.catalogue-toolbar .result-count { font-size:14px; color:#677970; }
.sort-control { display:flex; gap:10px; align-items:center; font-size:13px; }
.sort-control select { border:1px solid #dce6e1; border-radius:7px; background:#fff; padding:11px 30px 11px 12px; max-width:230px; font-size:13px; }
.filter-open { display:none; }
.category-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px 22px; }
.category-product-grid .product-photo { aspect-ratio:1; height:auto; }
.category-product-grid .product-photo img { padding:12px; object-fit:contain; }
.category-product-grid .product-name { font-size:16px; min-height:66px; line-height:1.45; }
.catalogue-notice { margin-top:30px; padding:17px 20px; background:#f8faf7; border-radius:9px; font-size:12px; color:#6d7c73; line-height:1.7; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.catalogue-notice a { text-decoration:underline; white-space:nowrap; }
.catalogue-empty { grid-column:1/-1; padding:60px 25px; border:1px dashed #cbdcd4; border-radius:14px; text-align:center; background:#fafcf9; }
.catalogue-empty svg { margin:0 auto 16px; width:34px; height:34px; color:#76a29b; }
.catalogue-empty h2 { font-size:22px; margin-bottom:12px; }
.catalogue-empty p { font-size:15px; color:#687b70; }
.catalogue-empty button, .catalogue-empty a { display:inline-flex; margin-top:20px; padding:11px 18px; border:1px solid #a0c5bd; border-radius:7px; color:#37776e; font-size:14px; }
.category-help { margin-top:55px; padding:30px; background:#fcf7ed; border-radius:16px; display:grid; grid-template-columns:1fr 1fr; gap:35px; }
.category-help h2 { font-size:24px; margin-bottom:12px; }
.category-help p { font-size:14px; color:#6e7569; line-height:1.8; }
.category-help > div:last-child { border-left:1px solid #e8dfcf; padding-left:35px; }
.category-help a { color:#476e68; text-decoration:underline; }
.category-directory { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; margin-top:30px; }
.directory-group { border:1px solid #e1e9e3; border-radius:14px; padding:24px; }
.directory-group h2 { font-size:23px; margin-bottom:16px; }
.directory-group ul { list-style:none; padding:0; margin:0; }
.directory-group li a { display:block; padding:7px 0; font-size:14px; color:#5f7769; }
.directory-group ul ul { border-left:2px solid #e3ede6; padding-left:15px; }
/* Product detail */
.product-layout { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,1fr); column-gap:52px; align-items:start; }
.product-gallery { grid-column:1; grid-row:1 / span 2; position:sticky; top:25px; min-width:0; }
.gallery-main { background:#f8faf8; border:1px solid #e9eee8; border-radius:20px; position:relative; overflow:hidden; }
.gallery-open { display:block; width:100%; aspect-ratio:1; padding:16px; }
.gallery-open img { width:100%; height:100%; object-fit:contain; mix-blend-mode:multiply; }
.gallery-hint { position:absolute; right:16px; bottom:14px; display:flex; align-items:center; gap:7px; color:#5c7870; background:#fff; border-radius:30px; padding:7px 12px; font-size:11px; pointer-events:none; }
.gallery-hint svg { width:14px; height:14px; }
.gallery-thumbs { display:flex; gap:11px; margin-top:14px; }
.gallery-thumbs button { width:75px; height:75px; border:1px solid #e3e9e4; border-radius:10px; padding:5px; overflow:hidden; background:#fff; }
.gallery-thumbs button[aria-pressed=true] { border:2px solid #77a6a6; }
.gallery-thumbs img { width:100%; height:100%; object-fit:contain; }
.gallery-footer { display:flex; align-items:center; gap:8px; margin:20px 0 0; color:#778577; font-size:12px; }
.gallery-footer svg { width:16px; height:16px; }
.product-heading { grid-column:2; }
.pdp-brand { display:flex; align-items:center; gap:18px; margin:0 0 14px; color:#69887b; font-size:13px; font-weight:600; }
.pdp-brand-logo { width:108px; height:32px; object-fit:contain; }
.product-heading h1 { font-size:32px; line-height:1.25; letter-spacing:-.8px; font-weight:600; }
.product-identifiers { display:flex; flex-wrap:wrap; gap:8px 20px; margin-top:17px; font-size:12px; color:#798477; line-height:1.7; }
.product-identifiers b { font-weight:500; color:#49574d; }
.pdp-purchase { grid-column:2; }
.pdp-purchase > .availability { display:inline-flex; background:#edf5eb; color:#52754f; padding:7px 12px; border-radius:30px; font-size:13px; margin-top:20px; min-height:0; }
.pdp-purchase > .availability.soon { background:#fbf4df; color:#876d36; }
.pdp-purchase > .availability.on-order { background:#f1f1ea; color:#6c7465; }
.pdp-purchase > .availability.unavailable { background:#f9ece5; color:#956653; }
.pdp-price-block { margin-top:20px; }
.pdp-rrp { font-size:13px; color:#778274; margin-bottom:7px; }
.pdp-price-line { display:flex; gap:15px; align-items:center; flex-wrap:wrap; }
.pdp-price-line .our-price { font-size:38px; font-weight:600; line-height:1.2; letter-spacing:-1.2px; color:#294e4c; }
.pdp-price-label { font-size:12px; color:#758276; margin-bottom:4px; }
.saving-badge { font-size:12px; color:#9b6047; background:#faece2; border-radius:30px; padding:6px 11px; font-weight:600; }
.tax-note { font-size:11px; color:#8a9385; margin-top:8px; }
.cashback-box { margin-top:22px; background:#fcf5e5; border:1px solid #f0e5c8; padding:15px 18px; border-radius:11px; }
.cashback-title { display:flex; align-items:center; gap:11px; }
.cashback-title > svg { color:#a48647; width:23px; height:23px; }
.cashback-title p { font-size:14px; color:#6f6142; }
.cashback-title b { color:#76602e; font-weight:600; }
.cashback-box details { margin-top:8px; padding-left:34px; }
.cashback-box summary { cursor:pointer; font-size:12px; color:#756a50; text-decoration:underline; text-underline-offset:3px; }
.cashback-box details p { font-size:13px; color:#73694f; line-height:1.75; margin-top:10px; }
.payment-options { display:grid; gap:0; margin:21px 0; border:1px solid #e2e9e4; border-radius:11px; overflow:hidden; }
.payment-option { display:flex; align-items:center; gap:12px; padding:12px 15px; font-size:13px; line-height:1.5; }
.payment-option + .payment-option { border-top:1px solid #e9eee9; }
.payment-option strong { font-weight:600; color:#435d53; }
.payment-option small { display:block; font-size:11px; color:#829081; margin-top:1px; }
.payment-option .payment-klarna { flex-shrink:0; width:66px; height:33px; object-fit:cover; }
.credit-symbol { flex-shrink:0; width:66px; height:30px; border-radius:4px; background:#edf4f1; color:#718e82; display:grid; place-items:center; }
.credit-symbol svg { width:23px; height:23px; }
.pdp-actions { display:flex; gap:10px; }
.pdp-add { width:100%; min-height:54px; font-size:16px; border-radius:9px; padding:14px 18px; }
.pdp-actions .save-product { border:1px solid #dbe5df; border-radius:9px; width:56px; flex-shrink:0; display:grid; place-items:center; color:#638b80; }
.save-product[aria-pressed=true] { color:#b87964; background:#fff2e9; border-color:#e6c9b9; }
.save-product[aria-pressed=true] svg { fill:#f7dbcc; }
.pdp-service { display:flex; align-items:center; gap:11px; font-size:13px; color:#748472; border-top:1px solid #e5ece3; padding-top:16px; margin-top:20px; }
.pdp-service > svg { color:#7fa091; }
.pdp-service a { text-decoration:underline; }
.snapshot-note { font-size:11px; color:#8d9788; line-height:1.7; margin-top:15px; }
.product-assurances { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; padding:25px 30px; border:1px solid #e7ece3; border-radius:13px; margin-top:38px; }
.product-assurances > div { display:flex; align-items:center; gap:13px; font-size:13px; color:#546c5c; }
.product-assurances svg { width:25px; height:25px; color:#87a38b; }
.product-assurances small { display:block; color:#87917f; font-size:11px; margin-top:3px; }
.product-information { margin-top:48px; }
.detail-tabs { display:flex; border-bottom:1px solid #dfe8e0; gap:35px; margin-bottom:30px; overflow-x:auto; scrollbar-width:none; }
.detail-tabs button { padding:17px 0; border-bottom:3px solid transparent; font-size:16px; font-weight:500; white-space:nowrap; }
.detail-tabs button[aria-selected=true] { color:#397c7a; border-bottom-color:#6a9f9b; }
.detail-panel { padding:0 0 15px; }
.detail-panel h2 { font-size:25px; line-height:1.35; margin-bottom:18px; }
.product-description-layout { display:grid; grid-template-columns:1.5fr 1fr; gap:65px; }
.detail-panel p { font-size:16px; line-height:1.85; color:#637260; margin-bottom:14px; }
.detail-panel ul { font-size:15px; color:#637260; padding-left:20px; line-height:1.85; }
.detail-summary { background:#f2f6ef; padding:26px 30px; border-radius:14px; }
.detail-summary h3 { font-size:20px; margin-bottom:15px; }
.specs-table { width:100%; border-collapse:collapse; font-size:15px; }
.specs-table caption { text-align:left; font-size:25px; font-weight:600; margin-bottom:20px; }
.specs-table th,.specs-table td { padding:15px 20px; text-align:left; border-bottom:1px solid #e6ece3; }
.specs-table th { width:38%; color:#667a64; font-weight:500; }
.specs-table tr:nth-child(odd) { background:#f7f9f5; }
.shipping-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.shipping-card { background:#f7f9f5; border-radius:12px; padding:24px; }
.shipping-card > svg { color:#799a81; margin-bottom:17px; width:28px; height:28px; }
.shipping-card h3 { font-size:20px; margin-bottom:13px; }
.shipping-card p { font-size:14px; line-height:1.75; }
.shipping-note { margin-top:20px; font-size:13px!important; }
.shipping-note a { text-decoration:underline; }
.product-recommendations { margin-top:50px; }
.product-recommendations .section-head { margin-bottom:25px; }
.product-recommendations h2 { font-size:28px; }
.product-recommendations .product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.product-recommendations .product-photo { aspect-ratio:1; height:auto; }
.product-recommendations .product-photo img { object-fit:contain; }
.recent-empty { padding:23px 26px; background:#f8faf6; border-radius:10px; color:#7b8977; font-size:14px; line-height:1.8; }
.recent-empty a { color:var(--action); text-decoration:underline; }
.product-sticky-buy { display:none; }
.product-lightbox { border:0; padding:25px; width:min(95vw,900px); max-height:95dvh; background:white; border-radius:15px; }
.product-lightbox::backdrop { background:#273b35a6; }
.product-lightbox > button { display:block; margin-left:auto; padding:10px; border-radius:50%; background:#f0f5ef; }
.product-lightbox > img { width:100%; height:min(75dvh,750px); object-fit:contain; }
.site-noscript { padding:20px; margin:20px; border:1px solid #ccc; }
@media(min-width:1450px) { .category-product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:1200px) {
 .product-layout { column-gap:32px; }
 .product-heading h1 { font-size:29px; }
 .catalogue-layout { grid-template-columns:210px minmax(0,1fr); gap:24px; }
 .category-product-grid { gap:26px 18px; }
 .category-product-grid .product-name { font-size:15px; min-height:67px; }
}
@media(max-width:900px) {
 .product-layout { column-gap:25px; }
 .product-heading h1 { font-size:26px; }
 .pdp-price-line .our-price { font-size:32px; }
 .product-identifiers { display:block; }
 .product-identifiers span { display:block; }
 .product-assurances { gap:15px; padding:20px; }
 .product-assurances > div { gap:8px; font-size:12px; }
 .catalogue-layout { grid-template-columns:185px minmax(0,1fr); gap:20px; }
 .filter-sidebar { padding:18px 15px; }
 .category-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sort-control > span { display:none; }
 .category-directory { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .product-description-layout { gap:30px; }
 .shipping-grid { gap:15px; }
 .shipping-card { padding:20px; }
}
@media(max-width:650px) {
 .breadcrumbs { padding-top:15px; padding-bottom:18px; font-size:11px; gap:4px; line-height:1.8; }
 .breadcrumbs li + li::before { margin-right:5px; }
 .review-widget { padding:15px 15px 12px; }
 .review-widget-head { padding-bottom:10px; }
 .review-provider { display:block; }
 .review-provider > img { width:68px; height:23px; margin-bottom:5px; }
 .review-provider h3 { font-size:13px; }
 .review-rating { gap:5px; }
 .rating-value { font-size:21px; }
 .review-card { min-height:0; padding:13px 14px; flex-basis:88%; }
 .review-card-author a { font-size:13px; }
 .review-card blockquote { font-size:14px; margin:6px 0 9px; }
 .review-highlights { margin:7px 0 9px; font-size:13px; }
 .individual-stars { margin-top:7px; }
 .review-source { font-size:10px; }
 .review-widget-foot { gap:8px; padding-top:8px; }
 .review-widget-foot > span { font-size:9px; }
 .review-widget-foot > a { font-size:11px; }
 .reviews-intro { margin-top:10px; font-size:13px; }
 .image-only-banners .promo-card { border-radius:12px; }
 .category-intro { padding:25px 22px; border-radius:15px; gap:10px; }
 .category-intro h1 { font-size:28px; line-height:1.25; }
 .category-intro p { font-size:14px; margin-top:12px; }
 .category-intro-art { display:none; }
 .subcategory-links { display:flex; flex-wrap:nowrap; overflow-x:auto; gap:9px; padding-top:18px; padding-bottom:7px; scrollbar-width:thin; }
 .subcategory-links a { flex-shrink:0; font-size:13px; padding:10px 12px; }
 .catalogue-layout { display:block; margin-top:20px; }
 .filter-sidebar { display:none; }
 .filter-sidebar.is-open { display:flex; flex-direction:column; position:fixed; z-index:100; inset:0 0 0 auto; width:min(90vw,360px); border:0; border-radius:0; overflow:auto; padding:23px; box-shadow:-10px 0 50px #1e312c25; }
 .filter-head { padding-bottom:18px; }
 .filter-close { display:grid; place-items:center; width:32px; height:32px; background:#f0f5ef; border-radius:50%; }
 .filter-close svg { width:17px; }
 .filter-head .filter-clear { margin-left:auto; margin-right:10px; }
 .filter-apply { display:block; min-height:45px; margin-top:20px; background:var(--action); color:#fff; border-radius:7px; font-size:15px; flex-shrink:0; }
 .filter-sidebar fieldset { flex-shrink:0; }
 .filter-category-links { margin-top:5px; }
 .catalogue-toolbar { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:20px; }
 .catalogue-toolbar .result-count { grid-column:1 / -1; font-size:12px; }
 .filter-open { display:flex; align-items:center; justify-content:center; gap:9px; width:100%; border:1px solid #ceded4; border-radius:7px; padding:10px; font-size:13px; }
 .filter-open svg { width:16px; height:16px; }
 .sort-control { display:block; }
 .sort-control select { width:100%; max-width:none; padding:11px 7px; font-size:12px; }
 .category-product-grid { gap:25px 13px; }
 .category-product-grid .product-photo img { padding:5px; }
 .category-product-grid .product-name { font-size:14px; line-height:1.5; min-height:84px; }
 .product-card .product-brand { margin-top:12px; }
 .card-rrp { font-size:10px; min-height:20px; }
 .catalogue-notice { display:block; padding:15px; font-size:11px; }
 .catalogue-notice a { display:block; margin-top:8px; }
 .category-help { grid-template-columns:1fr; gap:23px; margin-top:35px; padding:24px; }
 .category-help h2 { font-size:21px; }
 .category-help p { font-size:14px; }
 .category-help > div:last-child { border-left:0; border-top:1px solid #e8dfcf; padding:23px 0 0; }
 .category-directory { grid-template-columns:1fr; gap:18px; }
 .directory-group { padding:22px; }
 .directory-group h2 { font-size:23px; }
 .product-layout { display:flex; flex-direction:column; gap:0; }
 .product-heading { order:0; width:100%; }
 .pdp-brand { margin-bottom:9px; font-size:12px; }
 .pdp-brand-logo { width:90px; height:27px; }
 .product-heading h1 { font-size:25px; line-height:1.25; }
 .product-identifiers { display:flex; gap:4px 14px; font-size:11px; margin-top:10px; }
 .product-identifiers span { display:inline; }
 .product-gallery { order:1; position:static; width:100%; margin-top:22px; }
 .gallery-main { border-radius:15px; }
 .gallery-open { aspect-ratio:1.12; padding:10px; }
 .gallery-thumbs { margin-top:10px; gap:9px; }
 .gallery-thumbs button { width:60px; height:60px; border-radius:7px; }
 .gallery-hint { font-size:10px; right:10px; bottom:10px; padding:6px 9px; }
 .gallery-footer { display:none; }
 .pdp-purchase { order:2; width:100%; }
 .pdp-purchase > .availability { margin-top:20px; font-size:12px; padding:6px 11px; }
 .pdp-price-block { margin-top:17px; }
 .pdp-price-line .our-price { font-size:35px; }
 .pdp-rrp { font-size:13px; }
 .cashback-box { margin-top:20px; padding:14px 15px; }
 .cashback-title p { font-size:13px; }
 .cashback-box details { padding-left:0; margin-top:8px; }
 .cashback-box summary { font-size:12px; }
 .payment-options { margin:18px 0; }
 .payment-option { padding:11px 13px; font-size:13px; }
 .payment-option small { font-size:10px; }
 .pdp-add { min-height:51px; font-size:15px; }
 .pdp-actions .save-product { width:52px; }
 .pdp-service { font-size:12px; padding-top:15px; margin-top:18px; }
 .product-assurances { grid-template-columns:1fr; gap:16px; margin-top:27px; padding:21px; }
 .product-assurances > div { gap:13px; font-size:13px; }
 .product-assurances small { font-size:11px; }
 .product-information { margin-top:25px; }
 .detail-tabs { gap:23px; margin-bottom:25px; }
 .detail-tabs button { font-size:14px; padding:15px 0; }
 .product-description-layout { grid-template-columns:1fr; gap:20px; }
 .detail-panel h2 { font-size:23px; margin-bottom:14px; }
 .detail-panel p { font-size:15px; line-height:1.85; }
 .detail-panel ul { font-size:14px; }
 .detail-summary { padding:23px; }
 .detail-summary h3 { font-size:20px; }
 .specs-table { font-size:13px; }
 .specs-table caption { font-size:23px; }
 .specs-table th,.specs-table td { padding:12px 11px; overflow-wrap:anywhere; }
 .specs-table th { width:40%; }
 .shipping-grid { grid-template-columns:1fr; gap:14px; }
 .shipping-card { padding:23px; }
 .shipping-card > svg { margin-bottom:12px; }
 .shipping-card h3 { font-size:20px; }
 .product-recommendations { margin-top:35px; }
 .product-recommendations h2 { font-size:25px; }
 .product-recommendations .product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px 14px; }
 .product-recommendations .product-name { min-height:84px; }
 .product-sticky-buy { position:fixed; bottom:0; left:0; right:0; z-index:40; background:#fffffff5; border-top:1px solid #dce7e0; padding:10px 20px max(10px,env(safe-area-inset-bottom)); gap:20px; align-items:center; box-shadow:0 -4px 25px #3757470d; }
 .product-sticky-buy:not([hidden]) { display:flex; }
 .product-sticky-buy > div { flex-shrink:0; }
 .product-sticky-buy small { display:block; color:#7e8f80; font-size:10px; }
 .product-sticky-buy strong { display:block; color:#335d56; font-size:22px; font-weight:600; line-height:1.2; }
 .product-sticky-buy button { min-height:43px; font-size:14px; border-radius:7px; }
 .page-product footer { padding-bottom:65px; }
 .product-lightbox { padding:14px; }
}
@media(prefers-reduced-motion:reduce) { html{scroll-behavior:auto} *,*::before,*::after{transition:none!important} }
.load-more-wrap { text-align:center; margin-top:28px; }
.load-more { border:1px solid #b6d2c8; color:#477c6c; padding:12px 24px; font-size:14px; border-radius:8px; }
#filterBackdrop { z-index:90; }
.search-result img { object-fit:contain; }
.recent-empty { grid-column:1/-1; }
.product-card { display:flex; flex-direction:column; min-width:0; }
.product-card .product-photo { flex-shrink:0; }
.product-card .product-name { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; min-height:4.35em; }
.product-card .card-rrp { margin-top:8px; }
.product-card .product-purchase { margin-top:auto; padding-top:13px; }
.product-card .product-bottom { margin-top:7px; }
.pdp-brand-logo[src*="brand-cybex"] { object-fit:cover; }
@media(max-width:650px){ .product-card .product-purchase { padding-top:9px; } }
.filter-sidebar fieldset > label { clear:both; width:100%; }
@media(max-width:650px){ .price-inputs input { font-size:16px; } }
.developer-downloads { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:28px; }
.developer-download { border:1px solid #dfe9e1; border-radius:13px; padding:25px; background:#fafcf8; }
.developer-download h2 { font-size:22px; line-height:1.3; margin-bottom:13px; }
.developer-download p { font-size:14px; line-height:1.8; color:#6a7e6c; }
.developer-download span { display:flex; justify-content:space-between; margin-top:24px; color:var(--action); font-size:14px; }
.developer-download svg { width:18px; height:18px; }
@media(max-width:900px){.developer-downloads{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.developer-downloads{grid-template-columns:1fr}}
