﻿/* Factory Editorial visual system for YTTWEAR public pages.
   Original direction: apparel supply, production proof, procurement clarity. */

:root {
  --factory-bg: #ebeae7;
  --factory-bg-soft: #f4f3ef;
  --factory-paper: #faf9f4;
  --factory-paper-strong: #ffffff;
  --factory-ink: #25272e;
  --factory-ink-deep: #101217;
  --factory-copy: #59636d;
  --factory-muted: #8594a4;
  --factory-steel: #6f8395;
  --factory-steel-soft: #d9e1e8;
  --factory-thread: #b9c7d3;
  --factory-line: rgba(37, 39, 46, 0.16);
  --factory-line-strong: rgba(37, 39, 46, 0.34);
  --factory-white: #faf9f4;
  --factory-font: "Manrope", "Inter", sans-serif;
  --factory-shadow: none;
  --factory-max: min(1320px, calc(100% - 56px));

  --bg: var(--factory-bg);
  --surface: var(--factory-paper);
  --surface-strong: var(--factory-paper-strong);
  --text: var(--factory-ink);
  --muted: var(--factory-copy);
  --border: var(--factory-line);
  --accent: var(--factory-steel);
  --accent-dark: var(--factory-ink);
  --accent-soft: var(--factory-steel-soft);
  --warm: var(--factory-muted);
  --shadow: var(--factory-shadow);

  --about-bg: var(--factory-bg);
  --about-surface: var(--factory-paper);
  --about-card: var(--factory-bg-soft);
  --about-card-strong: var(--factory-steel-soft);
  --about-text: var(--factory-ink);
  --about-muted: var(--factory-copy);
  --about-line: var(--factory-line);
  --about-blue: var(--factory-steel);
  --about-blue-soft: var(--factory-steel-soft);
  --about-amber: var(--factory-muted);
  --about-green: var(--factory-steel);
  --about-shadow: var(--factory-shadow);

  --paper: var(--factory-paper);
  --panel: var(--factory-paper);
  --ink: var(--factory-ink);
  --line: var(--factory-line);
  --slate: var(--factory-ink);
  --amber: var(--factory-muted);
  --teal: var(--factory-steel);

  --blue: var(--factory-steel);
  --blue-dark: var(--factory-ink);
  --text-secondary: var(--factory-copy);
  --bg-soft: var(--factory-bg-soft);
  --card: var(--factory-paper);
  --card-strong: var(--factory-steel-soft);

  --public-blue: var(--factory-steel);
  --public-blue-strong: var(--factory-ink);
  --public-cyan: var(--factory-thread);
  --public-ink: var(--factory-ink);
  --public-ink-soft: var(--factory-copy);
  --public-line: var(--factory-line);
  --public-surface: rgba(250, 249, 244, 0.9);
  --public-surface-strong: var(--factory-paper-strong);
  --public-bg: var(--factory-bg);
  --public-bg-soft: var(--factory-bg-soft);
  --public-shadow: none;
  --public-shadow-soft: none;

  --marketing-header-bg: rgba(235, 234, 231, 0.96);
  --marketing-header-line: rgba(37, 39, 46, 0.14);
  --marketing-footer-bg: var(--factory-ink);
  --marketing-footer-bg-soft: var(--factory-ink);
  --marketing-footer-line: rgba(250, 249, 244, 0.14);
  --marketing-text: var(--factory-ink);
  --marketing-muted: var(--factory-ink);
  --marketing-muted-light: rgba(250, 249, 244, 0.7);
  --marketing-accent: var(--factory-steel);
  --marketing-accent-dark: var(--factory-ink);
  --marketing-btn-shadow: none;
  --marketing-footer-accent: var(--factory-white);
  --marketing-footer-text: var(--factory-white);
}

* {
  box-sizing: border-box;
}

html {
  background: var(--factory-bg);
}

