/* Use activated desktop fonts without redistributing Adobe font files. */
@font-face { font-family: Gesta; src: local("Gesta Light"), local("Gesta-Light"); font-style: normal; font-weight: 300; }
@font-face { font-family: Gesta; src: local("Gesta Regular"), local("Gesta-Regular"); font-style: normal; font-weight: 400; }
@font-face { font-family: Gesta; src: local("Gesta Medium"), local("Gesta-Medium"); font-style: normal; font-weight: 500; }
@font-face { font-family: Gesta; src: local("Gesta Bold"), local("Gesta-Bold"); font-style: normal; font-weight: 700; }
:root { font-family: Gesta, Arial, sans-serif; --ink: #000; --muted: #707070; --line: #bdc1c9; --brand-primary: #232d45; --brand-accent: #3b96cb; }
.assembly-app[data-product] #panel-overview { padding: 8px 12px; }
.product-overview .start-assembly { height: auto; min-height: 44px; padding: 12px; line-height: 18px; }
.assembly-app[data-product="primo"] .panel-checklist li.needs-attention { border-bottom-color: var(--brand-accent); }
.assembly-app[data-product="primo"] .panel-checklist li.needs-attention::after { background: var(--brand-accent); }
body, button, input { font-family: Gesta, Arial, sans-serif; }
* { letter-spacing: 0 !important; }
.brand, .picker-header .brand { width: 112px; }
.brand img, .picker-header .brand img { width: 112px; height: 33px; object-fit: contain; }
.preloader > img { width: 112px; height: 33px; }
.back-to-products { left: 166px; }
.picker-header, .topbar { border-bottom: 1px solid #232d45; }
.picker-intro h1 { font-size: 43px; line-height: 1.15; font-weight: 300; }
.picker-intro > p:last-child { font-size: 18px; line-height: 1.5; font-weight: 400; }
.guide-head h1 { font-size: 24px; font-weight: 400; }
.instruction-copy h2 { font-size: 18px; line-height: 1.3; font-weight: 500; }
.instruction-copy p { font-size: 14px; line-height: 1.5; }
.catalog-item-copy strong { font-size: 18px; font-weight: 500; }
.category-button, .nav-button, .scene-control, .product-search, .catalog-item, .model-toolbar { border-radius: 0; }
.category-button, .nav-button { font-size: 12px; font-weight: 700; }
.category-button.is-active, .nav-button.next { background: #417cb8; border-color: #417cb8; color: #fff; }
.nav-button.next:disabled { background: #f0f0f0; border-color: #f0f0f0; color: #707070; }
.model-tool[aria-pressed="true"] { background: #3b96cb; color: #fff; }
.step-marker { background: #b5dee3; color: #232d45; border-radius: 0; }
.celebration-message strong { background: #232d45; color: #fff; transform: none; font-size: 24px; }
.picker-footer { flex-wrap: wrap; gap: 8px; }
#material-items { max-height: none; overflow: visible; grid-template-columns: minmax(0,1fr); }
.material-callout.has-many-fittings #material-items { grid-template-columns: repeat(2,minmax(0,1fr)); }
@media(max-width:680px) {
  .brand, .picker-header .brand { width: 84px; }
  .brand img, .picker-header .brand img { width: 84px; height: 25px; }
  .back-to-products { left: auto; right: 14px; }
  .picker-intro h1 { font-size: 29px; }
  .picker-intro > p:last-child { font-size: 16px; }
  .guide-head h1 { font-size: 20px; }
  .instruction-copy h2 { font-size: 16px; }
  .instruction-copy p { font-size: 12px; }
}
