/* BAS Agros — catalog hub / Home V3 visual system */
.page-catalog-hub {
  --catalog-bg:#050605;
  --catalog-bg-soft:#090a08;
  --catalog-panel:#0d0f0c;
  --catalog-panel-hi:#15180f;
  --catalog-gold:#c9972d;
  --catalog-gold-hi:#e8c56d;
  --catalog-gold-deep:#765112;
  --catalog-ivory:#f2ecdf;
  --catalog-muted:rgba(242,236,223,.68);
  --catalog-line:rgba(232,197,109,.22);
  --catalog-line-strong:rgba(232,197,109,.46);
  --catalog-shadow:0 1.8rem 5rem rgba(0,0,0,.35);
  --catalog-font-body:Inter,Roboto,Arial,sans-serif;
  --catalog-font-display:Inter,Manrope,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --catalog-font-ui:"Roboto Condensed",Arial,sans-serif;
  margin:0;
  max-width:none;
  overflow-x:clip;
  background:var(--catalog-bg);
  color:var(--catalog-ivory);
  font-family:var(--catalog-font-body);
  font-size:16px;
  line-height:1.55;
}

.page-catalog-hub::before {
  content:"";
  position:fixed;
  z-index:9999;
  inset:0;
  pointer-events:none;
  opacity:.022;
  mix-blend-mode:soft-light;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E");
}

.page-catalog-hub .home-wrap {
  width:min(calc(100% - clamp(2rem,8vw,10rem)),87.5rem);
  margin-inline:auto;
}

.page-catalog-hub h1,
.page-catalog-hub h2,
.page-catalog-hub h3 {
  margin-top:0;
  color:var(--catalog-ivory);
  font-family:var(--catalog-font-display);
  font-weight:700;
  letter-spacing:-.04em;
  text-transform:none;
}

.page-catalog-hub a:focus-visible,
.page-catalog-hub button:focus-visible,
.page-catalog-hub input:focus-visible,
.page-catalog-hub textarea:focus-visible,
.page-catalog-hub summary:focus-visible {
  outline:3px solid rgba(232,197,109,.45);
  outline-offset:3px;
}

/* Header */
.page-catalog-hub .home-header {
  position:sticky;
  top:0;
  z-index:90;
  min-height:4.55rem;
  border-bottom:1px solid var(--catalog-line)!important;
  background:linear-gradient(180deg,rgba(5,6,5,.985),rgba(7,8,7,.95))!important;
  color:var(--catalog-ivory)!important;
  box-shadow:0 .55rem 2rem rgba(0,0,0,.22);
  backdrop-filter:blur(18px) saturate(120%);
}
.page-catalog-hub .home-header-inner { min-height:4.55rem; gap:.8rem; }
.page-catalog-hub .home-header .home-logo-image { width:4.75rem; height:3.8rem; object-fit:contain; }
.page-catalog-hub .home-header a,
.page-catalog-hub .home-header button,
.page-catalog-hub .home-nav li a { color:var(--catalog-ivory)!important; }
.page-catalog-hub .home-nav li { border-color:rgba(242,236,223,.1); }
.page-catalog-hub .home-nav li a {
  font-family:var(--catalog-font-ui);
  font-weight:680;
  font-size:.82rem;
  line-height:1.55;
  letter-spacing:normal;
  text-transform:none;
}
.page-catalog-hub .home-nav li a:hover { color:var(--catalog-gold-hi)!important; }
.page-catalog-hub .home-menu-toggle { border-color:var(--catalog-line-strong); color:var(--catalog-gold-hi)!important; }

