/* Catálogo private label · SOLO lo que la home no trae.
   Tokens, tipografías, oro vivo, cabeceras, tarjetas, hilo, pie y visor vienen de tulum.css / home.css / foot.css
   (copiados sin tocar). Aquí: índice por categoría, capítulos con columna fija, tarjeta de prenda con vistas
   delantera/espalda, panel de capacidad, selección y pie del visor. Sin sobrescribir reglas de la home. */

.ct-collection{scroll-margin-top:0}
.ct-collection .cat-group,.ct-cat{scroll-margin-top:72px}

/* ---------- Índice: una fila por grupo, mismas tarjetas hm-card de la home ---------- */
.ct-index{margin-top:var(--hm-head);display:grid;gap:clamp(44px,5vw,76px)}
.ct-ix-g{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(24px,2.6vw,40px) clamp(12px,1.6vw,24px)}
.ct-ix-l{grid-column:1/-1;padding-bottom:18px;border-bottom:1px solid var(--line);font:500 11px/1 var(--text);letter-spacing:.28em;text-transform:uppercase;color:var(--gold-text)}
.ct-ix-g .hm-card{grid-column:auto}   /* en la home .hm-card ocupa 3 de 12 columnas; aquí la rejilla es de 5 */
.ct-ix-g .hm-card .ph{aspect-ratio:2/3}   /* prenda entera (vestidos largos, hombre de pie): sin recortar */
.ct-ix-note{grid-column:span 3;align-self:center;padding-left:clamp(0px,3vw,48px)}
.ct-ix-note .statement{max-width:20ch}
.hm-card .ct-tx{display:flex;flex-direction:column;justify-content:space-between;padding:clamp(16px,2vw,28px);background:transparent;border:1px solid var(--line)}
.ct-tx .cat-no{margin:0;font-size:clamp(40px,4.4vw,72px)}
.ct-tx-l{font:500 10px/1.5 var(--text);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);max-width:18ch}
@media(max-width:1000px){.ct-ix-g{grid-template-columns:repeat(3,minmax(0,1fr))}.ct-ix-note{grid-column:1/-1;padding-left:0}}
@media(max-width:560px){.ct-ix-g{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- Capítulo: columna fija con el título + rejilla de prendas ---------- */
.ct-cat{padding:clamp(56px,7vw,112px) var(--g) clamp(64px,8vw,128px);border-top:1px solid var(--line)}
.ct-wrap{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:clamp(32px,5vw,96px);align-items:start}
.ct-side{position:sticky;top:104px}
.ct-side .cat-no{margin-bottom:6px;font-size:clamp(56px,6vw,96px)}
.ct-side .h2{font-size:clamp(34px,3.6vw,56px)}
.ct-side .cat-meta{margin-top:14px;max-width:28ch}
.ct-count{margin-top:22px;font:500 10px/1.5 var(--text);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-text)}
.ct-blurb{margin-top:16px;font-size:15px;line-height:1.7;max-width:30ch}
.ct-next{position:relative;display:inline-block;margin-top:28px;padding:8px 0 10px;border-bottom:1px solid var(--gold-text);font:500 11px/1 var(--text);letter-spacing:.24em;text-transform:uppercase;text-decoration:none;color:var(--carbon);transition:color .3s}
.ct-next::before{content:"";position:absolute;inset:-8px -4px}
.ct-next:hover{color:var(--gold-text)}
@media(max-width:1100px){.ct-wrap{grid-template-columns:minmax(0,1fr)}.ct-side{position:static}.ct-blurb,.ct-side .cat-meta{max-width:52ch}}

.ct-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(40px,4.4vw,64px) clamp(14px,1.8vw,26px)}
@media(max-width:700px){.ct-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 12px}}

/* ---------- Prenda ---------- */
.pc{min-width:0}
.pcm{position:relative}
.pf{position:relative;display:block;width:100%;aspect-ratio:var(--ar,2/3);padding:0;border:0;border-radius:0;overflow:hidden;background:var(--sand);color:inherit;cursor:zoom-in}
.pf img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .45s var(--ease)}
.pf img.on{opacity:1}
.pf::after{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid transparent;transition:border-color .5s var(--ease)}
.pf:focus-visible{outline:2px solid var(--gold-text);outline-offset:4px}
@media(hover:hover){.pc:hover .pf::after{border-color:rgba(122,85,24,.6)}}
.pc-add{position:absolute;top:10px;right:10px;z-index:2;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid rgba(242,239,233,.72);border-radius:0;background:rgba(19,18,17,.55);color:var(--bone);font:300 24px/1 var(--text);cursor:pointer;transition:background .3s,color .3s,border-color .3s}
.pc-add::before{content:"";position:absolute;inset:-4px}
.pc-add:hover{background:rgba(19,18,17,.82)}
.pc-add[aria-pressed="true"]{background:var(--gold);border-color:var(--gold);color:var(--carbon)}
.pc-add:focus-visible{outline:2px solid var(--gold-text);outline-offset:3px}
.pc.is-spread{grid-column:1/-1}
.pcm-spread{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.6vw,24px)}
.pf-l{position:absolute;left:12px;bottom:12px;z-index:1;padding:7px 10px;background:rgba(19,18,17,.55);color:var(--bone);font:500 10px/1 var(--text);letter-spacing:.2em;text-transform:uppercase}
.pc-t{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:baseline;padding-top:14px}
.pc-no{font:italic 400 15px/1 var(--italic);color:var(--gold-text)}
.pc-name{font:400 clamp(17px,1.35vw,21px)/1.2 var(--display);font-variation-settings:"opsz" 72}
.pc-color{grid-column:2;margin-top:6px;font:500 10px/1.5 var(--text);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.pc-v{display:flex;flex-wrap:wrap;gap:0 18px;margin-top:12px;padding-top:10px;border-top:1px solid var(--line)}
.pc-v button{position:relative;padding:6px 0;border:0;border-radius:0;background:none;font:500 10px/1 var(--text);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);cursor:pointer;transition:color .3s}
.pc-v button::before{content:"";position:absolute;inset:-8px -6px}
.pc-v button:hover{color:var(--carbon)}
.pc-v button[aria-pressed="true"]{color:var(--carbon)}
.pc-v button[aria-pressed="true"]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold-text)}
.pc-v button:focus-visible{outline:2px solid var(--gold-text);outline-offset:2px}

