.refrig-primary-page {
  --rp-dark: #080c0e;
  --rp-ink: #111719;
  --rp-muted: #566269;
  --rp-line: #d7dddf;
  --rp-paper: #f4f6f6;
  --rp-accent: #f2bd28;
  margin: 0;
  background: var(--rp-paper);
  color: var(--rp-ink);
}

.refrig-primary-page main { overflow: hidden; }
.rp-wrap { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.rp-eyebrow { margin: 0 0 14px; color: #755a09; font-weight: 900; font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; }
.rp-section-heading { max-width: 760px; margin-bottom: 36px; }
.rp-section-heading h2, .rp-split h2, .rp-support h2, .rp-brand-grid h2, .rp-area h2, .rp-faq h2, .rp-final h2 { margin: 0; font-family: var(--display-font); font-size: clamp(2.25rem, 4.6vw, 4.6rem); line-height: 1; letter-spacing: 0; text-wrap: balance; }
.rp-section-heading > p:last-child { color: var(--rp-muted); font-size: 1.1rem; line-height: 1.65; }
.rp-button { box-sizing: border-box; display: inline-flex; min-height: 54px; padding: 0 22px; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.38); border-radius: 6px; color: #fff; font-weight: 900; text-align: center; transition: transform .18s ease, background .18s ease; }
.rp-button:hover { transform: translateY(-2px); background: rgba(255,255,255,.08); }
.rp-button-primary { border-color: var(--rp-accent); background: var(--rp-accent); color: #101315; box-shadow: 0 12px 28px rgba(242,189,40,.18); }
.rp-button-primary:hover { background: #ffd45a; color: #101315; }

.rp-hero { position: relative; min-height: 760px; padding: 158px 0 62px; display: flex; align-items: center; background: var(--rp-dark); color: #fff; }
.rp-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,8,9,.98) 0%, rgba(5,8,9,.94) 42%, rgba(5,8,9,.2) 78%), linear-gradient(0deg, rgba(5,8,9,.78), transparent 45%); }
.rp-hero-image { position: absolute; inset: 0 0 0 42%; width: 58%; height: 100%; object-fit: cover; filter: saturate(.85) contrast(1.05) brightness(.75); }
.rp-hero-copy { position: relative; z-index: 1; }
.rp-hero .rp-eyebrow, .rp-final .rp-eyebrow { color: var(--rp-accent); }
.rp-hero h1 { max-width: 15ch; margin: 0; font-family: var(--display-font); font-size: clamp(3.4rem, 5.4vw, 5.45rem); line-height: .96; letter-spacing: 0; overflow-wrap: normal; word-break: normal; text-wrap: balance; }
.rp-lead { max-width: 720px; margin: 26px 0 0; color: #c7cfd2; font-size: clamp(1.08rem, 1.5vw, 1.28rem); line-height: 1.65; }
.rp-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
.rp-trust { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); max-width: 1040px; margin-top: 38px; border-top: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); }
.rp-trust span { padding: 16px 14px; color: #c3cbce; font-size: .88rem; line-height: 1.4; }
.rp-trust span + span { border-left: 1px solid rgba(255,255,255,.18); }

.rp-alert { padding: 42px 0; background: #fff; border-bottom: 1px solid var(--rp-line); }
.rp-alert-grid, .rp-split, .rp-area-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(36px, 8vw, 110px); align-items: start; }
.rp-alert h2 { margin: 0; font-family: var(--display-font); font-size: clamp(2rem, 3.5vw, 3.5rem); line-height: 1; letter-spacing: 0; }
.rp-alert p, .rp-split p, .rp-area p { margin-top: 0; color: var(--rp-muted); line-height: 1.65; }

.rp-prep, .rp-equipment, .rp-faults, .rp-process, .rp-projects, .rp-support, .rp-brands, .rp-faq { padding: clamp(64px, 8vw, 104px) 0; }
.rp-prep { background: #e9edee; }
.rp-prep-list { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); margin: 0 0 30px; padding: 0; list-style: none; border-top: 1px solid #bac3c7; border-left: 1px solid #bac3c7; }
.rp-prep-list li { min-height: 112px; padding: 20px; border-right: 1px solid #bac3c7; border-bottom: 1px solid #bac3c7; font-weight: 800; }
.rp-prep-list span, .rp-equipment-grid > article > span { display: block; margin-bottom: 18px; color: #80620a; font-size: .78rem; font-weight: 900; }
.rp-prep .rp-button { color: #101315; }

.rp-equipment { background: #fff; }
.rp-equipment-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); border-top: 1px solid var(--rp-line); border-left: 1px solid var(--rp-line); }
.rp-equipment-grid article { min-height: 330px; padding: 30px; border-right: 1px solid var(--rp-line); border-bottom: 1px solid var(--rp-line); }
.rp-equipment-grid h3, .rp-fault-grid h3, .rp-process-list h3, .rp-project-grid h3, .rp-brand-grid h3 { margin: 0 0 14px; font-size: 1.35rem; line-height: 1.2; }
.rp-equipment-grid p, .rp-equipment-grid strong { display: block; color: var(--rp-muted); line-height: 1.55; }
.rp-equipment-grid strong { margin-top: 18px; color: #28353a; font-size: .92rem; }
.rp-equipment-grid a, .rp-gas a, .rp-support a, .rp-brands a, .rp-area a, .rp-faq a, .rp-text-link { display: inline-block; margin-top: 18px; color: #152f58; font-weight: 900; text-decoration: underline; text-decoration-color: var(--rp-accent); text-underline-offset: 4px; }

.rp-faults { background: #111719; color: #fff; }
.rp-faults .rp-eyebrow, .rp-process .rp-eyebrow { color: var(--rp-accent); }
.rp-fault-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); border-top: 1px solid rgba(255,255,255,.16); border-left: 1px solid rgba(255,255,255,.16); }
.rp-fault-grid article { min-height: 210px; padding: 28px; border-right: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); }
.rp-fault-grid p { color: #b9c3c7; line-height: 1.6; }
.rp-note { margin: 24px 0 0; color: #d6dde0; font-weight: 800; }

.rp-gas, .rp-industries, .rp-safety, .rp-area { padding: clamp(58px, 7vw, 88px) 0; }
.rp-gas { background: #f2c12f; }
.rp-gas .rp-eyebrow { color: #594300; }
.rp-gas p { color: #332b16; }

.rp-process { background: #0b1012; color: #fff; }
.rp-process-list { margin: 0; padding: 0; list-style: none; }
.rp-process-list li { display: grid; grid-template-columns: 72px 1fr; gap: 20px; padding: 30px 0; border-top: 1px solid rgba(255,255,255,.17); }
.rp-process-list li:last-child { border-bottom: 1px solid rgba(255,255,255,.17); }
.rp-process-list span { color: var(--rp-accent); font-weight: 900; }
.rp-process-list p { max-width: 850px; margin: 0; color: #b9c3c7; line-height: 1.6; }

.rp-projects { background: #eef1f2; }
.rp-project-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.rp-project-grid > a { display: grid; grid-template-columns: minmax(180px,.9fr) 1.1fr; min-height: 270px; overflow: hidden; border: 1px solid var(--rp-line); border-radius: 6px; background: #fff; color: var(--rp-ink); }
.rp-project-grid img { width: 100%; height: 100%; object-fit: cover; }
.rp-project-grid div { padding: 26px; }
.rp-project-grid small { display: block; margin-bottom: 12px; color: #80620a; font-weight: 900; text-transform: uppercase; }
.rp-project-grid p { color: var(--rp-muted); line-height: 1.55; }

.rp-support { background: #fff; }
.rp-support-grid, .rp-brand-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; background: var(--rp-line); border: 1px solid var(--rp-line); }
.rp-support article, .rp-brand-grid > div { padding: clamp(28px,5vw,54px); background: #fff; }
.rp-support p, .rp-brand-grid p, .rp-brand-grid small { color: var(--rp-muted); line-height: 1.65; }
.rp-industries { background: #e9edee; }
.rp-industries ul { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 0; padding: 0; list-style: none; border-top: 1px solid #bac3c7; border-left: 1px solid #bac3c7; }
.rp-industries li { padding: 14px; border-right: 1px solid #bac3c7; border-bottom: 1px solid #bac3c7; font-weight: 800; }
.rp-safety { background: #111719; color: #fff; }
.rp-safety .rp-eyebrow { color: var(--rp-accent); }
.rp-safety p { color: #bdc6ca; }
.rp-brands { background: #fff; }
.rp-area { background: #dfe5e7; }

.rp-faq { background: #fff; }
.rp-faq-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(36px,8vw,100px); }
.rp-faq details { border-top: 1px solid var(--rp-line); }
.rp-faq details:last-child { border-bottom: 1px solid var(--rp-line); }
.rp-faq summary { padding: 22px 34px 22px 0; cursor: pointer; font-weight: 900; font-size: 1.08rem; }
.rp-faq details p { margin: 0; padding: 0 0 22px; color: var(--rp-muted); line-height: 1.65; }
.rp-faq details a { margin-top: 0; }

.rp-final { padding: clamp(72px,10vw,124px) 0; background: var(--rp-dark); color: #fff; }
.rp-final h2 { max-width: 900px; }
.rp-final > .rp-wrap > p:not(.rp-eyebrow) { max-width: 760px; color: #bdc6ca; font-size: 1.1rem; line-height: 1.65; }

@media (max-width: 980px) {
  .rp-trust, .rp-prep-list, .rp-equipment-grid, .rp-fault-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .rp-trust span:nth-child(3) { border-left: 0; border-top: 1px solid rgba(255,255,255,.18); }
  .rp-trust span:nth-child(4) { border-top: 1px solid rgba(255,255,255,.18); }
  .rp-project-grid { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
  .rp-wrap { width: min(100% - 28px,1180px); }
  .rp-hero { min-height: 740px; padding: 128px 0 48px; }
  .rp-hero-image { inset: 0; width: 100%; filter: saturate(.75) brightness(.42); }
  .rp-hero::after { background: linear-gradient(180deg, rgba(5,8,9,.96) 4%, rgba(5,8,9,.9) 64%, rgba(5,8,9,.76)); }
  .rp-hero h1 { max-width: 100%; font-size: clamp(2.35rem,11vw,3.35rem); line-height: .98; overflow-wrap: normal; word-break: normal; }
  .rp-actions { display: grid; }
  .rp-button { width: 100%; }
  .rp-trust, .rp-prep-list, .rp-equipment-grid, .rp-fault-grid, .rp-alert-grid, .rp-split, .rp-area-grid, .rp-support-grid, .rp-brand-grid, .rp-faq-grid { grid-template-columns: 1fr; }
  .rp-trust span + span { border-top: 1px solid rgba(255,255,255,.18); border-left: 0; }
  .rp-equipment-grid article { min-height: 0; }
  .rp-project-grid > a { grid-template-columns: 1fr; }
  .rp-project-grid img { height: 230px; }
  .rp-industries ul { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 380px) {
  .rp-hero h1 { font-size: 2.45rem; }
  .rp-section-heading h2, .rp-split h2, .rp-support h2, .rp-brand-grid h2, .rp-area h2, .rp-faq h2, .rp-final h2 { font-size: 2.15rem; }
  .rp-industries ul { grid-template-columns: 1fr; }
  .rp-process-list li { grid-template-columns: 48px 1fr; }
}
