.categories-page.section-block{padding-top:0;padding-bottom:0;background:#fff}
.categories-page>.wide-container{overflow:visible}
.categories-page .page-heading{margin:0;padding:64px 0 52px;color:#fff;background:#0b0c0f;box-shadow:0 0 0 100vmax #0b0c0f;clip-path:inset(0 -100vmax)}
.categories-page .page-heading h1{max-width:760px;margin:0 0 12px;font-size:clamp(42px,9vw,64px);line-height:.98;letter-spacing:-.055em;color:#fff}
.categories-page .page-heading p{max-width:620px;margin:0;color:#b8bec8;font-size:17px;line-height:1.5}
.categories-search-form{max-width:760px;margin-top:28px;padding:7px 7px 7px 16px;background:#fff;border-radius:12px;display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center;color:#111318}
.categories-search-form>.icon{width:20px;color:#98a2b3}
.categories-search-form input{width:100%;min-width:0;height:48px;border:0;outline:0;background:transparent;font-size:16px}
.categories-search-form .btn{min-height:46px;padding-left:22px;padding-right:22px}
.category-directory{counter-reset:category;margin:0;padding:22px 0 18px;border-top:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:54px}
.category-row{counter-increment:category;position:relative;min-width:0;padding:28px 0 32px 104px;border-bottom:1px solid var(--line)}
.category-row::before{content:counter(category,decimal-leading-zero);position:absolute;left:0;top:27px;color:#d0d5dd;font-size:31px;line-height:1;font-weight:700;letter-spacing:-.06em}
.category-row-title{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;gap:2px;max-width:max-content;color:var(--ink);text-decoration:none}
.category-row-title strong{font-size:24px;line-height:1.12;letter-spacing:-.04em}
.category-row-title small{color:var(--orange);font-size:13px;line-height:1.35;font-weight:750}
.category-row-title:hover strong{color:var(--orange)}
.subcategory-links{margin:21px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 24px}
.subcategory-links a{position:relative;min-width:0;padding-left:16px;color:#475467;text-decoration:none;font-size:15px;line-height:1.4;overflow-wrap:anywhere}
.subcategory-links a::before{content:'↳';position:absolute;left:0;top:.02em;color:#c2c8d0;transition:color .16s ease}
.subcategory-links a:hover{color:var(--orange)}
.subcategory-links a:hover::before{color:var(--orange)}
.categories-end{margin:30px 0 56px;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}
.categories-end h2{margin:0 0 5px;font-size:24px}
.categories-end p{margin:0;color:var(--muted)}
.categories-end .btn{flex:0 0 auto}

/* Category accordion inside the burger menu */
.mobile-menu nav{height:calc(100svh - 88px);min-height:0;overflow-y:auto;padding-bottom:164px;overscroll-behavior:contain}
.menu-categories-wrapper{min-width:0}
.menu-categories-root,.menu-category-item{margin:0}
.menu-categories-root>summary,.menu-category-item>summary{list-style:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.menu-categories-root>summary::-webkit-details-marker,.menu-category-item>summary::-webkit-details-marker{display:none}
.menu-categories-root>summary{
  min-height:54px;
  padding:0 12px;
  border-radius:9px;
  display:grid;
  grid-template-columns:22px minmax(0,1fr) 18px;
  gap:12px;
  align-items:center;
  font-weight:700;
}
.menu-categories-root>summary>.icon:first-child{color:var(--orange)}
.menu-category-chevron{width:16px;color:#98a2b3;transition:transform .18s ease}
.menu-categories-root[open]>summary>.menu-category-chevron,.menu-category-item[open]>summary>.menu-category-chevron{transform:rotate(180deg)}
.menu-categories-root>summary:hover{background:var(--orange-soft)}
.menu-categories-root.active>summary,.menu-category-item.active>summary{background:var(--orange-soft);color:#9d390b}
.menu-categories-root.active>summary>.menu-category-chevron,.menu-category-item.active>summary>.menu-category-chevron{color:var(--orange)}
.menu-categories-panel{margin:3px 0 8px 34px;padding:4px 0 4px 12px;border-left:1px solid var(--line);display:grid;gap:2px}
.mobile-menu nav .menu-all-categories{
  min-height:42px;
  padding:0 8px;
  grid-template-columns:minmax(0,1fr) 16px;
  gap:8px;
  color:var(--orange);
  font-size:13px;
}
.menu-category-item>summary{
  min-height:42px;
  padding:0 8px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 16px;
  gap:8px;
  align-items:center;
  border-radius:7px;
  font-size:13px;
  font-weight:700;
}
.menu-category-item>summary:hover{background:#f7f8fa}
.menu-category-name{min-width:0;display:flex;align-items:center;gap:8px}
.menu-category-name>.icon{width:16px;height:16px;color:var(--orange)}
.menu-subcategory-list{padding:2px 0 7px 24px;display:grid;gap:1px}
.mobile-menu nav .menu-subcategory-list a{
  min-height:34px;
  padding:6px 8px;
  display:flex;
  align-items:center;
  border-radius:6px;
  color:#667085;
  font-size:12px;
  font-weight:500;
  line-height:1.25;
}
.mobile-menu nav .menu-subcategory-list a:first-child{color:#344054;font-weight:700}
.mobile-menu nav .menu-subcategory-list a:hover{background:#f7f8fa;color:var(--orange)}

@media(max-width:759.98px){
  .categories-page .page-heading{padding:48px 0 42px}
  .categories-page .page-heading h1{font-size:clamp(40px,12vw,46px)}
  .categories-page .page-heading p{font-size:16px}
  .categories-search-form{grid-template-columns:20px minmax(0,1fr);padding:8px 12px;margin-top:24px}
  .categories-search-form input{height:46px;font-size:15px}
  .categories-search-form .btn{grid-column:1/-1;width:100%;margin-top:2px}

  /* Una columna conserva la jerarquía y evita cortes en nombres largos. */
  .category-directory,.home-category-directory{
    grid-template-columns:1fr;
    column-gap:0;
    padding-top:10px;
  }
  .category-row{
    min-width:0;
    min-height:0;
    padding:22px 0 24px 46px;
  }
  .category-row::before{top:25px;font-size:19px}
  .category-row-title{gap:3px}
  .category-row-title strong{font-size:20px;line-height:1.15;letter-spacing:-.03em}
  .category-row-title small{font-size:12px}
  .subcategory-links{margin:16px 0 0;grid-template-columns:1fr;gap:8px}
  .subcategory-links a{padding-left:14px;font-size:14px;line-height:1.35}
  .categories-end{margin:20px 0 44px;align-items:flex-start;flex-direction:column}
  .categories-end .btn{width:100%}
}

@media(max-width:350px){
  .category-row{padding-left:42px}
  .category-row::before{font-size:17px}
  .category-row-title strong{font-size:19px}
}
