/* Complete original images, with live aspect ratios set on each image load. */
.fp-catalog-grid.grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px!important;align-items:stretch}
.fp-catalog-grid>*{min-width:0}
.fp-catalog-card{display:flex!important;flex-direction:column;min-width:0!important;min-height:0!important;height:100%;overflow:hidden;border:1px solid #e5e5e5;border-radius:4px;background:#fff;transition:border-color .2s,box-shadow .2s}
.fp-catalog-card>a.fp-product-card-image,.fp-series-cover{display:block!important;position:relative;flex:none;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;aspect-ratio:var(--fp-catalog-image-ratio,1)!important;overflow:hidden;background:#fff!important}
.fp-catalog-card a.fp-product-card-image img.fp-product-card-image-media,.fp-series-cover img.fp-series-cover-media{object-fit:contain!important;object-position:center!important;transform:none!important;scale:1!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;box-sizing:border-box;padding:6%!important;transition:transform .32s ease!important;will-change:auto!important}
.fp-catalog-card-body{display:flex;flex:1;flex-direction:column;gap:12px;padding:20px!important;min-width:0}
.fp-catalog-card-title{font-size:18px!important;line-height:1.5!important;min-width:0;overflow-wrap:anywhere}
.fp-catalog-card-body>p{font-size:14px!important;line-height:1.7!important;height:auto!important;margin:0}
.fp-catalog-card-body>div:last-child{margin-top:auto;font-size:17px!important;padding-top:14px!important}
.fp-related-products{min-width:0}
.fp-related-products>div:first-child{flex-wrap:wrap;align-items:baseline}
.fp-related-products>div:first-child>a{overflow-wrap:anywhere}
.fp-related-viewport{position:relative;padding-bottom:58px}
.fp-related-track{display:flex!important;align-items:stretch;gap:24px!important;scroll-snap-type:x mandatory;scrollbar-width:thin;overscroll-behavior-x:contain}
.fp-related-products [data-related-product-card].fp-related-item{flex:0 0 calc((100% - 24px)/2)!important;width:auto!important;min-width:0!important;max-width:100%!important;scroll-snap-align:start}
.fp-related-products .fp-related-arrow{position:absolute!important;top:auto!important;bottom:0!important;display:flex!important;align-items:center;justify-content:center;width:40px!important;height:40px!important;transform:none!important;left:auto!important;right:0!important;margin:0!important;border:1px solid #d5d5d5;border-radius:50%;background:#fff;color:#222;font-size:22px;line-height:1;cursor:pointer}
.fp-related-products .fp-related-arrow:first-of-type{right:52px!important}
.fp-related-products .fp-related-arrow:hover{background:#f4f2ee;border-color:#222}
.fp-related-products .fp-related-arrow:focus-visible{outline:2px solid var(--brand-accent,#b59255);outline-offset:3px}
/* Padding plus bounded frames leaves room for 8% zoom without cropping any
   original pixels. Touch devices and narrow mobile layouts never scale. */
@media(min-width:768px) and (hover:hover) and (pointer:fine){
  .fp-catalog-card:hover{border-color:#c7c2b8;box-shadow:0 8px 24px #00000008}
  .fp-catalog-card:hover a.fp-product-card-image img.fp-product-card-image-media,.fp-series-cover:hover img.fp-series-cover-media{transform:scale(1.08)!important}
}

/* Keep image focus accessible without outlining the internal image rectangle. */
.fp-catalog-card>a.fp-product-card-image:focus{outline:none!important}
.fp-catalog-card:has(>.fp-product-card-image:focus-visible){outline:2px solid var(--brand-accent,#b59255);outline-offset:-2px}
.fp-related-carousel-v2 .fp-related-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:24px;min-width:0}
.fp-related-carousel-v2 .fp-related-controls{display:flex;align-items:center;gap:10px;flex:none}
.fp-related-carousel-v2 .fp-related-controls[hidden]{display:none!important}
.fp-related-products .fp-related-controls .fp-related-arrow{position:static!important;inset:auto!important;translate:none!important;transform:none!important;width:56px!important;height:48px!important;flex:none;border:1px solid #d4d0c9;border-radius:6px;background:#fff;color:#202020;box-shadow:none;transition:background-color .18s,color .18s,border-color .18s}
.fp-related-controls .fp-related-arrow svg{display:block;pointer-events:none}
.fp-related-controls .fp-related-arrow:hover:not(:disabled){background:#202020;color:#fff;border-color:#202020}
.fp-related-controls .fp-related-arrow:disabled{color:#c9c5bf;border-color:#eeece8;background:#faf9f7;cursor:default}
.fp-related-carousel-v2 .fp-related-viewport{padding-bottom:0}
.fp-related-carousel-v2 .fp-related-track{scrollbar-width:none}
.fp-related-carousel-v2 .fp-related-track::-webkit-scrollbar{display:none}
.fp-related-track img{-webkit-user-drag:none;user-select:none}
.fp-related-track.is-dragging{scroll-snap-type:none!important;scroll-behavior:auto!important;cursor:grabbing!important;user-select:none}
.fp-related-track.is-dragging *{cursor:grabbing!important;user-select:none!important}
.fp-related-track.is-dragging .fp-catalog-card:hover a.fp-product-card-image img.fp-product-card-image-media{transform:none!important;transition:none!important}
.fp-related-track:focus-visible{outline:2px solid var(--brand-accent,#b59255);outline-offset:3px}
@media(hover:hover) and (pointer:fine){.fp-related-track,.fp-related-track a{cursor:grab}}
@media(max-width:639px){
 .fp-related-carousel-v2 .fp-related-header-actions{width:100%;justify-content:space-between;gap:14px}
 .fp-related-header-actions>a{font-size:11px;line-height:1.7;flex:1;min-width:0}
 .fp-related-products .fp-related-controls .fp-related-arrow{width:48px!important;height:44px!important}
}
@media(prefers-reduced-motion:reduce){.fp-catalog-card,.fp-product-card-image-media,.fp-series-cover-media{transition:none!important}}
@media(max-width:767px),(hover:none),(pointer:coarse){
  .fp-catalog-card a.fp-product-card-image img.fp-product-card-image-media,.fp-catalog-card:hover a.fp-product-card-image img.fp-product-card-image-media,.fp-series-cover img.fp-series-cover-media,.fp-series-cover:hover img.fp-series-cover-media{transform:none!important;transition:none!important}
}
@media(max-width:639px){
  .fp-catalog-grid.grid{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
  .fp-related-products [data-related-product-card].fp-related-item{flex-basis:100%!important}
  .fp-related-track{gap:16px!important}
  .fp-catalog-card-body{padding:18px!important}
  .fp-catalog-card-title{font-size:18px!important}
}

/* Text participates in shared row tracks; images keep their live aspect ratio. */
.fp-catalog-card .fp-catalog-card-title{height:auto!important;min-height:0!important;max-height:none!important;display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important;white-space:normal!important;overflow-wrap:anywhere}
.fp-catalog-grid .fp-catalog-card .fp-catalog-card-body>p,.fp-related-products .fp-catalog-card .fp-catalog-card-body>p{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden!important;white-space:normal!important;overflow-wrap:anywhere;line-height:1.7!important;max-height:none!important;min-height:0!important}
@supports (grid-template-rows:subgrid){
  .fp-catalog-grid.grid{grid-auto-flow:row;grid-auto-rows:auto}
  .fp-catalog-grid>.fp-catalog-card,.fp-related-item>.fp-catalog-card{display:grid!important;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;grid-row:span 4;row-gap:12px;height:auto!important}
  .fp-catalog-card>.fp-product-card-image{grid-row:1;align-self:center}
  .fp-catalog-card>.fp-catalog-card-body{display:contents!important}
  .fp-catalog-card-body>.fp-catalog-card-title{grid-row:2;align-self:start;margin:0 20px!important}
  .fp-catalog-card .fp-catalog-card-body>p{grid-row:3;align-self:start;margin:0 20px!important}
  .fp-catalog-card .fp-catalog-card-body>div:last-child{grid-row:4;align-self:start;margin:0 20px 20px!important;padding-top:14px!important}
  .fp-related-track{display:grid!important;grid-auto-flow:column;grid-auto-columns:calc((100% - 24px)/2);grid-template-rows:repeat(4,auto)}
  .fp-related-products .fp-related-item{display:grid!important;grid-row:1/span 4;grid-template-rows:subgrid;grid-template-columns:minmax(0,1fr);min-width:0!important}
  @media(max-width:639px){
    .fp-related-track{grid-auto-columns:100%}
    .fp-catalog-card-body>.fp-catalog-card-title,.fp-catalog-card .fp-catalog-card-body>p{margin-inline:18px!important}
    .fp-catalog-card .fp-catalog-card-body>div:last-child{margin:0 18px 18px!important}
  }
}