body {
  margin: 0 !important;
  max-width: none !important;
  padding: 0 !important;
  font-family: var(--factory-font) !important;
  color: var(--factory-ink) !important;
  background:
    linear-gradient(180deg, var(--factory-bg) 0%, #e4e6e8 100%) !important;
  line-height: 1.62;
  letter-spacing: -0.01em;
}

body::before {
  display: none !important;
  content: none !important;
}

a {
  color: inherit;
}

img {
  max-width: 100%;
}

.serif,
.hero-title,
.mission-title,
.section-title,
.channel-title {
  font-family: var(--factory-font) !important;
}

.site-shell,
.catalog-shell,
.container,
.marketing-shell,
.footer-shell,
article.container {
  width: var(--factory-max) !important;
  max-width: var(--factory-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.marketing-header,
.site-header {
  background: var(--marketing-header-bg) !important;
  border-bottom: 1px solid var(--marketing-header-line) !important;
  box-shadow: 0 10px 28px rgba(20, 22, 28, 0.06) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.marketing-header__inner,
.header-inner {
  min-height: 84px !important;
}

.marketing-logo img,
.header-logo img,
.logo img,
.footer-logo {
  filter: grayscale(1) contrast(1.12) !important;
}

.marketing-nav,
.header-nav {
  gap: clamp(16px, 2vw, 28px) !important;
}

.marketing-nav a,
.marketing-track,
.header-nav a {
  min-height: 34px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--factory-ink-deep) !important;
  font-size: 14px !important;
  font-weight: 750 !important;
  letter-spacing: 0.01em !important;
  text-decoration: none !important;
}

.marketing-nav a::after,
.marketing-track::after,
.header-nav a::after {
  content: "";
  display: block;
  width: 0;
  height: 2px;
  margin-top: 4px;
  background: currentColor;
  transition: width 180ms ease;
}

.marketing-nav a:hover::after,
.marketing-nav a.active::after,
.marketing-track:hover::after,
.header-nav a:hover::after,
.header-nav a.active::after {
  width: 100%;
}

.marketing-actions,
.header-actions {
  gap: 12px !important;
}

.marketing-quote,
.btn,
.header-btn,
.btn-quote,
.btn-primary,
.btn-secondary,
.primary-btn,
.secondary-btn,
.ghost-btn,
.about-btn,
.search-btn,
.submit-btn,
.btn-inquire,
.btn-submit,
.btn-apply,
.action-btn-share,
.cta-btn,
.page-btn,
.filter-reset,
.pricing-request-toggle,
.pricing-choice,
.pricing-submit,
.pricing-link,
.unit-toggle,
.mobile-selected-color-bar__action,
.login-box button,
.preview-btn,
.template-btn {
  border-radius: 0 !important;
  box-shadow: none !important;
  letter-spacing: 0.075em !important;
  text-transform: uppercase !important;
  font-weight: 800 !important;
}

.marketing-quote,
.btn-primary,
.header-btn,
.btn-quote,
.primary-btn,
.about-btn-primary,
.search-btn,
.submit-btn,
.btn-inquire,
.btn-submit,
.btn-apply,
.action-btn-share,
.pricing-submit,
.page-btn.active,
.login-box button,
.preview-btn {
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
  border: 1px solid var(--factory-ink) !important;
}

.btn-secondary,
.secondary-btn,
.ghost-btn,
.about-btn-secondary,
.filter-reset,
.pricing-link,
.cta-btn {
  background: transparent !important;
  color: var(--factory-ink) !important;
  border: 1px solid var(--factory-ink) !important;
}

.marketing-quote:hover,
.btn:hover,
.primary-btn:hover,
.secondary-btn:hover,
.about-btn:hover,
.page-btn:hover,
.category-card:hover,
.blog-card:hover,
.product-card:hover,
.related-card:hover,
.order-card:hover {
  transform: translateY(-3px) !important;
}

.hero-section,
.catalog-main,
.mission-section,
.contact-page .hero-section,
.custom-page .hero,
.page-shell,
.tracking-search-page .page-shell,
.tracking-detail-page .page-shell,
.guides-page,
.product-detail-page main {
  background: transparent !important;
}

.hero-section,
.mission-section,
.contact-page .hero-section,
.custom-page .hero,
.catalog-intro,
.section-head,
.section-title,
.form-head,
.blog-toolbar,
.hero-shell,
.proof-shell,
.faq-shell,
.inquiry-shell,
.support-layout {
  position: relative;
}

.hero-section::before,
.mission-section::before,
.contact-page .hero-section::before,
.custom-page .hero::before,
.catalog-intro::after,
.section-head::after,
.section-title::after,
.form-head::after,
.blog-toolbar::after,
.hero-shell::after {
  display: none !important;
  content: none !important;
}

.hero-section::before,
.mission-section::before,
.contact-page .hero-section::before,
.custom-page .hero::before {
  right: clamp(24px, 7vw, 120px);
  top: clamp(72px, 12vw, 170px);
}

.hero-section > *,
.mission-section > *,
.contact-page .hero-section > *,
.custom-page .hero > * {
  position: relative;
  z-index: 1;
}

.page-hero::after,
.hero:not(.hero-home)::after,
.hero-section::after {
  background: none !important;
}

.hero-copy h1,
.catalog-copy h1,
.mission-title,
.hero-title,
.hero-section h1,
.section-title,
.section-title-copy h2,
.section-intro h2,
.split-column h2,
.support-faq h2,
.support-panel h2,
.blog-toolbar-copy h2,
.newsletter h2,
.custom-page .section-title,
.product-title,
.panel-title,
.title,
body > h1,
article.container > h1 {
  font-family: var(--factory-font) !important;
  color: var(--factory-ink) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.045em !important;
  font-weight: 850 !important;
  line-height: 0.98 !important;
}

.hero-copy h1 {
  max-width: 10.5ch !important;
  font-size: clamp(42px, 6.4vw, 88px) !important;
}

div.section-title {
  color: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  text-transform: none !important;
}

.catalog-copy h1,
.hero-title,
.mission-title,
.hero-section h1 {
  font-size: clamp(38px, 5.4vw, 76px) !important;
}

.section-title,
.section-title-copy h2,
.section-intro h2,
.split-column h2,
.support-faq h2,
.support-panel h2,
.blog-toolbar-copy h2,
.newsletter h2,
.custom-page .section-title {
  font-size: clamp(32px, 4vw, 56px) !important;
}

.hero-summary,
.hero-copy p,
.catalog-copy p,
.mission-copy,
.hero-copy,
.hero-section p,
.section-intro p,
.section-copy,
.section-intro,
.split-column p,
.support-panel p,
.product-desc,
.channel-copy,
.inquiry-copy p,
.proof-content p,
.faq-card p,
.footer-brand p,
.results-count,
.product-subtype,
.product-moq,
.blog-card p,
.category-body p,
body > p,
article.container p,
li,
td {
  color: var(--factory-copy) !important;
}

.hero-kicker,
.section-kicker,
.trust-label,
.contact-label,
.path-index,
.eyebrow,
.section-label,
.kpi-label,
.method-label,
.hero-eyebrow,
.section-eyebrow,
.channel-label,
.filter-label,
.captcha-label,
.blog-card-tag,
.product-type,
.product-chip,
.filter-chip,
.meta,
.blog-card-meta {
  color: var(--factory-ink) !important;
  background: transparent !important;
  border-radius: 0 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-weight: 800 !important;
}

.hero-kicker::before,
.section-kicker::before,
.hero-eyebrow::before,
.section-eyebrow::before,
.mission-eyebrow::before {
  display: none !important;
}

.hero-visual,
.proof-item,
.proof-card,
.product-card,
.blog-card,
.category-card,
.method-card {
  position: relative;
}

.hero-visual::after,
.catalog-intro::after,
.section-head::after,
.section-title::after,
.form-head::after {
  display: none !important;
}

.hero-visual::before,
.proof-item::before,
.product-card::before,
.blog-card::before,
.category-card::before,
.method-card::before {
  display: none !important;
  content: none !important;
}

.hero-visual img,
.proof-item img,
.proof-media img,
.product-media,
.gallery-main,
.selected-color-preview__image-shell,
.related-card img,
.category-img,
.blog-card-img,
.hero-frame,
.hero-mini,
.method-media,
.media-photo,
.blog-cover {
  border-radius: 0 !important;
  filter: saturate(0.82) contrast(1.04) !important;
}

.hero-visual img,
.product-media img,
.category-img,
.blog-card-img,
.proof-card img,
.blog-cover {
  background: var(--factory-steel-soft) !important;
}

.trust-grid,
.concern-board,
.faq-list,
.filter-panel,
.product-card,
.category-card,
.blog-card,
.newsletter,
.support-panel,
.channel-card,
.form-panel,
.inquiry-copy,
.support-card,
.proof-copy,
.proof-card,
.method-card,
.decision-strip,
.pricing-request-card,
.selected-color-preview,
.section-stage,
.panel,
.info-shell,
.gallery-shell,
.related-card,
.search-card,
.order-card,
.filter-bar,
.map-container,
.moq-table,
.modal-content,
.empty-state,
.loading-state,
.hero,
.cta,
.note,
.disclaimer,
.value-note,
.login-box,
.upload-box,
.editor,
.post-list {
  border-radius: 0 !important;
  box-shadow: none !important;
  border: 1px solid var(--factory-line) !important;
  background: rgba(250, 249, 244, 0.78) !important;
}

.trust-grid,
.proof-grid,
.method-grid,
.channel-grid,
.support-grid,
.product-grid,
.category-grid,
.blog-grid {
  gap: clamp(18px, 2.2vw, 32px) !important;
}

.trust-item,
.process-step,
.link-stack a,
.method-row,
.quote-item,
.detail-grid .panel,
.buyer-panel,
.product-body,
.category-body,
.blog-card-body {
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.path-item,
.method-row,
.quote-item,
.faq-list details,
.faq-item,
.marketing-footer__bottom,
.product-footer,
.buyer-panel::before,
.detail-grid .panel::before,
th,
td {
  border-color: var(--factory-line) !important;
}

.proof-section,
.value-note,
.marketing-footer,
.site-footer,
.testimonial-section,
.partners-section {
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
}

.proof-section *,
.value-note *,
.marketing-footer *,
.site-footer * {
  border-color: rgba(250, 249, 244, 0.14) !important;
}

.proof-section h2,
.proof-section h3,
.value-note h3,
.marketing-footer h3,
.site-footer h4 {
  color: var(--factory-white) !important;
}

.proof-section p,
.proof-section span,
.value-note p,
.marketing-footer p,
.marketing-footer a,
.marketing-footer__bottom,
.site-footer p,
.site-footer a,
.site-footer .footer-bottom {
  color: rgba(250, 249, 244, 0.76) !important;
}

.proof-section .proof-item,
.proof-section .proof-card,
.marketing-footer .marketing-social a,
.site-footer .social-link {
  background: transparent !important;
  border-color: rgba(250, 249, 244, 0.18) !important;
}

.support-section,
.process-section,
.related-section,
.page-end,
.newsletter,
.cta-section {
  background: var(--factory-steel-soft) !important;
  box-shadow: none !important;
}

.cta-section h2,
.cta-section p,
.newsletter h2,
.newsletter p {
  color: var(--factory-ink) !important;
}

.search-box input,
.search-input,
.filter-select,
.range-input,
.sort-select,
.form-control,
.form-group input,
.form-group select,
.form-group textarea,
#sortBy,
.pricing-contact-input,
.size-table,
.size-table input,
input,
select,
textarea {
  border-radius: 0 !important;
  border: 1px solid var(--factory-line) !important;
  background: rgba(250, 249, 244, 0.9) !important;
  color: var(--factory-ink) !important;
  box-shadow: none !important;
}

.search-box input:focus,
.search-input:focus,
.filter-select:focus,
.range-input:focus,
.sort-select:focus,
.form-control:focus,
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus,
.pricing-contact-input:focus,
input:focus,
select:focus,
textarea:focus {
  border-color: var(--factory-ink) !important;
  box-shadow: 0 0 0 3px rgba(37, 39, 46, 0.12) !important;
  outline: none !important;
}

.product-card:hover,
.category-card:hover,
.blog-card:hover,
.related-card:hover,
.order-card:hover {
  border-color: var(--factory-line-strong) !important;
  box-shadow: none !important;
}

.filter-chip,
.product-chip,
.product-type,
.blog-card-tag,
.product-cat,
.badge.featured,
.product-moq,
.status-strong,
.status-good,
.status-flexible {
  border: 1px solid var(--factory-line) !important;
  background: transparent !important;
  color: var(--factory-ink) !important;
}

.disclaimer,
.size-guide,
.pricing-note,
.note {
  background: var(--factory-steel-soft) !important;
  color: var(--factory-ink) !important;
  border-color: var(--factory-line) !important;
}

.cap-icon,
.why-icon,
.why-card-icon,
.contact-icon,
.about-icon-badge,
.process-step-num,
.process-icon {
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mobile-selected-color-bar {
  border-radius: 0 !important;
  background: var(--factory-ink) !important;
}

/* Blog article pages are mostly bare HTML; this creates a proper editorial reading system without changing content. */
body > h1,
body > .meta,
body > .hero,
body > h2,
body > h3,
body > p,
body > ul,
body > ol,
body > table,
body > .note,
body > .cta,
body > .disclaimer,
body > script + p,
article.container > * {
  width: min(920px, calc(100% - 40px));
  margin-left: auto !important;
  margin-right: auto !important;
}

body > h1,
article.container > h1 {
  margin-top: clamp(72px, 10vw, 128px) !important;
  margin-bottom: 18px !important;
  font-size: clamp(36px, 6vw, 72px) !important;
}

body > .meta,
article.container > .meta {
  margin-bottom: 30px !important;
  font-size: 12px !important;
}

body > h2,
article.container h2 {
  margin-top: 44px !important;
  margin-bottom: 16px !important;
  color: var(--factory-ink) !important;
  font-size: clamp(24px, 3vw, 36px) !important;
  line-height: 1.08 !important;
  letter-spacing: 0.02em !important;
}

body > h3,
article.container h3 {
  color: var(--factory-ink) !important;
}

body > p,
body > ul,
body > ol,
article.container p,
article.container ul,
article.container ol {
  font-size: 17px !important;
  line-height: 1.82 !important;
}

body > .hero,
body > .note,
body > .cta,
body > .disclaimer,
article.container .hero,
article.container .note,
article.container .cta,
article.container .disclaimer {
  padding: 26px 28px !important;
  margin-top: 28px !important;
  margin-bottom: 28px !important;
}

body > .cta,
article.container .cta {
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
  text-align: left !important;
}

body > .cta p,
body > .cta a,
article.container .cta p,
article.container .cta a {
  color: var(--factory-white) !important;
}

body > .cta a,
article.container .cta a {
  display: inline-flex;
  margin-top: 8px;
  padding: 13px 18px;
  border: 1px solid rgba(250,249,244,0.42);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 13px;
}

table {
  border-collapse: collapse !important;
  background: var(--factory-paper) !important;
}

th,
td {
  padding: 14px !important;
  text-align: left !important;
}

th {
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 13px;
}

@media (min-width: 1180px) {
  .hero-layout {
    grid-template-columns: minmax(0, 0.9fr) minmax(520px, 1.05fr) !important;
    gap: clamp(34px, 6vw, 90px) !important;
  }

  .hero-visual {
    width: min(100%, 680px) !important;
    justify-self: end !important;
  }

  .hero-visual img {
    height: 430px !important;
  }
}

@media (max-width: 900px) {
  .site-shell,
  .catalog-shell,
  .container,
  .marketing-shell,
  article.container {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
  }

  .marketing-nav {
    gap: 18px !important;
  }

  .hero-section::before,
  .mission-section::before,
  .contact-page .hero-section::before,
  .custom-page .hero::before,
  .catalog-intro::after,
  .section-head::after,
  .section-title::after,
  .form-head::after,
  .blog-toolbar::after,
  .hero-shell::after {
    width: 54px;
    top: 24px;
    right: 24px;
    opacity: 0.35;
  }

  .hero-copy h1,
  .catalog-copy h1,
  .mission-title,
  .hero-title,
  .hero-section h1,
  .section-title,
  .section-title-copy h2,
  .section-intro h2,
  body > h1,
  article.container > h1 {
    letter-spacing: 0.028em !important;
  }

  body > h1,
  body > .meta,
  body > .hero,
  body > h2,
  body > h3,
  body > p,
  body > ul,
  body > ol,
  body > table,
  body > .note,
  body > .cta,
  body > .disclaimer,
  article.container > * {
    width: calc(100% - 28px) !important;
  }
}

/* Final alignment pass: remove over-active decoration, compact catalog cards, and pull legacy/admin pages into the same system. */
html,
body {
  overflow-x: hidden !important;
}

body {
  background:
    radial-gradient(circle at 12% 8%, rgba(255,255,255,0.62), transparent 26%),
    radial-gradient(circle at 88% 12%, rgba(111,131,149,0.14), transparent 24%),
    linear-gradient(180deg, var(--factory-bg) 0%, #e3e7ea 100%) !important;
}

body::before {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.22), transparent 38%),
    linear-gradient(90deg, transparent, rgba(37,39,46,0.018) 50%, transparent) !important;
}

.hero-section::before,
.mission-section::before,
.contact-page .hero-section::before,
.custom-page .hero::before,
.catalog-intro::after,
.section-head::after,
.section-title::after,
.form-head::after,
.blog-toolbar::after,
.hero-shell::after {
  display: none !important;
}

.hero-visual::before,
.proof-item::before,
.product-card::before,
.blog-card::before,
.category-card::before,
.method-card::before {
  width: 36px !important;
  height: 3px !important;
  opacity: 0.9;
}

/* Product catalog: shorter cards and tighter information density. */
.catalog-main .product-grid,
.product-grid {
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 18px !important;
}

.catalog-main .product-card,
.product-card {
  min-height: 0 !important;
}

.catalog-main .product-media,
.product-media {
  height: clamp(168px, 18vw, 218px) !important;
  aspect-ratio: auto !important;
}

.catalog-main .product-media img,
.product-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 12px !important;
}

.catalog-main .product-body,
.product-body {
  padding: 14px 16px 16px !important;
}

.catalog-main .product-type,
.product-type {
  display: inline-flex !important;
  padding: 4px 8px !important;
  margin-bottom: 9px !important;
  font-size: 10px !important;
  line-height: 1.1 !important;
}

.catalog-main .product-title,
.product-title {
  display: -webkit-box !important;
  min-height: 2.45em !important;
  margin: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  font-size: 16px !important;
  line-height: 1.18 !important;
  letter-spacing: 0.035em !important;
}

.catalog-main .product-subtype,
.product-subtype {
  display: none !important;
}

.catalog-main .product-chips,
.product-chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin-top: 11px !important;
}

.catalog-main .product-chip,
.product-chip {
  padding: 5px 8px !important;
  font-size: 10px !important;
  line-height: 1.1 !important;
  letter-spacing: 0.12em !important;
}

.catalog-main .product-footer,
.product-footer {
  display: grid !important;
  gap: 8px !important;
  margin-top: 12px !important;
  padding-top: 12px !important;
}

.catalog-main .product-moq,
.product-moq {
  width: fit-content !important;
  padding: 4px 8px !important;
  font-size: 10px !important;
  line-height: 1.1 !important;
}

.catalog-main .product-price strong,
.product-price strong {
  font-size: 13px !important;
  line-height: 1.35 !important;
}

/* Guides: stable local covers and no collapsed alt text when a remote image fails. */
.category-grid {
  align-items: stretch !important;
}

.category-card {
  min-height: 0 !important;
}

.category-img {
  display: block !important;
  width: 100% !important;
  height: clamp(120px, 11vw, 158px) !important;
  object-fit: cover !important;
  object-position: center !important;
  color: transparent !important;
}

.category-body {
  padding: 18px 20px 20px !important;
}

.category-body h3 {
  font-size: 18px !important;
  line-height: 1.16 !important;
}

.category-body p {
  min-height: 0 !important;
  font-size: 14px !important;
}

/* Custom pages: keep the stronger editorial look without letting old layouts overflow. */
.custom-page .hero {
  padding: clamp(62px, 8vw, 104px) 0 clamp(42px, 5vw, 64px) !important;
}

.custom-page .hero-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.95fr) !important;
  gap: clamp(28px, 5vw, 64px) !important;
  align-items: center !important;
}

