/* Institutional pages · RDM · native Composer layout. */
.rdm-prest-pages .rdm-content-hero--zero { display:none; }
.rdm-prest-pages .rdm-page { margin:0; padding:0; }
.rdm-prest-pages .rdm-page__article,.rdm-prest-pages .rdm-page__content { width:100%; max-width:none; margin:0; padding:0; }
.rdm-prest-pages .rdm-page__content > .vc_row { margin:0; display:flow-root; }
.rdm-prest-pages .vc_col-sm-12 { float:none; width:100%; }
.rdm-prest-pages .vc_column_container > .vc_column-inner { padding:0; }
.rdm-prest-pages .wpb_wrapper > :last-child { margin-bottom:0; }
.rdm-prest-pages .rdm-page__content :where(h1,h2,h3,p,ol,ul,figure,blockquote) { margin-top:0; }
.rdm-prest-pages .rdm-page__content .rdm-button { text-decoration:none; max-width:100%; }
.rdm-prest-pages :where(section,article,div,input,select,textarea)[id] { scroll-margin-top:24px; }
.rdm-prest-pages [hidden] { display:none !important; }
.rp-hero { background:#EDF5F3; border-bottom:1px solid #D4E6E1; }
.rp-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; align-items:center; padding-top:20px; font-size:.75rem; color:#596C71; }
.rp-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; color:#06666A; }
.rp-hero-grid { display:grid; grid-template-columns:minmax(0,1.9fr) minmax(0,.65fr); gap:clamp(40px,7vw,112px); padding-block:36px 72px; align-items:end; }
.rp-hero h1 { font-size:clamp(2.75rem,4.5vw,4.5rem); max-width:19ch; line-height:1.08; letter-spacing:-.05em; margin-bottom:24px; }
.rp-hero .rdm-lead { font-size:1.0625rem; max-width:57ch; margin-bottom:0; }
.rp-hero .rdm-eyebrow { color:#06666A; }
.rp-hero-aside { padding-left:24px; border-left:1px solid #AFC9BF; margin-bottom:6px; }
.rp-hero-aside > p:last-child { font-size:.875rem; line-height:1.8; color:#596C71; margin-bottom:0; }
.rp-small-label { font-size:.6875rem; text-transform:uppercase; letter-spacing:.09em; font-weight:600; line-height:1.7; color:#06666A; margin-bottom:12px; }
.rp-aside-mark { display:block; width:40px; height:3px; background:var(--rdm-gradient-brand); margin-bottom:24px; }
.rp-section-heading { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:end; gap:clamp(24px,6vw,88px); margin-bottom:44px; }
.rp-section-heading h2 { max-width:22ch; margin-bottom:0; }
.rp-section-heading .rdm-lead { font-size:1rem; margin-bottom:0; }
.rp-filter-bar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; border-top:1px solid #D4E2DD; padding-block:24px 32px; }
.rp-filters { display:flex; flex-wrap:wrap; gap:8px; }
.rp-filters button { display:inline-flex; align-items:center; gap:12px; min-height:44px; padding:10px 16px; border-radius:7px; border:1px solid #B3C8C1; background:#FFFFFF; color:#152C32; font:500 .8125rem/1.4 var(--rdm-font-family-base); cursor:pointer; box-shadow:none; }
.rp-filters button span { font-size:.6875rem; font-variant-numeric:tabular-nums; }
.rp-filters button:hover { border-color:#087F83; background:#EDF5F3; }
.rp-filters button[aria-pressed='true'] { color:#FFFFFF; background:#152C32; border-color:#152C32; }
.rp-filter-count { font-size:.75rem; color:#596C71; margin:0; }
.rp-project-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; align-items:start; }
.rp-project { min-width:0; border:1px solid #D4E2DD; border-radius:16px; overflow:hidden; background:#FFFFFF; }
.rp-project-image { position:relative; margin:0; aspect-ratio:24/17; background:#EDF5F3; border-bottom:1px solid #D4E2DD; }
.rp-project-image img { width:100%; height:auto; display:block; }
.rp-project-image figcaption { position:absolute; left:20px; bottom:16px; background:#FFFFFF; color:#596C71; border:1px solid #D4E2DD; border-radius:4px; padding:5px 9px; font-size:.625rem; }
.rp-project-body { padding:28px 32px 8px; }
.rp-project-meta { display:flex; gap:16px; justify-content:space-between; color:#06666A; font-size:.6875rem; text-transform:uppercase; letter-spacing:.07em; margin-bottom:14px; }
.rp-project h3 { font-size:1.5rem; margin-bottom:14px; }
.rp-project-body > p { color:#596C71; font-size:.9375rem; margin-bottom:24px; }
.rp-project-details { border-top:1px solid #D4E2DD; }
.rp-project-details summary { min-height:60px; display:flex; gap:16px; align-items:center; justify-content:space-between; list-style:none; cursor:pointer; font-size:.8125rem; color:#06666A; font-weight:600; padding:12px 0; }
.rp-project-details summary::-webkit-details-marker { display:none; }
.rp-project-details summary::marker { content:''; }
.rp-project-details[open] summary .rdm-icon { transform:rotate(180deg); }
.rp-project-details > div { padding-bottom:20px; }
.rp-project-details p,.rp-project-details li { font-size:.875rem; color:#596C71; line-height:1.75; }
.rp-project-details ul { padding-left:18px; margin-bottom:0; }
.rp-project-details li { margin-bottom:8px; }
.rp-caption { max-width:88ch; color:#596C71; font-size:.75rem; margin-top:24px !important; margin-bottom:0; }
.rp-story-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr); gap:clamp(40px,7vw,104px); align-items:start; }
.rp-story-copy h2 { max-width:21ch; margin-bottom:24px; }
.rp-story-copy .rdm-lead { color:#152C32; font-size:1.125rem; margin-bottom:28px; }
.rp-story-copy > p:not(.rdm-eyebrow):not(.rdm-lead) { color:#596C71; font-size:.9375rem; line-height:1.85; }
.rp-signature-panel { border-radius:20px; padding:clamp(28px,3.5vw,48px); border-top:3px solid #1ACD98; }
.rp-brand-study { text-align:center; display:grid; justify-items:center; gap:30px; padding-bottom:36px; border-bottom:1px solid #365057; }
.rp-brand-study .rp-small-label { color:#C2D4D0; font-size:.625rem; margin:0; }
.rp-brand-study img { width:clamp(160px,14vw,192px); aspect-ratio:1; object-fit:contain; }
.rp-brand-caption { color:#C2D4D0; font-size:.75rem; line-height:1.75; }
.rp-signature-panel blockquote { padding:32px 0 0; margin:0; border:0; font-style:normal; }
.rp-signature-panel blockquote p { font-size:1.5rem; line-height:1.45; letter-spacing:-.025em; color:#FFFFFF; margin-bottom:24px; }
.rp-signature-panel blockquote footer { font-size:.75rem; color:#70DFC1; background:none; }
.rp-method { background:#F7F9F8; border-block:1px solid #E2EAE8; }
.rp-method-list { padding:0; margin:0; list-style:none; border-top:1px solid #C9D9D3; }
.rp-method-list li { display:grid; grid-template-columns:64px minmax(0,.8fr) minmax(0,1.4fr); gap:32px; padding-block:32px; border-bottom:1px solid #C9D9D3; }
.rp-step-number { color:#06666A; font-size:.75rem; font-weight:600; padding-top:5px; font-variant-numeric:tabular-nums; }
.rp-method-list h3 { font-size:1.375rem; margin-bottom:12px; }
.rp-step-question { color:#06666A; font-size:.8125rem; }
.rp-method-list li > div:last-child > p { color:#596C71; font-size:.9375rem; margin-bottom:16px; }
.rp-method-list li .rp-step-delivery { font-size:.8125rem; margin-bottom:0; }
.rp-step-delivery strong { color:#152C32; }
.rp-values-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:32px; }
.rp-values-grid article { min-width:0; border-top:1px solid #D4E2DD; padding-top:28px; }
.rp-values-grid .rdm-icon-box { margin-bottom:24px; }
.rp-values-grid h3 { font-size:1.125rem; line-height:1.35; margin-bottom:14px; }
.rp-values-grid p { font-size:.875rem; color:#596C71; margin-bottom:0; line-height:1.8; }
.rp-closing-grid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(0,.8fr); gap:64px; align-items:center; }
.rp-closing h2 { max-width:24ch; margin-bottom:24px; }
.rp-closing .rdm-lead { font-size:1rem; margin-bottom:0; }
.rp-closing-grid > div:last-child { justify-self:end; }
.rp-contact-grid { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(0,1fr); gap:clamp(40px,7vw,96px); align-items:start; }
.rp-form-panel h2 { font-size:clamp(1.875rem,2.8vw,2.5rem); max-width:22ch; margin-bottom:20px; }
.rp-form-panel .rdm-lead { font-size:1rem; margin-bottom:28px; }
.rp-contact-form { display:grid; gap:24px; }
.rp-fields-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.rp-contact-form .rdm-field { min-width:0; }
.rp-contact-form .rdm-field label span { font-weight:400; color:#596C71; font-size:.75rem; }
.rp-contact-form textarea { resize:vertical; min-height:160px; max-height:600px; line-height:1.65; }
.rp-required-note { font-size:.75rem; color:#596C71; margin-bottom:0; }
.rp-contact-form .rp-consent > div { display:flex; gap:12px; align-items:flex-start; }
.rp-contact-form .rp-consent input { width:20px; height:20px; min-height:20px; padding:0; flex:0 0 20px; margin:2px 0 0; accent-color:#087F83; }
.rp-contact-form .rp-consent label { font-size:.8125rem; line-height:1.75; font-weight:400; }
.rp-consent a { color:#06666A; text-decoration:underline; }
.rp-submit-row { display:flex; flex-wrap:wrap; gap:16px 24px; align-items:center; }
.rp-submit-row p { font-size:.75rem; color:#596C71; margin-bottom:0; max-width:29ch; }
.rp-honeypot { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.rp-contact-aside { border:1px solid #D4E6E1; border-radius:16px; padding:clamp(24px,3vw,40px); background:#EDF5F3; }
.rp-contact-aside > h2 { font-size:1.625rem; line-height:1.2; max-width:18ch; margin-bottom:20px; }
.rp-contact-aside > p:not(.rp-small-label) { color:#596C71; font-size:.875rem; line-height:1.8; margin-bottom:28px; }
.rp-channel { display:grid; grid-template-columns:40px minmax(0,1fr); gap:16px; border-top:1px solid #C7DCD5; padding-top:24px; margin-top:24px; }
.rp-channel .rdm-icon-box { width:40px; height:40px; border-radius:10px; border-color:#C7DCD5; background:#FFFFFF; }
.rp-channel h3 { font-size:.9375rem; letter-spacing:-.01em; margin-bottom:10px; }
.rp-channel p { color:#596C71; font-size:.8125rem; line-height:1.75; margin-bottom:8px; }
.rp-channel p:last-child { margin-bottom:0; }
.rp-channel .rdm-text-link { color:#06666A; font-size:.8125rem; }
.rp-contact-tip { border-top:1px solid #C7DCD5; padding-top:24px; margin-top:28px; }
.rp-contact-tip strong { font-size:.875rem; }
.rp-contact-tip p { font-size:.8125rem; line-height:1.8; margin-top:8px !important; margin-bottom:0; color:#596C71; }
.rp-form-feedback { margin-block:28px; scroll-margin-top:120px !important; }
.rp-form-feedback h3 { font-size:1.125rem; color:inherit; margin-bottom:12px; }
.rp-form-feedback p,.rp-form-feedback li { font-size:.875rem; line-height:1.8; }
.rp-form-feedback p { margin-bottom:0; }
.rp-form-feedback ul { margin-bottom:0; padding-left:20px; }
.rp-form-errors { border:1px solid #DDA9AC; border-left:3px solid #A52D35; background:#FFF6F6; border-radius:8px; color:#A52D35; padding:20px; }
.rp-form-errors a { color:#A52D35; text-decoration:underline; }
.rp-legal-section { padding-block:40px; border-bottom:1px solid #E2EAE8; }
.rp-legal-grid { max-width:880px; display:grid; grid-template-columns:48px minmax(0,1fr); gap:32px; }
.rp-legal-number { font-size:.75rem; color:#06666A; font-variant-numeric:tabular-nums; padding-top:6px; }
.rp-legal-section h2 { font-size:1.5rem; line-height:1.35; margin-bottom:20px; }
.rp-legal-section p { max-width:75ch; color:#596C71; font-size:.9375rem; line-height:1.85; margin-bottom:18px; }
.rp-legal-section p:last-child { margin-bottom:0; }
@media(max-width:1050px) {
  .rp-values-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .rp-contact-grid { grid-template-columns:minmax(0,1fr); gap:40px; }
  .rp-contact-aside { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 32px; }
  .rp-contact-aside > p,.rp-contact-aside > h2,.rp-contact-tip { grid-column:1/-1; }
  .rp-contact-aside > h2 { max-width:none; }
  .rp-contact-aside .rp-channel { margin-top:0; margin-bottom:24px; }
  .rp-contact-tip { margin-top:0; }
}
@media(max-width:860px) {
  .rp-hero-grid { grid-template-columns:minmax(0,1fr); gap:28px; padding-block:28px 48px; }
  .rp-hero h1 { font-size:clamp(2.75rem,6vw,3.5rem); }
  .rp-hero-aside { max-width:56ch; }
  .rp-aside-mark { display:none; }
  .rp-section-heading { grid-template-columns:minmax(0,1fr); gap:20px; }
  .rp-story-grid { grid-template-columns:minmax(0,1fr); }
  .rp-signature-panel { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:32px; align-items:center; }
  .rp-brand-study { border:0; padding:0; }
  .rp-signature-panel blockquote { padding:0; }
  .rp-method-list li { grid-template-columns:32px minmax(0,.85fr) minmax(0,1.4fr); gap:24px; }
  .rp-closing-grid { grid-template-columns:minmax(0,1fr); gap:32px; }
  .rp-closing-grid > div:last-child { justify-self:start; }
  .rp-project-grid { gap:24px; }
  .rp-project-body { padding:24px 24px 8px; }
}
@media(max-width:600px) {
  .rp-breadcrumb { padding-top:12px; }
  .rp-hero h1 { font-size:clamp(2.25rem,10vw,3rem); }
  .rp-hero .rdm-lead { font-size:1rem; }
  .rp-hero-grid { padding-block:20px 36px; }
  .rp-hero-aside { padding-left:16px; }
  .rp-project-grid,.rp-values-grid,.rp-fields-row { grid-template-columns:minmax(0,1fr); }
  .rp-project-body { padding-inline:24px; }
  .rp-filter-bar { gap:16px; }
  .rp-filters { gap:8px; }
  .rp-filters button { padding:10px 12px; font-size:.75rem; }
  .rp-signature-panel { display:block; padding:28px; }
  .rp-brand-study { padding-bottom:28px; border-bottom:1px solid #365057; }
  .rp-signature-panel blockquote { padding-top:28px; }
  .rp-method-list li { grid-template-columns:24px minmax(0,1fr); gap:12px; padding-block:28px; }
  .rp-method-list li > div:last-child { grid-column:2; }
  .rp-step-question { margin-bottom:8px; }
  .rp-contact-aside { display:block; padding:24px; }
  .rp-submit-row { align-items:stretch; flex-direction:column; }
  .rp-submit-row p { max-width:none; }
  .rp-closing .rdm-button { width:100%; }
  .rp-closing-grid > div:last-child { width:100%; }
  .rp-legal-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
  .rp-legal-section { padding-block:32px; }
  .rp-legal-section h2 { font-size:1.375rem; }
}
