/* Geist Sans v1.8.2 · Vercel / Basement Studio · OFL 1.1.
   Source, exact version and license: assets/front/fonts/source.json. */
@font-face {
  font-family: "Geist";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("front/fonts/geist-sans-v1.8.2.woff2") format("woff2");
}

body.ps-public-ui {
  --ps-font-family: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  --ps-color-text: #101b33;
  --ps-color-text-secondary: #596579;
  --ps-color-brand: #080063;
  --ps-color-action: #d82f00;
  --ps-color-border: #dfe3e9;
  --ps-color-surface: #ffffff;
  --ps-color-surface-subtle: #f5f6f8;
  --ps-container: 1200px;
  --ps-gutter: clamp(20px, 3vw, 40px);
  --ps-font-size-h1: clamp(36px, 4.4vw, 62px);
  --ps-font-size-h2: clamp(27px, 2.6vw, 38px);
  --ps-font-size-h3: 21px;
  --ps-font-size-body: 16px;
  --ps-font-size-label: 14px;
  --ps-font-size-caption: 12px;
  --ps-font-size-card-title: clamp(18px, 1.35vw, 20px);
  --ps-font-size-product-title: clamp(28px, 3vw, 36px);
  --ps-font-size-commerce-section: var(--ps-font-size-h3);
  --ps-font-size-price: clamp(28px, 2.4vw, 32px);
  --ps-font-size-price-compact: clamp(22px, 1.8vw, 24px);
  --ps-space-compact: 20px;
  --ps-space-wide: 40px;
  --ps-space-section: clamp(48px, 6vw, 74px);

  /* Public layout roles. Domain components choose a role, not a new frame. */
  --ps-layout-max: var(--ps-container);
  --ps-layout-gutter: max(var(--ps-gutter), env(safe-area-inset-left, 0px), env(safe-area-inset-right, 0px));
  --ps-layout-section: var(--ps-space-section);
  --ps-layout-reading: var(--ps-reading-width);
  --ps-layout-grid-columns: 4;
  --ps-layout-grid-gap: clamp(16px, 2vw, 24px);
  --ps-hero-content-max: 790px;
  --ps-hero-min-height: 600px;
  --ps-hero-space: clamp(40px, 5vw, 64px);
  --ps-hero-surface: #09111c;
  --ps-hero-overlay: linear-gradient(90deg, rgba(9, 17, 28, .90) 0%, rgba(9, 17, 28, .76) 46%, rgba(9, 17, 28, .24) 100%), linear-gradient(0deg, rgba(9, 17, 28, .36), transparent 70%);

  /* Public contract for FRONT + WOO. Operational interfaces remain separate. */
  --ps-ui-font: var(--ps-font-family);
  --ps-ui-body-weight: 400;
  --ps-ui-content-max: var(--ps-container);
  --ps-ui-gutter: var(--ps-gutter);
  --ps-ui-section-y: var(--ps-space-section);
  --ps-ui-intro-gap: clamp(24px, 3vw, 32px);
  --ps-ui-ink: var(--ps-color-text);
  --ps-ui-muted: var(--ps-color-text-secondary);
  --ps-ui-brand: var(--ps-color-brand);
  --ps-ui-action: var(--ps-color-action);
  --ps-ui-action-hover: #b72700;
  --ps-ui-accent-text: var(--ps-ui-action-hover);
  --ps-ui-paper: var(--ps-color-surface);
  --ps-ui-surface: var(--ps-color-surface-subtle);
  --ps-ui-line: var(--ps-color-border);
  --ps-ui-radius-card: 16px;
  --ps-ui-radius-control: 10px;
  --ps-ui-radius: var(--ps-ui-radius-card);
  --ps-ui-control-radius: var(--ps-ui-radius-control);
  --ps-ui-button-radius: 999px;
  --ps-ui-control-height: 44px;
  --ps-ui-shadow: none;
  --ps-ui-h1: var(--ps-font-size-h1);
  --ps-ui-h2: var(--ps-font-size-h2);
  --ps-ui-lead: clamp(16px, 1.4vw, 17px);
  --ps-ui-body: var(--ps-font-size-body);
  --ps-ui-reading: 68ch;
  --ps-ui-brand-hover: #05003f;
  --ps-ui-brand-soft: rgba(8, 0, 99, .035);
  --ps-ui-action-soft: rgba(216, 47, 0, .08);
  --ps-ui-action-line: rgba(216, 47, 0, .24);
  --ps-ui-line-strong: #c8cfda;
  --ps-ui-on-color: #ffffff;
  --ps-ui-inverse-accent: #ffb199;
  --ps-ui-inverse-card-line: rgba(255, 255, 255, .24);
  --ps-ui-inverse-muted: rgba(255, 255, 255, .76);
  --ps-ui-inverse-line: rgba(255, 255, 255, .46);
  --ps-ui-inverse-line-hover: rgba(255, 255, 255, .84);
  --ps-ui-inverse-control-bg: rgba(255, 255, 255, .10);
  --ps-ui-inverse-control-hover-bg: rgba(255, 255, 255, .18);
  --ps-ui-display-weight: 650;
  --ps-ui-heading-weight: 620;
  --ps-ui-strong-weight: 650;
  --ps-ui-label-weight: 600;
  --ps-ui-button-weight: 550;
  --ps-ui-button-size: 14px;
  --ps-ui-button-padding: 10px 18px;
  --ps-ui-button-secondary-bg: transparent;
  --ps-ui-button-secondary-color: var(--ps-ui-ink);
  --ps-ui-button-secondary-line: var(--ps-ui-line);
  --ps-ui-button-secondary-hover-bg: var(--ps-ui-surface);
  --ps-ui-button-secondary-hover-color: var(--ps-ui-ink);
  --ps-ui-button-secondary-hover-line: var(--ps-ui-line-strong);
  --ps-ui-button-icon-bg: var(--ps-ui-paper);
  --ps-ui-button-icon-color: var(--ps-ui-ink);
  --ps-ui-button-icon-line: var(--ps-ui-line);
  --ps-ui-button-icon-hover-bg: var(--ps-ui-surface);
  --ps-ui-button-icon-hover-color: var(--ps-ui-ink);
  --ps-ui-button-icon-hover-line: var(--ps-ui-line-strong);
  --ps-ui-field-bg: var(--ps-ui-paper);
  --ps-ui-field-color: var(--ps-ui-ink);
  --ps-ui-field-line: var(--ps-ui-line);
  --ps-ui-field-hover-line: var(--ps-ui-line-strong);
  --ps-ui-field-padding: 12px 14px;
  --ps-ui-field-disabled-bg: var(--ps-ui-surface);
  --ps-ui-field-disabled-text: var(--ps-ui-muted);
  --ps-ui-card-bg: var(--ps-ui-paper);
  --ps-ui-card-line: var(--ps-ui-line);
  --ps-ui-card-hover-bg: #fafafe;
  --ps-ui-card-hover-line: var(--ps-ui-line-strong);
  --ps-ui-disabled-opacity: .58;

  /* Brand */
  --ps-brand-blue: var(--ps-ui-brand);
  --ps-brand-blue-dark: var(--ps-ui-brand-hover);
  --ps-brand-blue-soft: var(--ps-ui-brand);
  --ps-brand-orange: var(--ps-ui-action);
  --ps-brand-orange-soft: var(--ps-ui-action);
  --ps-brand-orange-dark: var(--ps-ui-action-hover);
  --ps-accent: var(--ps-ui-action);
  --ps-accent-soft: var(--ps-ui-action-soft);
  --ps-primary-soft: var(--ps-ui-brand-soft);
  --ps-surface-inverse: var(--ps-brand-blue);
  --ps-on-surface-inverse: #ffffff;
  --ps-image-fallback: #15110f;
  --ps-image-overlay-rgb: 21, 17, 15;
  --ps-chrome-bg: rgba(255, 255, 255, 0.82);
  --ps-chrome-bg-strong: rgba(255, 255, 255, 0.94);
  --ps-hairline: var(--ps-ui-line);
  --ps-hairline-blue: var(--ps-ui-line);
  --ps-hairline-inverse: rgba(255, 255, 255, 0.14);
  --ps-chrome-border: var(--ps-hairline);
  --ps-chrome-shadow: var(--ps-ui-shadow);

  /* Page / surfaces */
  --ps-page: var(--ps-ui-surface);
  --ps-page-strong: var(--ps-ui-surface);
  --ps-panel: var(--ps-ui-paper);
  --ps-panel-soft: var(--ps-ui-surface);
  --ps-panel-warm: var(--ps-ui-surface);

  /* Borders */
  --ps-border: var(--ps-ui-line);
  --ps-border-strong: var(--ps-ui-line-strong);
  --ps-border-blue: var(--ps-ui-line);
  --ps-border-blue-strong: var(--ps-ui-line-strong);
  --ps-border-orange: var(--ps-ui-action-line);

  /* Text */
  --ps-ink: var(--ps-ui-ink);
  --ps-ink-strong: var(--ps-ui-ink);
  --ps-ink-soft: var(--ps-ui-muted);
  --ps-ink-faint: var(--ps-ui-muted);
  --ps-ink-disabled: #98a2b3;

  /* Semantic */
  --ps-success: #14734a;
  --ps-success-bg: #eef8f2;
  --ps-success-line: #cfe5d8;
  --ps-danger: #b91c1c;
  --ps-warning: #b45309;

  /* Layout */
  /* One content-width source for FRONT, WOO and site chrome. */
  --ps-shell-max: var(--ps-ui-content-max);
  --ps-container-wide: var(--ps-shell-max);
  --ps-shell-gutter: var(--ps-ui-gutter);
  --ps-section-y: var(--ps-ui-section-y);
  --ps-touch-target: 44px;
  --ps-control-height: var(--ps-ui-control-height);
  --ps-header-mobile-height: 72px;
  --ps-header-mobile-height-compact: 68px;
  --ps-hero-mobile-title: var(--ps-ui-h1);
  --ps-hero-mobile-height: 78svh;

  /* Spacing scale. Component-specific values may interpolate only between
     adjacent steps so the public rhythm remains predictable. */
  --ps-space-1: 4px;
  --ps-space-2: 8px;
  --ps-space-3: 12px;
  --ps-space-4: 16px;
  --ps-space-5: 24px;
  --ps-space-6: 32px;
  --ps-space-7: 48px;
  --ps-space-8: 64px;
  --ps-space-9: 80px;
  --ps-space-10: 96px;

  /* Compatibility aliases for embedded catalog components on FRONT pages. */
  --ps-storefront-max: var(--ps-container-wide);
  --ps-storefront-gutter: var(--ps-shell-gutter);
  --ps-storefront-section-y: clamp(48px, 6vw, 84px);
  --ps-storefront-card-radius: var(--ps-radius-lg);
  --ps-storefront-control-radius: var(--ps-radius-md);
  --ps-storefront-button-radius: var(--ps-button-radius);
  --ps-storefront-border: var(--ps-border-blue);
  --ps-storefront-border-strong: var(--ps-border-blue-strong);
  --ps-storefront-shadow: var(--ps-shadow-xs);
  --ps-storefront-surface: var(--ps-panel);
  --ps-storefront-surface-soft: var(--ps-panel-soft);
  --ps-storefront-primary-bg: var(--ps-brand-blue);
  --ps-storefront-primary-shadow: var(--ps-shadow-blue);

  /* Radius */
  --ps-radius-xs: 8px;
  --ps-radius-sm: 10px;
  --ps-radius-md: var(--ps-ui-radius-control);
  --ps-radius-lg: var(--ps-ui-radius-card);
  --ps-radius-xl: var(--ps-ui-radius-card);
  --ps-radius-2xl: var(--ps-ui-radius-card);
  --ps-radius-pill: 999px;
  --ps-button-radius: var(--ps-ui-button-radius);

  /* Shadows */
  --ps-shadow-xs: none;
  --ps-shadow-sm: var(--ps-ui-shadow);
  --ps-shadow-md: var(--ps-ui-shadow);
  --ps-shadow-lg: 0 16px 40px rgba(16, 27, 51, 0.10);
  --ps-shadow-blue: var(--ps-ui-shadow);
  --ps-shadow-orange: var(--ps-ui-shadow);

  /* Motion */
  --ps-ease: cubic-bezier(0.2, 0.8, 0.2, 1);
  --ps-transition: 180ms var(--ps-ease);
  --ps-transition-slow: 260ms var(--ps-ease);
  --ps-focus-ring: var(--ps-ui-brand);
  --ps-field-focus-border: var(--ps-ui-brand);
  --ps-shadow-focus: 0 0 0 3px var(--ps-ui-brand-soft);
  --ps-focus-width: 2px;
  --ps-focus-offset: 3px;

  /* Layer scale */
  --ps-layer-base: 0;
  --ps-layer-content: 10;
  --ps-layer-sticky: 100;
  --ps-layer-overlay: 1000;
  --ps-layer-modal: 10000;

  /* Typography */
  --ps-font-sans: var(--ps-ui-font);
  --ps-font-weight-heading: var(--ps-ui-heading-weight);
  --ps-font-weight-strong: var(--ps-ui-strong-weight);
  --ps-heading-tracking: var(--ps-ui-tracking-heading);
  --ps-reading-width: var(--ps-ui-reading);
  --ps-type-display: var(--ps-ui-h1);
  --ps-type-display-light: var(--ps-ui-h1);
  --ps-type-section: var(--ps-ui-h2);
  --ps-type-subsection: var(--ps-ui-h3);
  --ps-type-body-xl: var(--ps-ui-lead);
  --ps-type-body-lg: var(--ps-ui-lead);
  --ps-type-body: var(--ps-ui-body);
  --ps-type-small: var(--ps-ui-small);
  --ps-type-caption: var(--ps-ui-caption);
  --ps-leading-display: var(--ps-ui-leading-display);
  --ps-leading-heading: var(--ps-ui-leading-heading);
  --ps-leading-body: var(--ps-ui-leading-body);

  /* Legacy / module bridge */
  --brand-blue: var(--ps-brand-blue);
  --brand-orange: var(--ps-brand-orange);
  --brand-orange-dark: var(--ps-brand-orange-dark);
  --bg-page: var(--ps-page);
  --bg-surface: var(--ps-panel);
  --border-subtle: var(--ps-border);
  --border-strong: var(--ps-border-strong);
  --text-main: var(--ps-ink);
  --text-muted: var(--ps-ink-soft);
  --text-soft: var(--ps-ink-faint);
  --radius-sm: var(--ps-radius-sm);
  --radius-md: var(--ps-radius-md);
  --radius-lg: var(--ps-radius-lg);
  --radius-xl: var(--ps-radius-xl);
  --shadow-subtle: var(--ps-shadow-sm);
  --shadow-soft: var(--ps-shadow-md);
  --shadow-card: var(--ps-shadow-lg);
  --ps-ui-font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --ps-ui-h3: var(--ps-font-size-h3);
  --ps-ui-h4: 17px;
  --ps-ui-h5: 16px;
  --ps-ui-h6: 15px;
  --ps-ui-card-title: var(--ps-font-size-card-title);
  --ps-ui-component-title: 21px;
  --ps-ui-small: var(--ps-font-size-label);
  --ps-ui-caption: var(--ps-font-size-caption);
  --ps-ui-overline-size: 11px;
  --ps-ui-micro: 10px;
  --ps-ui-nav-size: 14px;
  --ps-ui-metric: clamp(28px, 3vw, 40px);
  --ps-ui-price: var(--ps-font-size-price);
  --ps-ui-icon-size: 20px;
  --ps-ui-icon-size-sm: 16px;
  --ps-ui-icon-size-lg: 28px;
  --ps-ui-leading-display: 1.15;
  --ps-ui-leading-heading: 1.15;
  --ps-ui-leading-card: 1.35;
  --ps-ui-leading-body: 1.65;
  --ps-ui-leading-compact: 1.5;
  --ps-ui-leading-label: 1.3;
  --ps-ui-leading-control: 1.4;
  --ps-ui-leading-solid: 1;
  --ps-ui-tracking-heading: -.035em;
  --ps-ui-tracking-card: -.025em;
  --ps-ui-tracking-body: 0;
  --ps-ui-tracking-label: .08em;

  /* Report-inspired public roles: components share the same visual primitives. */
  --ps-ui-card-padding: clamp(20px, 2vw, 24px);
  --ps-ui-table-size: 14px;
  --ps-ui-table-heading-size: 12px;
  --ps-ui-table-heading-weight: 550;
  --ps-ui-table-heading-bg: #fafbfc;
  --ps-ui-table-cell-y: 14px;
  --ps-ui-table-cell-x: 20px;
  /* Brand at 3.5% over paper, opaque so a note also reads on inverse sections. */
  --ps-ui-note-bg: #f6f6fa;
  --ps-ui-note-line-width: 2px;
  --ps-ui-note-padding: 18px 20px;
  --ps-ui-note-radius: 0 10px 10px 0;
  --ps-ui-note-size: var(--ps-ui-small);
  --ps-ui-status-size: 12px;
  --ps-ui-status-dot: 5px;
  --ps-ui-status-gap: 8px;

  /* Compact header typography preserves the selected SHOP metrics. */
  --ps-header-search-weight: var(--ps-ui-strong-weight);
  --ps-header-secondary-weight: var(--ps-ui-button-weight);
  --ps-header-regular-weight: 400;
  --ps-header-medium-weight: 500;
  --ps-header-caption-size: 13px;
  --ps-header-leading-title: 1.1;
  --ps-header-leading-display: 1.08;
  --ps-header-leading-copy: 1.55;
  --ps-header-leading-meta: 1.45;
  --ps-header-leading-detail: 1.4;
  --ps-header-cart-heading-tracking: -.5px;
}