.custom-page .hero-main {
  padding: 0 !important;
}

.custom-page .hero-title {
  max-width: 11.5ch !important;
  font-size: clamp(38px, 5vw, 70px) !important;
  overflow-wrap: normal !important;
}

.custom-page .hero-copy {
  max-width: 48ch !important;
}

.custom-page .hero-media {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 132px !important;
  gap: 14px !important;
  width: 100% !important;
  justify-self: stretch !important;
}

.custom-page .hero-frame {
  min-height: clamp(300px, 32vw, 430px) !important;
}

.custom-page .hero-rail {
  grid-template-rows: 1fr 1.35fr 1fr !important;
}

.custom-page .hero-mini,
.custom-page .hero-mini--tall {
  min-height: 0 !important;
}

.custom-page .decision-strip,
.custom-page .framework-panel,
.custom-page .proof-panel,
.custom-page .faq-panel,
.custom-page .cta-panel,
.custom-page .method-card {
  background: rgba(250,249,244,0.86) !important;
  border: 1px solid var(--factory-line) !important;
}

.custom-page .method-media {
  aspect-ratio: 16 / 8.6 !important;
}

.custom-page .method-body {
  padding: 22px !important;
}

.custom-page .method-title,
.custom-page .framework-panel h3,
.custom-page .proof-panel h3,
.custom-page .cta-panel h3 {
  color: var(--factory-ink) !important;
  font-family: var(--factory-font) !important;
  letter-spacing: 0.02em !important;
}

.custom-page .method-pill {
  border-radius: 0 !important;
  background: transparent !important;
  border: 1px solid var(--factory-line) !important;
}

/* Standalone custom-process page. */
.custom-process-page {
  padding: 0 !important;
}

.custom-process-page .container {
  width: var(--factory-max) !important;
  max-width: 1120px !important;
  padding: clamp(56px, 7vw, 92px) 0 !important;
}

.custom-process-page .header {
  text-align: left !important;
  margin-bottom: 42px !important;
  border-bottom: 1px solid var(--factory-line) !important;
  padding-bottom: 26px !important;
}

.custom-process-page .header h1 {
  max-width: 10ch;
  margin: 0 0 12px !important;
  color: var(--factory-ink) !important;
  background: none !important;
  -webkit-text-fill-color: currentColor !important;
  text-transform: uppercase !important;
  letter-spacing: 0.045em !important;
  font-size: clamp(38px, 6vw, 72px) !important;
  line-height: 0.98 !important;
}

.custom-process-page .header p {
  max-width: 46ch !important;
  color: var(--factory-copy) !important;
}

.custom-process-page .timeline {
  padding-left: 0 !important;
  display: grid !important;
  gap: 18px !important;
}

.custom-process-page .timeline::before {
  display: none !important;
}

.custom-process-page .step {
  display: grid !important;
  grid-template-columns: 64px minmax(0, 1fr) !important;
  gap: 18px !important;
  margin: 0 !important;
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}

.custom-process-page .step-marker {
  position: static !important;
  width: 64px !important;
  height: 64px !important;
  border-radius: 0 !important;
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
  box-shadow: none !important;
}

.custom-process-page .step-card,
.custom-process-page .cta-section {
  border-radius: 0 !important;
  border: 1px solid var(--factory-line) !important;
  background: rgba(250,249,244,0.82) !important;
  color: var(--factory-ink) !important;
  box-shadow: none !important;
}

.custom-process-page .step-card:hover {
  transform: none !important;
  border-color: var(--factory-line-strong) !important;
}

.custom-process-page .step-icon {
  display: none !important;
}

.custom-process-page .step-title {
  color: var(--factory-ink) !important;
  font-weight: 850 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.035em !important;
}

.custom-process-page .step-subtitle,
.custom-process-page .cta-section p {
  color: var(--factory-copy) !important;
}

.custom-process-page .step-items {
  margin-left: 0 !important;
}

.custom-process-page .step-item {
  border-radius: 0 !important;
  border: 1px solid var(--factory-line) !important;
  background: transparent !important;
  color: var(--factory-ink) !important;
}

/* Admin pages: visual alignment only; keep existing forms and scripts intact. */
.admin-page {
  min-height: 100vh;
  padding: clamp(20px, 3vw, 36px) !important;
}

.admin-page .container,
.admin-page #main-content {
  width: min(1240px, 100%) !important;
  max-width: 1240px !important;
}

.admin-page .login-screen,
.admin-page #login-screen {
  background:
    radial-gradient(circle at 16% 10%, rgba(111,131,149,0.20), transparent 26%),
    linear-gradient(180deg, var(--factory-bg) 0%, #e2e6e9 100%) !important;
}

.admin-page .login-box,
.admin-page .login-shell,
.admin-page .card,
.admin-page .upload-box,
.admin-page .editor,
.admin-page .post-list,
.admin-page .products-table,
.admin-page .workspace-hero,
.admin-page .draft-panel,
.admin-page .hermes-panel,
.admin-page .table-wrap,
.admin-page .modal-content {
  border-radius: 0 !important;
  border: 1px solid var(--factory-line) !important;
  background: rgba(250,249,244,0.88) !important;
  box-shadow: none !important;
  color: var(--factory-ink) !important;
}

.admin-page .login-visual,
.admin-page .workspace-hero {
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
}

.admin-page .login-visual h1,
.admin-page .workspace-hero h1 {
  color: var(--factory-white) !important;
}

.admin-page h1,
.admin-page h2,
.admin-page h3 {
  font-family: var(--factory-font) !important;
  color: var(--factory-ink) !important;
  letter-spacing: 0.02em !important;
}

.admin-page .workspace-hero h1,
.admin-page .login-visual h1 {
  color: var(--factory-white) !important;
}

.admin-page .tab,
.admin-page .toolbar-btn,
.admin-page .action-btn,
.admin-page .btn-primary,
.admin-page .btn-secondary,
.admin-page .btn-success,
.admin-page .login-submit,
.admin-page .preview-btn,
.admin-page .submit-btn,
.admin-page .template-btn {
  border-radius: 0 !important;
  box-shadow: none !important;
}

.admin-page .tab.active,
.admin-page .btn-primary,
.admin-page .login-submit,
.admin-page #loginBtn,
.admin-page .submit-btn,
.admin-page .toolbar-btn.btn-primary {
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
}

.admin-page th {
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
}

.product-admin-page .login-screen {
  align-items: flex-start !important;
  overflow-y: auto !important;
  padding: clamp(18px, 3vw, 32px) !important;
}

.product-admin-page .login-shell {
  margin: 0 auto !important;
  min-height: 0 !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.88fr) !important;
}

.product-admin-page .login-visual,
.product-admin-page .login-box {
  padding: clamp(28px, 4vw, 44px) !important;
}

