/*
 * Interface catégories ordinateur uniquement.
 * Structure desktop dédiée aux catégories SoldDolls.
 * La structure mobile reste gérée par les feuilles mobiles dédiées.
 */
.sd-desktop-category-nav{display:none}

@media (min-width:900px){
  /* ----- Contrat desktop global ----- */
  body.tax-product_cat .sdmn3-archive-category-nav{
    display:none!important;
  }
  body.sd-category-level-sub .sd-cat-image-nav{display:none!important}

  body.tax-product_cat .breadcrumb-bar,
  body.tax-product_cat .sd-product-archive-container{
    width:100%!important;
  }

  body.tax-product_cat .breadcrumb-bar{
    display:block!important;
    margin:0!important;
    padding:12px 0 0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  body.tax-product_cat .breadcrumb-bar .container,
  body.tax-product_cat .sd-product-archive-container{
    width:min(1440px,calc(100% - 64px))!important;
    max-width:1440px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.tax-product_cat .breadcrumb-bar .woocommerce-breadcrumb,
  body.tax-product_cat .breadcrumb-bar .breadcrumb{
    margin:0!important;
    color:rgba(255,255,255,.47)!important;
    font-size:12px!important;
    line-height:1.45!important;
  }
  body.tax-product_cat .breadcrumb-bar a{color:rgba(255,255,255,.62)!important}

  body.tax-product_cat .sd-product-archive-container{
    padding-top:24px!important;
    padding-bottom:76px!important;
  }

  body.tax-product_cat .sd-category-hero-shell{display:none!important}
  body.sd-category-level-main .sd-category-hero-shell{display:block!important;width:100%!important;margin:0!important;padding:0!important;overflow:hidden!important;line-height:0!important}
  body.sd-category-level-main .sd-category-hero-shell .sd-category-top-banner,
  body.sd-category-level-main .sd-category-hero-shell .sd-category-banner-track,
  body.sd-category-level-main .sd-category-hero-shell .sd-category-banner-slide,
  body.sd-category-level-main .sd-category-hero-shell picture,
  body.sd-category-level-main .sd-category-hero-shell img{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  body.tax-product_cat .sd-archive-heading,
  body.tax-product_cat .sd-main-category-page-container .sd-archive-heading{
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  body.tax-product_cat .sd-archive-heading .section-label{display:none!important}
  body.tax-product_cat .sd-archive-heading h1{
    margin:0!important;
    color:#fff!important;
    font-family:var(--font-body,system-ui,-apple-system,"Segoe UI",sans-serif)!important;
    font-size:clamp(34px,2.7vw,46px)!important;
    line-height:1.08!important;
    font-weight:800!important;
    letter-spacing:-.035em!important;
    text-transform:none!important;
  }
  body.tax-product_cat .sd-archive-heading p{
    max-width:760px!important;
    max-height:none!important;
    margin:9px 0 0!important;
    overflow:visible!important;
    color:rgba(255,255,255,.62)!important;
    font-size:14px!important;
    line-height:1.55!important;
    -webkit-line-clamp:unset!important;
  }

  .sd-desktop-category-nav{display:flex!important}
  .sd-desktop-category-nav__link{text-decoration:none!important}
  .sd-desktop-category-nav__thumb{
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    flex:0 0 auto;
    border-radius:999px;
  }
  .sd-desktop-category-nav__thumb img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
  }
  .sd-desktop-category-nav__all-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    grid-template-rows:repeat(2,1fr);
    gap:3px;
  }
  .sd-desktop-category-nav__all-grid i{
    display:block;
    border-radius:3px;
    background:currentColor;
  }

  /* ==========================================================
     CATÉGORIE PRINCIPALE DESKTOP
     Titre centré -> vignettes rondes -> sections -> accordéons.
     ========================================================== */
  body.sd-category-level-main .breadcrumb-bar{display:none!important}
  body.sd-category-level-main .sd-product-archive-container{
    padding-top:30px!important;
  }
  body.sd-category-level-main .sd-archive-heading{
    margin:0 0 18px!important;
    text-align:center!important;
  }
  body.sd-category-level-main .sd-archive-heading h1{
    font-size:clamp(30px,2.45vw,38px)!important;
    text-align:center!important;
  }
  body.sd-category-level-main .sd-archive-heading p{display:none!important}

  .sd-desktop-category-nav--main{
    display:grid!important;
    grid-template-columns:repeat(8,minmax(0,1fr))!important;
    align-items:start!important;
    gap:22px 14px!important;
    width:min(1120px,100%)!important;
    margin:0 auto 38px!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  .sd-desktop-category-nav--main .sd-desktop-category-nav__link{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    flex-direction:column!important;
    align-items:center!important;
    gap:8px!important;
    color:rgba(255,255,255,.80)!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    text-align:center!important;
  }
  .sd-desktop-category-nav--main .sd-desktop-category-nav__thumb{
    width:clamp(50px,4.7vw,66px)!important;
    height:clamp(50px,4.7vw,66px)!important;
    background:rgba(255,255,255,.09)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    transition:transform .16s ease,border-color .16s ease!important;
  }
  .sd-desktop-category-nav--main .sd-desktop-category-nav__label{
    display:block!important;
    width:100%!important;
    max-width:132px!important;
    min-height:30px!important;
    color:rgba(255,255,255,.82)!important;
    font-size:12.5px!important;
    line-height:1.2!important;
    font-weight:700!important;
  }
  .sd-desktop-category-nav--main .sd-desktop-category-nav__link:hover .sd-desktop-category-nav__thumb,
  .sd-desktop-category-nav--main .sd-desktop-category-nav__link:focus-visible .sd-desktop-category-nav__thumb{
    transform:translateY(-2px)!important;
    border-color:rgba(255,255,255,.28)!important;
  }
  .sd-desktop-category-nav--main .sd-desktop-category-nav__link:hover .sd-desktop-category-nav__label{color:#fff!important}

  body.sd-category-level-main .sd-main-cat-sections{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
  }
  body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-section{
    position:relative!important;
    padding:34px 0 46px!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
  }
  body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-heading{
    max-width:none!important;
    margin:0 auto 14px!important;
    text-align:center!important;
  }
  body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-heading h2{
    font-size:clamp(25px,2vw,32px)!important;
    line-height:1.1!important;
    letter-spacing:-.026em!important;
    text-align:center!important;
  }
  body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-heading p{
    max-width:720px!important;
    margin:8px auto 0!important;
    color:rgba(255,255,255,.58)!important;
    font-size:13.5px!important;
    text-align:center!important;
  }
  body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs-wrap{
    justify-content:center!important;
    min-height:30px!important;
    margin:0 0 22px!important;
    padding:0 84px!important;
  }
  body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs{
    justify-content:center!important;
    gap:8px 20px!important;
  }
  body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a{
    min-height:26px!important;
    padding:0!important;
    color:rgba(255,255,255,.66)!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    font-size:13px!important;
    font-weight:650!important;
  }
  body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-more{
    right:0!important;
    color:rgba(255,255,255,.72)!important;
    font-size:13px!important;
    font-weight:700!important;
  }
  body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-products.products{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
  }

  /* ==========================================================
     SOUS-CATÉGORIE DESKTOP
     Fil d'Ariane -> titre + actions -> capsules -> grille 4 col.
     ========================================================== */
  body.sd-category-level-sub .sd-product-archive-container{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto auto!important;
    column-gap:32px!important;
    row-gap:20px!important;
    align-items:end!important;
  }
  body.sd-category-level-sub .sd-archive-heading{
    grid-column:1!important;
    grid-row:1!important;
    align-self:end!important;
    margin:0!important;
  }
  body.sd-category-level-sub .sd-archive-heading p{display:none!important}

  body.sd-category-level-sub .sd-desktop-category-nav--sub{
    grid-column:1 / -1!important;
    grid-row:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:9px!important;
    width:100%!important;
    margin:0!important;
    padding:0 0 2px!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  .sd-desktop-category-nav--sub .sd-desktop-category-nav__link{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    min-height:38px!important;
    padding:4px 14px 4px 5px!important;
    color:rgba(255,255,255,.72)!important;
    background:rgba(255,255,255,.035)!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:999px!important;
    box-shadow:none!important;
    white-space:nowrap!important;
  }
  .sd-desktop-category-nav--sub .sd-desktop-category-nav__thumb{
    width:28px!important;
    height:28px!important;
    color:#fff!important;
    background:rgba(255,255,255,.11)!important;
    border:0!important;
  }
  .sd-desktop-category-nav--sub .sd-desktop-category-nav__all-grid{
    width:14px!important;
    height:14px!important;
  }
  .sd-desktop-category-nav--sub .sd-desktop-category-nav__all-grid i{
    width:6px!important;
    height:6px!important;
    border-radius:2px!important;
  }
  .sd-desktop-category-nav--sub .sd-desktop-category-nav__label{
    font-size:12.5px!important;
    line-height:1!important;
    font-weight:650!important;
  }
  .sd-desktop-category-nav--sub .sd-desktop-category-nav__link:hover,
  .sd-desktop-category-nav--sub .sd-desktop-category-nav__link.is-active{
    color:#fff!important;
    border-color:var(--c-brand,#d42b65)!important;
    background:rgba(212,43,101,.14)!important;
  }

  body.sd-category-level-sub .shop-layout,
  body.sd-category-level-sub .shop-layout.no-sidebar,
  body.sd-category-level-sub .shop-main{
    display:contents!important;
  }
  body.sd-category-level-sub .shop-sidebar{display:none!important}

  body.sd-category-level-sub .sd-archive-toolbar{
    grid-column:2!important;
    grid-row:1!important;
    align-self:end!important;
    display:flex!important;
    justify-content:flex-end!important;
    margin:0!important;
    padding:0 0 2px!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  body.sd-category-level-sub .sd-archive-count{display:none!important}
  body.sd-category-level-sub .sd-archive-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:14px!important;
  }
  body.sd-category-level-sub .sd-sort-control{order:1!important}
  body.sd-category-level-sub .sd-filter-toggle{order:2!important}
  body.sd-category-level-sub .sd-view-toggle{order:3!important}

  body.sd-category-level-sub .sd-filter-toggle,
  body.sd-category-level-sub .sd-sort-control,
  body.sd-category-level-sub .sd-view-toggle{
    min-height:38px!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  body.sd-category-level-sub .sd-sort-control{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    padding:0!important;
  }
  body.sd-category-level-sub .sd-sort-label{
    color:rgba(255,255,255,.58)!important;
    font-size:13px!important;
  }
  body.sd-category-level-sub .sd-sort-control select.orderby{
    width:auto!important;
    min-width:116px!important;
    min-height:34px!important;
    padding:0 22px 0 0!important;
    color:rgba(255,255,255,.82)!important;
    background:transparent!important;
    border:0!important;
    font-size:13px!important;
  }
  body.sd-category-level-sub .sd-filter-toggle{
    display:inline-flex!important;
    align-items:center!important;
    padding:0 4px!important;
    color:var(--c-brand,#d42b65)!important;
    font-size:13px!important;
    font-weight:700!important;
  }
  body.sd-category-level-sub .sd-view-toggle{
    display:flex!important;
    align-items:center!important;
    gap:5px!important;
  }
  body.sd-category-level-sub .sd-view-toggle button{
    width:31px!important;
    min-width:31px!important;
    height:31px!important;
    min-height:31px!important;
    padding:0!important;
    color:rgba(255,255,255,.48)!important;
    background:transparent!important;
    border:0!important;
    font-size:0!important;
  }
  body.sd-category-level-sub .sd-view-toggle button::before{
    content:"";
    display:block;
    width:17px;
    height:17px;
    margin:auto;
    opacity:.76;
    background-image:linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0);
    background-size:7px 7px;
    background-position:0 0,10px 0,0 10px,10px 10px;
    background-repeat:no-repeat;
  }
  body.sd-category-level-sub .sd-view-toggle button[data-sd-view="card"]::before{
    background-image:linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0),linear-gradient(currentColor 0 0);
    background-size:17px 3px;
    background-position:0 1px,0 7px,0 13px;
  }
  body.sd-category-level-sub .sd-view-toggle button.is-active{color:#fff!important}

  body.sd-category-level-sub .sd-archive-filter-panel,
  body.sd-category-level-sub .sd-archive-filter-panel[hidden]{
    grid-column:1 / -1!important;
    grid-row:3!important;
  }
  body.sd-category-level-sub .sd-archive-filter-panel[hidden]{display:none!important}
  body.sd-category-level-sub .sd-archive-filter-panel:not([hidden]){
    display:block!important;
    position:fixed!important;
    inset:0 0 0 auto!important;
    z-index:99999!important;
    width:min(420px,92vw)!important;
    height:100vh!important;
    overflow:auto!important;
    padding:24px!important;
    background:#111116!important;
    border-left:1px solid rgba(255,255,255,.14)!important;
    box-shadow:-24px 0 60px rgba(0,0,0,.38)!important;
  }

  body.sd-category-level-sub .shop-main > .products-grid,
  body.sd-category-level-sub .shop-main > ul.products{
    grid-column:1 / -1!important;
    grid-row:3!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:14px!important;
    min-width:0!important;
    margin-top:2px!important;
  }
  body.sd-category-level-sub .shop-main > nav.woocommerce-pagination,
  body.sd-category-level-sub .shop-main > .woocommerce-pagination,
  body.sd-category-level-sub .shop-main > .sd-pagination{
    grid-column:1 / -1!important;
  }
}

@media (min-width:900px) and (max-width:1180px){
  body.tax-product_cat .breadcrumb-bar .container,
  body.tax-product_cat .sd-product-archive-container{
    width:calc(100% - 40px)!important;
  }
  .sd-desktop-category-nav--main{
    grid-template-columns:repeat(8,minmax(0,1fr))!important;
    gap:20px 8px!important;
  }
  .sd-desktop-category-nav--main .sd-desktop-category-nav__label{font-size:11.5px!important}
  body.sd-category-level-sub .sd-product-archive-container{
    grid-template-columns:minmax(0,1fr) minmax(420px,auto)!important;
  }
  body.sd-category-level-sub .sd-archive-actions{gap:9px!important}
  body.sd-category-level-sub .shop-main > .products-grid,
  body.sd-category-level-sub .shop-main > ul.products{
    gap:12px!important;
  }
}


/* Contrat définitif des catégories ordinateur. */
.sd-product-structure-tabs--desktop{display:none!important}
@media (min-width:900px){
  /* One category navigator only: six items on the first row, two centred below. */
  html body.sd-category-level-main .sd-desktop-category-nav--main{display:none!important}
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav{
    display:block!important;
    width:min(1120px,100%)!important;
    max-width:1120px!important;
    margin:0 auto 36px!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__title{
    display:none!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__rail{
    display:grid!important;
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    align-items:start!important;
    gap:22px 20px!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__item{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:94px!important;
    gap:9px!important;
    padding:0!important;
    color:#fff!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    text-align:center!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__item:nth-child(7){grid-column:3!important}
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__item:nth-child(8){grid-column:4!important}
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__img{
    display:block!important;
    flex:0 0 66px!important;
    width:66px!important;
    min-width:66px!important;
    max-width:66px!important;
    height:66px!important;
    min-height:66px!important;
    max-height:66px!important;
    margin:0!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.08)!important;
    box-shadow:none!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__img img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    border-radius:inherit!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__name{
    display:block!important;
    width:100%!important;
    min-height:32px!important;
    padding:0 5px!important;
    color:rgba(255,255,255,.84)!important;
    font-size:12.5px!important;
    line-height:1.22!important;
    font-weight:650!important;
    text-align:center!important;
    overflow-wrap:normal!important;
  }

  /* Complete, fine oval subsection navigation under every desktop section. */
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs--mobile{display:none!important}
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs--desktop{display:flex!important}
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs-wrap{
    min-height:32px!important;
    margin:0 0 24px!important;
    padding:0 72px!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    align-items:center!important;
    gap:8px!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a,
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(n){
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:30px!important;
    padding:0 15px!important;
    color:rgba(255,255,255,.76)!important;
    background:rgba(255,255,255,.035)!important;
    border:1px solid rgba(255,255,255,.20)!important;
    border-radius:999px!important;
    box-shadow:none!important;
    font-size:12.5px!important;
    line-height:1!important;
    font-weight:600!important;
    white-space:nowrap!important;
    text-decoration:none!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:hover,
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:focus-visible{
    color:#fff!important;
    border-color:rgba(225,29,72,.72)!important;
    background:rgba(225,29,72,.13)!important;
  }
}


/* Couleurs SoldDolls des sous-vignettes ovales ordinateur. */
@media (min-width:900px){
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a,
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(n){
    min-height:30px!important;
    padding:0 15px!important;
    border-width:1px!important;
    border-style:solid!important;
    border-radius:999px!important;
    box-shadow:none!important;
    font-weight:800!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(6n+1){
    background:#7c2dff!important;border-color:#7c2dff!important;color:#fff!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(6n+2){
    background:#e11d48!important;border-color:#e11d48!important;color:#fff!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(6n+3){
    background:#f97316!important;border-color:#f97316!important;color:#111!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(6n+4){
    background:#0ea5e9!important;border-color:#0ea5e9!important;color:#fff!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(6n+5){
    background:#16a34a!important;border-color:#16a34a!important;color:#fff!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(6n){
    background:#facc15!important;border-color:#facc15!important;color:#111!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:hover,
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:focus-visible{
    filter:brightness(1.08)!important;
    transform:none!important;
  }
}


/* Contrat des espacements des catégories ordinateur.
 * Reference proportions are cloned; SoldDolls colours, content and dark identity remain intact.
 */
@media (min-width:900px){
  /* Hero -> title -> illustrated category grid. */
  html body.sd-category-level-main .sd-product-archive-container{
    padding-top:30px!important;
  }
  html body.sd-category-level-main .sd-archive-heading{
    margin:0 0 25px!important;
    padding:0!important;
  }
  html body.sd-category-level-main .sd-archive-heading h1{
    margin:0!important;
    font-family:var(--font-body,Poppins,"DM Sans",Arial,sans-serif)!important;
    font-size:clamp(28px,2.25vw,34px)!important;
    line-height:1.16!important;
    font-weight:800!important;
    letter-spacing:-.025em!important;
  }

  /* One navigator only, 6 + 2, with the same visual breathing room as the reference. */
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav{
    width:min(1040px,calc(100% - 64px))!important;
    max-width:1040px!important;
    margin:0 auto!important;
    padding:0 0 35px!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__rail{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    column-gap:34px!important;
    row-gap:24px!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__item{
    min-height:76px!important;
    gap:8px!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__img{
    flex-basis:48px!important;
    width:48px!important;
    min-width:48px!important;
    max-width:48px!important;
    height:48px!important;
    min-height:48px!important;
    max-height:48px!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__name{
    min-height:29px!important;
    padding:0 2px!important;
    font-size:11.5px!important;
    line-height:1.25!important;
    font-weight:600!important;
  }

  /* Sections: same repeated vertical rhythm on every block. */
  html body.sd-category-level-main .sd-main-cat-sections{
    margin:0!important;
    padding:0!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-section{
    position:relative!important;
    margin:0!important;
    padding:46px 0 0!important;
    border:0!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-section + .sd-product-structure-section{
    margin-top:56px!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-section:last-child{
    padding-bottom:56px!important;
    border:0!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-heading{
    max-width:820px!important;
    margin:0 auto 18px!important;
    padding:0 96px!important;
    text-align:center!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-heading h2{
    margin:0!important;
    font-family:var(--font-body,Poppins,"DM Sans",Arial,sans-serif)!important;
    font-size:clamp(24px,2vw,30px)!important;
    line-height:1.18!important;
    font-weight:800!important;
    letter-spacing:-.018em!important;
    text-transform:uppercase!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-heading p{
    margin:12px auto 0!important;
    font-size:13px!important;
    line-height:1.45!important;
  }

  /* Exactly one compact desktop oval row; the mobile row can never leak into desktop. */
  html body.sd-category-level-main .sd-main-cat-sections nav.sd-product-structure-tabs--mobile{
    display:none!important;
    visibility:hidden!important;
    position:absolute!important;
    width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections nav.sd-product-structure-tabs--desktop{
    display:flex!important;
    visibility:visible!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    overflow:visible!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs-wrap{
    position:static!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    min-height:28px!important;
    margin:0 0 50px!important;
    padding:0 92px!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs{
    flex-wrap:nowrap!important;
    justify-content:center!important;
    align-items:center!important;
    gap:10px!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a,
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(n){
    min-height:28px!important;
    padding:0 14px!important;
    font-size:11.5px!important;
    line-height:1!important;
    font-weight:750!important;
    border-radius:999px!important;
    white-space:nowrap!important;
  }

  /* “Plus” belongs to the section title line, not to the oval row. */
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-more{
    position:absolute!important;
    top:51px!important;
    right:18px!important;
    transform:none!important;
    margin:0!important;
    font-size:12px!important;
    line-height:1.2!important;
    font-weight:600!important;
    opacity:.68!important;
  }

  /* Product grid starts at the same measured distance below the oval row. */
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-products{
    margin:0!important;
    padding:0!important;
    gap:18px!important;
    align-items:start!important;
  }
}

@media (min-width:900px) and (max-width:1100px){
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav{
    width:calc(100% - 48px)!important;
  }
  html body.sd-category-level-main .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__rail{
    column-gap:22px!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-heading{
    padding-inline:72px!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs-wrap{
    padding-inline:72px!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs{
    gap:8px!important;
  }
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a,
  html body.sd-category-level-main .sd-main-cat-sections .sd-product-structure-tabs a:nth-child(n){
    padding-inline:12px!important;
    font-size:11px!important;
  }
}


/* Nombre déterministe de catégories ordinateur, sans fuite de structure mobile. */
@media (min-width:900px){
  body.term-sextoys-pour-femmes .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__rail,
  body.term-sextoys-pour-hommes .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__rail{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
  body.term-sextoys-pour-femmes .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__item:nth-child(7),
  body.term-sextoys-pour-hommes .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__item:nth-child(7){grid-column:3!important}
  body.term-sextoys-pour-femmes .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__item:nth-child(8),
  body.term-sextoys-pour-hommes .sd-main-category-page-container > .sd-cat-image-nav .sd-cat-image-nav__item:nth-child(8){grid-column:4!important}

  body.term-poupees-sexuelles .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__rail{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
  body.term-sextoys-anaux .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__rail{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    max-width:860px!important;
  }
  body.term-pour-couple .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__rail,
  body.term-lubrifiant .sd-main-category-page-container > .sd-cat-image-nav > .sd-cat-image-nav__rail{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    max-width:560px!important;
  }
}


/* v9.7.4 — Desktop list/card mode: exactly two columns.
   This rule intentionally follows the four-column archive contract so the
   user-selected list mode is not overwritten by the default desktop grid. */
@media (min-width:900px){
  html body.sd-category-level-sub .shop-main.sd-view-card > .products-grid,
  html body.sd-category-level-sub .shop-main.sd-view-card > ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
  }
}
