/* Final shared product details: retain the individual product palettes. */
body.page-profirst-suite { --oc-action:#bf5000; --oc-action-hover:#a84200; }
body.page-profirst-suite.page-logitrace-suite { --oc-action:#447654; --oc-action-hover:#345d41; }
body.page-profirst-suite.page-spaceclaim-suite { --oc-action:#0c3f83; --oc-action-hover:#092f63; }
body.page-profirst-suite :is(.pf-suite-hero__metrics,.pf-suite-hero__workflow,.pf-suite-hero__step,.pf-suite-hero__stats) :is(p,strong,span),
body.page-profirst-suite .pf-suite-hero p { text-align:left!important; word-spacing:normal!important; }
body.page-profirst-suite :is(.pf-suite-button,.pf-modern-button):not(.pf-suite-button--ghost):not(.pf-modern-button--ghost) {
  background:var(--oc-action)!important; color:#fff!important; border-color:var(--oc-action)!important; box-shadow:none!important;
}
body.page-profirst-suite :is(.pf-suite-button,.pf-modern-button):not(.pf-suite-button--ghost):not(.pf-modern-button--ghost):hover {
  background:var(--oc-action-hover)!important; border-color:var(--oc-action-hover)!important;
}
body.page-profirst-suite :is(.pf-suite-button--ghost,.pf-modern-button--ghost) {
  background:#fff!important; color:#24313d!important; border:1px solid #c9d0d7!important; box-shadow:none!important;
}
body.page-profirst-suite :is(.pf-suite-button--ghost,.pf-modern-button--ghost):hover { background:#edf1f4!important; color:#17212b!important; }
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-actions .pf-modern-button.pf-modern-button--ghost { background:#fff!important; color:#24313d!important; }
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-actions .pf-modern-button.pf-modern-button--ghost:hover { background:#edf1f4!important; }
body.page-profirst-suite:is(.page-logitole-suite,.page-logibarre-suite) #flusso .pf-modern-module :is(.pf-modern-module__top, .pf-modern-module__top span, a:not(.pf-modern-module__shot)) { color:#a44700!important; }
body.page-profirst-suite :is(a,button,summary):focus-visible { outline:3px solid var(--oc-action); outline-offset:4px; }
body.page-profirst-suite .pf-suite-hero :is(a,button):focus-visible { outline-color:#fff; }
body.page-profirst-suite .oc-product-icon { display:block; width:28px; height:28px; flex-shrink:0; }
body.page-profirst-suite :is(.pf-modern-section-head,.pf-modern-module,.pf-suite-hero__step)>* { min-width:0; }
body.page-profirst-suite main :is(h2,h3) { text-align:left; word-spacing:normal; }
body.page-profirst-suite :is(.pf-modern-button,.pf-suite-button) { min-height:44px; }

/* One compact hero system for every software page; product palettes remain untouched. */
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero {
  min-height:0!important;
  height:auto!important;
  padding:120px 24px 76px!important;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__inner {
  width:100%;
  max-width:1320px!important;
  grid-template-columns:minmax(0,1.06fr) minmax(340px,.78fr)!important;
  gap:34px!important;
  align-items:center!important;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__copy {
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;
  align-self:auto!important;
  padding:28px 30px 30px!important;
  border-radius:24px!important;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__title {
  width:auto;
  max-width:none!important;
  margin-top:18px!important;
  font-size:clamp(3.4rem,5vw,5rem)!important;
  line-height:.98!important;
  text-wrap:pretty;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__lead {
  max-width:650px!important;
  margin-top:18px!important;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__stats {
  margin-top:22px!important;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__actions {
  width:auto!important;
  margin-top:22px!important;
  padding-top:0!important;
  justify-content:flex-start!important;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__panel {
  align-self:center!important;
  justify-content:flex-end!important;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__panel-card--primary {
  width:100%!important;
  max-width:390px!important;
  margin-left:auto!important;
  margin-right:0!important;
}

/* Section introductions need enough horizontal space to read as headings, not narrow columns. */
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-section-head:not(.pf-modern-section-head--split) {
  width:100%;
  max-width:1080px!important;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-section-head h2 {
  width:auto;
  max-width:none!important;
  text-wrap:pretty;
}
body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-section-head>p {
  max-width:920px;
}
body.page-logitrace-suite.page-profirst-suite:is(.product-refined,.profirst-refresh) :is(#flusso,#pacchetti,#licenze,#referenze) .pf-modern-section-head {
  width:100%;
  max-width:1080px!important;
}
body.page-logitrace-suite.page-profirst-suite:is(.product-refined,.profirst-refresh) :is(#flusso,#pacchetti,#licenze,#referenze) .pf-modern-section-head h2 {
  max-width:none!important;
}
@media(max-width:600px) {
  body.page-profirst-suite .pf-modern-module { padding:20px; }
  body.page-profirst-suite main h2 { font-size:clamp(24px,6.7vw,32px)!important; line-height:1.2!important; }
  body.page-profirst-suite main h3 { line-height:1.3; }
}

@media(max-width:1100px) {
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__inner {
    grid-template-columns:1fr!important;
  }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__panel,
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__panel-card--primary {
    margin-right:auto!important;
  }
}

@media(max-width:600px) {
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero {
    padding:92px 14px 42px!important;
  }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__inner {
    gap:18px!important;
  }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__copy {
    padding:22px 20px 24px!important;
    border-radius:18px!important;
  }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__title {
    margin-top:14px!important;
    font-size:clamp(2.35rem,12vw,3.2rem)!important;
    line-height:1!important;
  }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__lead,
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__stats,
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__actions {
    margin-top:16px!important;
  }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__panel-card--primary {
    max-width:100%!important;
  }
}
@media(prefers-reduced-motion:reduce) {
  body.page-profirst-suite *,body.page-profirst-suite *::before,body.page-profirst-suite *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  body.page-profirst-suite .pf-reveal { opacity:1!important; transform:none!important; }
}

/* Phone layout: tighter rhythm without clipping or hiding product information. */
@media(max-width:600px) {
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero .pf-suite-hero__title { font-size:clamp(30px,8.2vw,42px)!important; line-height:1.08!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero .pf-suite-hero__lead { font-size:16px!important; line-height:1.5!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero .pf-suite-stat { height:auto!important; min-height:0!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero .pf-suite-stat :is(strong,span) { font-size:14px!important; line-height:1.4!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero { min-height:0!important; padding-top:88px!important; padding-bottom:28px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__inner { width:calc(100% - 24px)!important; padding:0!important; gap:16px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__copy { padding:20px!important; min-height:0!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__title { font-size:clamp(30px,8.2vw,42px)!important; line-height:1.08!important; letter-spacing:-.025em!important; margin:12px 0!important; overflow-wrap:normal; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__lead { font-size:16px!important; line-height:1.5!important; margin:0 0 16px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__stats { display:grid!important; grid-template-columns:1fr!important; gap:8px!important; margin:16px 0!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-stat { padding:10px 12px!important; min-height:0!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-stat strong { font-size:14px!important; line-height:1.3!important; margin-bottom:3px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-stat span { font-size:14px!important; line-height:1.4!important; text-align:left!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-suite-hero__actions { gap:8px!important; margin-top:16px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) :is(.pf-suite-button,.pf-modern-button) { font-size:14px!important; padding:12px 16px!important; line-height:1.4!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-main { width:calc(100% - 24px)!important; margin-top:20px!important; gap:16px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-main>section { padding:20px 16px!important; border-radius:16px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) main h2 { font-size:clamp(22px,6vw,28px)!important; line-height:1.22!important; margin-bottom:12px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) main h3 { font-size:20px!important; line-height:1.3!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) main :is(p,li) { font-size:16px!important; line-height:1.55!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-section-head { margin-bottom:20px!important; gap:10px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-section-head h2,
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-section-head>p { max-width:none!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-module { padding:16px!important; gap:12px!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-module h3 { margin:12px 0!important; }
  body.page-profirst-suite:is(.product-refined,.profirst-refresh) .pf-modern-module__shot { max-height:210px; }
}