.product-admin-page .login-visual h1 {
  max-width: 8ch !important;
  font-size: clamp(42px, 4.6vw, 62px) !important;
}

.product-admin-page .login-points {
  margin-top: 28px !important;
  gap: 12px !important;
}

.product-admin-page .login-point {
  padding-top: 12px !important;
}

.tracking-admin-page #login-screen .card {
  max-width: 360px !important;
}

.tracking-admin-page #loginBtn {
  border-radius: 0 !important;
  background: var(--factory-ink) !important;
  color: var(--factory-white) !important;
  box-shadow: none !important;
}

/* Guide categories: a softer blog-category module for discovery. */
.guide-categories {
  padding: clamp(64px, 8vw, 104px) 0 clamp(56px, 7vw, 92px) !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.72), rgba(250,249,244,0.72)) !important;
  border: 0 !important;
}

.guide-categories .category-heading {
  max-width: 760px;
  margin: 0 auto clamp(34px, 5vw, 54px) !important;
  text-align: center;
}

.guide-categories .category-heading h2 {
  margin: 0 !important;
  color: var(--factory-ink) !important;
  font-family: var(--factory-font) !important;
  font-size: clamp(38px, 5vw, 64px) !important;
  font-weight: 850 !important;
  line-height: 1.02 !important;
  letter-spacing: -0.035em !important;
  text-transform: none !important;
}

.guide-categories .category-heading-mark {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  height: 18px;
  margin: 16px auto 14px;
}

.guide-categories .category-heading-mark::before {
  content: "";
  width: 76px;
  height: 5px;
  border-radius: 999px;
  background: #5f9f70;
}

.guide-categories .category-heading-mark::after {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #5f9f70;
}

.guide-categories .category-heading p {
  max-width: none !important;
  margin: 0 !important;
  color: #5c6670 !important;
  font-size: clamp(17px, 2vw, 22px) !important;
  line-height: 1.45 !important;
}

.guide-categories .category-showcase {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 28px) !important;
  align-items: stretch !important;
}

.guide-categories .category-card {
  position: relative;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  min-height: 0 !important;
  border: 1px solid rgba(37,39,46,0.08) !important;
  border-radius: 16px !important;
  background: #fffdf8 !important;
  box-shadow: 0 22px 42px rgba(25,31,37,0.09) !important;
  color: var(--factory-ink) !important;
  text-decoration: none !important;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease !important;
}

.guide-categories .category-card::before {
  display: none !important;
}

