/*
 * Theme "nanprotex-editoryal" — Option 3: bold editorial type (Archivo 800) on warm paper,
 * orange blocks, hairline rules, square corners. Manrope body.
 */
:root {
  --pf-font-body: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --pf-font-display: "Archivo", "Helvetica Neue", Arial, sans-serif;
}
.pf-btn { border-radius: 0; text-transform: uppercase; letter-spacing: .08em; font-size: 13px; padding-inline: 22px; }
.pf-btn--text { text-transform: none; letter-spacing: 0; font-size: 15px; }
.pf-badge, .pf-chip, .pf-pill > span, .pf-search, .pf-stepper, .pf-card__badges .pf-badge, .pf-card__chip { border-radius: 0; }
.pf-eyebrow { color: var(--pf-color-text); border-left: 3px solid var(--pf-color-accent); padding-left: 10px; }
.pf-section-head { border-bottom: 2px solid var(--pf-color-text); padding-bottom: 14px; }
.pf-section-head__title { font-size: clamp(28px, 3.4vw, 44px); }

/* Topline: black band with orange text */
.pf-topline { background: var(--pf-color-text); color: #fff; letter-spacing: .06em; text-transform: uppercase; font-size: 12px; }
@media (max-width: 767.98px) { .pf-topline { letter-spacing: .02em; font-size: 11px; } }
.pf-header { border-bottom: 2px solid var(--pf-color-text); }
.pf-catnav { border-top-color: var(--pf-color-border); }
.pf-nav--bar .pf-nav__link { text-transform: uppercase; letter-spacing: .08em; font-size: 13px; }

/* Hero editorial: giant type, orange block behind the photo, hairline under the copy */
.pf-hero--editorial .pf-hero__title { font-size: clamp(42px, 6.4vw, 96px); }
.pf-hero--editorial .pf-hero__copy { border-bottom: 1px solid var(--pf-color-text); padding-bottom: 28px; }
.pf-hero--editorial .pf-hero__label { background: var(--pf-color-text); color: #fff; border: 0; border-radius: 0; }
.pf-hero--editorial .pf-hero__note { text-align: right; text-transform: uppercase; letter-spacing: .12em; font-size: 12px; }

/* Facts strip: oversized figures */
.pf-facts--strip .pf-facts__list { border-block: 2px solid var(--pf-color-text); }
.pf-facts__title { font-size: 26px; }

/* Bento: lead tile orange, others paper */
.pf-cats__tile { border-radius: 0; border-color: var(--pf-color-text); }
.pf-cats--bento .pf-cats__item:first-child .pf-cats__tile { background: var(--pf-color-accent); border-color: var(--pf-color-accent); color: #fff; }
.pf-cats--bento .pf-cats__item:first-child .pf-cats__name, .pf-cats--bento .pf-cats__item:first-child .pf-cats__intro, .pf-cats--bento .pf-cats__item:first-child .pf-cats__count, .pf-cats--bento .pf-cats__item:first-child .pf-cats__arrow { color: #fff; }
.pf-cats__well { border-radius: 0; }

/* Flat cards: numbered feel via code in display face */
.pf-card--flat .pf-card__code { font-family: var(--pf-font-display); color: var(--pf-color-accent); }
.pf-card--flat .pf-card__well { border: 1px solid var(--pf-color-border); }

/* Process numbered: huge numerals, no card chrome */
.pf-steps--numbered .pf-steps__item { background: none; border: 0; border-top: 2px solid var(--pf-color-text); border-radius: 0; padding: 18px 0 0; }
.pf-steps__num { font-size: 56px; }

/* Sector tiles: typographic list */
.pf-logos__item { border: 0; border-bottom: 1px solid var(--pf-color-text); border-radius: 0; background: none; font-family: var(--pf-font-display); font-size: 18px; letter-spacing: .02em; text-transform: none; color: var(--pf-color-text); justify-items: start; padding: 18px 0; }

/* CTA band: full black with orange button */
.pf-cta-band { background: var(--pf-color-text); color: #fff; border-radius: 0; }
.pf-cta-band__btn { background: var(--pf-color-accent); color: #fff; border-color: var(--pf-color-accent); }
.pf-cta-band__btn:hover { background: var(--pf-color-highlight); border-color: var(--pf-color-highlight); }

/* PDP + panels: square, hairlines */
.pf-buybox, .pf-panel, .pf-gallery__well, .pf-well, .pf-qline, .pf-techs__item, .pf-empty, .pf-lp-dialog, .pf-lightbox { border-radius: 0; }
.pf-buybox { border-color: var(--pf-color-text); }
.pf-footer { background: var(--pf-color-text); color: #fff; border-top: 0; }
.pf-footer h2, .pf-footer a, .pf-footer__tagline, .pf-footer__meta, .pf-footer__bottom { color: #fff; }
.pf-footer__tagline, .pf-footer__meta, .pf-footer__bottom { opacity: .8; }
.pf-footer__proto { color: var(--pf-color-highlight); }
.pf-footer__platform svg { box-shadow: 0 0 0 1px rgba(255, 255, 255, .4); }
.pf-footer .pf-logo__img { filter: brightness(0) invert(1); }
.pf-footer__bottom { border-top-color: rgba(255, 255, 255, .25); }