@media (prefers-contrast: more) {
  body.ps-public-ui {
    --ps-hairline: rgba(16, 24, 40, 0.18);
    --ps-hairline-blue: rgba(8, 0, 99, 0.24);
    --ps-hairline-inverse: rgba(255, 255, 255, 0.34);
  }
}

/* The public foundation owns typography at the roots as well as on body. Compatibility
   components may define local aliases, so bind those aliases at the boundary. */
:where(body.ps-public-ui) :where(.ps-landing, .ps-header, .ps-footer, .ps-home-hero, .ps-photo-hero, .ps-contract-portfolio, .ps-erp-offer-front, .ps-erp-offerpop, .ps-choice-guide, .ps-company) {
  --ps-design-font: var(--ps-ui-font);
  --ps-font-sans: var(--ps-ui-font);
  font-family: var(--ps-ui-font);
}

/* Element semantics provide defaults; component roles only reference the
   same scale. Cards, captions and controls retain their explicit roles. */
:where(body.ps-public-ui) :where(h1, h2, h3, h4, h5, h6) {
  font-family: var(--ps-ui-font);
  font-weight: var(--ps-ui-heading-weight);
  line-height: var(--ps-ui-leading-heading);
  letter-spacing: var(--ps-ui-tracking-heading);
  text-wrap: balance;
}
:where(body.ps-public-ui) :where(h1) { font-size: var(--ps-ui-h1); font-weight: var(--ps-ui-display-weight); line-height: var(--ps-ui-leading-display); }
:where(body.ps-public-ui) :where(h2) { font-size: var(--ps-ui-h2); }
:where(body.ps-public-ui) :where(h3) { font-size: var(--ps-ui-h3); }
:where(body.ps-public-ui) :where(h4) { font-size: var(--ps-ui-h4); font-weight: var(--ps-ui-strong-weight); }
:where(body.ps-public-ui) :where(h5) { font-size: var(--ps-ui-h5); }
:where(body.ps-public-ui) :where(h6) { font-size: var(--ps-ui-h6); }
:where(body.ps-public-ui) :where(p, li, dt, dd, th, td) {
  font-family: var(--ps-ui-font);
  font-size: var(--ps-ui-body);
  line-height: var(--ps-ui-leading-body);
}
:where(body.ps-public-ui) :where(small, figcaption) {
  font-size: var(--ps-ui-caption);
  line-height: var(--ps-ui-leading-compact);
}
:where(body.ps-public-ui) :where(input, select, textarea, button) { font-family: var(--ps-ui-font); }