/* Buttons */
.page-catalog-hub .home-btn {
  position:relative;
  display:inline-flex;
  min-height:3.15rem;
  align-items:center;
  justify-content:center;
  padding:.72rem 1.3rem;
  overflow:hidden;
  border:1px solid transparent;
  border-radius:999px!important;
  font-family:var(--catalog-font-ui);
  font-size:.875rem;
  font-weight:800;
  line-height:1.2;
  letter-spacing:normal;
  text-transform:none;
  text-decoration:none;
  transition:transform .3s cubic-bezier(.2,.75,.2,1),box-shadow .3s ease,border-color .3s ease,background .3s ease,color .3s ease;
}
.page-catalog-hub .home-header .home-btn {
  font-size:.78rem;
  line-height:1.2;
}
.page-catalog-hub .home-btn::after {
  content:"";
  position:absolute;
  inset:-120% auto -120% -45%;
  width:35%;
  pointer-events:none;
  transform:rotate(18deg) translateX(-250%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);
  transition:transform .7s cubic-bezier(.2,.7,.2,1);
}
.page-catalog-hub .home-btn:hover { transform:translateY(-2px); }
.page-catalog-hub .home-btn:hover::after { transform:rotate(18deg) translateX(520%); }
.page-catalog-hub .home-btn-primary,
.page-catalog-hub .home-header .home-btn-primary {
  border-color:var(--catalog-gold)!important;
  background:linear-gradient(135deg,#875f14,var(--catalog-gold-hi) 50%,#a77a20)!important;
  color:#090a08!important;
  box-shadow:0 .8rem 2.4rem rgba(201,151,45,.18);
}
.page-catalog-hub .home-btn-primary:hover { box-shadow:0 1rem 2.8rem rgba(201,151,45,.3),0 0 0 1px rgba(232,197,109,.18); }
.page-catalog-hub .home-btn-outline,
.page-catalog-hub .home-header .home-btn-outline {
  border-color:var(--catalog-line-strong)!important;
  background:rgba(201,151,45,.025)!important;
  color:var(--catalog-ivory)!important;
}
.page-catalog-hub .home-btn-outline:hover { border-color:var(--catalog-gold-hi)!important; background:rgba(201,151,45,.09)!important; color:var(--catalog-gold-hi)!important; }

.page-catalog-hub main {
  position:relative;
  display:block;
  isolation:isolate;
  background:
    radial-gradient(circle at 88% 8%,rgba(201,151,45,.11),transparent 26rem),
    radial-gradient(circle at 3% 50%,rgba(103,122,64,.045),transparent 30rem),
    var(--catalog-bg);
}
.page-catalog-hub main::before {
  content:"";
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
  opacity:.4;
  background-image:linear-gradient(rgba(232,197,109,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(232,197,109,.011) 1px,transparent 1px);
  background-size:72px 72px;
  -webkit-mask-image:linear-gradient(180deg,#000 0,transparent 58%);
  mask-image:linear-gradient(180deg,#000 0,transparent 58%);
}

/* Hero */
.catalog-hero {
  position:relative;
  min-height:min(26.5rem,58svh);
  overflow:hidden;
  border-bottom:1px solid var(--catalog-line);
  background:#060706;
}
.catalog-hero-media,
.catalog-hero-overlay,
.catalog-hero-picture,
.catalog-hero-picture img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}
.catalog-hero-picture { display:block; }
.catalog-hero-picture img {
  object-fit:cover;
  object-position:center 48%;
  filter:brightness(.7) saturate(.95) contrast(1.06);
  transform:scale(1.015);
  transition:transform 1.6s cubic-bezier(.2,.75,.2,1),filter .8s ease;
}
.catalog-hero:hover .catalog-hero-picture img { transform:scale(1.045); filter:brightness(.73) saturate(1.02) contrast(1.06); }
.catalog-hero-overlay {
  z-index:1;
  background:
    linear-gradient(90deg,rgba(4,5,4,.98) 0%,rgba(4,5,4,.9) 37%,rgba(4,5,4,.44) 64%,rgba(4,5,4,.2) 100%),
    linear-gradient(0deg,rgba(4,5,4,.82) 0%,transparent 45%),
    radial-gradient(circle at 77% 24%,rgba(232,197,109,.14),transparent 20rem);
}
.catalog-hero-inner {
  position:relative;
  z-index:2;
  min-height:inherit;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.catalog-hero-inner::after {
  content:"";
  position:absolute;
  right:clamp(1rem,6vw,5rem);
  bottom:clamp(1.4rem,4vw,3rem);
  width:min(18rem,28%);
  height:1px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(232,197,109,.35),transparent);
  opacity:.7;
}
.catalog-breadcrumbs {
  padding-top: .7rem;
  padding-bottom: 0;
}
.catalog-breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  color: rgba(242, 236, 223, .55);
  font-family: var(--catalog-font-ui);
  font-size: .72rem;
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: normal;
  text-transform: none;
}
.catalog-breadcrumbs li {
  display: inline-flex;
  align-items: center;
  margin: 0;
  padding: 0;
  line-height: 1.2;
}
.catalog-breadcrumbs li:not(:last-child)::after {
  content: "/";
  display: inline-flex;
  align-items: center;
  margin: 0 .42rem;
  color: rgba(201, 151, 45, .42);
  font-size: .68rem;
  font-weight: 500;
  line-height: 1;
}
.catalog-breadcrumbs a {
  color: rgba(242, 236, 223, .62);
  text-decoration: none;
  transition: color .2s ease;
}
.catalog-breadcrumbs a:hover {
  color: var(--catalog-gold-hi);
}
.catalog-breadcrumbs [aria-current="page"] span {
  color: rgba(242, 236, 223, .4);
}
.catalog-hero-copy {
  width:min(48rem,70%);
  margin:0;
  padding:2.15rem 0 2.35rem;
  text-align:left;
}
.catalog-kicker {
  display:flex;
  align-items:center;
  gap:.7rem;
  margin:0 0 .65rem;
  color:var(--catalog-gold-hi);
  font-family:var(--catalog-font-ui);
  font-size:.69rem;
  font-weight:800;
  letter-spacing:.16em;
  line-height:1.55;
  text-transform:uppercase;
}
.catalog-kicker::before {
  content:"";
  flex:0 0 2rem;
  height:1px;
  background:linear-gradient(90deg,var(--catalog-gold-hi),transparent);
  box-shadow:0 0 .8rem rgba(232,197,109,.35);
}
.catalog-hero h1 {
  max-width:16ch;
  margin:0;
  font-family:var(--catalog-font-display);
  font-size:clamp(3.35rem,5vw,5rem);
  font-weight:700;
  line-height:.93;
  letter-spacing:-.052em;
  text-transform:none;
  text-wrap:balance;
  text-shadow:0 .2rem 1.4rem rgba(0,0,0,.35);
}
.catalog-lead {
  max-width:38rem;
  margin:.75rem 0 0;
  color:rgba(242,236,223,.72);
  font-family:var(--catalog-font-ui);
  font-size:.92rem;
  font-weight:400;
  line-height:1.48;
  letter-spacing:normal;
}
.catalog-actions { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1.05rem; }
.catalog-hero-facts {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  width:min(38rem,100%);
  margin:1.15rem 0 0;
  padding:0;
  list-style:none;
  border:1px solid var(--catalog-line);
  border-radius:.85rem;
  overflow:hidden;
  background:rgba(5,6,5,.38);
  backdrop-filter:blur(8px);
}
.catalog-hero-facts li { display:grid; grid-template-columns:auto 1fr; align-items:center; gap:.55rem; min-height:3.45rem; padding:.5rem .85rem; }
.catalog-hero-facts li + li { border-left:1px solid var(--catalog-line); }
.catalog-hero-facts strong {
  color:var(--catalog-gold-hi);
  font-family:var(--catalog-font-display);
  font-size:1.25rem;
  font-weight:700;
  line-height:1;
  letter-spacing:-.04em;
  text-transform:none;
}
.catalog-hero-facts span {
  color:var(--catalog-muted);
  font-family:var(--catalog-font-ui);
  font-size:.75rem;
  line-height:1.3;
}

/* Shared section */
.catalog-section { position:relative; padding:clamp(2.75rem,4vw,4.25rem) 0; border-bottom:1px solid rgba(232,197,109,.13); }
.catalog-section-head { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(16rem,.65fr); gap:clamp(1.25rem,3vw,3rem); align-items:end; margin-bottom:1.5rem; text-align:left; }
.catalog-section-head h2,
.catalog-selection h2,
.catalog-request h2,
.catalog-task-copy h2 {
  margin:0;
  font-family:var(--catalog-font-display);
  font-size:clamp(2.45rem,3.55vw,3.8rem);
  font-weight:700;
  line-height:1;
  letter-spacing:-.045em;
  text-transform:none;
}
.catalog-faq h2 {
  margin:0;
  font-family:var(--catalog-font-display);
  font-size:clamp(2.45rem,3.55vw,3.8rem);
  font-weight:700;
  line-height:1;
  letter-spacing:-.045em;
  text-transform:none;
}
#catalog-directions-title {
  max-width:11.8em;
  text-wrap:balance;
}
.catalog-section-head > p,
.catalog-task-copy > p,
.catalog-selection-copy > p,
.catalog-request-copy > p { margin:0; color:var(--catalog-muted); line-height:1.7; }

/* Categories */
.catalog-categories::before {
  content:"КАТАЛОГ";
  position:absolute;
  top:2rem;
  right:4vw;
  color:transparent;
  -webkit-text-stroke:1px rgba(232,197,109,.045);
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;
  font-size:clamp(5rem,13vw,12rem);
  font-weight:900;
  letter-spacing:-.07em;
  pointer-events:none;
}
.catalog-category-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.catalog-category-card {
  position:relative;
  overflow:hidden;
  border:1px solid var(--catalog-line);
  border-radius:1.45rem;
  background:linear-gradient(145deg,rgba(19,22,15,.96),rgba(8,9,7,.98));
  box-shadow:0 1rem 3.2rem rgba(0,0,0,.18);
  transition:transform .45s cubic-bezier(.2,.75,.2,1),border-color .35s ease,box-shadow .35s ease;
}
.catalog-category-card::before {
  content:"";
  position:absolute;
  width:17rem;
  height:17rem;
  right:-7rem;
  bottom:-10rem;
  border:1px solid rgba(232,197,109,.12);
  border-radius:50%;
  box-shadow:0 0 0 3.2rem rgba(201,151,45,.014),0 0 0 6.4rem rgba(201,151,45,.008);
  transition:transform .7s cubic-bezier(.2,.75,.2,1),border-color .35s ease;
}
.catalog-category-card:hover { transform:translateY(-5px); border-color:var(--catalog-line-strong); box-shadow:0 1.8rem 4.5rem rgba(0,0,0,.3),0 0 2.5rem rgba(201,151,45,.06); }
.catalog-category-card:hover::before { transform:scale(1.08) translate(-.35rem,-.35rem); border-color:rgba(232,197,109,.28); }
.catalog-category-link { position:relative; z-index:1; display:flex; min-height:15rem; flex-direction:column; align-items:flex-start; justify-content:flex-end; padding:1.15rem 1.25rem 1.2rem; color:inherit; text-decoration:none; text-align:left; }
.catalog-category-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:auto; }
.catalog-category-icon { display:grid; width:3.6rem; height:3.6rem; place-items:center; border:1px solid var(--catalog-line); border-radius:1rem; color:var(--catalog-gold-hi); background:rgba(201,151,45,.045); }
.catalog-category-icon svg { width:2rem; height:2rem; }
.catalog-category-index { color:rgba(232,197,109,.35); font-family:"Roboto Condensed",Arial,sans-serif; font-size:.82rem; letter-spacing:.14em; }
.catalog-category-eyebrow { margin-top:0; margin-bottom:.35rem; color:var(--catalog-gold-hi); font-family:var(--catalog-font-ui); font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; text-align:left; }
.catalog-category-card h3 {
  max-width:18ch;
  margin:0 0 .45rem;
  font-family:var(--catalog-font-display);
  font-size:clamp(1.35rem,1.55vw,1.55rem);
  font-weight:700;
  line-height:1;
  letter-spacing:-.04em;
  text-transform:none;
  text-align:left;
}
.catalog-category-card p {
  max-width:32rem;
  margin:0;
  color:var(--catalog-muted);
  font-family:var(--catalog-font-ui);
  font-size:.88rem;
  line-height:1.45;
  text-align:left;
}
.catalog-category-action { display:flex; align-items:center; gap:.45rem; margin-top:.85rem; color:var(--catalog-ivory); font-family:var(--catalog-font-ui); font-size:.74rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; text-align:left; }
.catalog-category-action svg { width:1.25rem; height:1.25rem; transition:transform .3s ease; }
.catalog-category-card:hover .catalog-category-action { color:var(--catalog-gold-hi); }
.catalog-category-card:hover .catalog-category-action svg { transform:translateX(.3rem); }
.catalog-category-card-featured { background:radial-gradient(circle at 80% 10%,rgba(201,151,45,.1),transparent 17rem),linear-gradient(145deg,#171910,#090a08); }

/* Task finder */
.catalog-tasks { overflow:hidden; background:linear-gradient(180deg,rgba(12,14,10,.72),rgba(5,6,5,.3)); }
.catalog-task-layout { display:grid; grid-template-columns:minmax(20rem,.78fr) minmax(0,1.22fr); gap:clamp(1.5rem,3.5vw,3.5rem); align-items:stretch; }
.catalog-task-copy { position:relative; display:flex; flex-direction:column; min-height:0; text-align:left; }
.catalog-task-copy h2 { max-width:12ch; }
.catalog-task-copy > p { max-width:34rem; margin-top:.75rem; }
.catalog-task-photo { position:relative; display:block; flex:1 1 auto; min-height:12rem; height:auto; margin-top:1.35rem; overflow:hidden; border:1px solid var(--catalog-line); border-radius:1rem; box-shadow:var(--catalog-shadow); }
.catalog-task-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 35%,rgba(4,5,4,.65)); }
.catalog-task-photo img { width:100%; height:100%; object-fit:cover; filter:brightness(.75) saturate(.95); transition:transform .9s ease; }
.catalog-task-photo:hover img { transform:scale(1.04); }
.catalog-task-grid { display:grid; grid-template-rows:repeat(4,minmax(0,1fr)); gap:.65rem; min-height:0; height:100%; }
.catalog-task-card {
  position:relative;
  display:grid;
  grid-template-columns:4.2rem minmax(0,1fr) auto;
  grid-template-areas:"icon kicker arrow" "icon title arrow" "icon text arrow";
  column-gap:1.2rem;
  align-items:center;
  padding:1.35rem 1.4rem;
  overflow:hidden;
  border:1px solid var(--catalog-line);
  border-radius:1.15rem;
  color:inherit;
  text-decoration:none;
  background:linear-gradient(90deg,rgba(19,21,15,.9),rgba(9,10,8,.86));
  transition:transform .35s ease,border-color .35s ease,background .35s ease;
}
.catalog-task-card::after { content:""; position:absolute; inset:0 auto 0 0; width:2px; transform:scaleY(0); transform-origin:bottom; background:var(--catalog-gold-hi); box-shadow:0 0 1.2rem rgba(232,197,109,.4); transition:transform .35s ease; }
.catalog-task-card:hover { transform:translateX(.35rem); border-color:var(--catalog-line-strong); background:linear-gradient(90deg,rgba(25,28,17,.95),rgba(10,11,9,.9)); }
.catalog-task-card:hover::after { transform:scaleY(1); }
.catalog-task-icon { grid-area:icon; display:grid; width:4rem; height:4rem; place-items:center; border:1px solid var(--catalog-line); border-radius:1rem; color:var(--catalog-gold-hi); }
.catalog-task-icon svg { width:2.2rem; height:2.2rem; }
.catalog-task-kicker { grid-area:kicker; color:var(--catalog-gold-hi); font-family:var(--catalog-font-ui); font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.catalog-task-card strong {
  grid-area:title;
  margin:.15rem 0;
  font-family:var(--catalog-font-display);
  font-size:1.2rem;
  font-weight:700;
  line-height:1.15;
  letter-spacing:-.035em;
  text-transform:none;
}
.catalog-task-card > span:not(.catalog-task-icon):not(.catalog-task-kicker) {
  grid-area:text;
  color:var(--catalog-muted);
  font-family:var(--catalog-font-ui);
  font-size:.88rem;
  line-height:1.5;
}
.catalog-task-card > b { grid-area:arrow; color:var(--catalog-gold-hi); font-size:1.4rem; font-weight:400; }

/* Popular */
.catalog-popular-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 1.4rem; margin:0; padding:0; list-style:none; counter-reset:none; border-top:1px solid var(--catalog-line); }
.catalog-popular-list li { border-bottom:1px solid var(--catalog-line); }
.catalog-popular-list a { display:flex; min-height:6.6rem; align-items:center; justify-content:space-between; gap:1rem; padding:1rem .2rem; color:inherit; text-decoration:none; transition:padding .28s ease,background .28s ease,color .28s ease; }
.catalog-popular-list a:hover { padding-left:.75rem; padding-right:.75rem; color:var(--catalog-gold-hi); background:linear-gradient(90deg,rgba(201,151,45,.055),transparent); }
.catalog-popular-list a span { display:flex; min-width:0; flex-direction:column; gap:.25rem; }
.catalog-popular-list strong { font-size:1.35rem; text-transform:uppercase; }
.catalog-popular-list small { color:var(--catalog-muted); font-size:.78rem; }
.catalog-popular-list b { color:var(--catalog-gold-hi); font-size:1.25rem; font-weight:400; }

