/* Softer, app-like catalogue: generous imagery, rounded cards and simple tabs. */
:root{--line:#e9e9ed}
.button{border-radius:30px;min-height:48px}
.collection{padding-top:66px}
.section-top h2{font-size:38px}
.collection-controls{position:sticky;top:86px;z-index:8;background:#fff;flex-direction:row;align-items:center;gap:16px;padding:15px 0 0;margin-top:32px;border-bottom:1px solid #e4e5e8}
.filters{display:flex;flex-wrap:nowrap;gap:19px;overflow-x:auto;max-width:calc(100% - 160px);scrollbar-width:none;min-width:0}
.filters::-webkit-scrollbar{display:none}
.filter{border:0;border-radius:0;padding:13px 2px 16px;font-size:12px;color:#85858a;border-bottom:2px solid transparent;flex-shrink:0}
.filter.active{background:transparent;color:#171717;border:0;border-bottom:2px solid #171717;font-weight:700}
.filter:hover:not(.active){background:transparent;color:#333}
.filter span{font-size:9px;margin-left:5px;color:#a0a0a5}
.filter.active span{color:#777}
.sort-label{padding:0 0 8px;font-size:10px;flex-shrink:0}
.sort-label select{background:#f5f5f7;border-radius:25px;padding:10px 9px}
.results-status{padding-top:21px;padding-bottom:17px;font-size:10px}
.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}
.product-card{border:1px solid #e5e5e9;border-radius:22px;background:#fff;overflow:hidden;transition:box-shadow .2s,border-color .2s}
.product-card:hover{box-shadow:0 10px 30px #00000008;border-color:#d7d7dc}
.product-image-link{aspect-ratio:1.35;background:#fafaf9;border-radius:21px 21px 0 0}
.product-image-link img{height:78%;width:85%}
.product-badge{top:17px;left:auto;right:17px;border-radius:30px;background:#eeeeef;font-size:8px;padding:7px 11px;letter-spacing:.03em}
.product-image-link .view-label{left:20px;bottom:13px;background:#fff;padding:5px 9px;border-radius:15px}
.product-info{position:relative;padding:37px 21px 19px;border-top:1px solid #ededee}
.brand-stamp{position:absolute;top:-29px;left:20px;width:58px;height:58px;display:grid;place-items:center;border:4px solid white;border-radius:16px;background:#141414;color:white;box-shadow:0 2px 9px #0000000d;font-family:var(--display);font-size:10px;font-weight:750;letter-spacing:-.3px;line-height:1.1;text-align:center;padding:3px;z-index:2;overflow:hidden}
.brand-stamp.long-brand{font-size:8px}
.product-info .save-product{right:17px;top:12px;width:33px;height:33px;background:white;border-radius:50%;color:#76767c}
.product-info .save-product svg{width:21px;height:21px;stroke-width:1.5}
.product-info .save-product.selected{color:#111}
.product-meta{margin:0;font-size:8px;letter-spacing:.09em;padding-right:35px;color:#9a9a9e}
.product-meta span+span{display:none}
.product-name{font-size:17px;font-weight:600;letter-spacing:-.35px;padding:8px 30px 5px 0;line-height:1.3}
.product-model{font-size:12px;color:#85858b;line-height:1.6;min-height:19px}
.product-bottom{padding-top:15px;margin-top:12px;border-top:1px solid #f0f0f2}
.price{font-size:16px;letter-spacing:-.3px;font-weight:550}
.quick-add{border:0;border-radius:22px;padding:0 13px;height:34px;width:auto;display:flex;gap:8px;background:#f1f1f3;color:#1b1b1d;font-size:11px}
.quick-add svg{width:13px;height:13px}
.quick-add:hover{background:#141414;color:#fff}
.feature{border-radius:24px}
.detail-photo{border-radius:24px}
.detail-tags span{background:#f5f5f6;border:0;padding:9px 14px}
.quantity{border-radius:24px;overflow:hidden}
dialog{border-radius:24px;padding:30px}
.cart-dialog{border-radius:24px 0 0 24px}
.order-summary,.success-note{border-radius:18px}
form input,form textarea,form select{border-radius:12px}
.search-input-wrap{border:1px solid #e5e5e9;padding:0 14px;background:#f7f7f8;border-radius:16px}
.search-result{border-radius:12px;padding-left:8px;padding-right:8px}
.search-result:hover{background:#f7f7f8}
.mobile-nav{display:none}
#toast{border-radius:24px}
@media(min-width:1600px){.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px) and (min-width:761px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-controls{gap:12px}.filters{gap:15px}.sort-label{font-size:0}}
@media(max-width:760px){
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .header{height:70px;border-bottom:1px solid #f0f0f2}
  .header-actions{gap:8px}
  .header-actions .icon-button{width:32px;height:32px;background:#f6f6f8;border-radius:50%}
  .header .saved-button{display:none}
  .header-actions .bag-button{gap:5px;padding-left:6px}
  .section-shell{padding-left:5%;padding-right:5%}
  .collection{padding-top:28px;padding-bottom:46px}
  .section-top h2{font-size:28px;line-height:1.2;letter-spacing:-1px;margin-top:12px}
  .section-top .eyebrow{font-size:8px;letter-spacing:.12em}
  .collection-intro{display:none}
  .collection-controls{top:70px;flex-direction:column;align-items:stretch;gap:0;margin-top:20px;padding:0;border:0;box-shadow:0 1px 0 #e9e9ed}
  .filters{max-width:100%;width:100%;gap:20px}
  .filter{font-size:12px;padding:14px 1px 12px}
  .filter span{font-size:8px;margin-left:4px}
  .sort-label{padding:8px 0 9px;align-self:flex-end;font-size:9px}
  .sort-label select{font-size:9px;padding:7px 9px}
  .results-status{padding-top:18px;padding-bottom:13px;font-size:9px}
  .product-grid{grid-template-columns:1fr;gap:26px}
  .product-card{border-radius:20px}
  .product-image-link{aspect-ratio:auto;height:clamp(220px,65vw,330px);border-radius:19px 19px 0 0}
  .product-image-link img{height:80%;width:82%}
  .product-info{padding:37px 18px 16px}
  .brand-stamp{left:17px;top:-27px;width:55px;height:55px;border-radius:15px}
  .product-meta{font-size:8px}
  .product-name{font-size:17px;line-height:1.35;padding-top:7px}
  .product-model{font-size:12px}
  .product-bottom{margin-top:11px;padding-top:13px}
  .price{font-size:16px}
  .quick-add{height:35px;padding:0 14px;font-size:11px}
  .product-info .save-product{right:12px;top:13px}
  .product-badge{right:14px;top:14px;font-size:7px;padding:6px 9px}
  .mobile-nav{position:fixed;left:0;right:0;bottom:0;z-index:12;height:calc(68px + env(safe-area-inset-bottom));padding:9px 8px calc(8px + env(safe-area-inset-bottom));background:#fffffff5;backdrop-filter:blur(20px);border-top:1px solid #e9e9ed;display:grid;grid-template-columns:repeat(5,1fr)}
  .mobile-nav>a,.mobile-nav>button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:9px;color:#95959e;padding:0;line-height:1.1}
  .mobile-nav svg{width:21px;height:21px;stroke-width:1.5}
  .mobile-nav .active{color:#111;font-weight:600}
  .mobile-nav .active:before{content:'';position:absolute;width:25px;height:3px;background:#111;border-radius:4px;top:-9px}
  .mobile-bag-count{position:absolute!important;top:0;left:calc(50% + 5px);width:15px;height:15px;background:#111;color:#fff;border:2px solid white;border-radius:50%;display:grid!important;place-items:center;font-size:7px!important}
  .mobile-bag-count:empty{display:none!important}
  #toast{bottom:calc(83px + env(safe-area-inset-bottom));font-size:11px}
  .footer{padding-bottom:27px}
  .feature{border-radius:20px}
  .cart-dialog{height:calc(100dvh - 74px);max-height:calc(100dvh - 74px);margin:12px auto auto;width:calc(100% - 20px);border-radius:22px;padding:22px}
  dialog{max-height:calc(100dvh - 100px);border-radius:22px;padding:23px}
  .search-dialog{margin-top:20px}
}
