/* 0.55: phone/tablet shell. Desktop layout is deliberately outside these rules. */
.gna-mobile-search-toggle,.gna-mobile-nav-next{display:none}
@media(max-width:1024px){
 html:has(body.gna-app){overflow-x:clip}
 body.gna-app{max-width:100%;overflow-x:clip;padding-bottom:0;--gna-bottom-height:0px}
 body.gna-app :is(.gna-app-canvas,.gna-content-scroll,.gna-home,.gna-app-content,.gna-studio-section,.gna-home-products,.gna-home-products>.woocommerce){min-width:0;max-width:100%}
 body.gna-app .gna-content-scroll{overflow-x:clip}
 body.gna-app.gna-viewport-active .gna-content-scroll{overflow-x:hidden}
 body.gna-app .gna-mobile-bar{display:none!important}
 body.gna-app .gna-announcement{min-height:28px;padding-block:3px;letter-spacing:.3px}
 body.gna-app .gna-announcement .gna-icon{width:13px;height:13px;flex:none}
 body.gna-app .gna-header-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:4px 6px;padding:8px 12px 5px;min-height:0;width:100%;max-width:100%}
 body.gna-app .gna-header-row>.gna-logo{grid-column:1/3;grid-row:1;min-width:0;max-width:100%;margin:0}
 body.gna-app .gna-header-row>.gna-logo img{width:min(100%,var(--gna-mobile-logo-width,110px));max-width:100%;height:auto;max-height:46px;object-fit:contain;object-position:left center}
 body.gna-app .gna-header-actions{grid-column:3;grid-row:1;display:flex;gap:0;margin:0;align-items:center;min-width:0}
 body.gna-app .gna-header-actions>a,body.gna-app .gna-mobile-search-toggle{position:relative;display:flex;align-items:center;justify-content:center;flex:none;width:40px;min-width:40px;min-height:44px;padding:8px;border:0;border-radius:8px;background:transparent;color:inherit;box-shadow:none}
 body.gna-app .gna-header-actions .gna-icon{width:22px;height:22px;flex:none}
 body.gna-app .gna-header-actions>a[aria-label="Mon compte"]>span{display:none}
 body.gna-app .gna-header-actions .gna-cart-count,body.gna-app .gna-header-actions .gna-wishlist-count{position:absolute;top:1px;right:0;min-width:16px;height:16px;font-size:9px;line-height:16px;padding:0 3px;text-align:center}
 body.gna-app .gna-header-row>.gna-shell-toggle{grid-column:1;grid-row:2;width:44px;min-height:44px;padding:10px;border-radius:8px;font-size:0}
 body.gna-app .gna-header-row>.gna-shell-toggle>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 body.gna-app .gna-header-row>.gna-shell-toggle .gna-icon{width:21px;height:21px}
 body.gna-app .gna-top-nav{grid-column:2/4;grid-row:2;width:100%;min-width:0;max-width:100%;gap:0;font-size:13px}
 body.gna-app .gna-header-row:not(:has(>.gna-shell-toggle))>.gna-top-nav{grid-column:1/-1}
 body.gna-app .gna-top-nav.gna-top-hide-mobile{display:none}
 body.gna-app .gna-top-nav .gna-top-list{flex:1;min-width:0;max-width:100%;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;gap:4px;padding:2px;scroll-padding-inline:4px}
 body.gna-app .gna-top-list::-webkit-scrollbar{display:none}
 body.gna-app .gna-top-list>.gna-top-item{flex:none}
 body.gna-app .gna-top-nav .gna-top-more{display:none!important}
 body.gna-app .gna-top-link{min-height:40px;padding:9px 8px}
 body.gna-app .gna-top-icon :is(svg,img){width:20px;height:20px}
 body.gna-app .gna-top-sub>summary{height:40px;min-width:30px}
 body.gna-app .gna-top-wrap>.gna-top-link{padding-right:34px}
 body.gna-app .gna-top-list>.gna-top-item>.gna-top-wrap>.gna-top-sub>.gna-top-dropdown{position:fixed;top:var(--gna-mobile-submenu-top,140px);left:12px;right:12px;width:auto;min-width:0;max-width:none;max-height:60dvh;overscroll-behavior:contain;transform:none}
 body.gna-app .gna-mobile-nav-next{display:grid;place-items:center;flex:none;width:32px;min-height:44px;padding:0;border:0;border-radius:7px;background:#ffffff0d;color:inherit;font-size:27px;cursor:pointer;box-shadow:-8px 0 12px #11131840}
 body.gna-app .gna-mobile-nav-next:disabled{opacity:.3;cursor:default}
 body.gna-app :is(.gna-mobile-search-toggle,.gna-mobile-nav-next)[hidden]{display:none!important}
 body.gna-app .gna-header-row>.gna-search{grid-column:1/-1;grid-row:3;width:100%;max-width:100%}
 body.gna-app .gna-mobile-search-dialog{position:fixed;inset:12px 12px auto;margin:0 auto;width:min(560px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:18px;border:1px solid #ffffff24;border-radius:16px;background:#17191f;color:#fff;box-shadow:0 20px 70px #0008;overflow:auto}
 body.gna-app .gna-mobile-search-dialog::backdrop{background:#080b13b3}
 body.gna-app .gna-mobile-search-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
 body.gna-app .gna-mobile-search-heading h2{margin:0;color:inherit;font-size:18px;line-height:1.3}
 body.gna-app .gna-mobile-search-heading button{flex:none;width:44px;height:44px;background:#ffffff10;border:1px solid #ffffff20;border-radius:9px;color:inherit;font-size:26px;padding:0}
 body.gna-app .gna-mobile-search-dialog .gna-search{display:flex;max-width:none;width:100%;margin:0;min-width:0}
 body.gna-app .gna-mobile-search-dialog .gna-search input{font-size:16px;padding:12px;order:0}
 body.gna-app .gna-mobile-search-dialog .gna-search button{order:1;width:44px;height:44px;min-width:44px}
 body.gna-mobile-search-open,body.gna-mobile-search-open .gna-content-scroll{overflow:hidden!important}
 body.gna-app .gna-mobile-search-toggle:focus-visible{outline:2px solid var(--gna-orange,#ff751a);outline-offset:-2px}
 body.gna-app .gna-home :is(.gna-hp-heading,.gna-home-products-heading){min-width:0;flex-wrap:wrap;gap:12px}
 body.gna-app .gna-home :is(.gna-hp-heading,.gna-home-products-heading)>*{min-width:0;max-width:100%;overflow-wrap:anywhere}
}

@media(max-width:760px){
 /* Content controls height; a long slide may extend vertically, never clip its text. */
 body.gna-home-reference .gna-hs-fullscreen{min-height:var(--hs-viewport-height,calc(100svh - var(--gna-shell-edge,125px)));height:auto}
 body.gna-home-reference .gna-hs .gna-hs-top{font-size:9px;letter-spacing:.7px;padding:14px 20px 0;gap:12px}
 body.gna-home-reference .gna-hs .gna-hs-stage{min-height:0}
 body.gna-home-reference .gna-hs .gna-hs-slide{grid-template-columns:minmax(0,1fr);padding:18px 20px;gap:16px;align-content:center;min-height:0}
 body.gna-home-reference .gna-hs.is-ready .gna-hs-slide:not(.is-active){position:absolute;inset:0}
 body.gna-home-reference .gna-hs .gna-hs-copy{max-width:100%}
 body.gna-home-reference .gna-hs .gna-hs-copy :is(h1,h2,.gna-content-title){font-size:var(--hs-title-size-mobile,clamp(32px,9vw,46px));line-height:1.04;letter-spacing:-.015em}
 body.gna-home-reference .gna-hs .gna-hs-kicker{font-size:10px;margin-bottom:10px;letter-spacing:1.3px}
 body.gna-home-reference .gna-hs .gna-hs-text{font-size:var(--hs-text-size-mobile,14px);line-height:1.6;margin-top:var(--hs-text-spacing-mobile,12px);max-width:48ch}
 body.gna-home-reference .gna-hs .gna-hs-actions{margin-top:16px;gap:8px}
 body.gna-home-reference .gna-hs .gna-hs-cta{flex:1 1 calc(50% - 4px);gap:8px;font-size:var(--hs-button-size-mobile,13px);min-height:44px;padding:11px 12px}
 body.gna-home-reference .gna-hs .gna-hs-visual-slot{max-width:100%;gap:10px}
 body.gna-home-reference .gna-hs .gna-hs-visual{height:clamp(155px,calc(var(--hs-viewport-height,640px) * .30),260px);max-width:380px;rotate:0deg;translate:0 0}
 body.gna-home-reference .gna-hs .gna-hs-visual.is-logo{padding:20px}
 body.gna-home-reference .gna-hs .gna-hs-visual.is-pack{height:200px}
 body.gna-home-reference .gna-hs .gna-hs-pack{scale:.7}
 body.gna-home-reference .gna-hs .gna-hs-badge{right:4px;top:6px;transform:none;font-size:10px;padding:6px 9px}
 body.gna-home-reference .gna-hs .gna-hs-controls{position:relative;bottom:auto;padding:0 16px;min-height:48px;gap:12px}
 body.gna-home-reference .gna-hs .gna-hs-labels{overflow-x:auto;scrollbar-width:none;gap:2px;align-items:center}
 body.gna-home-reference .gna-hs .gna-hs-labels::-webkit-scrollbar{display:none}
 body.gna-home-reference .gna-hs .gna-hs-labels button{flex:0 0 36px;min-height:44px;padding:10px 4px;text-align:center;justify-content:center;font-size:11px}
 body.gna-home-reference .gna-hs .gna-hs-labels button>span{display:block;font-size:11px;opacity:1}
 body.gna-home-reference .gna-hs .gna-hs-labels button>b{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 body.gna-home-reference .gna-hs .gna-hs-arrows button{width:36px;min-height:44px}
 body.gna-home-reference .gna-hs .gna-hs-slide.gna-hs-promotion .gna-hs-visual{height:clamp(145px,calc(var(--hs-viewport-height,640px) * .24),210px)}
 body.gna-home-reference .gna-hs .gna-hs-promotion .gna-hs-visual-slot{grid-template-columns:minmax(0,1fr)}
 body.gna-home-reference .gna-hs .gna-hsp-clock{width:100%;max-width:360px;padding:10px 14px}
 body.gna-home-reference .gna-hs .gna-hsp-digits{gap:10px}
 body.gna-home-reference .gna-hs .gna-hsp-digits strong{font-size:25px;letter-spacing:0}
 body.gna-home-reference .gna-hs .gna-hsp-digits small{font-size:8px}
 body.gna-home-reference .gna-hs .gna-hs-promotion:has(.gna-hsp-preview-notice){padding-top:58px}
 body.gna-home-reference .gna-hs .gna-hsp-price .price{font-size:30px;flex-wrap:wrap}
 body.gna-home-reference .gna-home .gna-home-products ul.products{grid-template-columns:repeat(var(--gna-mobile-products,2),minmax(0,1fr))!important;gap:10px;min-width:0;max-width:100%;padding:2px 0 12px;margin:0}
 body.gna-home-reference .gna-home .gna-hp-product-carousel ul.products{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
 body.gna-home-reference .gna-home .gna-hp-product-carousel ul.products::-webkit-scrollbar{display:none}
 body.gna-home-reference .gna-home .gna-home-products ul.products li.gna-home-card{display:flex!important;flex-direction:column;min-width:0;min-height:0!important;padding:10px!important;gap:8px;flex:0 0 calc((100% - (var(--gna-mobile-products,2) - 1)*10px)/var(--gna-mobile-products,2));border-radius:12px}
 body.gna-home-reference .gna-home .gna-home-products ul.products li.gna-home-card .gna-home-product-image{width:100%;padding:25px 0 0;background:#fff;border-radius:9px}
 body.gna-home-reference .gna-home .gna-home-products ul.products li.gna-home-card .gna-home-product-image img{height:clamp(140px,38vw,210px)!important;width:100%;object-fit:contain;transform:none!important;max-height:none;margin:0}
 body.gna-home-reference .gna-home .gna-home-product-info{flex:1;width:100%}
 body.gna-home-reference .gna-home .gna-home-product-info h3{font-size:15px;line-height:1.4;letter-spacing:-.015em;min-height:2.8em;margin:0 0 6px}
 body.gna-home-reference .gna-home .gna-home-product-info h3 a{-webkit-line-clamp:2}
 body.gna-home-reference .gna-home .gna-hp-product-brand{font-size:11px;color:#535d6b;letter-spacing:.3px;margin:0 0 4px;overflow-wrap:anywhere}
 body.gna-home-reference .gna-home .gna-product-subtitle{font-size:12px;color:#59616e;line-height:1.4;margin:0 0 7px}
 body.gna-home-reference .gna-home :is(.gna-product-features,.gna-product-excerpt,.gna-card-category){display:none}
 body.gna-home-reference .gna-home .gna-home-stock{font-size:11px;gap:4px;margin:6px 0}
 body.gna-home-reference .gna-home .gna-home-buy{display:flex;flex-direction:column;align-items:stretch;gap:9px;margin-top:auto;padding-top:8px}
 body.gna-home-reference .gna-home :is(.gna-home-price,.gna-home-price .price){font-size:19px;line-height:1.35;font-weight:800;white-space:normal;overflow-wrap:anywhere}
 body.gna-home-reference .gna-home .gna-home-price del{font-size:11px;font-weight:500}
 body.gna-home-reference .gna-home .gna-home-price ins{text-decoration:none;color:var(--gna-accent)}
 body.gna-home-reference .gna-home .gna-home-products ul.products li.gna-home-card .button{width:100%;min-height:44px;font-size:13px!important;line-height:1.35;padding:9px 6px;margin:0;align-self:stretch}
 body.gna-home-reference .gna-home .gna-card-badge{top:9px;left:9px;max-width:calc(100% - 58px);font-size:9px;padding:5px 7px;white-space:normal}
 body.gna-home-reference .gna-home .gna-favorite-toggle-card{width:40px;height:40px;top:6px;right:6px;border-color:#ccd2dc}
}

/* 0.56 — clearer catalogue labels and touch controls, with stable sticky dimensions. */
@media(min-width:360px) and (max-width:1024px){
 body.gna-app .gna-header-actions>a,body.gna-app .gna-mobile-search-toggle{width:44px;min-width:44px}
}
@media(max-width:760px){
 body.gna-home-reference .gna-home :is(.gna-hp-heading,.gna-home-products-heading) :is(h2,.gna-content-title){font-size:clamp(24px,6vw,28px);line-height:1.2}
 body.gna-catalog-modern .gna-catalog-categories .gna-catalog-categories-heading{font-size:12px;color:#303743}
 body.gna-catalog-modern .gna-catalog-categories .gna-category-arrows button{width:44px;height:44px;border-color:#cbd2de}
 body.gna-catalog-modern .gna-catalog-categories .gna-catalog-category{font-size:12px;line-height:1.35;min-height:56px;border-color:#cbd2de}
 body.gna-catalog-modern .gna-catalog-categories .gna-catalog-category.is-active{border-color:transparent}
 body.gna-catalog-modern .gna-catalog-categories[data-sticky-mobile="1"] .gna-catalog-category{flex-basis:154px}
 body.gna-catalog-modern .gna-catalog-toolbar .woocommerce-result-count{font-size:13px;color:#525d6b}
 body.gna-catalog-modern .gna-catalog-toolbar .woocommerce-ordering select{font-size:14px;min-height:44px}
 body.gna-catalog-modern .gna-catalog-quick>a{font-size:12px;min-height:40px;color:#414c5c}
 body.gna-catalog-modern .gna-catalog-quick>a.is-active{color:#a91532}
 body.gna-catalog-modern .gna-catalog-products>ul.products>li.product .woocommerce-loop-product__title{font-size:14px;line-height:1.4;min-height:2.8em}
 body.gna-catalog-modern .gna-catalog-products>ul.products>li.product .price{font-size:19px}
 body.gna-catalog-modern .gna-catalog-products>ul.products>li.product .price del{font-size:11px;color:#626b78}
 body.gna-catalog-modern .gna-catalog-products>ul.products>li.product .button{font-size:12px;min-height:44px}
 body.gna-catalog-modern .gna-catalog-products>ul.products>li.product .gna-product-stock{font-size:11px}
 body.gna-catalog-modern .gna-catalog-products>ul.products>li.product .gna-favorite-toggle-card{width:40px;height:40px;border-color:#ccd2dc}
 body.gna-catalog-modern .gna-catalog-products>ul.products>li.product .onsale{max-width:calc(100% - 56px)}
 body.gna-catalog-modern .gna-catalog-products>ul.products>li.product a img{margin-top:34px!important}
 body.gna-catalog-modern .gna-catalog-loyalty p{font-size:13px;color:#dedee5}
 body.gna-catalog-modern .gna-catalog-loyalty-facts span{font-size:11px}
 body.gna-catalog-modern .gna-catalog-loyalty>a,body.gna-catalog-modern .gna-catalog-more{font-size:13px;min-height:44px}
}