.guide-categories .category-card:hover {
  transform: translateY(-6px) !important;
  border-color: color-mix(in srgb, var(--cat-accent), #25272e 18%) !important;
  box-shadow: 0 30px 56px rgba(25,31,37,0.13) !important;
}

.guide-categories .category-img {
  width: 100% !important;
  height: clamp(220px, 22vw, 318px) !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 16px 16px 0 0 !important;
  filter: saturate(0.94) contrast(1.02) !important;
  background: #edf1ee !important;
}

.guide-categories .category-icon {
  position: absolute;
  top: calc(clamp(220px, 22vw, 318px) - 52px);
  left: 50%;
  z-index: 3;
  display: grid;
  width: 88px;
  height: 88px;
  place-items: center;
  border-radius: 999px;
  background: color-mix(in srgb, var(--cat-accent), #ffffff 8%);
  box-shadow: 0 18px 28px rgba(25,31,37,0.13);
  transform: translateX(-50%);
}

.guide-categories .category-icon svg {
  width: 44px;
  height: 44px;
  fill: none;
  stroke: #fff;
  stroke-width: 3.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.guide-categories .category-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: center;
  padding: 66px 28px 30px !important;
  text-align: center;
  background: linear-gradient(180deg, rgba(255,255,255,0.96), #fffdf8) !important;
}

.guide-categories .category-body h3 {
  margin: 0 !important;
  color: var(--factory-ink) !important;
  font-family: var(--factory-font) !important;
  font-size: clamp(19px, 1.7vw, 26px) !important;
  font-weight: 850 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.02em !important;
  text-transform: none !important;
}

.guide-categories .category-rule {
  display: block;
  width: 54px;
  height: 3px;
  margin: 18px auto 16px;
  border-radius: 999px;
  background: var(--cat-accent);
}

.guide-categories .category-body p {
  flex: 1;
  max-width: 24ch !important;
  margin: 0 auto 18px !important;
  color: #5f6872 !important;
  font-size: clamp(14px, 1.35vw, 17px) !important;
  line-height: 1.55 !important;
}

.guide-categories .category-body .count {
  color: color-mix(in srgb, var(--cat-accent), #25272e 44%) !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

@media (max-width: 1180px) {
  .guide-categories .category-showcase {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .guide-categories .category-showcase {
    grid-template-columns: 1fr !important;
  }

  .guide-categories .category-card {
    max-width: 420px;
    margin: 0 auto;
  }
}

/* Hard cleanup after visual review: no global grid lines, no three-bar ornaments, compact catalog cards. */
html,
body {
  background: #ebeae7 !important;
}

body {
  background:
    radial-gradient(circle at 18% 8%, rgba(255,255,255,0.72), transparent 30%),
    radial-gradient(circle at 86% 14%, rgba(111,131,149,0.10), transparent 26%),
    linear-gradient(180deg, #ebeae7 0%, #e5e8ea 100%) !important;
}

body::before,
body::after {
  display: none !important;
  content: none !important;
  background: none !important;
}

.hero-section::before,
.hero-section::after,
.mission-section::before,
.mission-section::after,
.contact-page .hero-section::before,
.contact-page .hero-section::after,
.custom-page .hero::before,
.custom-page .hero::after,
.catalog-intro::before,
.catalog-intro::after,
.section-head::before,
.section-head::after,
.section-title::before,
.section-title::after,
.form-head::before,
.form-head::after,
.blog-toolbar::before,
.blog-toolbar::after,
.hero-shell::before,
.hero-shell::after,
.hero-visual::before,
.hero-visual::after,
.proof-item::before,
.proof-item::after,
.product-card::before,
.product-card::after,
.blog-card::before,
.blog-card::after,
.method-card::before,
.method-card::after,
.proof-card::before,
.proof-card::after,
.buyer-panel::before,
.detail-grid .panel::before {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  box-shadow: none !important;
  background: none !important;
}

.guide-categories .category-card::before,
.guide-categories .category-card::after {
  display: none !important;
  content: none !important;
}

/* Guides category page: make the category module the first meaningful viewport. */
body:has(.guide-categories) {
  background: #fffefb !important;
}

.guide-categories {
  margin-top: 0 !important;
  padding-top: clamp(46px, 6vw, 72px) !important;
}

.guide-search {
  margin-top: clamp(42px, 5vw, 70px) !important;
}

/* Product catalog final compact treatment. */
.catalog-main {
  background: transparent !important;
}

.catalog-main .catalog-shell {
  width: min(1420px, calc(100% - 48px)) !important;
  max-width: min(1420px, calc(100% - 48px)) !important;
}

.catalog-main .product-grid {
  grid-template-columns: repeat(auto-fill, minmax(178px, 1fr)) !important;
  gap: 16px !important;
  align-items: start !important;
}

.catalog-main .product-card,
.product-card {
  display: flex !important;
  min-height: 0 !important;
  height: auto !important;
  border: 1px solid rgba(37,39,46,0.13) !important;
  background: rgba(250,249,244,0.92) !important;
}

.catalog-main .product-media,
.product-media {
  height: 168px !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  background: #dbe3ea !important;
}

.catalog-main .product-media img,
.product-media img {
  width: 100% !important;
  height: 100% !important;
  padding: 8px !important;
  object-fit: contain !important;
}

.catalog-main .product-body,
.product-body {
  display: flex !important;
  flex-direction: column !important;
  padding: 12px 13px 14px !important;
  min-height: 0 !important;
}

.catalog-main .product-type,
.product-type {
  width: fit-content !important;
  margin: 0 0 8px !important;
  padding: 4px 8px !important;
  font-size: 10px !important;
  line-height: 1 !important;
}

.catalog-main .product-title,
.product-title {
  display: -webkit-box !important;
  min-height: 2.2em !important;
  max-height: 2.2em !important;
  margin: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  font-size: 14px !important;
  line-height: 1.1 !important;
  letter-spacing: 0.025em !important;
}

.catalog-main .product-subtype,
.product-subtype {
  display: none !important;
}

.catalog-main .product-chips,
.product-chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 5px !important;
  margin: 10px 0 0 !important;
}

.catalog-main .product-chip,
.product-chip {
  padding: 4px 6px !important;
  font-size: 9px !important;
  line-height: 1 !important;
}

.catalog-main .product-footer,
.product-footer {
  display: block !important;
  margin-top: 10px !important;
  padding-top: 10px !important;
}

.catalog-main .product-moq,
.product-moq {
  display: inline-flex !important;
  width: fit-content !important;
  margin: 0 !important;
  padding: 5px 8px !important;
  font-size: 10px !important;
  line-height: 1 !important;
}

.catalog-main .product-price,
.product-price {
  display: none !important;
}

@media (min-width: 1280px) {
  .catalog-main .product-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

/* Feedback pass 2026-04-29: restore real logo, medium product cards, richer homepage blocks, and product detail coverage. */
.marketing-logo img,
.header-logo img,
.logo img,
.marketing-footer__brand > img {
  display: block !important;
}

.marketing-logo::before,
.marketing-logo::after,
.marketing-footer__brand::before,
.marketing-footer__brand::after {
  display: none !important;
  content: none !important;
}

.catalog-main .product-grid {
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important;
  gap: 20px !important;
}

.catalog-main .product-media,
.catalog-main .product-card .product-media {
  height: 212px !important;
  background: #dde6ed !important;
}

.catalog-main .product-media img,
.catalog-main .product-card .product-media img {
  padding: 12px !important;
}

.catalog-main .product-body,
.catalog-main .product-card .product-body {
  padding: 16px 17px 17px !important;
}

.catalog-main .product-title,
.catalog-main .product-card .product-title {
  min-height: 2.3em !important;
  max-height: 2.3em !important;
  font-size: 15px !important;
  line-height: 1.15 !important;
  letter-spacing: 0.025em !important;
}

.catalog-main .product-chip,
.catalog-main .product-card .product-chip {
  padding: 5px 8px !important;
  font-size: 9.5px !important;
}

.catalog-main .product-moq,
.catalog-main .product-card .product-moq {
  padding: 7px 9px !important;
  font-size: 11px !important;
}

@media (min-width: 1280px) {
  .catalog-main .product-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 1720px) {
  .catalog-main .product-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

.trust-strip {
  padding: 0 0 clamp(42px, 6vw, 76px) !important;
  background: transparent !important;
}

.trust-strip .trust-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border: 1px solid rgba(250,249,244,0.18) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.06), transparent 34%),
    #25272e !important;
  color: var(--factory-white) !important;
}

.trust-strip .trust-item {
  position: relative !important;
  min-height: 190px !important;
  padding: 28px 30px !important;
  border: 0 !important;
  border-right: 1px solid rgba(250,249,244,0.16) !important;
  background: transparent !important;
}

.trust-strip .trust-item:last-child {
  border-right: 0 !important;
}

.trust-strip .trust-item::before {
  content: "0" counter(trust-item);
  counter-increment: trust-item;
  display: block !important;
  width: auto !important;
  height: auto !important;
  margin-bottom: 28px;
  color: rgba(250,249,244,0.28);
  background: none !important;
  box-shadow: none !important;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: 0.16em;
}

.trust-strip .trust-grid {
  counter-reset: trust-item;
}

.trust-strip .trust-label {
  color: rgba(250,249,244,0.68) !important;
}

.trust-strip .trust-item strong {
  display: block !important;
  margin-top: 18px !important;
  color: var(--factory-white) !important;
  font-size: clamp(22px, 2vw, 30px) !important;
  line-height: 1.02 !important;
}

.trust-strip .trust-item p {
  margin-top: 14px !important;
  color: rgba(250,249,244,0.7) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.support-section {
  padding: clamp(72px, 8vw, 118px) 0 !important;
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,0.62), transparent 28%),
    linear-gradient(180deg, #dfe7ed 0%, #d7e0e7 100%) !important;
}

.support-section .support-layout {
  grid-template-columns: minmax(0, 0.9fr) minmax(420px, 0.72fr) !important;
  gap: clamp(34px, 5vw, 78px) !important;
  align-items: stretch !important;
}

.support-section .support-faq {
  display: grid !important;
  align-content: start !important;
}

.support-section .support-faq h2 {
  max-width: 10.5ch !important;
  font-size: clamp(52px, 6.8vw, 96px) !important;
  line-height: 0.94 !important;
  letter-spacing: 0.025em !important;
}

.support-section .faq-list {
  counter-reset: faq-item;
  margin-top: 28px !important;
  border: 1px solid rgba(37,39,46,0.16) !important;
  background: rgba(250,249,244,0.82) !important;
}

.support-section .faq-list details {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 74px minmax(0, 1fr) !important;
  gap: 22px !important;
  padding: 24px 28px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(37,39,46,0.14) !important;
  background: transparent !important;
}

.support-section .faq-list details:last-child {
  border-bottom: 0 !important;
}

.support-section .faq-list details::before {
  counter-increment: faq-item;
  content: counter(faq-item, decimal-leading-zero);
  grid-row: 1 / span 2;
  color: rgba(37,39,46,0.32);
  font-size: 30px;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.04em;
}

.support-section .faq-list summary {
  color: var(--factory-ink) !important;
  font-size: clamp(18px, 1.7vw, 24px) !important;
  font-weight: 850 !important;
  line-height: 1.18 !important;
}

.support-section .faq-list details p {
  grid-column: 2 !important;
  max-width: 62ch !important;
  color: var(--factory-copy) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

.support-section .support-panel {
  display: grid !important;
  align-content: space-between !important;
  min-height: 520px !important;
  padding: clamp(34px, 4vw, 56px) !important;
  border: 0 !important;
  background: #25272e !important;
  color: var(--factory-white) !important;
}

.support-section .support-panel h2 {
  max-width: 9ch !important;
  color: var(--factory-white) !important;
  font-size: clamp(38px, 4.5vw, 72px) !important;
  letter-spacing: 0.035em !important;
}

.support-section .support-panel p,
.support-section .contact-card,
.support-section .contact-card a {
  color: rgba(250,249,244,0.74) !important;
}

.support-section .support-panel .btn-secondary {
  border-color: rgba(250,249,244,0.68) !important;
  color: var(--factory-white) !important;
  background: transparent !important;
}

.product-detail-page main,
.product-detail-page #app {
  background:
    radial-gradient(circle at 86% 12%, rgba(111,131,149,0.14), transparent 26%),
    linear-gradient(180deg, #ebeae7 0%, #e2e7eb 100%) !important;
}

.product-detail-page .container {
  width: min(1340px, calc(100% - 56px)) !important;
  max-width: min(1340px, calc(100% - 56px)) !important;
  padding: 0 !important;
}

.product-detail-page .hero {
  padding: clamp(56px, 7vw, 92px) 0 clamp(44px, 6vw, 76px) !important;
}

.product-detail-page .hero-meta {
  margin-bottom: 22px !important;
}

.product-detail-page .breadcrumb,
.product-detail-page .utility-link {
  color: var(--factory-copy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

.product-detail-page .product-title {
  display: block !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
  color: var(--factory-ink) !important;
  font-family: var(--factory-font) !important;
  font-size: clamp(40px, 5.3vw, 78px) !important;
  font-weight: 850 !important;
  line-height: 0.96 !important;
  letter-spacing: 0.035em !important;
  text-transform: uppercase !important;
}

.product-detail-page .hero-summary {
  max-width: 70ch !important;
  margin-top: 20px !important;
  color: var(--factory-copy) !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
}

.product-detail-page .hero-grid {
  grid-template-columns: minmax(0, 0.98fr) minmax(420px, 0.78fr) !important;
  gap: clamp(30px, 4.4vw, 60px) !important;
  align-items: start !important;
}

.product-detail-page .gallery-shell,
.product-detail-page .info-shell,
.product-detail-page .section-stage,
.product-detail-page .panel,
.product-detail-page .pricing-request-card,
.product-detail-page .size-guide,
.product-detail-page .related-card {
  border-radius: 0 !important;
  box-shadow: none !important;
}

.product-detail-page .gallery-shell {
  padding: 22px !important;
  border: 1px solid rgba(37,39,46,0.16) !important;
  background: rgba(250,249,244,0.76) !important;
}

.product-detail-page .gallery-main {
  border-radius: 0 !important;
  background: #dfe7ed !important;
}

.product-detail-page .gallery-main img {
  object-fit: contain !important;
  padding: clamp(14px, 2vw, 28px) !important;
}

.product-detail-page .thumb {
  border-radius: 0 !important;
}

.product-detail-page .info-shell {
  top: 106px !important;
  padding: clamp(26px, 3vw, 38px) !important;
  border: 0 !important;
  background: #25272e !important;
  color: var(--factory-white) !important;
}

.product-detail-page .eyebrow,
.product-detail-page .price,
.product-detail-page .sku,
.product-detail-page .fact-row strong,
.product-detail-page .fit-note {
  color: var(--factory-white) !important;
}

.product-detail-page .eyebrow {
  border-color: rgba(250,249,244,0.22) !important;
  background: transparent !important;
}

.product-detail-page .price small,
.product-detail-page .fact-row span,
.product-detail-page .fit-note,
.product-detail-page .sku {
  color: rgba(250,249,244,0.68) !important;
}

.product-detail-page .fact-list,
.product-detail-page .fact-row {
  border-color: rgba(250,249,244,0.18) !important;
}

.product-detail-page .pricing-request-card,
.product-detail-page .size-guide {
  background: rgba(250,249,244,0.96) !important;
  color: var(--factory-ink) !important;
}

.product-detail-page .pricing-request-title,
.product-detail-page .size-guide summary {
  color: var(--factory-ink) !important;
}

.product-detail-page .section {
  padding-top: clamp(34px, 5vw, 72px) !important;
}

.product-detail-page .section-stage {
  padding: clamp(34px, 4vw, 56px) !important;
  border: 1px solid rgba(37,39,46,0.14) !important;
  background: rgba(250,249,244,0.78) !important;
}

.product-detail-page .section-buyer .section-stage {
  background: #25272e !important;
  color: var(--factory-white) !important;
}

.product-detail-page .section-buyer .title,
.product-detail-page .section-buyer .panel-title,
.product-detail-page .section-buyer .panel-copy,
.product-detail-page .section-buyer .buyer-list,
.product-detail-page .section-buyer .intro {
  color: var(--factory-white) !important;
}

.product-detail-page .section-buyer .panel {
  border-color: rgba(250,249,244,0.16) !important;
  background: rgba(250,249,244,0.06) !important;
}

.product-detail-page .title,
.product-detail-page .panel-title {
  color: var(--factory-ink) !important;
  font-family: var(--factory-font) !important;
  letter-spacing: 0.025em !important;
  text-transform: uppercase !important;
}

@media (max-width: 1180px) {
  .trust-strip .trust-grid,
  .support-section .support-layout,
  .product-detail-page .hero-grid {
    grid-template-columns: 1fr !important;
  }

  .trust-strip .trust-item {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(250,249,244,0.16) !important;
  }

  .product-detail-page .info-shell {
    position: static !important;
  }
}

@media (max-width: 720px) {
  .catalog-main .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .catalog-main .product-media,
  .catalog-main .product-card .product-media {
    height: 170px !important;
  }

  .support-section .faq-list details {
    grid-template-columns: 48px minmax(0, 1fr) !important;
    padding: 20px !important;
  }

  .product-detail-page .container {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
  }
}

@media (max-width: 980px) {
  .custom-page .hero-shell,
  .custom-page .hero-media,
  .custom-page .decision-strip-grid,
  .custom-page .section-head,
  .custom-page .method-grid,
  .custom-page .framework-shell,
  .custom-page .faq-grid {
    grid-template-columns: 1fr !important;
  }

  .custom-page .hero-rail {
    display: none !important;
  }

  .custom-page .hero-title {
    max-width: 12ch !important;
  }

  .custom-process-page .step {
    grid-template-columns: 46px minmax(0, 1fr) !important;
  }

  .custom-process-page .step-marker {
    width: 46px !important;
    height: 46px !important;
  }
}

@media (max-width: 680px) {
  .catalog-main .product-grid,
  .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .catalog-main .product-media,
  .product-media {
    height: 150px !important;
  }

  .catalog-main .product-body,
  .product-body {
    padding: 12px !important;
  }

  .catalog-main .product-title,
  .product-title {
    font-size: 13px !important;
  }

  .catalog-main .product-price strong,
  .product-price strong {
    font-size: 12px !important;
  }
}

/* Artifact cleanup and compact product finish.
   This sits last on purpose: older page CSS used fixed grid overlays and tiny top bars. */
body::before,
body::after,
.page-shell::before,
.page-shell::after,
.tracking-hero::before,
.tracking-hero::after,
.card-hero::before,
.card-hero::after,
.hero-copy::before,
.hero-copy::after,
.priority-card::before,
.priority-card::after,
.site-footer::before,
.site-footer::after,
.marketing-footer::before,
.marketing-footer::after,
.method-card::before,
.method-card::after,
.product-card::before,
.product-card::after,
.blog-card::before,
.blog-card::after,
.category-card::before,
.category-card::after,
.proof-card::before,
.proof-card::after,
.buyer-panel::before,
.buyer-panel::after,
.detail-grid .panel::before,
.detail-grid .panel::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: none !important;
}

.catalog-main .catalog-shell {
  width: min(1480px, calc(100% - 40px)) !important;
  max-width: min(1480px, calc(100% - 40px)) !important;
}

.catalog-main .catalog-intro {
  padding-bottom: 14px !important;
}

.catalog-main .filter-panel {
  padding: 20px 22px !important;
}

.catalog-main .product-grid {
  grid-template-columns: repeat(auto-fill, minmax(162px, 1fr)) !important;
  gap: 14px !important;
}

.catalog-main .product-card,
.product-card {
  border-radius: 0 !important;
  box-shadow: none !important;
}

.catalog-main .product-media,
.product-media {
  height: 148px !important;
  background: #dfe5e9 !important;
}

.catalog-main .product-media img,
.product-media img {
  padding: 6px !important;
}

.catalog-main .product-body,
.product-body {
  padding: 11px 12px 12px !important;
}

.catalog-main .product-type,
.product-type {
  padding: 4px 7px !important;
  margin-bottom: 7px !important;
  border: 1px solid rgba(37,39,46,0.16) !important;
  background: rgba(255,255,255,0.36) !important;
}

.catalog-main .product-title,
.product-title {
  min-height: 2.15em !important;
  max-height: 2.15em !important;
  font-size: 13px !important;
  line-height: 1.08 !important;
  letter-spacing: 0.02em !important;
}

.catalog-main .product-chips,
.product-chips {
  margin-top: 8px !important;
  gap: 4px !important;
}

.catalog-main .product-chip,
.product-chip {
  padding: 4px 6px !important;
  font-size: 8.5px !important;
}

.catalog-main .product-footer,
.product-footer {
  margin-top: 8px !important;
  padding-top: 0 !important;
}

.catalog-main .product-moq,
.product-moq {
  padding: 5px 7px !important;
  border: 1px solid rgba(37,39,46,0.14) !important;
  background: rgba(255,255,255,0.44) !important;
  color: var(--factory-ink) !important;
}

.catalog-main .product-price,
.product-price {
  display: none !important;
}

@media (min-width: 1280px) {
  .catalog-main .product-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

/* Final feedback lock: real blog categories, shorter category cards, medium catalog cards, product detail priority. */
.guide-categories {
  padding-top: clamp(42px, 5vw, 64px) !important;
  padding-bottom: clamp(38px, 5vw, 62px) !important;
}

.guide-categories .category-heading {
  margin-bottom: clamp(26px, 3.5vw, 38px) !important;
}

.guide-categories .category-showcase {
  gap: clamp(14px, 1.6vw, 22px) !important;
}

.guide-categories .category-card {
  border-radius: 14px !important;
}

.guide-categories .category-img {
  height: clamp(168px, 16vw, 230px) !important;
  border-radius: 14px 14px 0 0 !important;
}

.guide-categories .category-icon {
  top: calc(clamp(168px, 16vw, 230px) - 38px) !important;
  width: 76px !important;
  height: 76px !important;
}

.guide-categories .category-icon svg {
  width: 36px !important;
  height: 36px !important;
}

.guide-categories .category-body {
  min-height: 0 !important;
  padding: 48px 20px 22px !important;
}

.guide-categories .category-body h3 {
  font-size: clamp(18px, 1.35vw, 22px) !important;
  line-height: 1.08 !important;
}

.guide-categories .category-rule {
  width: 44px !important;
  margin: 12px auto 12px !important;
}

.guide-categories .category-body p {
  flex: 0 0 auto !important;
  max-width: 22ch !important;
  min-height: 3.2em !important;
  margin: 0 auto 14px !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.guide-categories .category-body .count {
  font-size: 11px !important;
}

.catalog-main .product-grid {
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)) !important;
  gap: 20px !important;
}

.catalog-main .product-media,
.catalog-main .product-card .product-media {
  height: 212px !important;
  background: #dde6ed !important;
}

.catalog-main .product-media img,
.catalog-main .product-card .product-media img {
  padding: 12px !important;
}

.catalog-main .product-body,
.catalog-main .product-card .product-body {
  padding: 16px 17px 17px !important;
}

.catalog-main .product-title,
.catalog-main .product-card .product-title {
  min-height: 2.3em !important;
  max-height: 2.3em !important;
  font-size: 15px !important;
  line-height: 1.15 !important;
  letter-spacing: 0.025em !important;
}

.catalog-main .product-chip,
.catalog-main .product-card .product-chip {
  padding: 5px 8px !important;
  font-size: 9.5px !important;
}

.catalog-main .product-moq,
.catalog-main .product-card .product-moq {
  padding: 7px 9px !important;
  font-size: 11px !important;
}

@media (min-width: 1280px) {
  .catalog-main .product-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 1720px) {
  .catalog-main .product-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

.product-detail-page .product-title {
  display: block !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
  font-size: clamp(40px, 5.3vw, 78px) !important;
  line-height: 0.96 !important;
}

@media (max-width: 720px) {
  .guide-categories .category-img {
    height: 210px !important;
  }

  .guide-categories .category-icon {
    top: 172px !important;
  }

  .catalog-main .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .catalog-main .product-media,
  .catalog-main .product-card .product-media {
    height: 170px !important;
  }
}

/* Final polish pass: catalog rhythm, custom FAQ, and homepage support panels. */
.catalog-main .product-grid {
  grid-template-columns: repeat(auto-fill, minmax(244px, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.catalog-main .product-card,
.product-card {
  display: flex !important;
  flex-direction: column !important;
  min-height: 428px !important;
  height: 100% !important;
  overflow: hidden !important;
  border: 1px solid rgba(31, 36, 43, 0.12) !important;
  border-radius: 24px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 252, 0.94), rgba(247, 246, 240, 0.98)),
    radial-gradient(circle at 18% 0%, rgba(135, 166, 151, 0.16), transparent 28%) !important;
  box-shadow: 0 18px 44px rgba(24, 33, 45, 0.1) !important;
  transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease !important;
}

.catalog-main .product-card:hover,
.product-card:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(80, 144, 103, 0.32) !important;
  box-shadow: 0 28px 70px rgba(24, 33, 45, 0.15) !important;
}

.catalog-main .product-card::before,
.catalog-main .product-card::after,
.product-card::before,
.product-card::after {
  display: none !important;
}

.catalog-main .product-media,
.catalog-main .product-card .product-media {
  flex: 0 0 218px !important;
  height: 218px !important;
  background:
    linear-gradient(135deg, rgba(222, 232, 238, 0.98), rgba(198, 211, 219, 0.88)),
    repeating-linear-gradient(90deg, rgba(24, 33, 45, 0.035) 0 1px, transparent 1px 34px) !important;
  border-bottom: 1px solid rgba(31, 36, 43, 0.08) !important;
}

.catalog-main .product-media img,
.catalog-main .product-card .product-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 15px !important;
  filter: drop-shadow(0 18px 18px rgba(31, 36, 43, 0.08)) !important;
}

.catalog-main .product-body,
.catalog-main .product-card .product-body {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  padding: 18px 18px 20px !important;
}

.catalog-main .product-type,
.catalog-main .product-card .product-type {
  align-self: flex-start !important;
  border-radius: 999px !important;
  border-color: rgba(31, 36, 43, 0.14) !important;
  background: rgba(255, 255, 255, 0.72) !important;
  padding: 7px 11px !important;
  font-size: 10px !important;
}

.catalog-main .product-title,
.catalog-main .product-card .product-title {
  display: -webkit-box !important;
  min-height: 3.45em !important;
  max-height: 3.45em !important;
  overflow: hidden !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  margin-top: 11px !important;
  font-size: 16px !important;
  line-height: 1.15 !important;
  letter-spacing: 0.015em !important;
}

.catalog-main .product-chips,
.catalog-main .product-card .product-chips {
  min-height: 34px !important;
  margin-top: 12px !important;
  gap: 7px !important;
}

.catalog-main .product-subtype,
.catalog-main .product-card .product-subtype {
  min-height: 1.45em !important;
  margin-top: 9px !important;
  color: rgba(31, 36, 43, 0.62) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.catalog-main .product-chip,
.catalog-main .product-card .product-chip {
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.76) !important;
  padding: 7px 10px !important;
  font-size: 10px !important;
}

.catalog-main .product-footer,
.catalog-main .product-card .product-footer {
  margin-top: auto !important;
  padding-top: 15px !important;
}

.catalog-main .product-moq,
.catalog-main .product-card .product-moq {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-height: 34px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(31, 36, 43, 0.16) !important;
  background: #25272e !important;
  color: #fff !important;
  padding: 8px 13px !important;
  font-size: 11px !important;
  letter-spacing: 0.02em !important;
}

@media (min-width: 1280px) {
  .catalog-main .product-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 1780px) {
  .catalog-main .product-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
}

.custom-page .faq-grid {
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.55fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.custom-page .faq-panel,
.custom-page .cta-panel {
  border-radius: 34px !important;
  box-shadow: 0 28px 76px rgba(24, 33, 45, 0.12) !important;
}

.custom-page .faq-panel {
  position: relative !important;
  overflow: hidden !important;
  padding: 38px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(122, 157, 176, 0.24), transparent 32%),
    linear-gradient(135deg, #25272e 0%, #1f2229 100%) !important;
  color: #fff !important;
}

.custom-page .faq-panel::after {
  content: "" !important;
  position: absolute !important;
  right: 28px !important;
  top: 30px !important;
  width: 92px !important;
  height: 92px !important;
  border-radius: 50% !important;
  background:
    repeating-conic-gradient(from 0deg, rgba(255, 255, 255, 0.22) 0 8deg, transparent 8deg 17deg) !important;
  opacity: 0.32 !important;
  pointer-events: none !important;
}

.custom-page .faq-panel .section-label {
  position: relative !important;
  z-index: 1 !important;
  color: #d9c485 !important;
}

.custom-page .faq-panel .faq-list {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  gap: 0 !important;
  margin-top: 28px !important;
  counter-reset: custom-faq !important;
  border-top: 1px solid rgba(255, 255, 255, 0.14) !important;
}

.custom-page .faq-panel .faq-item {
  border-top: 0 !important;
  padding: 0 !important;
}

.custom-page .faq-panel .faq-item details {
  display: grid !important;
  grid-template-columns: 54px 1fr !important;
  column-gap: 18px !important;
  padding: 22px 0 !important;
  border-top: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
}

.custom-page .faq-panel .faq-item details::before {
  counter-increment: custom-faq !important;
  content: "0" counter(custom-faq) !important;
  width: 42px !important;
  height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.1) !important;
  color: #d9c485 !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
}

.custom-page .faq-panel .faq-item summary {
  color: #fff !important;
  font-size: clamp(18px, 1.8vw, 23px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.025em !important;
}

.custom-page .faq-panel .faq-item details p {
  grid-column: 2 !important;
  margin-top: 10px !important;
  color: rgba(255, 255, 255, 0.72) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

.custom-page .cta-panel {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  min-height: 100% !important;
  padding: 38px !important;
  border: 1px solid rgba(31, 36, 43, 0.1) !important;
  background:
    linear-gradient(180deg, rgba(255, 253, 247, 0.96), rgba(239, 232, 214, 0.94)),
    radial-gradient(circle at 82% 8%, rgba(80, 144, 103, 0.2), transparent 36%) !important;
}

.custom-page .cta-panel h3 {
  max-width: 9ch !important;
  margin-top: 16px !important;
  font-size: clamp(38px, 4vw, 62px) !important;
  line-height: 0.93 !important;
}

.custom-page .cta-panel p {
  max-width: 31ch !important;
  color: rgba(31, 36, 43, 0.72) !important;
}

.support-section {
  background:
    radial-gradient(circle at 12% 14%, rgba(255, 255, 255, 0.9), transparent 28%),
    linear-gradient(180deg, #dce6ec 0%, #d5e0e7 100%) !important;
}

.support-section .support-layout {
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.78fr) !important;
  gap: 26px !important;
  align-items: stretch !important;
}

.support-section .support-faq,
.support-section .support-panel {
  min-height: 620px !important;
  border-radius: 36px !important;
  box-shadow: 0 30px 78px rgba(24, 33, 45, 0.12) !important;
}

.support-section .support-faq {
  padding: 46px !important;
  border: 1px solid rgba(31, 36, 43, 0.12) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 252, 0.96), rgba(247, 246, 240, 0.98)),
    radial-gradient(circle at 88% 8%, rgba(80, 144, 103, 0.16), transparent 32%) !important;
}

.support-section .support-faq h2 {
  max-width: 12ch !important;
  margin-top: 16px !important;
  font-size: clamp(42px, 4.7vw, 74px) !important;
  line-height: 0.92 !important;
  letter-spacing: -0.065em !important;
}

.support-section .faq-list {
  margin-top: 40px !important;
  border-top: 1px solid rgba(31, 36, 43, 0.14) !important;
  counter-reset: order-faq !important;
}

.support-section .faq-list details {
  display: grid !important;
  grid-template-columns: 48px 1fr !important;
  column-gap: 20px !important;
  padding: 22px 0 !important;
  border-bottom: 1px solid rgba(31, 36, 43, 0.12) !important;
}

.support-section .faq-list details::before {
  counter-increment: order-faq !important;
  content: "0" counter(order-faq) !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(80, 144, 103, 0.12) !important;
  color: #3f7657 !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
}

.support-section .faq-list summary {
  color: #25272e !important;
  font-size: clamp(18px, 1.65vw, 25px) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.035em !important;
}

.support-section .faq-list details p {
  grid-column: 2 !important;
  max-width: 54ch !important;
  margin-top: 12px !important;
  color: rgba(31, 36, 43, 0.7) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

.support-section .support-panel {
  position: relative !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 44px !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  background:
    radial-gradient(circle at 84% 0%, rgba(122, 157, 176, 0.28), transparent 32%),
    linear-gradient(150deg, #25272e 0%, #20232a 100%) !important;
}

.support-section .support-panel::before {
  content: "QUOTE KIT" !important;
  position: absolute !important;
  right: 34px !important;
  top: 34px !important;
  width: 108px !important;
  height: 108px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  background: repeating-conic-gradient(from -8deg, rgba(255, 255, 255, 0.2) 0 8deg, transparent 8deg 18deg) !important;
  color: rgba(255, 255, 255, 0.72) !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 10px !important;
  letter-spacing: 0.16em !important;
  text-align: center !important;
}

.support-section .support-panel h2 {
  max-width: 8.8ch !important;
  margin-top: 56px !important;
  font-size: clamp(42px, 4.8vw, 78px) !important;
  line-height: 0.9 !important;
  letter-spacing: -0.07em !important;
  color: #fff !important;
}

.support-section .support-panel p {
  max-width: 32ch !important;
  margin-top: 30px !important;
  color: rgba(255, 255, 255, 0.76) !important;
  font-size: 17px !important;
  line-height: 1.72 !important;
}

.support-section .support-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 42px !important;
}

.support-section .support-panel .btn-primary,
.support-section .support-panel .btn-secondary {
  border-radius: 999px !important;
  min-height: 48px !important;
  padding: 14px 20px !important;
}

.support-section .support-panel .btn-primary {
  background: #fff !important;
  color: #25272e !important;
}

.support-section .support-panel .btn-secondary {
  border-color: rgba(255, 255, 255, 0.28) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  color: #fff !important;
}

.support-section .contact-card {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 16px !important;
  margin-top: auto !important;
  padding-top: 28px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.18) !important;
}

.support-section .contact-label {
  display: block !important;
  margin-bottom: 7px !important;
  color: rgba(255, 255, 255, 0.46) !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

.support-section .contact-card a {
  color: #fff !important;
  font-size: 16px !important;
}

@media (max-width: 1180px) {
  .support-section .support-layout,
  .custom-page .faq-grid {
    grid-template-columns: 1fr !important;
  }

  .support-section .support-faq,
  .support-section .support-panel {
    min-height: 0 !important;
  }
}

@media (max-width: 720px) {
  .catalog-main .product-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .catalog-main .product-card,
  .product-card {
    min-height: 0 !important;
  }

  .catalog-main .product-media,
  .catalog-main .product-card .product-media {
    flex-basis: 210px !important;
    height: 210px !important;
  }

  .custom-page .faq-panel,
  .custom-page .cta-panel,
  .support-section .support-faq,
  .support-section .support-panel {
    border-radius: 26px !important;
    padding: 28px !important;
  }

  .custom-page .faq-panel .faq-item details,
  .support-section .faq-list details {
    grid-template-columns: 1fr !important;
  }

  .custom-page .faq-panel .faq-item details::before,
  .support-section .faq-list details::before {
    margin-bottom: 12px !important;
  }

  .custom-page .faq-panel .faq-item details p,
  .support-section .faq-list details p {
    grid-column: 1 !important;
  }

  .support-section .support-panel::before {
    width: 76px !important;
    height: 76px !important;
    right: 22px !important;
    top: 22px !important;
    font-size: 8px !important;
  }
}

/* Feedback pass: remove burst ornaments, refine titles, FAQ, and hot-sell catalog flow. */
.custom-page .faq-panel::after,
.support-section .support-panel::before {
  display: none !important;
  content: none !important;
  background: none !important;
}

.product-detail-page .hero-top .product-title,
.product-detail-page h1.product-title,
.product-detail-page .product-title {
  max-width: 18ch !important;
  font-size: clamp(30px, 4vw, 56px) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.045em !important;
  text-wrap: balance !important;
}

.catalog-main .product-title,
.catalog-main .product-card .product-title {
  min-height: 3.54em !important;
  max-height: 3.54em !important;
  font-size: 13.5px !important;
  line-height: 1.18 !important;
  letter-spacing: 0.005em !important;
}

.catalog-main .product-type,
.catalog-main .product-card .product-type,
.catalog-main .product-chip,
.catalog-main .product-card .product-chip {
  font-size: 9.5px !important;
  letter-spacing: 0.11em !important;
}

.catalog-main .product-media,
.catalog-main .product-card .product-media {
  position: relative !important;
}

.catalog-main .product-hot-badge,
.product-hot-badge {
  position: absolute !important;
  left: 14px !important;
  top: 14px !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  padding: 0 11px !important;
  border-radius: 999px !important;
  background: #25272e !important;
  color: #fff !important;
  box-shadow: 0 12px 24px rgba(24, 33, 45, 0.18) !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 9.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

.catalog-main .product-card--hot {
  border-color: rgba(80, 144, 103, 0.28) !important;
}

.product-detail-page .selected-color-preview {
  margin-top: 0 !important;
}

.product-detail-page .selected-color-preview.active {
  margin-top: 18px !important;
}

.product-detail-page .pricing-request-toggle {
  display: none !important;
}

.product-detail-page .pricing-request-card,
.product-detail-page .pricing-request-card.collapsed {
  padding: 18px 18px 16px !important;
}

.product-detail-page .pricing-request-card.collapsed .pricing-request-head {
  grid-template-columns: 1fr !important;
}

.product-detail-page .pricing-request-card.collapsed .pricing-request-body {
  display: grid !important;
}

.product-detail-page .size-guide summary {
  cursor: default !important;
}

.custom-page #custom-faq {
  background:
    radial-gradient(circle at 10% 0%, rgba(255, 255, 255, 0.9), transparent 30%),
    linear-gradient(180deg, #dce6ec 0%, #d7e1e8 100%) !important;
}

.custom-page #custom-faq .faq-grid {
  grid-template-columns: minmax(0, 1.02fr) minmax(320px, 0.56fr) !important;
  gap: 22px !important;
  align-items: stretch !important;
}

.custom-page #custom-faq .faq-panel,
.custom-page #custom-faq .cta-panel {
  border-radius: 28px !important;
  border: 1px solid rgba(31, 36, 43, 0.1) !important;
  box-shadow: 0 22px 58px rgba(24, 33, 45, 0.1) !important;
}

.custom-page #custom-faq .faq-panel {
  overflow: visible !important;
  padding: 34px !important;
  background: rgba(250, 249, 244, 0.96) !important;
  color: #25272e !important;
}

.custom-page #custom-faq .faq-panel .section-label,
.custom-page #custom-faq .cta-panel .section-label {
  color: #4f7b63 !important;
}

.custom-page #custom-faq .faq-list {
  display: grid !important;
  gap: 12px !important;
  margin-top: 24px !important;
  border: 0 !important;
}

.custom-page #custom-faq .faq-item {
  padding: 0 !important;
  border: 0 !important;
}

.custom-page #custom-faq .faq-item details {
  display: block !important;
  padding: 0 !important;
  border: 1px solid rgba(31, 36, 43, 0.1) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.74) !important;
  overflow: hidden !important;
}

.custom-page #custom-faq .faq-item details::before {
  display: none !important;
  content: none !important;
}

