/* NorrExpert produktvy: tidigare sidinline CSS, nu cachebar. */
/* Product media constraints: prevent very tall source images escaping cards. */
.products {align-items:stretch;}
.product {overflow:hidden;position:relative;}
.product .photo {width:100%;height:220px;min-height:0;min-width:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fff;}
.product .photo img {display:block!important;max-width:100%!important;max-height:100%!important;width:100%!important;height:100%!important;object-fit:contain!important;position:static!important;}
.product strong {display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;}
.overview .photo.large {height:410px;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.overview .photo.large img {max-width:100%!important;max-height:100%!important;width:100%!important;height:100%!important;object-fit:contain!important;}
@media(max-width:450px){.product .photo{height:155px;}.products{align-items:stretch}}

/* Stable comparison cards, with equal-height layout across categories and devices. */
.products{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.product{min-width:0;overflow:hidden;isolation:isolate;padding:14px;min-height:360px}
.product .photo{flex:0 0 auto;height:190px;max-height:190px;overflow:hidden}
.product .photo img{width:100%!important;height:100%!important;object-fit:contain!important}
.product strong{min-height:40px;font-size:13px;line-height:1.45}
.product .cta{display:block;margin-top:12px}
@media(max-width:900px){.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.product{padding:10px;min-height:310px}.product .photo{height:145px;max-height:145px}.product .price b{font-size:16px}}


/* Product page: compact, readable desktop + mobile layout (isolated from grids/admin). */

/* NorrExpert product page — scoped layout */
.nrx-product-overview{display:grid;grid-template-columns:minmax(0,390px) minmax(0,1fr);gap:46px;align-items:start;margin:28px 0 30px}
.nrx-product-photo{border:1px solid #e5ebe8;border-radius:12px;min-height:370px;height:390px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:white}
.nrx-product-photo img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;padding:20px}
.nrx-product-details{min-width:0;padding-top:12px}
.nrx-product-brand{margin:0 0 9px;color:#637b6e;font-size:13px;font-weight:700}
.nrx-product-details h1{font-size:clamp(26px,3vw,37px);letter-spacing:-.9px;line-height:1.2;margin:0 0 20px;color:#172b20;max-width:780px}
.nrx-product-lead{color:#66796b;line-height:1.75;font-size:14px;max-width:62ch;margin:0}
.nrx-product-nav{display:flex;gap:30px;border-bottom:1px solid #dfe8e1;margin:0 0 23px;align-items:center}
.nrx-product-nav a{display:inline-block;padding:14px 1px 13px;font-size:14px;font-weight:700;color:#718378;border-bottom:2px solid transparent}
.nrx-product-nav a:first-child{color:#1b583c;border-bottom-color:#1b583c}
.nrx-price-comparison{margin-top:8px;max-width:100%;scroll-margin-top:24px}
.nrx-section-head{margin:0 0 17px}
.nrx-section-head h2{margin:0 0 5px;font-size:22px;color:#172b20;letter-spacing:-.3px}
.nrx-section-head p{margin:0;color:#788d80;font-size:13px}
.nrx-store-offer{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,150px) 135px;gap:20px;align-items:center;border:1px solid #e2ebe5;border-radius:10px;padding:17px 20px;margin:10px 0;background:#fff;min-height:78px}
.nrx-store-name b{font-size:15px;color:#1b3023}
.nrx-store-price{text-align:right}
.nrx-store-price strong{color:#172f20;font-size:18px;white-space:nowrap}
.nrx-store-link{display:inline-flex;justify-content:center;align-items:center;white-space:nowrap;min-height:43px;text-align:center}
.nrx-info{margin:36px 0 0;padding-top:24px;border-top:1px solid #e4ebe6;scroll-margin-top:24px;max-width:920px}
.nrx-info h2{font-size:21px;margin:0 0 12px;letter-spacing:-.2px}
.nrx-info p{color:#556b5e;font-size:14px;line-height:1.85;margin:0;overflow-wrap:anywhere;white-space:pre-line}
@media(max-width:850px){.nrx-product-overview{grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:25px}.nrx-product-photo{height:345px;min-height:345px}}
@media(max-width:650px){.nrx-product-overview{grid-template-columns:1fr;gap:18px;margin-top:14px;margin-bottom:18px}.nrx-product-photo{height:330px;min-height:330px}.nrx-product-details{padding-top:0}.nrx-product-details h1{font-size:27px}.nrx-product-nav{gap:24px}.nrx-store-offer{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:15px}.nrx-store-name{grid-column:1;grid-row:1}.nrx-store-price{grid-column:2;grid-row:1}.nrx-store-link{grid-column:1/-1;width:100%}}


/* Product detail: put the existing price comparison beside the photo instead of leaving a blank column. */
.nrx-product-overview{grid-template-columns:minmax(0,390px) minmax(0,1fr);gap:34px;align-items:start;margin-bottom:26px}
.nrx-product-details{padding-top:4px}
.nrx-product-details h1{margin-bottom:13px}
.nrx-product-lead{margin-bottom:17px}
.nrx-product-nav{margin-bottom:19px}
.nrx-price-comparison{margin-top:0}
.nrx-section-head{margin-bottom:12px}
.nrx-section-head h2{font-size:20px}
.nrx-store-offer{grid-template-columns:minmax(0,1fr) auto auto;gap:12px;padding:12px 14px;min-height:64px}
.nrx-store-link{min-height:39px;padding:10px 14px}
.nrx-info{max-width:none;margin-top:20px}
@media(max-width:850px){.nrx-product-overview{grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:22px}.nrx-store-offer{grid-template-columns:minmax(0,1fr) auto;gap:10px}.nrx-store-link{grid-column:1/-1;width:100%}}
@media(max-width:650px){.nrx-product-overview{grid-template-columns:minmax(0,1fr);gap:17px}.nrx-product-photo{height:310px;min-height:310px}.nrx-store-offer{grid-template-columns:minmax(0,1fr) auto}.nrx-store-link{grid-column:1/-1}.nrx-info{margin-top:25px}}

/* Related product cards are limited to the product page. */
.nrx-similar{margin:34px 0 0;padding-top:25px;border-top:1px solid #e4ebe6}
.nrx-similar h2{margin:0 0 18px;font-size:21px;color:#172b20}
.nrx-similar .products{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
@media(max-width:650px){.nrx-similar .products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}


/* Product page ad sidebar */
.nrx-product-page{display:grid;grid-template-columns:minmax(0,1fr);gap:34px;align-items:start}.nrx-product-page:has(.nrx-product-sidebar){grid-template-columns:minmax(0,1fr) 300px}
.nrx-product-main{min-width:0}
.nrx-product-sidebar{width:300px;max-width:100%}
.nrx-ads-stack{display:flex;flex-direction:column;gap:18px;position:sticky;top:22px}
.nrx-ad-slot{width:300px;max-width:100%;height:250px;border:1px solid #dfe8e1;border-radius:12px;background:#f7faf8;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:18px;color:#6c8376}
.nrx-ad-slot strong{display:block;font-size:18px;letter-spacing:-.3px;color:#1f3629;margin-bottom:6px}
.nrx-ad-slot span{font-size:13px;color:#7a8e82}
.nrx-ad-slot small{display:block;margin-top:8px;font-size:12px;color:#95a59b}
@media(max-width:1180px){.nrx-product-page:has(.nrx-product-sidebar){grid-template-columns:minmax(0,1fr)}.nrx-product-sidebar{width:100%}.nrx-ads-stack{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.nrx-ad-slot{width:100%}}
.nrx-ad-filled{padding:0;background:white;overflow:hidden}.nrx-ad-filled>a{display:block;width:100%;height:100%}.nrx-ad-filled img{display:block;width:100%;height:100%;object-fit:contain}.nrx-ad-filled iframe{max-width:100%;border:0}
@media(max-width:650px){.nrx-ads-stack{grid-template-columns:1fr}}

/* Price comparison sits below product image and above product information. */
.nrx-product-main>.nrx-product-overview{margin-bottom:12px}
.nrx-product-main>.nrx-product-nav{margin-top:0}


/* Center header search without the removed categories link. */
.nrx-centered-header{display:flex;align-items:center;position:relative;min-height:80px}
.nrx-centered-header>.logo{flex:0 0 auto;position:relative;z-index:1}
.nrx-centered-header>.search{position:absolute;left:50%;transform:translateX(-50%);width:min(690px,calc(100% - 360px));max-width:690px;flex:none;margin:0}
@media(max-width:850px){
.nrx-centered-header{display:flex;flex-wrap:wrap;gap:13px;padding:12px 0}
.nrx-centered-header>.search{position:static;transform:none;order:3;flex-basis:100%;width:100%;max-width:none}
}


/* Readability improvements: public pages only. */
.main .crumb{font-size:14px;line-height:1.6}
.main .product .prodmeta{font-size:13px;line-height:1.5}
.main .product strong{font-size:15px;line-height:1.5}
.main .product .price{font-size:13px}
.main .product .price b{font-size:20px}
.main .product .muted{font-size:13px;line-height:1.5}
.main .product .cta{font-size:14px;line-height:1.4}
.main .nrx-cat-label,.main .nrx-subcategory-label{font-size:15px}
.main .nrx-subcategory-count{font-size:13px}
.main .nrx-product-brand{font-size:14px}
.main .nrx-product-lead{font-size:16px;line-height:1.65}
.main .nrx-product-nav a{font-size:15px}
.main .nrx-section-head p{font-size:14px}
.main .nrx-store-name b{font-size:16px}
.main .nrx-info p{font-size:16px;line-height:1.75}
@media(max-width:650px){
 .main .product .prodmeta{font-size:12px}
 .main .product strong{font-size:14px;line-height:1.45;min-height:0}
 .main .product .price{font-size:12px}
 .main .product .price b{font-size:17px}
 .main .product .muted{font-size:12px}
 .main .product .cta{font-size:13px;padding:10px 6px}
 .main .nrx-product-details h1{font-size:clamp(25px,7vw,31px)}
 .main .nrx-product-lead{font-size:16px}
 .main .nrx-info p{font-size:16px;line-height:1.7}
 .main .nrx-cat-label,.main .nrx-subcategory-label{font-size:14px}
 .main .nrx-store-name b{font-size:15px}
}

/* Existing product page: size options for one exact model/color. */
.nrx-sizes{margin:18px 0 10px}
.nrx-sizes-label{display:block;font-size:14px;font-weight:700;margin:0 0 9px;color:#23352c}
.nrx-size-options{display:flex;flex-wrap:wrap;gap:8px}
.nrx-size-option{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:40px;padding:7px 11px;border:1px solid #dce7df;border-radius:7px;font-size:14px;font-weight:650;color:#244433;background:#fff}
.nrx-size-option:hover{border-color:#246248}
.nrx-size-option[aria-current="true"]{color:#fff;background:#246248;border-color:#246248}