body.ps-public-ui :where(strong, b) {
  font-weight: var(--ps-font-weight-strong);
}


body.ps-public-ui {
  color: var(--ps-ink);
  background: var(--ps-ui-surface);
  font-family: var(--ps-font-sans);
  font-size: var(--ps-ui-body);
  font-weight: var(--ps-ui-body-weight);
  line-height: var(--ps-leading-body);
  font-kerning: normal;
  font-optical-sizing: auto;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body.ps-public-ui ::selection {
  background: rgba(255, 59, 5, 0.18);
  color: var(--ps-ink-strong);
}
/* Shared frame primitive. Full-bleed media remain outside the content frame. */
:where(body.ps-public-ui) .ps-public-page-frame {

  width: min(var(--ps-layout-max), calc(100% - 2 * var(--ps-layout-gutter)));
  margin-inline: auto;

}

:where(body.ps-public-ui) .ps-public-product-grid {
  display: grid;
  grid-template-columns: repeat(var(--ps-layout-grid-columns), minmax(0, 1fr));
  gap: var(--ps-layout-grid-gap);
}

@media (max-width: 1099px) {
  body.ps-public-ui { --ps-layout-grid-columns: 2; }
}
@media (max-width: 640px) {
  body.ps-public-ui {
    --ps-layout-grid-columns: 1;
    --ps-ui-table-cell-y: 12px;
    --ps-ui-table-cell-x: 16px;
    --ps-ui-note-padding: 16px;
  }
}

/* Public interaction primitives. Component state selectors consume the same
   fragments when their normal styling needs stronger selector priority. */
/* Focus is shared across the public site and independent of the action colour. */
body.ps-public-ui :where(a, button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible:not(:where(input:not(:where([type="checkbox"], [type="radio"], [type="range"], [type="button"], [type="submit"], [type="reset"], [type="hidden"], [type="file"], [type="color"], [type="image"])), select, textarea)):not(:where(#wpadminbar *)) {

  outline: var(--ps-focus-width, 2px) solid var(--ps-focus-ring);
  outline-offset: var(--ps-focus-offset);

}

/* Editable fields own one soft ring. Native grouped fields are painted by their owner. */
body.ps-public-ui :where(input:not(:where([type="checkbox"], [type="radio"], [type="range"], [type="button"], [type="submit"], [type="reset"], [type="hidden"], [type="file"], [type="color"], [type="image"])), select, textarea):focus:not(:disabled):not(:where(.ps-bess-input-unit *, .ps-choice-guide__calculator label > span *, .ps-afm-field__control *, .ps-erp-offerpop__number-control *, #ps-chat-input-area *)) {

  outline: 0;
  box-shadow: var(--ps-shadow-focus);

}

body.ps-public-ui :where(input:not(:where([type="checkbox"], [type="radio"], [type="range"], [type="button"], [type="submit"], [type="reset"], [type="hidden"], [type="file"], [type="color"], [type="image"])), select, textarea):focus:not(:disabled):not(:where(.ps-bess-input-unit *, .ps-choice-guide__calculator label > span *, .ps-afm-field__control *, .ps-erp-offerpop__number-control *, #ps-chat-input-area *)):where(:not([aria-invalid="true"]):not(.is-invalid)) {

  border-color: var(--ps-field-focus-border);

}



/* Shared interaction renderers. These real component anchors own the defaults;
   other components reuse the exact declarations through the fragment API. */

:where(body.ps-public-ui) :is(.ps-landing, .ps-home-hero) :is(.psl-btn, .btn):not(:where(.ps-cerere-oferta *, .ps-offer-trigger *)),
:where(body.ps-public-ui) .ps-erp-offer-front .ps-btn,
:where(body.ps-public-ui) .ps-landing .psl-offer-btn :is(a, button, input[type="button"], input[type="submit"]),
:where(body.ps-public-ui) .ps-seo-hero__button,
:where(body.ps-public-ui) .ps-hero__btn,
:where(body.ps-public-ui) .ps-landing-nav a.ps-landing-nav-cta,
:where(body.ps-public-ui) .ps-landing--immersive-panels-v1 .ps-immersive-panels__button,
body.ps-public-ui .wp-block-button__link {

  appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: var(--ps-ui-control-height);
  max-width: 100%;
  padding: var(--ps-ui-button-padding);
  border: 1px solid var(--ps-button-line, var(--ps-ui-button-secondary-line));
  border-radius: var(--ps-ui-button-radius);
  background: var(--ps-button-bg, var(--ps-ui-button-secondary-bg));
  color: var(--ps-button-color, var(--ps-ui-button-secondary-color));
  box-shadow: none;
  cursor: pointer;
  font-family: var(--ps-ui-font);
  font-size: var(--ps-ui-button-size);
  font-weight: var(--ps-ui-button-weight);
  line-height: var(--ps-ui-leading-control);
  letter-spacing: var(--ps-ui-tracking-body);
  text-align: center;
  text-decoration: none !important;
  text-transform: none;
  white-space: normal;
  transition: background var(--ps-transition), border-color var(--ps-transition), color var(--ps-transition);

}

:where(body.ps-public-ui) :is(.ps-landing, .ps-home-hero) :is(.psl-btn, .btn):not(:where(.ps-cerere-oferta *, .ps-offer-trigger *)):is(:hover, :focus-visible):not(:disabled):not([aria-disabled="true"]):not(.disabled),
:where(body.ps-public-ui) .ps-erp-offer-front .ps-btn:is(:hover, :focus-visible):not(:disabled):not([aria-disabled="true"]):not(.disabled),
:where(body.ps-public-ui) .ps-landing .psl-offer-btn :is(a, button, input[type="button"], input[type="submit"]):is(:hover, :focus-visible):not(:disabled):not([aria-disabled="true"]):not(.disabled),
:where(body.ps-public-ui) .ps-seo-hero__button:is(:hover, :focus-visible):not(:disabled):not(.disabled):not([aria-disabled="true"]),
:where(body.ps-public-ui) .ps-hero__btn:is(:hover, :focus-visible):not(:disabled):not(.disabled):not([aria-disabled="true"]),
:where(body.ps-public-ui) .ps-landing-nav a.ps-landing-nav-cta:is(:hover, :focus-visible):not(:disabled):not(.disabled):not([aria-disabled="true"]),
:where(body.ps-public-ui) .ps-landing--immersive-panels-v1 .ps-immersive-panels__button:is(:hover, :focus-visible):not(:disabled):not(.disabled):not([aria-disabled="true"]),
body.ps-public-ui .wp-block-button__link:is(:hover, :focus-visible):not(:disabled):not(.disabled):not([aria-disabled="true"]) {

  border-color: var(--ps-button-hover-line, var(--ps-ui-button-secondary-hover-line));
  background: var(--ps-button-hover-bg, var(--ps-ui-button-secondary-hover-bg));
  color: var(--ps-button-hover-color, var(--ps-ui-button-secondary-hover-color));
  text-decoration: none !important;
  transform: none;
  box-shadow: none;
  filter: none;

}

:where(body.ps-public-ui) :is(.ps-landing, .ps-home-hero) :is(.psl-btn--primary, .btn-primary, .psl-btn--accent, .psl-btn--orange, .psl-btn--offer),
:where(body.ps-public-ui) .ps-home-hero .psl-btn:not(.psl-btn--secondary):not(.psl-btn--ghost),
:where(body.ps-public-ui) .ps-erp-offer-front .ps-btn-primary,
:where(body.ps-public-ui) .ps-landing .psl-offer-btn :is(a, button, input[type="button"], input[type="submit"]),
:where(body.ps-public-ui) .ps-seo-hero__button.ps-seo-hero__button--primary,
:where(body.ps-public-ui) .ps-hero__btn--primary,
:where(body.ps-public-ui) .ps-landing-nav a.ps-landing-nav-cta,
:where(body.ps-public-ui) .ps-landing--immersive-panels-v1 .ps-immersive-panels__button:not(.ps-immersive-panels__button--secondary),
body.ps-public-ui .wp-block-button:not(.is-style-outline) .wp-block-button__link {

  --ps-button-bg: var(--ps-ui-action);
  --ps-button-color: var(--ps-ui-on-color);
  --ps-button-line: var(--ps-ui-action);
  --ps-button-hover-bg: var(--ps-ui-action-hover);
  --ps-button-hover-color: var(--ps-ui-on-color);
  --ps-button-hover-line: var(--ps-ui-action-hover);

}

:where(body.ps-public-ui) .ps-offer-trigger .btn.btn-secondary {

  --ps-button-bg: var(--ps-ui-button-secondary-bg);
  --ps-button-color: var(--ps-ui-button-secondary-color);
  --ps-button-line: var(--ps-ui-button-secondary-line);
  --ps-button-hover-bg: var(--ps-ui-button-secondary-hover-bg);
  --ps-button-hover-color: var(--ps-ui-button-secondary-hover-color);
  --ps-button-hover-line: var(--ps-ui-button-secondary-hover-line);

}

/* Icon controls retain a paper surface on both light and inverse panels. */
:where(body.ps-public-ui) .ps-erp-offerpop.ps-erp-offerpop--v3 .ps-erp-offerpop__close {

  --ps-button-bg: var(--ps-ui-button-icon-bg);
  --ps-button-color: var(--ps-ui-button-icon-color);
  --ps-button-line: var(--ps-ui-button-icon-line);
  --ps-button-hover-bg: var(--ps-ui-button-icon-hover-bg);
  --ps-button-hover-color: var(--ps-ui-button-icon-hover-color);
  --ps-button-hover-line: var(--ps-ui-button-icon-hover-line);

}

:where(body.ps-public-ui) .ps-offer-modal-aside {

  --ps-button-bg: var(--ps-ui-inverse-control-bg);
  --ps-button-color: var(--ps-ui-on-color);
  --ps-button-line: var(--ps-ui-inverse-line);
  --ps-button-hover-bg: var(--ps-ui-inverse-control-hover-bg);
  --ps-button-hover-color: var(--ps-ui-on-color);
  --ps-button-hover-line: var(--ps-ui-inverse-line-hover);

}

:where(body.ps-public-ui) .ps-cerere-oferta .ps-offer-form input:not(:where([type="checkbox"], [type="radio"], [type="range"], [type="button"], [type="submit"], [type="reset"], [type="hidden"], [type="file"], [type="color"], [type="image"])),
:where(body.ps-public-ui) .ps-cerere-oferta .ps-offer-form select,
:where(body.ps-public-ui) .ps-cerere-oferta .ps-offer-form textarea {

  min-height: var(--ps-ui-control-height);
  padding: var(--ps-field-padding, var(--ps-ui-field-padding));
  border: 1px solid var(--ps-field-line, var(--ps-ui-field-line));
  border-radius: var(--ps-ui-radius-control);
  background: var(--ps-field-bg, var(--ps-ui-field-bg));
  color: var(--ps-field-color, var(--ps-ui-field-color));
  box-shadow: none;
  font-family: var(--ps-ui-font);
  font-size: var(--ps-ui-body);
  font-weight: var(--ps-ui-body-weight);
  line-height: var(--ps-ui-leading-control);
  transition: border-color var(--ps-transition), box-shadow var(--ps-transition), background var(--ps-transition);

}

:where(body.ps-public-ui) .ps-erp-offerpop.ps-erp-offerpop--v3 .ps-erp-offerpop__input:hover:not(:disabled):not(:focus):not([aria-invalid="true"]),
:where(body.ps-public-ui) .ps-erp-offerpop.ps-erp-offerpop--v3 .ps-erp-offerpop__select:hover:not(:disabled):not(:focus):not([aria-invalid="true"]) {

  border-color: var(--ps-field-hover-line, var(--ps-ui-field-hover-line));

}

:where(body.ps-public-ui) .ps-partner-brands__item {

  border: 1px solid var(--ps-card-line, var(--ps-ui-card-line));
  border-radius: var(--ps-ui-radius-card);
  background: var(--ps-card-bg, var(--ps-ui-card-bg));
  box-shadow: none;
  transition: border-color var(--ps-transition), background var(--ps-transition);

}

:where(body.ps-public-ui) a.ps-partner-brands__item:hover,
:where(body.ps-public-ui) a.ps-partner-brands__item:focus-visible {

  border-color: var(--ps-card-hover-line, var(--ps-ui-card-hover-line));
  background: var(--ps-card-hover-bg, var(--ps-ui-card-hover-bg));
  transform: none;
  box-shadow: none;
  filter: none;

}