.custom-page #custom-faq .faq-item summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 19px 21px !important;
  color: #25272e !important;
  font-size: clamp(16px, 1.35vw, 19px) !important;
  line-height: 1.28 !important;
  letter-spacing: -0.015em !important;
}

.custom-page #custom-faq .faq-item summary::after {
  content: "+" !important;
  flex: 0 0 auto !important;
  width: 26px !important;
  height: 26px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  background: rgba(80, 144, 103, 0.12) !important;
  color: #4f7b63 !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 16px !important;
}

.custom-page #custom-faq .faq-item details[open] summary::after {
  content: "-" !important;
}

.custom-page #custom-faq .faq-item details p {
  grid-column: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 21px 20px !important;
  color: rgba(31, 36, 43, 0.68) !important;
  font-size: 14.5px !important;
  line-height: 1.75 !important;
}

.custom-page #custom-faq .cta-panel {
  padding: 34px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 252, 0.96), rgba(241, 237, 226, 0.96)) !important;
}

.custom-page #custom-faq .cta-panel h3 {
  max-width: 9.5ch !important;
  margin-top: 18px !important;
  font-size: clamp(32px, 3.2vw, 48px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.055em !important;
}

.custom-page #custom-faq .cta-panel p {
  max-width: 32ch !important;
  color: rgba(31, 36, 43, 0.7) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

