/* Entrada do catálogo: três fotografias independentes e navegação por categoria. */
.cut-catalog {
  min-height: calc(100svh - 74px);
  padding: clamp(48px, 6vw, 82px) 0 clamp(64px, 8vw, 110px);
  border-top: 1px solid #5d4728;
  background: radial-gradient(ellipse at 50% 0, #30211642, transparent 48%), #070707;
}
.cut-catalog-wrap { width: min(100% - 40px, 1320px); }
.cut-catalog-heading { margin-bottom: clamp(24px, 3.8vw, 42px); }
.cut-catalog-heading > p:last-child { max-width: 560px; }
.cut-category-choices {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(14px, 2.2vw, 28px);
  align-items: stretch;
}
.cut-category-card {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
  aspect-ratio: 1 / 1.08;
  overflow: hidden;
  padding: 0;
  border: 1px solid #8b693d;
  border-radius: 24px;
  background: #17100a;
  box-shadow: 0 20px 42px #0008, inset 0 0 0 1px #d1a55a26;
  cursor: pointer;
  text-align: left;
  isolation: isolate;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.cut-category-card:hover { transform: translateY(-4px); border-color: #dfad67; box-shadow: 0 25px 48px #000a, 0 0 20px #a971272c; }
.cut-category-card::after {
  position: absolute;
  z-index: 1;
  inset: 35% 0 0;
  content: '';
  background: linear-gradient(0deg, #050403e8, #05040300 74%);
  pointer-events: none;
}
.cut-category-card > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
  transition: transform .35s ease;
}
.cut-category-card:hover > img { transform: scale(1.025); }
.cut-category-bar {
  position: absolute;
  z-index: 2;
  inset: auto 12px 12px;
  display: flex;
  min-height: clamp(80px, 8.5vw, 104px);
  align-items: center;
  gap: clamp(8px, 1.5vw, 17px);
  min-width: 0;
  padding: clamp(10px, 1.5vw, 18px);
  border: 1px solid #d0a16a;
  border-radius: 20px;
  background: #080604e8;
  box-shadow: inset 0 1px #f8dba442, 0 7px 20px #0009;
  color: #e4b16a;
  backdrop-filter: blur(8px);
}
.cut-category-bar svg {
  width: clamp(31px, 4vw, 48px);
  height: clamp(31px, 4vw, 48px);
  flex: none;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.cut-category-copy { display: flex; min-width: 0; flex: 1; flex-direction: column; gap: 5px; }
.cut-category-copy strong {
  color: #fff7e8;
  font: 800 clamp(17px, 2.2vw, 29px)/1 'Sora', 'Inter', sans-serif;
  letter-spacing: -.015em;
  text-transform: uppercase;
}
.cut-category-copy small {
  color: #d9c6a6;
  font: 600 clamp(9px, .83vw, 11px)/1.3 'Inter', sans-serif;
  text-transform: uppercase;
  letter-spacing: .035em;
}
.cut-category-arrow {
  display: grid;
  width: clamp(33px, 3.5vw, 46px);
  height: clamp(33px, 3.5vw, 46px);
  flex: none;
  place-items: center;
  border: 1px solid #c49962;
  border-radius: 50%;
  color: #fff;
  font: 400 clamp(22px, 2.4vw, 30px)/1 'Inter', sans-serif;
}
.cut-category-card:focus-visible, .cut-category-back:focus-visible { outline: 3px solid #ffe29b; outline-offset: 4px; }

.cut-category-detail { max-width: 1320px; margin: 0 auto; }
.cut-category-back {
  min-height: 44px;
  margin: 0 0 25px;
  padding: 8px 0;
  border: 0;
  border-bottom: 1px solid #9d7849;
  background: transparent;
  color: #e9c682;
  font: 700 12px/1.25 'Inter', sans-serif;
  text-transform: uppercase;
  letter-spacing: .075em;
  cursor: pointer;
}
.cut-category-back:hover { color: #fff1d0; }
.cut-category-title {
  margin: 0 0 5px;
  color: #f7f2e8;
  font: 800 clamp(34px, 5vw, 58px)/1 'Barlow Condensed', Impact, sans-serif;
  text-transform: uppercase;
}
.cut-catalog-status { margin: 0 0 25px; text-align: left; }
.cut-detail-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.cut-detail-grid .cut-card { height: 100%; }
.cut-detail-grid .cut-card-choose { font-size: clamp(9px, 1vw, 11px); }

@media (max-width: 1000px) {
  .cut-catalog { padding-top: max(84px, calc(env(safe-area-inset-top) + 78px)); }
  .cut-category-bar { inset: auto 8px 8px; min-height: 73px; gap: 8px; padding: 10px; border-radius: 15px; }
  .cut-category-copy strong { font-size: clamp(15px, 2.1vw, 20px); }
  .cut-category-copy small { font-size: 8px; }
  .cut-detail-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
}
@media (max-width: 699px) {
  .cut-catalog-wrap { width: min(100% - 28px, 560px); }
  .cut-catalog-heading { margin-bottom: 22px; text-align: left; }
  .cut-category-choices { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .cut-category-card { aspect-ratio: 1.1 / 1; max-height: 430px; border-radius: 20px; }
  .cut-category-card > img { object-position: center 26%; }
  .cut-category-bar { inset: auto 11px 11px; min-height: 77px; gap: 12px; padding: 12px 14px; }
  .cut-category-bar svg { width: 37px; height: 37px; }
  .cut-category-copy strong { font-size: clamp(18px, 5vw, 23px); }
  .cut-category-copy small { font-size: clamp(9px, 2.35vw, 11px); }
  .cut-category-arrow { width: 37px; height: 37px; font-size: 24px; }
  .cut-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .cut-category-back { margin-bottom: 20px; }
  .cut-detail-grid .cut-card-choose { min-height: 48px; font-size: 10px; }
}
@media (max-width: 350px) {
  .cut-category-bar { inset: auto 8px 8px; gap: 8px; padding: 9px; }
  .cut-category-bar svg { width: 30px; height: 30px; }
  .cut-category-copy strong { font-size: 16px; }
  .cut-category-copy small { font-size: 8px; }
  .cut-category-arrow { width: 32px; height: 32px; }
}
@media (prefers-reduced-motion: reduce) {
  .cut-category-card, .cut-category-card > img { transition: none; }
}
