/* 1C pages inherit the established OPORA m10 palette and fluid page grid.
   Keep form markup, partner registration link and the shared site header unchanged. */
body.fresh-site {
  --f-bg: #031017;
  --f-panel: #071f2b;
  --f-line: #12617a88;
  --f-muted: #b6c8d3;
  --f-accent: #ff710b;
  --f-turquoise: #00bded;
  --f-gutter: clamp(20px, 3.6vw, 110px);
}
body.fresh-site .fresh-page {
  background:
    repeating-linear-gradient(124deg, transparent 0, transparent 580px,
      #007aa025 581px, #007aa025 615px, transparent 616px,
      transparent 1150px, #ff6b1020 1151px, #ff6b1020 1170px),
    radial-gradient(ellipse at 75% 5%, #06456728, transparent 45%), #031017;
  color: #f4f7fa;
}
/* No max-width container: all sections follow the homepage's page gutters. */
body.fresh-site .fresh-page .f-wrap {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  padding-inline: var(--f-gutter);
}
body.fresh-site .fresh-page :is(.f-hero, .f-split, .f-section-top, .f-picker, .f-programs, .f-hub-grid) > * {
  min-width: 0;
}
body.fresh-site .fresh-page :is(h1, h2, h3) {
  font-family: 'IBM Plex Sans', sans-serif;
  color: #f4f7fa;
  letter-spacing: -.035em;
}
body.fresh-site .fresh-page h1 {
  font-size: clamp(36px, 3.1vw, 76px);
  font-weight: 700;
  line-height: 1.08;
  max-width: none;
}
body.fresh-site .fresh-page h2 {
  font-size: clamp(28px, 2.5vw, 52px);
  line-height: 1.16;
}
body.fresh-site .fresh-page h3 {
  font-size: clamp(20px, 1.4vw, 28px);
  line-height: 1.25;
}
body.fresh-site .fresh-page em { color: var(--m10-orange, #ff710b); }
body.fresh-site .fresh-page .f-eyebrow {
  color: var(--m10-orange, #ff710b);
  font-size: clamp(11px, .8vw, 14px);
  letter-spacing: .035em;
}
body.fresh-site .f-hero,
body.fresh-site .f-hub-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-bottom: 1px solid #09516988;
  background:
    linear-gradient(124deg, transparent 1%, #ff740845 1%, #ff740845 3%,
      transparent 3%, transparent 61%, #01426155 61%, #01426155 64%,
      transparent 64%, transparent 95%, #d34b173b 95%),
    radial-gradient(ellipse at 78% 65%, #005b8833, transparent 52%);
}
body.fresh-site .f-hero::before,
body.fresh-site .f-hub-hero::before {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 44% 0 0 48%;
  background:
    repeating-linear-gradient(0deg, transparent 0 45px, #00679622 46px 47px),
    repeating-linear-gradient(90deg, transparent 0 70px, #087da32a 71px 72px);
  transform: perspective(370px) rotateX(54deg);
  mask-image: linear-gradient(transparent, #000);
  pointer-events: none;
}
body.fresh-site .f-hero {
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: clamp(24px, 3vw, 100px);
  min-height: clamp(600px, 37vw, 960px);
  padding-block: clamp(28px, 2.3vw, 72px) clamp(35px, 3vw, 90px);
}
body.fresh-site .f-crumb { margin-bottom: clamp(28px, 3vw, 60px); }
body.fresh-site .f-hero-copy .f-lead,
body.fresh-site .f-hub-hero > .f-lead {
  max-width: 56ch;
  font-size: clamp(17px, 1.35vw, 25px);
  line-height: 1.45;
  color: #d5e4ed;
}
body.fresh-site .f-hero-visual {
  width: 100%;
  max-width: 1100px;
  justify-self: center;
  padding-top: 24px;
}
body.fresh-site .f-cloud-image {
  width: 100%;
  max-width: 100%;
  margin: 0;
}
body.fresh-site .f-cloud-logo { width: 28%; left: 49.2%; }
body.fresh-site .f-visual-caption {
  background: #031017a6;
  border-color: #12617a88;
  color: #b6c8d3;
  font-size: clamp(10px, .7vw, 14px);
}
body.fresh-site .fresh-page .f-btn {
  min-height: 46px;
  padding: 12px 30px;
  border-radius: 999px;
  background: linear-gradient(100deg, #ff8c05, #ff5900);
  border: 1px solid #ff7410;
  color: #fff !important;
  box-shadow: 0 7px 26px #ff690524;
  font-size: clamp(14px, .95vw, 18px);
  line-height: 1.2;
}
body.fresh-site .fresh-page .f-btn-secondary {
  background: #00121dbb;
  border-color: #00bded;
  box-shadow: none;
}
body.fresh-site .fresh-page .f-btn:hover { filter: brightness(1.1); }
body.fresh-site .f-benefits {
  border-top: 0;
  padding-block: clamp(24px, 2vw, 44px);
  gap: clamp(18px, 2.3vw, 64px);
}
body.fresh-site .f-benefits > div { padding-left: 46px; }
body.fresh-site .f-benefits > div + div { border-left: 1px solid #009ac680; padding-left: 58px; }
body.fresh-site .f-benefit-icon { color: #ff710b; font-size: 28px; top: 0; }
body.fresh-site .f-benefits > div + div .f-benefit-icon { left: 14px; }
body.fresh-site .f-benefits strong { font-size: clamp(15px, 1.2vw, 24px); }
body.fresh-site .f-benefits p { font-size: clamp(13px, .9vw, 17px); }
body.fresh-site .f-section { padding-block: clamp(48px, 4.4vw, 110px); }
body.fresh-site .f-section-top { gap: clamp(30px, 5vw, 140px); }
body.fresh-site .f-section-top > p {
  max-width: 52ch;
  width: 40%;
  font-size: clamp(16px, 1.08vw, 21px);
}
body.fresh-site .f-programs { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(17px, 1.4vw, 40px); }
body.fresh-site .f-card {
  border: 1px solid #087ca466;
  border-radius: 10px;
  background: linear-gradient(125deg, #0b263499, #04131ce0);
  padding: clamp(24px, 2vw, 50px);
  min-height: clamp(300px, 18vw, 430px);
}
body.fresh-site .f-card p { max-width: 62ch; font-size: clamp(15px, 1.08vw, 21px); }
body.fresh-site .f-card > a { font-size: clamp(14px, .95vw, 18px); color: #00bded; }
body.fresh-site .f-card-top { margin-bottom: 24px; }
body.fresh-site .f-number { font-size: clamp(11px, .7vw, 14px); }
body.fresh-site .f-split { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(40px, 5vw, 160px); }
body.fresh-site :is(.f-migration, .f-registration) {
  background: linear-gradient(125deg, #06243455, #00101b33);
  border-block: 1px solid #09516988;
}
body.fresh-site .f-migration::after { content: none; }
body.fresh-site .f-lead { font-size: clamp(17px, 1.2vw, 23px); }
body.fresh-site .f-steps p,
body.fresh-site .f-faq details p { font-size: clamp(15px, 1.05vw, 20px); }
body.fresh-site .f-steps h3 { font-size: clamp(20px, 1.4vw, 28px); }
body.fresh-site .f-picker { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); background: #04131cb8; }
body.fresh-site .f-picker-fields { background: #0b263466; padding: clamp(25px, 2.2vw, 55px); }
body.fresh-site .f-picker-result { background: linear-gradient(125deg, #07385855, #03131bdd); padding: clamp(25px, 2.2vw, 55px); }
body.fresh-site .f-registration-panel { background: #04141de0; border-color: #02789888; }
body.fresh-site .f-registration-panel iframe { background: #fff; }
body.fresh-site .f-registration-direct {
  background: linear-gradient(125deg, #07385866, #03131bed);
  border: 1px solid #00bded88;
}
body.fresh-site .f-registration-direct .f-reg-head {
  border-bottom: 1px solid #12617a88;
  padding: 18px clamp(24px, 2.5vw, 64px);
  color: #c7d7e2;
  font-size: clamp(13px, .95vw, 18px);
}
body.fresh-site .f-reg-body { padding: clamp(26px, 2.8vw, 72px); }
body.fresh-site .f-trial { display: flex; align-items: center; gap: 20px; margin-bottom: 26px; }
body.fresh-site .f-trial strong { font-size: clamp(64px, 5vw, 110px); line-height: .95; letter-spacing: -.06em; color: #ff710b; }
body.fresh-site .f-trial span { color: #c7d7e2; font-size: clamp(16px, 1.15vw, 24px); line-height: 1.35; }
body.fresh-site .f-reg-body > p:not(.f-small) { max-width: 56ch; color: #b6c8d3; font-size: clamp(16px, 1.05vw, 22px); margin-top: 18px; }
body.fresh-site .f-reg-body .f-registration-button { margin-block: 12px 20px; max-width: 100%; text-align: center; }
body.fresh-site .f-reg-body .f-small { margin-bottom: 0; max-width: 70ch; }
body.fresh-site .f-ticks li { font-size: clamp(15px, 1vw, 20px); }
body.fresh-site .f-faq details {
  border: 1px solid #12617a88;
  background: #071f2bdd;
  border-radius: 9px;
  padding: clamp(16px, 1.2vw, 24px) clamp(18px, 1.4vw, 30px);
  margin-bottom: 12px;
}
body.fresh-site .f-faq summary { font-size: clamp(16px, 1.1vw, 22px); }
body.fresh-site .f-consult {
  background: linear-gradient(135deg, #0b293599, #04141de0);
  border-color: #02789888;
  padding: clamp(25px, 2.8vw, 72px);
}
body.fresh-site .f-lead-form label:not(.f-check) { font-size: clamp(13px, .9vw, 17px); }
body.fresh-site .fresh-page :is(select, textarea, input:not([type=checkbox]):not([type=radio]):not([type=hidden])) {
  background: #0b2431;
  border-color: #25556899;
  font-size: clamp(15px, 1vw, 19px);
}
body.fresh-site .f-small { font-size: clamp(12px, .85vw, 16px); }
body.fresh-site .f-hub-hero { padding-block: clamp(32px, 3vw, 80px) clamp(42px, 4vw, 100px); }
body.fresh-site .f-hub-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(20px, 1.6vw, 46px); }
body.fresh-site .f-hub-grid .f-card { min-height: clamp(260px, 17vw, 410px); }
body.fresh-site .f-hub-grid h2 { margin-top: 10px; }
@media (max-width: 1100px) {
  body.fresh-site .f-hero { min-height: 560px; gap: 24px; }
  body.fresh-site .f-hero-visual { padding-top: 40px; }
  body.fresh-site .f-benefits > div,
  body.fresh-site .f-benefits > div + div { padding-left: 0; border-left: 0; }
  body.fresh-site .f-benefit-icon { position: static; display: block; margin-bottom: 7px; }
  body.fresh-site .f-split { gap: 30px; }
  body.fresh-site .f-programs { gap: 14px; }
  body.fresh-site .f-card { padding: 22px; }
}
@media (max-width: 760px) {
  body.fresh-site { --f-gutter: 20px; }
  body.fresh-site .f-hero { grid-template-columns: minmax(0, 1fr); min-height: 0; padding-block: 26px 32px; gap: 12px; }
  body.fresh-site .f-hero::before { inset: 55% -30% 0 0; }
  body.fresh-site .f-hub-hero::before { display: none; }
  body.fresh-site .f-hero-visual { padding-top: 0; max-width: 480px; margin-top: 4px; }
  body.fresh-site .fresh-page h1 { font-size: clamp(32px, 7.6vw, 52px); }
  body.fresh-site .f-crumb { margin-bottom: 28px; }
  body.fresh-site .f-hero .f-lead { font-size: 17px; }
  body.fresh-site .f-actions { gap: 10px; }
  body.fresh-site .fresh-page .f-btn { padding: 12px 22px; }
  body.fresh-site .f-benefits { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 16px; }
  body.fresh-site .f-section { padding-block: 46px; }
  body.fresh-site .f-section-top > p { width: auto; max-width: 100%; }
  body.fresh-site :is(.f-programs, .f-split, .f-picker, .f-hub-grid) { grid-template-columns: minmax(0, 1fr); }
  body.fresh-site .f-card { min-height: 270px; }
  body.fresh-site .f-hub-grid .f-card { min-height: 250px; }
  body.fresh-site .f-hub-hero { padding-block: 26px 42px; }
  body.fresh-site .f-consult { padding: 24px 18px; }
  body.fresh-site .f-picker-fields,
  body.fresh-site .f-picker-result { padding: 22px; }
  body.fresh-site .f-visual-caption { white-space: normal; text-align: center; }
}
@media (max-width: 380px) {
  body.fresh-site { --f-gutter: 16px; }
  body.fresh-site .f-hero .f-eyebrow { max-width: 30ch; }
  body.fresh-site .f-choices label { flex-basis: 40%; }
}

/* Compact rhythm: keep wide layouts useful without oversized empty panels. */
body.fresh-site .f-hero { min-height: clamp(460px, 28vw, 640px); padding-block: 24px 30px; gap: clamp(24px, 3vw, 80px); }
body.fresh-site .f-crumb { margin-bottom: 22px; }
body.fresh-site .f-hero-visual { max-width: 780px; padding-top: 0; }
body.fresh-site .f-cloud { margin: 0; }
body.fresh-site .f-visual-caption { margin-top: -10px; }
body.fresh-site .fresh-page h2 { font-size: clamp(28px, 2.1vw, 44px); }
body.fresh-site .f-section { padding-block: clamp(32px, 2.6vw, 56px); }
body.fresh-site .f-section-top { margin-bottom: 24px; gap: 32px; }
body.fresh-site .f-benefits { padding-block: 22px; }
body.fresh-site .f-card { min-height: 230px; padding: clamp(22px, 1.5vw, 34px); }
body.fresh-site .f-card-top { margin-bottom: 16px; }
body.fresh-site .f-card h3 { margin-bottom: 12px; }
body.fresh-site .f-card p { font-size: clamp(15px, 1vw, 19px); }
body.fresh-site .f-card > a { padding-top: 20px; }
body.fresh-site .f-split { gap: clamp(30px, 4vw, 100px); }
body.fresh-site .f-picker-fields,
body.fresh-site .f-picker-result,
body.fresh-site .f-reg-body { padding: clamp(24px, 1.7vw, 38px); }
body.fresh-site .f-trial { margin-bottom: 18px; }
body.fresh-site .f-trial strong { font-size: clamp(64px, 4vw, 86px); }
body.fresh-site .f-registration-direct .f-reg-head { padding: 14px clamp(24px, 1.7vw, 38px); }
body.fresh-site .f-consult { padding: clamp(24px, 2vw, 42px); }
body.fresh-site .f-faq details { padding: 16px 20px; margin-bottom: 9px; }
body.fresh-site .f-hub-hero { padding-block: 26px 36px; }
body.fresh-site .f-hub-grid { margin-top: 26px; }
body.fresh-site .f-hub-grid .f-card { min-height: 210px; }
body.fresh-site .f-hub-products { margin-top: 24px; }
body.fresh-site .f-hub-products .f-card { min-height: 198px; }
body.fresh-site .f-hub-cloud-card { position: relative; overflow: hidden; padding-right: 34%; }
body.fresh-site .f-hub-cloud { position: absolute; height: auto; width: 34%; max-width: 340px; top: 50%; right: 1%; transform: translateY(-50%); pointer-events: none; }
@media (max-width: 1100px) and (min-width: 761px) {
  body.fresh-site .f-hub-cloud-card { padding-right: 22px; }
  body.fresh-site .f-hub-cloud { display: none; }
}
@media (max-width: 760px) {
  body.fresh-site .f-hero { min-height: 0; padding-block: 22px 26px; gap: 0; }
  body.fresh-site .f-hero-visual { max-width: 340px; margin-top: 0; }
  body.fresh-site .f-visual-caption { margin-top: -2px; font-size: 10px; }
  body.fresh-site .f-section { padding-block: 32px; }
  body.fresh-site .f-section-top { gap: 14px; margin-bottom: 20px; }
  body.fresh-site .f-benefits { gap: 20px 14px; }
  body.fresh-site .f-card { min-height: 0; padding: 22px; }
  body.fresh-site .f-hub-grid .f-card { min-height: 190px; }
  body.fresh-site .f-hub-products .f-card { min-height: 174px; }
  body.fresh-site .f-hub-cloud-card { padding-right: 35%; }
  body.fresh-site .f-hub-cloud-card .f-number { max-width: 130px; display: block; }
  body.fresh-site .f-hub-cloud-card a { width: 155%; position: relative; }
  body.fresh-site .f-consult { padding: 24px 18px; }
}
@media (max-width: 760px) {
  body.fresh-site .f-hero-copy .f-lead { margin-top: 16px; margin-bottom: 12px; }
  body.fresh-site .f-hero .f-actions { margin-top: 20px; margin-bottom: 12px; }
  body.fresh-site .f-hero-visual { max-width: 280px; margin-top: -8px; }
  body.fresh-site .f-visual-caption { display: none; }
  body.fresh-site .f-hero { padding-bottom: 16px; }
}