@media (max-width: 1180px) {
  .custom-page #custom-faq .faq-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 720px) {
  .product-detail-page .hero-top .product-title,
  .product-detail-page h1.product-title,
  .product-detail-page .product-title {
    font-size: clamp(28px, 10vw, 40px) !important;
  }

  .custom-page #custom-faq .faq-panel,
  .custom-page #custom-faq .cta-panel {
    padding: 24px !important;
    border-radius: 22px !important;
  }
}

/* Correction pass: single-line product titles and pricing-first color preview placement. */
.product-detail-page .hero-top .product-title,
.product-detail-page h1.product-title {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  max-height: none !important;
  margin-top: 20px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
  font-size: clamp(24px, 2.45vw, 36px) !important;
  line-height: 1.16 !important;
  letter-spacing: -0.025em !important;
  text-wrap: nowrap !important;
}

.catalog-main .product-title,
.catalog-main .product-card .product-title {
  display: block !important;
  min-height: 1.28em !important;
  max-height: 1.28em !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
  font-size: 13px !important;
  line-height: 1.28 !important;
  letter-spacing: 0 !important;
}

.product-detail-page .pricing-request-card + .selected-color-preview.active {
  margin-top: 16px !important;
}

@media (max-width: 720px) {
  .product-detail-page .hero-top .product-title,
  .product-detail-page h1.product-title {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    font-size: clamp(24px, 8vw, 34px) !important;
    line-height: 1.08 !important;
  }
}

