/* /public/assets/littoral/design-final.css */
:root{--design-control:48px}
button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.topbar.public-topbar{position:sticky;top:0;z-index:120}
.public-topbar button,.public-topbar .button,.public-topbar summary{border-radius:999px}
.public-topbar .user-menu>summary{background:var(--red);border-color:var(--red);color:#fff}
.design-favorites-nav{position:relative;display:inline-flex;gap:4px;align-items:center;justify-content:center}
.design-favorites-nav [data-favorites-count]{font-size:11px}
.mobile-favorites-label{display:none}
body.design-menu-open{overflow:hidden}
.design-dialog{position:fixed;inset:0;margin:auto;padding:22px;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--ink);box-shadow:0 24px 90px #0005;max-width:calc(100vw - 28px);max-height:calc(100dvh - 28px);overflow:auto;overscroll-behavior:contain}
.design-dialog:not([open]){display:none}
.design-dialog::backdrop{background:#17233088;backdrop-filter:blur(5px)}
.design-dialog-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.design-dialog-heading h2{margin:0;flex:1;font-size:21px;min-width:0;overflow-wrap:anywhere}
.design-dialog-heading>[data-design-close]{border-radius:50%;width:48px;min-width:48px;min-height:48px;padding:8px;font-size:28px;line-height:1}
.design-menu-dialog{width:430px;padding:0}
.design-menu-content{padding:20px}
.design-menu-dialog .design-dialog-heading{gap:10px}
.design-menu-dialog #publicNavigation{display:grid!important;position:static!important;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;width:100%;max-height:none;padding:0;border:0;background:transparent;box-shadow:none;overflow:visible}
.design-menu-dialog #publicNavigation>a,.design-menu-dialog #publicNavigation>.design-favorites-nav,.design-menu-dialog #publicNavigation .public-dropdown-row{width:100%;min-width:0;min-height:56px;margin:0;padding:10px 8px;border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--ink);text-align:center;display:flex;justify-content:center;align-items:center;font-size:14px;font-weight:650;text-decoration:none}
.design-menu-dialog #publicNavigation>.public-dropdown{width:100%;max-width:none;margin:0}
.design-menu-dialog #publicNavigation .public-dropdown-row{position:relative;padding:0 40px 0 12px}
.design-menu-dialog #publicNavigation .public-dropdown-row>a{min-height:54px;display:flex;align-items:center;justify-content:center;padding:8px 0;white-space:normal;font-size:14px;flex:1}
.design-menu-dialog #publicNavigation .public-dropdown-toggle{position:absolute;right:3px;top:50%;transform:translateY(-50%);width:38px;height:48px;min-height:48px;border-radius:50%;padding:10px}
.design-menu-dialog #publicNavigation .public-dropdown.is-open{grid-column:1/-1}
.design-menu-dialog #publicNavigation .public-submenu{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;background:transparent;border:0;box-shadow:none;margin:10px 0 0;padding:0}
.design-menu-dialog #publicNavigation .public-submenu a{display:flex;align-items:center;justify-content:center;min-height:56px;padding:10px;border:1px solid var(--line);border-radius:20px;white-space:normal;font-size:13px;text-align:center;background:var(--bg)}
.design-menu-dialog .mobile-menu-controls:empty{display:none!important}
.design-menu-dialog .navbar-search{display:flex!important;width:100%;max-width:none;margin:0 0 18px;min-height:52px;border-radius:999px}
.design-menu-dialog .navbar-search input{min-width:0;width:100%}
.design-menu-dialog [data-design-menu-account]{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.design-menu-dialog [data-design-menu-account]>.button,.design-menu-dialog [data-design-menu-account] button{width:100%;min-height:56px;border-radius:999px;justify-content:center;text-align:center}
.design-menu-dialog .user-menu>summary{display:none}
.design-menu-dialog .user-menu>nav{position:static;display:grid;gap:10px;min-width:0;padding:0;background:transparent;border:0;box-shadow:none}
.design-menu-dialog .user-menu>nav>.button,.design-menu-dialog .user-menu form{width:100%;max-width:none}
.design-menu-dialog [data-design-menu-tools]:empty{display:none}
.design-menu-dialog .mobile-favorites-label{display:inline}
.design-menu-dialog #publicNavigation>.design-favorites-nav svg{width:18px;height:18px}
.design-menu-dialog #publicNavigation>.design-favorites-nav{flex-wrap:wrap;gap:4px}
.design-menu-dialog .design-favorites-nav [data-favorites-count]{order:3}
.design-menu-dialog .mobile-menu-controls{display:none!important}
.design-dialog-heading .design-theme-switch{position:relative;isolation:isolate;display:flex;justify-content:space-between;align-items:center;min-width:104px;width:104px;height:52px;min-height:52px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--muted)}
.design-theme-thumb{position:absolute;left:5px;top:5px;z-index:-1;width:40px;height:40px;border-radius:50%;background:var(--surface);box-shadow:0 2px 8px #0002;transition:transform .2s ease}
.design-theme-switch svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.design-theme-switch svg:first-of-type{color:var(--red)}
html[data-theme=dark] .design-theme-thumb{transform:translateX(52px)}
html[data-theme=dark] .design-theme-switch svg:first-of-type{color:var(--muted)}
html[data-theme=dark] .design-theme-switch svg:last-of-type{color:var(--red)}
/* Product cards and swipe galleries. */
.catalogue-grid{gap:22px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.product-card{border-radius:24px;box-shadow:0 4px 18px #00000006;container-type:normal}
.product-card .product-body{padding:22px;gap:10px}
.product-card h2{font-size:18px}
.product-card .product-description{font-size:13px;min-height:0}
.design-card-media,.design-detail-media{position:relative;min-width:0;background:#fff;color:#26303d}
.design-gallery{position:relative;min-width:0}
.design-photo-rail{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:thin;overscroll-behavior-x:contain;touch-action:pan-x pan-y;cursor:grab;-webkit-overflow-scrolling:touch}
.design-photo-rail.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}
.design-photo-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start;display:flex;align-items:center;justify-content:center;aspect-ratio:1.4;padding:24px;background:#fff;color:#667384}
.design-photo-slide>button{border:0;border-radius:0;background:transparent;width:100%;height:100%;padding:0;display:flex;align-items:center;justify-content:center;cursor:zoom-in;touch-action:pan-x pan-y}
.design-photo-slide img{display:block;width:100%;height:100%;object-fit:contain;max-height:350px;pointer-events:none;user-select:none}
.design-photo-counter{position:absolute;right:14px;bottom:35px;background:#fffE;border:1px solid #e1e5eb;color:#667384;border-radius:999px;padding:4px 10px;font-size:11px;pointer-events:none}
.design-photo-hint{display:block;text-align:center;padding:5px;background:#fff;color:#667384;font-size:11px}
.design-photo-thumbnails{display:flex;gap:8px;overflow:auto;padding:12px 16px;background:#fff}
.design-photo-thumbnails button{border:1px solid #e1e5eb;border-radius:14px;padding:5px;background:#fff;flex:0 0 60px;height:60px;min-height:60px}
.design-photo-thumbnails img{width:100%;height:100%;object-fit:contain}
.design-photo-thumbnails button[aria-pressed=true]{border-color:#d92531;box-shadow:0 0 0 1px #d92531}
.design-favorite{position:absolute;top:14px;right:14px;width:48px;height:48px;min-height:48px;display:flex;align-items:center;justify-content:center;padding:12px;border:1px solid #e1e5eb;border-radius:50%;background:#fff;color:#d92531;z-index:2}
.design-favorite svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8}
.design-favorite[aria-pressed=true] svg{fill:currentColor}
.compatible-content{position:relative;min-width:0;padding-top:4px}
.compatible-content>.design-favorite{position:static;float:right;width:44px;height:44px;min-height:44px;margin:0 0 6px 6px}
/* Every Add stays an Add. The field shows the already selected quantity. */
[data-sync-quantity]{--product-control-size:var(--design-control);display:grid!important;grid-template-columns:var(--design-control) minmax(0,1fr) var(--design-control);gap:10px;width:100%;align-items:center}
[data-sync-quantity] .product-quantity-stepper,[data-sync-quantity]:has([data-product-view]) .product-quantity-stepper{grid-column:1/3;grid-row:1;display:flex;border:1px solid var(--line);box-shadow:none;border-radius:999px;overflow:hidden;min-height:var(--design-control);background:var(--surface)}
[data-sync-quantity]:has([data-product-view]) .product-quantity-stepper{grid-column:2}
[data-sync-quantity] .product-quantity-stepper input{font-size:18px;min-width:30px!important;width:30px!important;flex:1 1 30px!important;height:var(--design-control);min-height:var(--design-control);padding:0!important}
[data-sync-quantity] .product-quantity-stepper button{height:var(--design-control);min-height:var(--design-control);min-width:var(--design-control);width:var(--design-control);flex:0 0 var(--design-control);padding:0;border:0;border-radius:0;font-size:25px}
[data-sync-quantity] [data-quantity-apply]{grid-column:1/-1;grid-row:2;min-height:54px;height:auto;width:100%;border-radius:999px;padding:13px 18px;font-size:15px}
[data-sync-quantity] [data-product-remove],[data-sync-quantity] a[data-product-view]{grid-row:1;min-width:var(--design-control);width:var(--design-control);height:var(--design-control);min-height:var(--design-control);border-radius:50%;padding:11px}
[data-sync-quantity] [data-product-remove]{grid-column:3}
.product-card [data-sync-quantity] .icon{color:#d92531;background:#fff;border:2px solid #d92531}
html[data-theme=dark] .product-card [data-sync-quantity] .icon{border-color:#fff}
.product-card .card-action-row{margin-top:auto;padding-top:10px}
/* Fiche: photo, purchase, complements, description, then documents. */
.product-sheet-grid{display:grid;grid-template-columns:minmax(340px,.88fr) minmax(0,1.12fr);gap:24px;align-items:start}
.product-sheet-grid>.design-purchase-card{grid-column:1;grid-row:1/span 3;position:sticky;top:100px;border:1px solid var(--line);border-radius:24px;background:var(--surface);overflow:hidden;min-width:0}
.design-purchase-card>.product-sheet-media,.design-purchase-card>.product-sheet-purchase{margin:0;border:0;border-radius:0;box-shadow:none;padding:0}
.design-purchase-card .product-sheet-media>.panel{margin:0;padding:0;border:0;border-radius:0}
.design-purchase-card>.product-sheet-purchase{border-top:1px solid var(--line);padding:22px}
.product-sheet-grid>.compatible-products{grid-column:2;grid-row:1;width:auto;position:static}
.product-sheet-grid>.product-sheet-info{grid-column:2;grid-row:2}
.product-sheet-grid>.product-sheet-documents{grid-column:2;grid-row:3;min-width:0}
.product-sheet-grid>.panel,.product-sheet-documents>.panel{border-radius:22px;margin:0;padding:24px}
.product-sheet-info h1{font-size:26px;line-height:1.25;overflow-wrap:anywhere}
.compatible-product{display:grid;grid-template-columns:76px minmax(0,1fr);gap:14px;padding-block:20px}
.compatible-image{width:76px;height:76px;background:#fff;border-radius:14px;overflow:hidden}
.compatible-image img{width:100%;height:100%;object-fit:contain}
.compatible-content form{margin-top:12px}
.compatible-mount{grid-column:1/-1}
.product-document-link{min-height:64px}
.design-product-video{width:100%;max-height:400px}
.design-photo-dialog{width:min(1000px,calc(100vw - 28px));padding:18px}
.design-photo-modal-body{position:relative}
.design-photo-dialog .design-photo-slide{height:min(68dvh,720px);aspect-ratio:auto;padding:20px 64px}
.design-photo-dialog .design-photo-slide img{max-height:100%}
.design-photo-dialog .design-photo-counter{bottom:16px}
.design-photo-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;min-height:48px;padding:0;border:1px solid #e1e5eb;border-radius:50%;font-size:36px;background:#fff;color:#26303d;box-shadow:0 3px 12px #0002}
.design-photo-arrow.previous{left:6px}.design-photo-arrow.next{right:6px}
.design-photo-arrow:disabled{opacity:.3;cursor:default}
.design-document-dialog{width:min(1100px,calc(100vw - 28px));height:min(92dvh,1100px);overflow:hidden;padding:18px;flex-direction:column}
.design-document-dialog[open]{display:flex}
.design-document-dialog .design-dialog-heading{flex:none;flex-wrap:wrap;margin-bottom:8px;gap:8px}
.design-document-dialog h2{font-size:16px}
.design-document-zoom{display:flex;gap:6px;margin-left:auto}
.design-document-zoom button{min-height:44px;border-radius:999px;padding:8px 14px}
.design-document-pages{overflow:auto;flex:1;min-height:0;overscroll-behavior:contain;background:#555b65;padding:12px;border-radius:12px}
.design-document-stack{min-width:100%;display:grid;gap:12px}
.design-document-stack[hidden]{display:none!important}
.design-pdf-page{width:100%;min-height:50vh;background:#fff;box-shadow:0 2px 10px #0003;display:flex;align-items:center;justify-content:center;color:#26303d}
.design-pdf-page:has(canvas){min-height:0}
.design-pdf-page canvas{display:block;width:100%;height:auto}
.design-favorites-dialog{width:1050px}
.design-favorites-dialog .catalogue-grid{margin-top:22px;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}
/* The existing guest and authenticated carts retain their secure data flow. */
.public-topbar .navbar-cart-panel{border-radius:24px;padding:20px;max-height:calc(100dvh - 110px);overflow-y:auto;width:min(480px,calc(100vw - 28px))}
.public-topbar .navbar-cart-panel button,.public-topbar .navbar-cart-panel .button{border-radius:999px;min-height:var(--design-control)}
.guest-cart-line{padding:18px 0;border-bottom:1px solid var(--line)}
.guest-cart-line-controls{display:flex;gap:10px;align-items:center;margin-top:12px}
.design-guest-stepper,.design-basket-stepper{display:flex;align-items:center;border:1px solid var(--line);border-radius:999px;overflow:hidden;min-width:0;flex:1}
.design-guest-stepper button,.design-basket-stepper button{width:var(--design-control);min-width:var(--design-control);height:var(--design-control);min-height:var(--design-control);padding:0!important;border:0!important;background:transparent;font-size:25px;border-radius:0!important}
.design-guest-stepper input,.design-basket-stepper input{width:40px!important;min-width:30px!important;flex:1;min-height:var(--design-control);margin:0!important;padding:4px!important;text-align:center;font-size:18px;border:0!important;background:transparent;border-radius:0!important}
.design-basket-stepper label{margin:0;flex:1;min-width:30px}
.design-basket-stepper label input{width:100%!important;box-sizing:border-box}
.basket-line-actions{display:flex;flex-wrap:wrap;gap:10px}
.basket-line-actions>.design-basket-save{display:none}
.basket-line-actions>.danger,.design-cart-remove{width:var(--design-control);min-width:var(--design-control);height:var(--design-control);padding:12px!important;color:var(--red)}
.basket-line-actions>.danger svg,.design-cart-remove svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}
@media(max-width:1200px){.public-topbar>.top-actions>:not([data-public-menu-toggle]):not(.navbar-cart){display:none!important}.public-topbar>.navbar-search{display:none!important}.public-topbar>.brand{flex:1;min-width:0}.public-topbar>.top-actions{margin-left:auto}.public-topbar .public-menu-toggle{display:inline-flex}}
@media(max-width:900px){.product-sheet-grid{display:flex;flex-direction:column;gap:18px}.product-sheet-grid>*{width:100%!important;grid-column:auto!important;grid-row:auto!important}.product-sheet-grid>.design-purchase-card{position:static;order:1}.product-sheet-grid>.compatible-products{order:2}.product-sheet-grid>.product-sheet-info{order:3}.product-sheet-grid>.product-sheet-documents{order:4}}
@media(max-width:760px){:root{--design-control:56px}.design-menu-dialog{max-height:calc(100dvh - 24px)}.product-card .product-body{padding:20px}.catalogue-grid{gap:18px}.design-photo-slide{padding:22px}.design-favorite{width:56px;min-height:56px;height:56px;padding:15px}.compatible-content>.design-favorite{width:48px;min-height:48px;height:48px}.product-sheet-grid>.panel,.product-sheet-documents>.panel{padding:22px 18px}.design-purchase-card>.product-sheet-purchase{padding:20px 18px}[data-sync-quantity] [data-quantity-apply]{min-height:58px;font-size:16px}.design-photo-arrow{width:56px;height:56px;min-height:56px}.design-photo-dialog .design-photo-slide{padding:15px 52px;height:60dvh}.design-photo-arrow.previous{left:0}.design-photo-arrow.next{right:0}.design-photo-dialog{padding:12px}.design-document-dialog{padding:12px}.design-document-dialog .design-dialog-heading h2{flex-basis:calc(100% - 64px)}.design-document-zoom{order:3;margin:0 auto}.design-dialog-heading>[data-design-close]{min-width:56px;width:56px;min-height:56px}.design-menu-dialog .design-dialog-heading>[data-design-close]{min-width:48px;width:48px;min-height:48px}.public-topbar .navbar-cart-panel{position:fixed;left:12px;right:12px;top:calc(var(--mobile-header-height,70px) + 8px);width:auto;max-height:calc(100dvh - var(--mobile-header-height,70px) - 22px)}.design-menu-dialog .design-dialog-heading h2{font-size:20px}.design-menu-content{padding:18px}}
@media(prefers-reduced-motion:reduce){.design-theme-thumb{transition:none}}

.design-card-heading{padding:22px 22px 10px}.design-card-heading .muted{display:block;font-size:12px;margin-bottom:5px}.design-card-heading h2{line-height:1.3;margin:0}.design-card-description{border-top:1px solid var(--line);margin-top:10px;padding-top:14px}.design-card-description .product-tags{margin-bottom:10px}
.product-card .card-action-row [data-sync-quantity]{grid-template-columns:var(--design-control) minmax(0,1fr) var(--design-control)}
.product-card [data-sync-quantity]:has([data-product-view]) .product-quantity-stepper{grid-column:2;grid-row:1}
.product-card [data-sync-quantity]:has([data-product-view]) [data-quantity-apply]{grid-column:1/-1;grid-row:2}
.product-card [data-sync-quantity]:has([data-product-view]) [data-product-remove]{grid-column:3;grid-row:1}

.design-gallery[data-gallery-detail]>.design-photo-counter{bottom:116px}
.product-sheet-grid>.design-purchase-card{grid-row:1}
.design-product-details{grid-column:2;grid-row:1;display:flex;flex-direction:column;gap:24px;min-width:0}
.design-product-details>.panel,.design-product-details>.product-sheet-documents>.panel{border-radius:22px;margin:0;padding:24px}
.design-product-details .product-sheet-documents{min-width:0}
@media(max-width:900px){.product-sheet-grid>.design-product-details{display:contents}.design-product-details>.compatible-products{order:2}.design-product-details>.product-sheet-info{order:3}.design-product-details>.product-sheet-documents{order:4}.design-product-details>*{width:100%;min-width:0;box-sizing:border-box}.design-product-details>.panel,.design-product-details>.product-sheet-documents>.panel{padding:22px 18px}}

/* Four aligned catalogue cards on desktop; two on tablet, one on phones. */
@media(min-width:1201px){.catalogue-grid,.catalogue-shell .catalogue-grid,.catalogue-selection-layout .catalogue-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}}
@media(min-width:701px) and (max-width:1200px){.catalogue-grid,.catalogue-shell .catalogue-grid,.catalogue-selection-layout .catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.catalogue-grid,.catalogue-shell .catalogue-grid,.catalogue-selection-layout .catalogue-grid{grid-template-columns:minmax(0,1fr)}}
.product-card .design-card-heading>.muted{line-height:1.4;height:2.8em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.product-card .design-card-heading h2{line-height:1.35;height:4.05em;min-height:4.05em;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.product-card .card-action-row{margin-top:0}
.product-card .product-body{justify-content:flex-start}
.design-card-media>.design-gallery{padding-bottom:26px}
.design-card-media .design-photo-hint{position:absolute;left:0;right:0;bottom:0;height:26px;box-sizing:border-box}
.design-card-media .design-photo-counter{bottom:35px}
/* Only the contents scroll; the primary action remains in the cart footer. */
.public-topbar .navbar-cart[open]>.navbar-cart-panel{display:flex;flex-direction:column;height:min(740px,calc(100dvh - 110px));max-height:calc(100dvh - 110px);overflow:hidden}
.navbar-cart-panel>.cart-panel-heading,.navbar-cart-panel>.basket-status{flex:none}
.navbar-cart-panel>[data-basket-content]{display:flex;flex:1;min-height:0;overflow:hidden}
.navbar-cart-panel [data-basket-state]{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}
.design-cart-scroll,.design-basket-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}
.navbar-cart-panel .basket-lines{max-height:none;overflow:visible}
.design-cart-footer{flex:none;padding-top:14px;margin-top:10px;border-top:1px solid var(--line);background:var(--surface)}
.design-cart-footer>.primary{display:flex;justify-content:center;width:100%;box-sizing:border-box;min-height:54px}
.design-cart-footer .basket-footer{font-size:11px;margin:8px 0}
.design-cart-footer [data-basket-clear] button{min-height:38px;font-size:12px}
.navbar-cart-panel>.guest-cart-import{flex:none;max-height:120px;overflow:auto}
.design-register-siret small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:6px}
.design-register-siret[hidden]{display:none!important}
@media(max-width:760px){.public-topbar .navbar-cart[open]>.navbar-cart-panel{height:calc(100dvh - var(--mobile-header-height,70px) - 24px);max-height:calc(100dvh - var(--mobile-header-height,70px) - 24px)}.design-cart-footer>.primary{min-height:58px}}
/* Preserve usable controls in four-column catalogues beside the client sidebar. */
.product-card{container-type:inline-size}
@container(max-width:285px){
 .product-card .card-action-row [data-sync-quantity]{grid-template-columns:minmax(0,1fr) var(--design-control)}
 .product-card [data-sync-quantity]:has([data-product-view]) [data-product-view]{grid-column:1;grid-row:1}
 .product-card [data-sync-quantity]:has([data-product-view]) [data-product-remove]{grid-column:2;grid-row:1}
 .product-card [data-sync-quantity]:has([data-product-view]) .product-quantity-stepper{grid-column:1/-1;grid-row:2}
 .product-card [data-sync-quantity]:has([data-product-view]) [data-quantity-apply]{grid-column:1/-1;grid-row:3}
}

/* Compact card headings and unobtrusive swipe galleries. */
.product-card .design-card-heading h2{font-size:15px;line-height:1.3;height:2.6em;min-height:2.6em;-webkit-line-clamp:2}
.product-card .design-photo-hint{display:none!important}
.product-card .design-photo-rail{scrollbar-width:none;-ms-overflow-style:none}
.product-card .design-photo-rail::-webkit-scrollbar{display:none;width:0;height:0}
.design-card-media>.design-gallery{padding-bottom:0}
.design-card-media .design-photo-counter{bottom:12px}
/* Search remains outside the hamburger dialog, below the mobile logo/actions. */
@media(max-width:1200px){
 .topbar.public-topbar{flex-wrap:wrap!important}
 .topbar.public-topbar>.brand{order:0;flex:1 1 auto}
 .topbar.public-topbar>.top-actions{order:1}
 .topbar.public-topbar>.navbar-search{display:flex!important;order:4;flex:1 0 100%;width:100%;max-width:none;min-width:0;margin:4px 0 0;box-sizing:border-box}
 .topbar.public-topbar>.navbar-search input{min-height:42px;font-size:16px}
 .public-topbar .navbar-cart[open]>.navbar-cart-panel{top:calc(var(--mobile-header-height,120px) + 8px);height:calc(100dvh - var(--mobile-header-height,120px) - 24px);max-height:calc(100dvh - var(--mobile-header-height,120px) - 24px)}
}
.catalogue-filter-toolbar{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.catalogue-filter-trigger{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;min-height:48px;padding:10px 20px}
.catalogue-filter-trigger svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round}
.catalogue-filters-dialog{width:760px;max-height:calc(100dvh - 28px)}
.catalogue-filters-dialog .catalogue-filters{display:block!important;margin:0;padding:0;border:0;box-shadow:none}
.catalogue-filters-dialog .filter-primary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;grid-row:auto;grid-column:auto}
.catalogue-filters-dialog .filter-primary-grid label{min-width:0;margin:0;font-size:14px}
.catalogue-filters-dialog .filter-primary-grid select,.catalogue-filters-dialog .filter-primary-grid input{display:block;width:100%;min-width:0;min-height:48px;height:auto;font-size:16px;padding:10px;border-radius:14px;box-sizing:border-box}
.catalogue-filters-dialog .advanced-filters{display:block;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}
.catalogue-filters-dialog .advanced-filters>summary{display:block;border:0;padding:8px 0;grid-column:auto;grid-row:auto;font-size:15px}
.catalogue-filters-dialog .advanced-filters>.filter-primary-grid{padding-top:14px;grid-column:auto;grid-row:auto}
.catalogue-filters-dialog .advanced-filters:not([open])>.filter-primary-grid{display:none}
.catalogue-filters-dialog .filter-footer{display:block;position:sticky;bottom:-22px;margin:18px -4px -4px;padding:14px 4px 4px;background:var(--surface);border-top:1px solid var(--line);z-index:2}
.catalogue-filters-dialog .filter-footer>.actions{display:flex;gap:10px;flex-wrap:wrap;grid-column:auto;grid-row:auto}
.catalogue-filters-dialog .filter-footer>.actions>*{flex:1;min-height:52px;border-radius:999px;font-size:15px;padding:12px}
.catalogue-filters-dialog [data-catalogue-filter-status]{min-height:22px}
@media(max-width:480px){.catalogue-filters-dialog{padding:18px}.catalogue-filters-dialog .filter-primary-grid{grid-template-columns:minmax(0,1fr)}.catalogue-filter-trigger{min-height:56px}}

/* /public/assets/littoral/design-final.css — round navbar filter and two-row card controls. */
.topbar.public-topbar>.top-actions>.navbar-filter{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-width:44px;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink)}
.navbar-filter svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.product-card .card-action-row [data-sync-quantity]{grid-template-columns:var(--design-control) minmax(0,1fr) var(--design-control);gap:10px}
.product-card [data-sync-quantity]:has([data-product-view]) [data-product-view]{grid-column:1;grid-row:1}
.product-card [data-sync-quantity]:has([data-product-view]) .product-quantity-stepper{grid-column:2/-1;grid-row:1}
.product-card [data-sync-quantity]:has([data-product-view]) [data-quantity-apply]{grid-column:1/3;grid-row:2;width:100%;white-space:normal;padding-inline:10px}
.product-card [data-sync-quantity]:has([data-product-view]) [data-product-remove]{grid-column:3;grid-row:2}
@media(max-width:1200px){
 .topbar.public-topbar>.top-actions>.navbar-filter{display:inline-flex!important;order:1}
 .topbar.public-topbar>.top-actions>.navbar-cart{order:2}
}
@media(max-width:760px){
 .topbar.public-topbar>.top-actions>.navbar-filter{flex-basis:48px;width:48px;height:48px;min-width:48px;min-height:48px;padding:12px}
}
