/* New phones share native filters/cart handling with a quieter, consistent layout. */
.ts-phone-catalogue { color:#204d39; }
.ts-phone-catalogue .ts-catalogue-heading { background:#f1f8f4; border:1px solid #deebe3; border-radius:16px; padding:26px 30px; margin:0 0 24px; }
.ts-phone-catalogue .ts-catalogue-heading p { display:block; margin:8px 0 0; font-size:14px; }
.ts-phone-brands { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 24px; }
.ts-phone-brands a { display:flex; align-items:center; gap:24px; padding:10px 16px; background:#fff; border:1px solid #dce8e0; border-radius:9px; color:#28533f; font-size:14px; text-decoration:none; }
.ts-phone-brands a:hover { border-color:#009f62; background:#f4faf6; }
.ts-phone-catalogue .ts-catalogue-filters { border:1px solid #deebe3; border-radius:12px; background:#fff; }
.ts-phone-catalogue .ts-catalogue-filter-content { padding:0 16px 16px; }
.ts-catalogue-filter-content .webshopFilterValues .ts-filter-search { display:block; margin:0 0 10px; color:#677e70; font-size:12px; }
.ts-filter-search input { display:block; width:100%; min-width:0; box-sizing:border-box; border:1px solid #d3e2d9; border-radius:7px; padding:10px; margin-top:5px; background:#fff; color:#204d39; font:inherit; font-size:14px; }
.ts-phone-catalogue #webshopGridView.webshopGridView { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px!important; margin:0!important; width:100%; }
.ts-phone-catalogue #webshopGridView::before,.ts-phone-catalogue #webshopGridView::after { display:none; }
.ts-phone-catalogue #webshopGridView.webshopGridView > .product { width:auto; float:none; margin:0!important; padding:0!important; min-width:0; }
.ts-phone-catalogue #webshopGridView.webshopGridView .product .inner { display:flex!important; padding:20px!important; height:100%; min-height:0!important; box-sizing:border-box; border:1px solid #dfe9e3!important; border-radius:14px!important; background:#fff; box-shadow:none!important; transform:none!important; outline:0; }
.ts-phone-catalogue #webshopGridView.webshopGridView .product .inner:hover { border-color:#82bea0!important; }
.ts-phone-catalogue #webshopGridView .productSingleForm { display:flex!important; flex-direction:column; width:100%; min-width:0; height:100%; }
.ts-phone-catalogue #webshopGridView .product .productImage { display:flex!important; align-items:center; justify-content:center; width:100%!important; height:230px!important; max-width:none!important; margin:0 0 18px!important; }
.ts-phone-catalogue #webshopGridView .product .productImage a { display:flex; align-items:center; justify-content:center; width:100%; height:100%; }
.ts-phone-catalogue #webshopGridView .product .productImage img { width:100%!important; height:100%!important; max-height:230px!important; object-fit:contain; }
.ts-phone-catalogue #webshopGridView .productEntry { display:flex; flex-direction:column; flex:1; width:100%!important; min-width:0; min-height:0; padding:0!important; }
.ts-phone-card-label { color:#008451; font-size:11px; font-weight:600; margin-bottom:7px; }
.ts-phone-catalogue #webshopGridView .product .productTitle { min-height:0!important; margin:0 0 8px!important; }
.ts-phone-catalogue #webshopGridView .product .productTitle a { height:auto!important; min-height:44px; font-size:17px!important; line-height:1.35!important; color:#204d39!important; }
.ts-phone-card-options { min-height:20px; margin:0 0 10px; color:#6d7f74; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.ts-phone-catalogue #webshopGridView .ts-product-rating { margin:0 0 15px; }
.ts-phone-catalogue #webshopGridView .productPrice { font-size:23px!important; }
.ts-phone-catalogue #webshopGridView .ts-product-purchase-row { display:flex; flex-direction:column; align-items:stretch; gap:12px; margin-top:12px; }
.ts-phone-catalogue #webshopGridView .ts-product-basket { width:100%; min-height:44px; box-sizing:border-box; margin:0; padding:11px; }
.ts-phone-catalogue #webshopGridView .ts-basket-label { display:inline; }
.ts-phone-catalogue #webshopGridView .ts-basket-plus,.ts-phone-catalogue #webshopGridView .ts-product-basket svg { display:none; }
.ts-phone-detail > .productTop { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:42px; }
.ts-phone-detail .productPhotoGallery-main { aspect-ratio:1.12; background:#f8faf9; border-color:#e1eae4; }
.ts-phone-detail .productPhotoGallery-main img { padding:32px; }
.ts-phone-detail .productPhotoGallery.gallery-enhanced .productPhotoGallery-grid { display:none; }
.ts-phone-detail .productPhotoGallery.gallery-enhanced .productPhotoGallery-thumbs { display:flex; gap:10px; overflow:auto; margin:14px 0; }
.ts-phone-detail .productPhotoGallery-thumb { width:72px; height:72px; flex:0 0 72px; border:1px solid #dce8e0; border-radius:9px; background:#fff; padding:5px; cursor:pointer; }
.ts-phone-detail .productPhotoGallery-thumb[aria-pressed=true] { border:2px solid #009f62; }
.ts-phone-detail .ts-product-heading h1 { font-size:36px; margin-bottom:20px; }
.ts-phone-detail .ts-product-buybox { background:#fff; border-radius:16px; padding:24px; }
.ts-phone-detail .ts-product-tax { margin-bottom:22px; }
.ts-phone-detail .ts-product-options { gap:20px; }
.ts-phone-detail .ts-product-option.is-fixed { display:block; border:0; padding:0; background:none; }
.ts-phone-detail .ts-product-option.is-fixed legend { float:none; width:auto; padding:0; margin-bottom:7px; color:#30513e; font-weight:600; }
.ts-phone-detail .ts-product-fixed-value { display:inline-flex; align-items:center; min-height:44px; padding:10px 14px; background:#ecf7f0; border:1px solid #008b56; border-radius:9px; color:#28533f; font-size:14px; }
.ts-phone-detail .enhanced .ts-product-option:not(.is-fixed) select { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.ts-phone-detail .ts-phone-choices { display:flex; flex-wrap:wrap; gap:8px; }
.ts-phone-detail .ts-phone-choices[hidden] { display:none; }
.ts-phone-choices button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 14px; border:1px solid #d6e3db; border-radius:9px; background:#fff; color:#28533f; font:inherit; font-size:14px; cursor:pointer; }
.ts-phone-choices button[aria-pressed=true] { border-color:#008b56; background:#ecf7f0; box-shadow:inset 0 0 0 1px #008b56; font-weight:600; }
.ts-phone-choices button:disabled { opacity:.48; cursor:not-allowed; }
.ts-phone-choices button:focus-visible { outline:2px solid #008b56; outline-offset:3px; }
.ts-phone-colour { width:17px; height:17px; border:1px solid #0002; border-radius:50%; flex:none; }
.ts-phone-detail .ts-product-selection { margin:16px 0 0; font-size:13px; }
.ts-phone-detail .ts-product-favorite { text-transform:none; font-size:13px; }
.ts-phone-detail .ts-product-service { display:grid; grid-template-columns:1fr 1fr; gap:14px; padding:22px 0; }
.ts-phone-detail .ts-product-service>div { margin:0; }
.ts-phone-detail .ts-product-service>a { grid-column:1/-1; }
@media(min-width:769px) and (max-width:1100px) {
    .ts-phone-catalogue #webshopGridView.webshopGridView { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:768px) {
    .ts-phone-catalogue .ts-catalogue-heading { padding:20px; margin-bottom:18px; }
    .ts-phone-brands { flex-wrap:nowrap; overflow-x:auto; margin-bottom:18px; padding-bottom:4px; }
    .ts-phone-brands a { flex:none; }
    .ts-phone-catalogue #webshopGridView.webshopGridView { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px!important; }
    .ts-phone-catalogue #webshopGridView.webshopGridView .product .inner { padding:12px!important; }
    .ts-phone-catalogue #webshopGridView .product .productImage { height:165px!important; margin-bottom:12px!important; }
    .ts-phone-catalogue #webshopGridView .product .productImage img { max-height:165px!important; }
    .ts-phone-catalogue #webshopGridView .product .productTitle a { font-size:14px!important; min-height:38px; }
    .ts-phone-catalogue #webshopGridView .productPrice { font-size:19px!important; }
    .ts-phone-catalogue #webshopGridView .ts-product-rating { font-size:11px; }
    .ts-phone-catalogue #webshopGridView .ts-product-stars { font-size:16px; }
    .ts-phone-catalogue #webshopGridView .ts-product-stock { font-size:11px; }
    .ts-phone-catalogue #webshopGridView .ts-product-basket { font-size:12px; }
    .ts-phone-detail > .productTop { gap:24px; }
    .ts-phone-detail .ts-product-heading h1 { font-size:28px; }
    .ts-phone-detail .productPhotoGallery-main img { padding:20px; }
}
@media(max-width:670px) {
    .ts-phone-detail > .productTop { grid-template-columns:minmax(0,1fr); }
    .ts-phone-detail .ts-product-buybox { padding:18px; }
    .ts-phone-detail .ts-product-service { grid-template-columns:minmax(0,1fr); }
}