/* Correction pass: two-line product detail title, hidden color preview, tighter intro headings. */
.product-detail-page .selected-color-preview:not(.active) {
  display: none !important;
  max-height: 0 !important;
  margin-top: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

.product-detail-page .selected-color-preview.active {
  display: block !important;
  visibility: visible !important;
}

.product-detail-page .hero-top .product-title,
.product-detail-page h1.product-title {
  display: -webkit-box !important;
  width: min(100%, 980px) !important;
  max-width: 980px !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: hidden !important;
  white-space: normal !important;
  text-overflow: clip !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  font-size: clamp(28px, 3.1vw, 44px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.035em !important;
  text-wrap: balance !important;
}

.product-detail-page .hero-summary {
  width: min(100%, 980px) !important;
  max-width: 980px !important;
  margin-top: 14px !important;
  font-size: clamp(15px, 1.35vw, 18px) !important;
  line-height: 1.7 !important;
}

.catalog-main .catalog-copy h1 {
  max-width: none !important;
  font-size: clamp(28px, 3.4vw, 44px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.04em !important;
  text-transform: none !important;
  white-space: nowrap !important;
}

.custom-page .method-stage .section-title {
  max-width: none !important;
  font-size: clamp(28px, 3.1vw, 44px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.04em !important;
  white-space: nowrap !important;
  text-wrap: nowrap !important;
}

@media (max-width: 920px) {
  .catalog-main .catalog-copy h1,
  .custom-page .method-stage .section-title {
    white-space: normal !important;
    text-wrap: balance !important;
  }
}

.video-proof-section {
  background:
    linear-gradient(180deg, rgba(250, 249, 244, 0.98), rgba(236, 241, 244, 0.92)) !important;
}

.video-proof-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 0.74fr) minmax(520px, 1fr) !important;
  gap: clamp(24px, 4vw, 58px) !important;
  align-items: center !important;
}

.video-proof-copy h2 {
  max-width: 13ch !important;
  margin-top: 14px !important;
  font-size: clamp(32px, 4vw, 58px) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.055em !important;
  color: #25272e !important;
}

.video-proof-copy p {
  max-width: 40ch !important;
  margin-top: 20px !important;
  color: rgba(31, 36, 43, 0.72) !important;
  font-size: 16px !important;
  line-height: 1.75 !important;
}

.video-proof-points {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 24px !important;
}

.video-proof-points span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 0 12px !important;
  border: 1px solid rgba(31, 36, 43, 0.12) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.68) !important;
  color: rgba(31, 36, 43, 0.72) !important;
  font-family: "IBM Plex Mono", monospace !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

.video-proof-frame {
  overflow: hidden !important;
  border: 1px solid rgba(31, 36, 43, 0.12) !important;
  border-radius: 30px !important;
  background: #25272e !important;
  box-shadow: 0 28px 78px rgba(24, 33, 45, 0.14) !important;
}

.video-proof-frame iframe {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  border: 0 !important;
}

@media (max-width: 1080px) {
  .video-proof-layout {
    grid-template-columns: 1fr !important;
  }

  .video-proof-copy h2,
  .video-proof-copy p {
    max-width: none !important;
  }
}

/* Correction pass: wider product title, pricing-area color preview, full-width video banner. */
.product-detail-page .hero .container {
  width: min(1500px, calc(100% - 72px)) !important;
  max-width: min(1500px, calc(100% - 72px)) !important;
}

.product-detail-page .hero-top {
  width: 100% !important;
}

.product-detail-page .hero-top .product-title,
.product-detail-page h1.product-title {
  display: block !important;
  width: 100% !important;
  max-width: 1420px !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  white-space: normal !important;
  text-overflow: clip !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: initial !important;
  font-size: clamp(22px, 2.1vw, 32px) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.025em !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  text-wrap: initial !important;
}

.product-detail-page .hero-summary {
  width: 100% !important;
  max-width: 1420px !important;
  margin-top: 12px !important;
}

.product-detail-page .price-row + .selected-color-preview.active {
  margin-top: 16px !important;
  margin-bottom: 18px !important;
}

@media (max-width: 720px) {
  .product-detail-page .hero .container {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
  }

  .product-detail-page .hero-top .product-title,
  .product-detail-page h1.product-title {
    font-size: clamp(22px, 7vw, 30px) !important;
    line-height: 1.12 !important;
  }

}

/* Video correction: same content width, inline playback, no visible copy. */
.video-proof-section {
  width: auto !important;
  height: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: clamp(64px, 7vw, 104px) 0 !important;
  overflow: visible !important;
  background: linear-gradient(180deg, #dce6ec 0%, #d7e1e8 100%) !important;
}

.video-proof-section .site-shell {
  width: var(--factory-max) !important;
  max-width: var(--factory-max) !important;
}

.video-proof-title {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  white-space: nowrap !important;
}

.video-embed-card {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1920 / 642 !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 30px !important;
  background: #2c2c2c !important;
  box-shadow: 0 30px 80px rgba(24, 33, 45, 0.14) !important;
}

.video-embed-player {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border: 0 !important;
  background: #2c2c2c !important;
}

.video-play-button {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 4 !important;
  width: clamp(76px, 8vw, 116px) !important;
  height: clamp(76px, 8vw, 116px) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(255, 255, 255, 0.54) !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.18) !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.22) !important;
  backdrop-filter: blur(10px) !important;
  transform: translate(-50%, -50%) !important;
  cursor: pointer !important;
  transition: opacity 180ms ease, transform 180ms ease !important;
}

.video-play-button span {
  display: block !important;
  width: 0 !important;
  height: 0 !important;
  margin-left: 7px !important;
  border-top: 15px solid transparent !important;
  border-bottom: 15px solid transparent !important;
  border-left: 24px solid #fff !important;
}

.video-play-button:hover {
  transform: translate(-50%, -50%) scale(1.04) !important;
}

.video-play-button.is-hidden {
  opacity: 0 !important;
  pointer-events: none !important;
}

.video-play-button.is-loading {
  opacity: 0.72 !important;
  cursor: wait !important;
}

.custom-page .method-media--contain {
  aspect-ratio: 16 / 10.2 !important;
  background: #f1eee7 !important;
}

.custom-page .method-media--contain img {
  object-fit: contain !important;
  padding: 0 !important;
  background: #f1eee7 !important;
}

@media (max-width: 920px) {
  .video-proof-section .site-shell {
    width: calc(100% - 28px) !important;
    max-width: calc(100% - 28px) !important;
  }

  .video-embed-card {
    border-radius: 22px !important;
    aspect-ratio: 16 / 9 !important;
  }
}