/* Selection */
.catalog-selection { background:radial-gradient(circle at 12% 30%,rgba(201,151,45,.09),transparent 24rem),#080907; }
.catalog-selection-grid { display:grid; grid-template-columns:minmax(20rem,.78fr) minmax(0,1.22fr); gap:clamp(2.5rem,7vw,7rem); align-items:start; }
.catalog-selection-copy { position:sticky; top:6.5rem; }
.catalog-selection-copy h2 { max-width:11ch; }
.catalog-selection-copy > p { max-width:35rem; margin-top:1rem; }
.catalog-selection-copy .home-btn { margin-top:1.6rem; }
.catalog-selection-list { margin:0; padding:0; list-style:none; border-top:1px solid var(--catalog-line); }
.catalog-selection-list li { display:grid; grid-template-columns:3rem 1fr; gap:1rem; align-items:start; padding:1.35rem 0; border-bottom:1px solid var(--catalog-line); }
.catalog-selection-mark { display:grid; width:2.65rem; height:2.65rem; place-items:center; border:1px solid var(--catalog-line-strong); border-radius:50%; color:var(--catalog-gold-hi); background:rgba(201,151,45,.04); }
.catalog-selection-mark svg { width:1.55rem; height:1.55rem; }
.catalog-selection-list strong {
  display:block;
  margin-bottom:.25rem;
  color:var(--catalog-ivory);
  font-family:var(--catalog-font-display);
  font-size:1.05rem;
  font-weight:700;
  letter-spacing:-.035em;
  text-transform:none;
}
.catalog-selection-list small {
  display:block;
  color:var(--catalog-muted);
  font-family:var(--catalog-font-ui);
  font-size:.84rem;
  line-height:1.55;
}

/* Trust */
.catalog-trust-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.catalog-trust-card { display:grid; grid-template-columns:4rem 1fr auto; gap:1rem; align-items:center; min-height:10rem; padding:1.4rem; border:1px solid var(--catalog-line); border-radius:1.2rem; color:inherit; text-decoration:none; background:linear-gradient(145deg,rgba(17,19,13,.92),rgba(8,9,7,.96)); transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease; }
.catalog-trust-card:hover { transform:translateY(-4px); border-color:var(--catalog-line-strong); box-shadow:0 1.4rem 3rem rgba(0,0,0,.24); }
.catalog-trust-card > span { display:grid; width:4rem; height:4rem; place-items:center; border:1px solid var(--catalog-line); border-radius:1rem; color:var(--catalog-gold-hi); }
.catalog-trust-card svg { width:2.1rem; height:2.1rem; }
.catalog-trust-card strong { font-size:1.3rem; text-transform:uppercase; }
.catalog-trust-card p { margin:.35rem 0 0; color:var(--catalog-muted); font-size:.84rem; line-height:1.5; }
.catalog-trust-card > b { color:var(--catalog-gold-hi); font-size:1.35rem; font-weight:400; }

/* Request */
.catalog-request { position:relative; padding:clamp(2.75rem,4.5vw,4.5rem) 0; overflow:hidden; background:linear-gradient(145deg,#0d0f0c,#060706); }
.catalog-request::before { content:""; position:absolute; right:-12rem; bottom:-15rem; width:36rem; aspect-ratio:1; border:1px solid rgba(232,197,109,.1); border-radius:50%; box-shadow:0 0 0 5rem rgba(201,151,45,.012),0 0 0 10rem rgba(201,151,45,.007); }
.catalog-request-grid { position:relative; display:grid; grid-template-columns:minmax(0,.8fr) minmax(25rem,1.2fr); gap:clamp(2.5rem,7vw,7rem); align-items:start; }
.catalog-request-copy h2 { max-width:10ch; }
.catalog-request-copy > p { max-width:36rem; margin-top:1rem; }
.catalog-request-copy ul { display:grid; gap:.7rem; margin:1.5rem 0 0; padding:0; list-style:none; }
.catalog-request-copy li { display:flex; align-items:center; gap:.7rem; color:rgba(242,236,223,.78); font-size:.86rem; }
.catalog-request-copy li svg { width:1.25rem; height:1.25rem; flex:0 0 auto; color:var(--catalog-gold-hi); }
.catalog-form {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.9rem;
  padding:clamp(1.4rem,3vw,2.2rem);
  border:1px solid var(--catalog-line-strong)!important;
  border-radius:1.45rem!important;
  background:linear-gradient(145deg,rgba(19,21,15,.96),rgba(9,10,8,.98))!important;
  box-shadow:var(--catalog-shadow);
}
.catalog-form label {
  display:grid;
  gap:.45rem;
  color:var(--catalog-ivory)!important;
  font-family:var(--catalog-font-ui);
  font-size:.8rem;
  font-weight:800;
  line-height:1.2;
  letter-spacing:normal;
  text-transform:none;
}
.catalog-form input,
.catalog-form textarea,
.catalog-form select {
  font-family:var(--catalog-font-ui);
  font-size:1rem;
  font-weight:800;
  letter-spacing:normal;
}
.catalog-form label:nth-of-type(4) { grid-column:1/-1; }
.catalog-form input,
.catalog-form textarea {
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(232,197,109,.3)!important;
  border-radius:.85rem!important;
  background:#070806!important;
  color:var(--catalog-ivory)!important;
  caret-color:var(--catalog-gold-hi);
  box-shadow:none!important;
}
.catalog-form input { min-height:3.3rem; padding:.75rem .9rem!important; }
.catalog-form textarea { min-height:7.2rem; resize:vertical; padding:.85rem .9rem!important; }
.catalog-form input::placeholder,
.catalog-form textarea::placeholder { color:rgba(242,236,223,.42)!important; opacity:1; }
.catalog-form input:focus,
.catalog-form textarea:focus { border-color:var(--catalog-gold-hi)!important; box-shadow:0 0 0 3px rgba(232,197,109,.08)!important; }
.catalog-form-note { grid-column:1/-1; margin:0; color:rgba(242,236,223,.5); font-family:var(--catalog-font-ui); font-size:.75rem; line-height:1.4; }
.catalog-form .home-btn { grid-column:1/-1; width:100%; }
.catalog-form .home-form-status { grid-column:1/-1; color:var(--catalog-ivory); }

/* Footer */
.page-catalog-hub .home-footer { border-top:1px solid var(--catalog-line); background:#050605!important; color:var(--catalog-muted)!important; }
.page-catalog-hub .home-footer h2,
.page-catalog-hub .home-footer a { color:var(--catalog-ivory)!important; }
.page-catalog-hub .home-footer a:hover { color:var(--catalog-gold-hi)!important; }
.page-catalog-hub .home-footer-bottom { border-color:var(--catalog-line)!important; }
.page-catalog-hub .home-footer-cta { color:var(--catalog-gold-hi)!important; }

@media (max-width:72rem) {
  .page-catalog-hub .home-wrap { width:min(calc(100% - 2.5rem),87.5rem); }
  .catalog-hero-copy { width:min(48rem,72%); }
  .catalog-section-head { grid-template-columns:1fr .7fr; gap:2rem; }
}

@media (max-width:64rem) {
  .page-catalog-hub .home-wrap { width:min(calc(100% - 2rem),87.5rem); }
  .page-catalog-hub .home-header { min-height:4.2rem; }
  .page-catalog-hub .home-header-inner { min-height:4.2rem; }
  .page-catalog-hub .home-header .home-logo-image { width:4.25rem; height:3.4rem; }
  .catalog-hero { min-height:0; }
  .catalog-hero-copy { width:min(40rem,88%); padding:1.5rem 0 1.85rem; }
  .catalog-hero h1 { font-size:clamp(2.45rem,5vw,3.45rem); line-height:.93; letter-spacing:-.052em; }
  .catalog-category-grid { grid-template-columns:1fr 1fr; }
  .catalog-task-layout,
  .catalog-selection-grid,
  .catalog-request-grid { grid-template-columns:1fr; gap:2.2rem; }
  .catalog-faq-grid { grid-template-columns:1fr; gap:1.5rem; }
  .catalog-task-layout { align-items:start; }
  .catalog-task-copy,
  .catalog-selection-copy { position:static; }
  .catalog-task-copy { display:block; }
  .catalog-task-copy h2,
  .catalog-selection-copy h2,
  .catalog-request-copy h2 { max-width:14ch; }
  .catalog-task-photo { flex:none; height:14rem; min-height:0; }
  .catalog-task-grid { grid-template-rows:none; height:auto; }
  .catalog-task-card { height:auto; }
  .catalog-trust-grid { grid-template-columns:1fr; }
}

@media (max-width:48rem) {
  .page-catalog-hub { padding-bottom:4.75rem; }
  .page-catalog-hub .home-wrap { width:min(calc(100% - 1.25rem),87.5rem); }
  .catalog-breadcrumbs { padding-top:.55rem; }
  .catalog-hero-copy { width:100%; padding:1.25rem 0 1.5rem; }
  .catalog-hero h1 { max-width:14ch; font-size:clamp(2.45rem,10.8vw,3.45rem); line-height:.93; letter-spacing:-.055em; }
  .catalog-lead { max-width:36rem; font-size:.92rem; line-height:1.5; }
  .catalog-actions { display:grid; grid-template-columns:1fr; }
  .catalog-actions .home-btn { width:100%; }
  .catalog-hero-facts { grid-template-columns:1fr; margin-top:1.15rem; }
  .catalog-hero-facts li { min-height:3.35rem; }
  .catalog-hero-facts li + li { border-left:0; border-top:1px solid var(--catalog-line); }
  .catalog-hero-overlay { background:linear-gradient(90deg,rgba(4,5,4,.96),rgba(4,5,4,.73)),linear-gradient(0deg,rgba(4,5,4,.88),transparent 55%); }
  .catalog-section { padding:2.35rem 0; }
  .catalog-section-head { grid-template-columns:1fr; gap:.75rem; margin-bottom:1.15rem; }
  .catalog-section-head h2,
  .catalog-selection h2,
  .catalog-request h2,
  .catalog-task-copy h2,
  .catalog-faq h2 { font-size:clamp(1.95rem,8.7vw,2.5rem); line-height:1; letter-spacing:-.042em; }
  .catalog-section-head > p { font-size:.9rem; }
  .catalog-category-grid { grid-template-columns:1fr; }
  .catalog-category-link { min-height:13.5rem; padding:1rem 1.05rem 1.05rem; }
  .catalog-category-card h3 { font-size:clamp(1.2rem,5.5vw,1.4rem); }
  .catalog-task-photo { height:11.5rem; }
  .catalog-task-card { grid-template-columns:2.75rem minmax(0,1fr) auto; column-gap:.7rem; padding:.85rem .9rem; }
  .catalog-task-icon { width:2.65rem; height:2.65rem; border-radius:.75rem; }
  .catalog-task-icon svg { width:1.35rem; height:1.35rem; }
  .catalog-task-card strong { font-size:.95rem; }
  .catalog-task-card > span:not(.catalog-task-icon):not(.catalog-task-kicker) { font-size:.78rem; }
  .catalog-popular-list { grid-template-columns:1fr; }
  .catalog-popular-list a { min-height:5.7rem; }
  .catalog-selection-list li { grid-template-columns:2.25rem 1fr; }
  .catalog-selection-mark { width:2.35rem; height:2.35rem; }
  .catalog-trust-card { grid-template-columns:3.3rem 1fr auto; min-height:9rem; padding:1.05rem; }
  .catalog-trust-card > span { width:3.2rem; height:3.2rem; }
  .catalog-trust-card strong { font-size:1.12rem; }
  .catalog-faq summary { min-height:3rem; padding:.55rem 0; font-size:.9rem; }
  .catalog-faq summary span { width:1.7rem; height:1.7rem; }
  .catalog-faq details > p { margin:0 2.2rem .85rem 0; font-size:.82rem; }
  .catalog-request { padding:2.35rem 0; }
  .catalog-form { grid-template-columns:1fr; padding:1rem; }
  .catalog-form label,
  .catalog-form label:nth-of-type(4),
  .catalog-form-note,
  .catalog-form .home-btn,
  .catalog-form .home-form-status { grid-column:1; }
}



/* Catalog-only compact footer. Keeps approved homepage/product footers untouched. */

.page-catalog-hub .home-footer-brand .home-footer-logo-svg {
  display:block!important;
  width:5.15rem!important;
  height:auto!important;
  max-height:4.5rem;
  object-fit:contain;
  overflow:visible;
}

.page-catalog-hub .home-footer {
  padding:2.35rem 0 1rem!important;
}
.page-catalog-hub .home-footer-grid {
  align-items:start;
  gap:1.35rem!important;
}
.page-catalog-hub .home-footer h2 {
  margin:0 0 .55rem!important;
  color:var(--catalog-gold-hi)!important;
}
.page-catalog-hub .home-footer nav ul {
  display:grid!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
}
.page-catalog-hub .home-footer nav li {
  margin:0!important;
}
.page-catalog-hub .home-footer nav a {
  min-height:1.9rem!important;
  padding:.05rem 0!important;
  color:rgba(242,236,223,.66)!important;
  font-size:.78rem!important;
  line-height:1.32!important;
}
.page-catalog-hub .home-footer-brand > p {
  max-width:16.5rem;
  margin:.85rem 0 0!important;
  color:rgba(242,236,223,.5)!important;
  font-size:.78rem!important;
  line-height:1.55!important;
}
.page-catalog-hub .home-footer-contact-list {
  display:grid!important;
  gap:.22rem!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.page-catalog-hub .home-footer-contact-list li {
  margin:0!important;
}
.page-catalog-hub .home-footer-contact-link {
  display:inline-flex!important;
  min-height:1.9rem!important;
  align-items:center!important;
  gap:.48rem!important;
  color:rgba(242,236,223,.84)!important;
  font-size:.78rem!important;
  font-weight:650!important;
  line-height:1.3!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.page-catalog-hub .home-footer-contact-link svg,
.page-catalog-hub .home-footer-contact-icon {
  width:1rem!important;
  height:1rem!important;
  flex:0 0 1rem!important;
  color:var(--catalog-gold-hi)!important;
}
.page-catalog-hub .home-footer-contact-link:hover {
  color:var(--catalog-ivory)!important;
}
.page-catalog-hub .home-footer-cta {
  min-height:2rem!important;
  margin-top:.55rem!important;
  font-size:.78rem!important;
}
.page-catalog-hub .home-footer-bottom {
  margin-top:1.5rem!important;
  padding-top:.8rem!important;
}

@media (min-width:64rem) {
  .page-catalog-hub .home-footer-grid {
    grid-template-columns:1.2fr 1.05fr .92fr .92fr 1fr 1.25fr!important;
    column-gap:clamp(1rem,2vw,2rem)!important;
  }
}
@media (max-width:63.99rem) {
  .page-catalog-hub .home-footer-grid {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media (max-width:47.99rem) {
  .page-catalog-hub .home-footer {
    padding:2rem 0 .75rem!important;
  }
  .page-catalog-hub .home-footer-grid {
    grid-template-columns:1fr 1fr!important;
    gap:1.4rem 1rem!important;
  }
  .page-catalog-hub .home-footer-contacts {
    grid-column:1/-1;
  }
  .page-catalog-hub .home-footer-contact-link {
    white-space:normal;
  }
}
@media (max-width:35.99rem) {
  .page-catalog-hub .home-footer-grid {
    grid-template-columns:1fr!important;
  }
  .page-catalog-hub .home-footer-contacts {
    grid-column:auto;
  }
}

@media (prefers-reduced-motion:reduce) {
  .page-catalog-hub *,
  .page-catalog-hub *::before,
  .page-catalog-hub *::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; }
}


/* ===== Catalog Hub V2 · compact to homepage scale · 2026-09-22 ===== */
.page-catalog-hub {
  --catalog-radius: 1rem;
  --catalog-max: 87.5rem;
}

.page-catalog-hub .home-wrap {
  width: min(calc(100% - clamp(1.5rem, 4vw, 4rem)), var(--catalog-max));
}

/* Buttons closer to home compact controls */
.page-catalog-hub .home-btn {
  min-height: 2.875rem;
  padding: .65rem 1.15rem;
  font-size: .875rem;
}
.page-catalog-hub .home-header .home-btn {
  font-size: .78rem;
}

/* ---------- Hero: compact but filled ---------- */
.catalog-hero {
  min-height: min(26.5rem, 58svh);
  height: auto;
}
.catalog-hero-inner {
  min-height: inherit;
  justify-content: center;
}
.catalog-hero-picture img {
  object-position: center 46%;
  filter: brightness(.66) saturate(.94) contrast(1.06);
  transform: none;
}
.catalog-hero:hover .catalog-hero-picture img {
  transform: scale(1.02);
  filter: brightness(.7) saturate(.98) contrast(1.06);
}
.catalog-hero-overlay {
  background:
    linear-gradient(90deg, rgba(4, 5, 4, .95) 0%, rgba(4, 5, 4, .84) 36%, rgba(4, 5, 4, .4) 66%, rgba(4, 5, 4, .2) 100%),
    linear-gradient(0deg, rgba(4, 5, 4, .72) 0%, transparent 54%),
    radial-gradient(circle at 74% 30%, rgba(232, 197, 109, .14), transparent 18rem);
}
.catalog-breadcrumbs {
  padding-top: .7rem;
}
.catalog-hero-copy {
  width: min(48rem, 70%);
  margin: 0;
  padding: 2.15rem 0 2.35rem;
  text-align: left;
}
.catalog-kicker {
  margin: 0 0 .55rem;
  font-size: .69rem;
  letter-spacing: .16em;
}
.catalog-hero h1 {
  max-width: 16ch;
  margin: 0;
  font-size: clamp(3.35rem, 5vw, 5rem);
  line-height: .93;
  letter-spacing: -.052em;
  text-shadow: 0 .2rem 1.4rem rgba(0, 0, 0, .35);
}
.catalog-lead {
  max-width: 38rem;
  margin: .75rem 0 0;
  font-size: .92rem;
  line-height: 1.48;
}
.catalog-actions {
  gap: .65rem;
  margin-top: 1.05rem;
}
.catalog-hero-facts {
  width: min(38rem, 100%);
  margin: 1.15rem 0 0;
  border: 1px solid var(--catalog-line);
  border-radius: .85rem;
  overflow: hidden;
  background: rgba(5, 6, 5, .38);
}
.catalog-hero-facts li {
  min-height: 3.45rem;
  padding: .5rem .85rem;
  gap: .55rem;
}
.catalog-hero-facts strong {
  font-size: 1.25rem;
}
.catalog-hero-facts span {
  font-size: .75rem;
  line-height: 1.3;
}

/* ---------- Sections / type ---------- */
.catalog-section {
  padding: clamp(2.75rem, 4vw, 4.25rem) 0;
}
.catalog-section-head {
  grid-template-columns: minmax(0, 1.15fr) minmax(16rem, .72fr);
  gap: clamp(1.25rem, 3vw, 3rem);
  align-items: end;
  margin-bottom: 1.5rem;
  text-align: left;
}
.catalog-section-head h2,
.catalog-selection h2,
.catalog-request h2,
.catalog-task-copy h2,
.catalog-faq h2 {
  max-width: 18ch;
  font-size: clamp(2.45rem, 3.55vw, 3.8rem);
  line-height: 1;
  letter-spacing: -.045em;
}
#catalog-directions-title {
  max-width: 11.8em;
}
.catalog-section-head > p,
.catalog-task-copy > p,
.catalog-selection-copy > p,
.catalog-request-copy > p,
.catalog-faq-copy > p:not(.catalog-kicker) {
  font-family: var(--catalog-font-ui);
  font-size: .92rem;
  line-height: 1.55;
}
.catalog-categories::before {
  display: none;
}

/* ---------- Direction cards: compact + left-aligned text stack ---------- */
.catalog-categories {
  background:
    radial-gradient(circle at 88% 10%, rgba(201, 151, 45, .07), transparent 24rem),
    linear-gradient(180deg, #060706, #080907 55%, #060706);
}
.catalog-category-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-rows: auto;
  gap: .85rem;
}
.catalog-category-card {
  min-height: 0;
  border-radius: var(--catalog-radius);
  background: #0a0b09;
  isolation: isolate;
}
.catalog-category-card:nth-child(1),
.catalog-category-card:nth-child(4) {
  grid-column: span 7;
  min-height: 16.5rem;
}
.catalog-category-card:nth-child(2),
.catalog-category-card:nth-child(3) {
  grid-column: span 5;
  min-height: 16.5rem;
}
.catalog-category-card:nth-child(5),
.catalog-category-card:nth-child(6) {
  grid-column: span 6;
  min-height: 15rem;
}
.catalog-category-card::before {
  z-index: 3;
  width: 12rem;
  height: 12rem;
  right: -6rem;
  bottom: -7.5rem;
  opacity: .5;
}
.catalog-category-media,
.catalog-category-media picture,
.catalog-category-media img,
.catalog-category-shade {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.catalog-category-media {
  z-index: 0;
  overflow: hidden;
}
.catalog-category-media picture {
  display: block;
}
.catalog-category-media img {
  object-fit: cover;
  object-position: center;
  transform: scale(1.01);
  filter: brightness(.58) saturate(.9) contrast(1.05);
  transition: transform .7s cubic-bezier(.2, .75, .2, 1), filter .4s ease;
}
.catalog-category-shade {
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(5, 6, 5, .05) 0%, rgba(5, 6, 5, .35) 42%, rgba(5, 6, 5, .94) 100%),
    linear-gradient(90deg, rgba(5, 6, 5, .35), transparent 70%);
}
.catalog-category-card:hover {
  transform: translateY(-3px);
}
.catalog-category-card:hover .catalog-category-media img {
  transform: scale(1.04);
  filter: brightness(.64) saturate(.98) contrast(1.04);
}
.catalog-category-link {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  min-height: 100%;
  height: 100%;
  padding: 1.15rem 1.25rem 1.2rem;
  text-align: left;
  color: inherit;
  text-decoration: none;
}
.catalog-category-top,
.catalog-category-icon {
  display: none !important;
}
.catalog-category-eyebrow,
.catalog-category-card h3,
.catalog-category-card p,
.catalog-category-action {
  width: 100%;
  max-width: 28rem;
  margin-left: 0;
  margin-right: 0;
  text-align: left;
}
.catalog-category-eyebrow {
  display: block;
  margin-top: 0;
  margin-bottom: .35rem;
  color: var(--catalog-gold-hi);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  line-height: 1.3;
}
.catalog-category-card h3 {
  max-width: 18ch;
  margin: 0 0 .45rem;
  font-family: var(--catalog-font-display);
  font-size: clamp(1.35rem, 1.55vw, 1.55rem);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.04em;
  text-transform: none;
  text-shadow: 0 .12rem 1rem rgba(0, 0, 0, .3);
}
.catalog-category-card:nth-child(1) h3,
.catalog-category-card:nth-child(4) h3 {
  font-size: clamp(1.4rem, 1.7vw, 1.7rem);
}
.catalog-category-card:nth-child(2) h3,
.catalog-category-card:nth-child(3) h3,
.catalog-category-card:nth-child(5) h3,
.catalog-category-card:nth-child(6) h3 {
  font-size: clamp(1.3rem, 1.45vw, 1.48rem);
}
.catalog-category-card p {
  max-width: 32rem;
  margin: 0;
  color: rgba(242, 236, 223, .72);
  font-family: var(--catalog-font-ui);
  font-size: .88rem;
  line-height: 1.45;
  min-height: 2.55rem;
}
.catalog-category-action {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin-top: .85rem;
  color: var(--catalog-gold-hi);
  font-family: "Roboto Condensed", Arial, sans-serif;
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  line-height: 1.2;
}
.catalog-category-action svg {
  width: 1.05rem;
  height: 1.05rem;
}

/* ---------- Task cards ---------- */
.catalog-tasks {
  background:
    radial-gradient(circle at 12% 8%, rgba(201, 151, 45, .045), transparent 24rem),
    #050605;
}
.catalog-task-layout {
  align-items: stretch;
  gap: clamp(1.5rem, 3.5vw, 3.5rem);
}
.catalog-task-copy {
  display: flex;
  flex-direction: column;
  min-height: 0;
  text-align: left;
}
.catalog-task-copy > p {
  margin-top: .75rem;
}
.catalog-task-photo {
  flex: 1 1 auto;
  height: auto;
  min-height: 12rem;
  margin-top: 1.35rem;
  border-radius: var(--catalog-radius);
}
.catalog-task-grid {
  display: grid;
  grid-template-rows: repeat(4, minmax(0, 1fr));
  gap: .65rem;
  height: 100%;
  min-height: 0;
}
.catalog-task-card {
  grid-template-columns: 3.15rem minmax(0, 1fr) auto;
  grid-template-areas:
    "icon kicker arrow"
    "icon title arrow"
    "icon text arrow";
  column-gap: .9rem;
  align-items: start;
  align-content: center;
  min-height: 0;
  height: 100%;
  padding: 1rem 1.05rem;
  border-radius: .9rem;
  text-align: left;
}
.catalog-task-card:hover {
  transform: translateX(.2rem);
}
.catalog-task-icon {
  width: 3rem;
  height: 3rem;
  border-radius: .75rem;
}
.catalog-task-icon svg {
  width: 1.55rem;
  height: 1.55rem;
}
.catalog-task-kicker {
  font-size: .68rem;
  letter-spacing: .1em;
  line-height: 1.25;
  text-align: left;
}
.catalog-task-card strong {
  margin: .12rem 0;
  font-size: 1.05rem;
  line-height: 1.2;
  text-align: left;
}
.catalog-task-card > span:not(.catalog-task-icon):not(.catalog-task-kicker) {
  font-size: .82rem;
  line-height: 1.4;
  text-align: left;
}
.catalog-task-card > b {
  font-size: 1.15rem;
  align-self: center;
}

/* ---------- Selection steps ---------- */
.catalog-selection {
  background:
    radial-gradient(circle at 14% 22%, rgba(201, 151, 45, .07), transparent 22rem),
    linear-gradient(160deg, #0a0b09, #060706 60%);
}
.catalog-selection-grid {
  gap: clamp(1.75rem, 4vw, 4rem);
}
.catalog-selection-copy {
  text-align: left;
}
.catalog-selection-copy > p {
  margin-top: .7rem;
}
.catalog-selection-copy .home-btn,
.catalog-selection-actions {
  margin-top: 1.15rem;
}
.catalog-selection-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .65rem;
}
.catalog-selection-list li {
  grid-template-columns: 2.5rem 1fr;
  gap: .85rem;
  padding: 1rem 0;
  text-align: left;
}
.catalog-selection-mark {
  width: 2.35rem;
  height: 2.35rem;
}
.catalog-selection-mark svg {
  width: 1.25rem;
  height: 1.25rem;
}
.catalog-selection-list strong {
  margin-bottom: .15rem;
  font-size: 1rem;
  line-height: 1.25;
}
.catalog-selection-list small {
  font-size: .8rem;
  line-height: 1.45;
}

/* ---------- FAQ ---------- */
.catalog-faq {
  background:
    radial-gradient(circle at 88% 12%, rgba(201, 151, 45, .05), transparent 22rem),
    #060706;
}
.catalog-faq-grid {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr);
  gap: clamp(1.5rem, 3.5vw, 3.25rem);
  align-items: start;
}
.catalog-faq-copy {
  text-align: left;
}
.catalog-faq-copy h2 {
  max-width: 14ch;
  margin: 0;
}
.catalog-faq-copy > p:not(.catalog-kicker) {
  max-width: 28rem;
  margin: .7rem 0 0;
  color: var(--catalog-muted);
  font-size: .92rem;
  line-height: 1.55;
}
.catalog-faq-list {
  min-width: 0;
}
.catalog-faq details {
  border-top: 1px solid var(--catalog-line);
}
.catalog-faq details:last-child {
  border-bottom: 1px solid var(--catalog-line);
}
.catalog-faq summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 2rem;
  gap: .85rem;
  align-items: center;
  min-height: 3.75rem;
  padding: .65rem 0;
  cursor: pointer;
  color: var(--catalog-ivory);
  font-family: var(--catalog-font-ui);
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.55;
  letter-spacing: normal;
  text-transform: none;
  list-style: none;
  transition: color .2s ease;
}
.catalog-faq summary::-webkit-details-marker {
  display: none;
}
.catalog-faq summary::marker {
  content: "";
}
.catalog-faq summary:focus-visible {
  outline: 2px solid var(--catalog-gold-hi);
  outline-offset: .2rem;
  border-radius: .2rem;
}
.catalog-faq summary span {
  position: relative;
  width: 1.85rem;
  height: 1.85rem;
  border: 1px solid var(--catalog-line);
  border-radius: 50%;
  justify-self: end;
  transition: border-color .2s ease, background .2s ease;
}
.catalog-faq summary span::before,
.catalog-faq summary span::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: .7rem;
  height: 1px;
  background: var(--catalog-gold-hi);
  transform: translate(-50%, -50%);
}
.catalog-faq summary span::after {
  transform: translate(-50%, -50%) rotate(90deg);
  transition: transform .25s ease;
}
.catalog-faq details:hover summary,
.catalog-faq details[open] summary {
  color: var(--catalog-gold-hi);
}
.catalog-faq details:hover summary span,
.catalog-faq details[open] summary span {
  border-color: var(--catalog-line-strong);
  background: rgba(232, 197, 109, .06);
}
.catalog-faq details[open] summary span::after {
  transform: translate(-50%, -50%) rotate(0deg);
}
.catalog-faq details > p {
  max-width: 42rem;
  margin: 0 2.6rem .95rem 0;
  color: var(--catalog-muted);
  font-family: var(--catalog-font-ui);
  font-size: .88rem;
  line-height: 1.55;
}

/* ---------- Form ---------- */
.catalog-request {
  padding: clamp(2.75rem, 4.5vw, 4.5rem) 0;
  background:
    radial-gradient(circle at 82% 18%, rgba(201, 151, 45, .06), transparent 20rem),
    linear-gradient(145deg, #0c0d0b, #050605);
}
.catalog-request-grid {
  gap: clamp(1.75rem, 4vw, 4rem);
}
.catalog-request-copy {
  text-align: left;
}
.catalog-request-copy > p {
  margin-top: .7rem;
}
.catalog-request-copy ul {
  margin-top: 1.1rem;
  gap: .55rem;
}
.catalog-request-copy li {
  font-size: .82rem;
}
.catalog-form {
  gap: .75rem;
  padding: 1.15rem 1.2rem;
  border-radius: var(--catalog-radius) !important;
  box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, .28);
}
.catalog-form label {
  gap: .35rem;
  font-family: var(--catalog-font-ui);
  font-size: .8rem;
  font-weight: 800;
}
.catalog-form input {
  min-height: 2.95rem;
  padding: .65rem .8rem !important;
  border-radius: .65rem !important;
  font-family: var(--catalog-font-ui);
  font-size: 1rem;
  font-weight: 800;
}
.catalog-form textarea {
  min-height: 5.5rem;
  padding: .7rem .8rem !important;
  border-radius: .65rem !important;
  font-family: var(--catalog-font-ui);
  font-size: 1rem;
  font-weight: 800;
}
.catalog-form-note {
  font-family: var(--catalog-font-ui);
  font-size: .75rem;
  line-height: 1.4;
}

@media (max-width: 64rem) {
  .catalog-hero {
    min-height: 0;
  }
  .catalog-hero-inner::after {
    display: none;
  }
  .catalog-hero-copy {
    width: min(44rem, 90%);
    padding: 1.65rem 0 1.9rem;
  }
  .catalog-hero h1 {
    font-size: clamp(2.45rem, 5vw, 3.45rem);
    line-height: .93;
    letter-spacing: -.052em;
  }
  #catalog-directions-title {
    max-width: 14em;
  }
  .catalog-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .catalog-category-card,
  .catalog-category-card:nth-child(n) {
    grid-column: auto;
    min-height: 14.5rem;
  }
  .catalog-category-card h3,
  .catalog-category-card:nth-child(1) h3,
  .catalog-category-card:nth-child(2) h3,
  .catalog-category-card:nth-child(3) h3,
  .catalog-category-card:nth-child(4) h3,
  .catalog-category-card:nth-child(5) h3,
  .catalog-category-card:nth-child(6) h3 {
    font-size: clamp(1.2rem, 2.4vw, 1.45rem);
  }
  .catalog-task-layout {
    align-items: start;
  }
  .catalog-task-copy {
    display: block;
  }
  .catalog-task-photo {
    flex: none;
    height: 14rem;
    min-height: 0;
  }
  .catalog-task-grid {
    grid-template-rows: none;
    height: auto;
  }
  .catalog-task-card {
    height: auto;
  }
  .catalog-faq-grid {
    grid-template-columns: 1fr;
    gap: 1.35rem;
  }
}

@media (max-width: 48rem) {
  .catalog-hero {
    min-height: 0;
  }
  .catalog-hero-copy {
    width: 100%;
    padding: 1.25rem 0 1.5rem;
  }
  .catalog-hero h1 {
    max-width: 14ch;
    font-size: clamp(2.45rem, 10.8vw, 3.45rem);
    line-height: .93;
    letter-spacing: -.055em;
  }
  .catalog-lead {
    font-size: .92rem;
  }
  .catalog-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .catalog-hero-facts {
    border-radius: .75rem;
  }
  .catalog-section {
    padding: 2.35rem 0;
  }
  .catalog-section-head {
    grid-template-columns: 1fr;
    gap: .75rem;
    margin-bottom: 1.15rem;
  }
  .catalog-section-head h2,
  .catalog-selection h2,
  .catalog-request h2,
  .catalog-task-copy h2,
  .catalog-faq h2 {
    font-size: clamp(1.95rem, 8.7vw, 2.5rem);
    line-height: 1;
    letter-spacing: -.042em;
  }
  #catalog-directions-title {
    max-width: none;
  }
  .catalog-category-grid {
    grid-template-columns: 1fr;
  }
  .catalog-category-card,
  .catalog-category-card:nth-child(n) {
    min-height: 13.5rem;
  }
  .catalog-category-link {
    padding: 1rem 1.05rem 1.05rem;
  }
  .catalog-category-card h3,
  .catalog-category-card:nth-child(1) h3,
  .catalog-category-card:nth-child(2) h3,
  .catalog-category-card:nth-child(3) h3,
  .catalog-category-card:nth-child(4) h3,
  .catalog-category-card:nth-child(5) h3,
  .catalog-category-card:nth-child(6) h3 {
    max-width: 18ch;
    font-size: clamp(1.2rem, 5.5vw, 1.4rem);
  }
  .catalog-category-card p {
    min-height: 0;
    font-size: .84rem;
    line-height: 1.4;
  }
  .catalog-task-photo {
    height: 11.5rem;
  }
  .catalog-task-card {
    grid-template-columns: 2.75rem minmax(0, 1fr) auto;
    column-gap: .7rem;
    padding: .85rem .9rem;
  }
  .catalog-task-icon {
    width: 2.65rem;
    height: 2.65rem;
  }
  .catalog-task-icon svg {
    width: 1.35rem;
    height: 1.35rem;
  }
  .catalog-task-card strong {
    font-size: .95rem;
  }
  .catalog-task-card > span:not(.catalog-task-icon):not(.catalog-task-kicker) {
    font-size: .78rem;
  }
  .catalog-selection-list li {
    grid-template-columns: 2.25rem 1fr;
    padding: .85rem 0;
  }
  .catalog-faq-grid {
    grid-template-columns: 1fr;
    gap: 1.15rem;
  }
  .catalog-faq-copy h2 {
    max-width: 16ch;
  }
  .catalog-faq summary {
    min-height: 3rem;
    padding: .55rem 0;
    font-size: .9rem;
    gap: .7rem;
  }
  .catalog-faq summary span {
    width: 1.7rem;
    height: 1.7rem;
  }
  .catalog-faq details > p {
    margin: 0 2.2rem .85rem 0;
    font-size: .82rem;
    line-height: 1.5;
  }
  .catalog-request {
    padding: 2.35rem 0;
  }
  .catalog-form {
    grid-template-columns: 1fr;
    padding: 1rem;
  }
}