/* ---------- Capacidad (sin foto real verificada): texto honesto, sin producto inventado ---------- */
.ct-cap{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:clamp(32px,5vw,72px);min-height:clamp(300px,34vw,440px);padding:clamp(28px,4vw,64px);border:1px solid var(--line)}
.ct-cap::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .6s var(--ease);background:radial-gradient(420px circle at var(--sx,50%) var(--sy,50%),rgba(201,160,78,.16),rgba(201,160,78,0) 62%)}
.ct-cap:hover::after{opacity:1}
.ct-cap::before{content:attr(data-ghost);position:absolute;right:-.04em;bottom:-.2em;z-index:0;pointer-events:none;font:italic 400 clamp(220px,28vw,420px)/1 var(--italic);color:transparent;-webkit-text-stroke:1px rgba(122,85,24,.22)}
.ct-cap>*{position:relative;z-index:1}
.ct-cap-h{margin:18px 0 20px;font:400 clamp(28px,3.2vw,52px)/1.08 var(--display);font-variation-settings:"opsz" 96;max-width:16ch;text-wrap:balance}
.ct-cap .body{max-width:46ch}
.ct-render-note{grid-column:1/-1;margin-top:8px}
.ct-note{max-width:54ch;padding-top:18px;border-top:1px solid var(--line);font-size:13px;line-height:1.7;color:var(--muted)}

/* ---------- Selección (+) y envío ---------- */
.ct-sel .form-subtitle{margin-bottom:28px}
.ct-sel-list{margin:0 0 32px;padding:0;list-style:none}
.ct-sel-list li{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.5;color:#CFC8BC}
.ct-sel-list li:first-child{border-top:1px solid var(--line)}
.ct-sel-list b{display:block;font:500 10px/1.5 var(--text);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.ct-sel-list button{flex:none;padding:6px 2px;border:0;background:none;color:var(--muted);font:300 20px/1 var(--text);cursor:pointer;transition:color .3s}
.ct-sel-list button:hover{color:var(--gold-text)}
.ct-sel-act{display:flex;flex-wrap:wrap;gap:20px clamp(24px,3vw,44px)}
.ct-sel-act .cta{margin-top:0}
.ct-sel-tools{display:flex;gap:24px;margin-top:28px}
.ct-sel-tools button{padding:6px 0;border:0;background:none;font:500 10px/1 var(--text);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);text-decoration:underline;text-underline-offset:4px;cursor:pointer;transition:color .3s}
.ct-sel-tools button:hover{color:var(--gold-text)}
.ct-sel-tools button[hidden]{display:none}
.ct-bar{position:fixed;left:50%;bottom:max(16px,env(safe-area-inset-bottom));z-index:45;display:flex;align-items:center;gap:clamp(14px,2vw,28px);padding:12px 20px;transform:translateX(-50%);background:rgba(19,18,17,.95);border:1px solid rgba(201,160,78,.55);color:var(--bone);font:500 11px/1 var(--text);letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.ct-bar[hidden]{display:none}
.ct-bar b{margin-right:6px;font:400 20px/1 var(--display);letter-spacing:0;color:var(--gold-text)}
.ct-bar a{padding:8px 0;border-bottom:1px solid var(--gold);color:var(--bone);text-decoration:none}

/* ---------- Visor: pie con prenda y vista ---------- */
.lightbox-cap{position:absolute;top:26px;left:26px;right:96px;margin:0;font:500 11px/1.6 var(--text);letter-spacing:.2em;text-transform:uppercase;color:#CFC8BC}
.lightbox-cap b{display:block;font:400 clamp(18px,2vw,24px)/1.2 var(--display);letter-spacing:0;text-transform:none;color:var(--bone)}
.lightbox.single .lightbox-arrow{display:none}
@media(max-width:600px){.lightbox-cap{top:18px;left:18px;right:80px}}

@media (prefers-reduced-motion:reduce){.pf img,.pf::after,.pc-add,.ct-cap::after{transition:none}.ct-cap::after{display:none}}
