.products-intro p { line-height: 1.8; }
.products-motion-video { display: block; width: 100%; height: 100%; object-fit: cover; }
.products-motion { position: relative; margin-left: 35px; height: 500px; overflow: hidden; border-radius: 20px; background: #f8f5ef; }
.products-motion-image { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; transform-origin: center; will-change: transform; backface-visibility: hidden; animation: products-photo-motion 36s linear infinite; }
.products-motion::after { content: ''; position: absolute; inset: 0; background: linear-gradient(transparent 40%, rgba(25,20,15,.85)); pointer-events: none; }
.products-motion-copy { position: absolute; z-index: 1; left: 25px; right: 25px; bottom: 55px; }
.products-motion-copy h3 { color: #fff; font-size: 25px; margin-bottom: 10px; }
.products-motion-copy p { color: #fff; margin-bottom: 18px; line-height: 1.5; }
.products-motion-toggle { position: absolute; z-index: 2; right: 18px; bottom: 14px; background: rgba(0,0,0,.5); color: #fff; border: 1px solid #fff; border-radius: 5px; padding: 4px 12px; cursor: pointer; }
.products-motion.is-paused .products-motion-image { animation-play-state: paused; }
@keyframes products-photo-motion {
  0%, 100% { transform: translate3d(-.5%, 0, 0) scale(1.05); animation-timing-function: cubic-bezier(.45, 0, .55, 1); }
  50% { transform: translate3d(.5%, -.5%, 0) scale(1.10); animation-timing-function: cubic-bezier(.45, 0, .55, 1); }
}
@media(max-width:991px) { .products-motion { margin: 35px 0 0; } }
@media(max-width:575px) { .products-motion { height: 450px; } }
@media(prefers-reduced-motion:reduce) { .products-motion-image { animation: none; } .products-motion-toggle { display: none; } }
.products-slider { margin-left: 35px; position: relative; border-radius: 20px; overflow: hidden; background: #f8f5ef; }
.products-slides { position: relative; height: 420px; }
.products-slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity .8s ease, visibility .8s; }
.products-slide.is-active { opacity: 1; visibility: visible; }
.products-slide > img { display: block; width: 100%; height: 100%; object-fit: cover; }
.products-slide::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 10%, rgba(26, 20, 15, .25) 35%, rgba(26, 20, 15, .9) 100%); }
.products-slide-copy { position: absolute; z-index: 1; bottom: 65px; left: 25px; right: 25px; }
.products-slide-copy h3 { color: #fff; font-size: 25px; margin-bottom: 10px; }
.products-slide-copy p { color: #fff; line-height: 1.5; margin-bottom: 18px; }
.products-slide-enquiry { display: inline-block; background: var(--theme-color); color: #fff; padding: 11px 25px; border-radius: 6px; font-weight: 600; }
.products-slide-enquiry:hover,.products-slide-enquiry:focus-visible { background: #fff; color: var(--theme-color); }
.products-slider-controls { position: absolute; z-index: 2; bottom: 15px; left: 25px; right: 25px; display: flex; justify-content: flex-end; gap: 8px; }
.products-slider-controls button { border: 1px solid rgba(255,255,255,.6); background: rgba(0,0,0,.3); color: #fff; padding: 5px 12px; border-radius: 5px; cursor: pointer; }
.products-slider-controls button:hover,.products-slider-controls button:focus-visible { background: var(--theme-color); }
@media(max-width:991px) { .products-slider { margin: 35px 0 0; } }
@media(max-width:575px) { .products-slides { height: 380px; } .products-slide-copy { left: 20px; right: 20px; } }
@media(prefers-reduced-motion:reduce) { .products-slide { transition: none; } }
.products-image-holder { margin-left: 35px; min-height: 350px; border-radius: 20px; background: #f8f5ef; border: 1px solid #eee5da; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 22px; color: var(--theme-color); text-align: center; padding: 30px; }
.products-image-holder i { font-size: 64px; }
.products-image-holder span { font-family: 'Quicksand', sans-serif; font-weight: 600; font-size: 24px; }
.product-categories { background: #f8f5ef; }
.product-column { display: flex; margin-bottom: 30px; }
.product-card { width: 100%; background: #fff; border-radius: 20px; overflow: hidden; padding: 0 0 30px; text-align: center; display: flex; flex-direction: column; align-items: center; }
.product-image { display: block; width: 100%; aspect-ratio: 1; overflow: hidden; margin-bottom: 25px; position: relative; background: linear-gradient(145deg, #f1d6ef, #dbc5e5); cursor: zoom-in; }
.product-column:nth-child(2) .product-image { background: linear-gradient(145deg, #f2d9d5, #e5bebb); }
.product-column:nth-child(3) .product-image { background: linear-gradient(145deg, #f3e8d3, #e4d1ac); }
.product-column:nth-child(4) .product-image { background: linear-gradient(145deg, #eee3e7, #dbc5cf); }
.product-image img { display: block; width: 100%; height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.product-card h3 { font-size: 21px; line-height: 1.4; margin: 0 15px 22px; }
.product-enquiry { margin-top: auto; display: inline-block; color: var(--theme-color); border: 1px solid var(--theme-color); border-radius: 30px; padding: 9px 30px; line-height: 22px; transition: .2s; }
.product-enquiry:hover,.product-enquiry:focus-visible { background: var(--theme-color); color: #fff; }
@media(max-width:991px) { .products-image-holder { margin: 35px 0 0; } }
@media(max-width:767px) { .products-intro,.product-categories { padding: 60px 0 40px; } }
