/* RGB staging: shared Open Sans, RGB red, charcoal and restrained surfaces.
   No imported fonts, images, JavaScript, animation library or nested asset requests. */
body.rgb-site-theme {
    --rgb-red: #e02b20; --rgb-ink: #25282d; --rgb-muted: #575d65;
    --rgb-line: #e4e6e9; --rgb-paper: #f7f8f9;
}
body.rgb-site-theme #main-content {
    font-family: 'Open Sans', Arial, sans-serif;
    font-size: 16px; line-height: 1.7; font-weight: 400; color: var(--rgb-muted);
}
body.rgb-site-theme #main-content :is(h1,h2,h3,h4,h5,h6,.et_pb_module_header) {
    font-family: 'Open Sans', Arial, sans-serif !important;
    font-weight: 600 !important; font-style: normal; text-transform: none !important;
    letter-spacing: -.025em !important; line-height: 1.25 !important;
    overflow-wrap: break-word; text-shadow: none;
}
body.rgb-site-theme #main-content h1 { font-size: clamp(30px,3.6vw,48px) !important; }
body.rgb-site-theme #main-content h2 { font-size: clamp(25px,2.5vw,34px) !important; }
body.rgb-site-theme #main-content h3 { font-size: clamp(21px,1.8vw,25px) !important; }
body.rgb-site-theme #main-content h4 { font-size: 20px !important; }
body.rgb-site-theme #main-content :is(.et_pb_text,.et_pb_blurb_description,.et_pb_toggle_content) {
    font-family: 'Open Sans', Arial, sans-serif !important; font-size: 16px; line-height: 1.75;
}
body.rgb-site-theme #main-content strong { font-weight: 600; }
body.rgb-site-theme #main-content a:focus-visible,
body.rgb-site-theme #main-content button:focus-visible {
    outline: 3px solid var(--rgb-red); outline-offset: 4px;
}
body.rgb-site-theme #main-content img { max-width: 100%; height: auto; }
body.rgb-site-theme #main-content iframe { max-width: 100%; }

/* Match the homepage's 1280px reading grid without changing the native navigation. */
body.rgb-theme-builder #main-content .et_pb_section > .et_pb_row,
body.rgb-theme-builder #main-content .et_pb_fullwidth_header_container {
    width: calc(100% - 80px) !important; max-width: 1280px !important;
}
body.rgb-theme-builder #main-content .et_pb_section { padding-block: 56px; }
body.rgb-theme-builder #main-content .et_pb_section > .et_pb_row { padding-block: 12px; }
body.rgb-theme-builder #main-content .et_pb_fullwidth_section { padding: 0; }
body.rgb-theme-builder #main-content .et_pb_fullwidth_header { padding: 64px 0 !important; }
body.rgb-theme-builder #main-content .et_pb_fullwidth_header .header-content { padding: 0; }
body.rgb-theme-builder #main-content .et_pb_fullwidth_header .et_pb_header_content_wrapper {
    max-width: 780px; margin: 18px auto 0; font-size: 17px; line-height: 1.7;
}
body.rgb-theme-page #main-content > .container { max-width: 1280px; width: calc(100% - 80px); padding-block: 48px !important; }
body.rgb-theme-page #main-content > .container::before { display: none; }
body.rgb-theme-page #left-area { width: 100% !important; padding-right: 0 !important; float: none; }
body.rgb-theme-page #sidebar { display: none; }
body.rgb-theme-page #main-content .entry-title { margin-bottom: 28px; }
body.rgb-theme-plain #main-content .entry-content { padding-bottom: 32px; }
body.rgb-theme-plain #main-content .entry-content > :is(h2,h3) { margin-top: 32px; margin-bottom: 12px; }

/* Small, precise red markers replace the old 96px pictograms. */
body.rgb-theme-page #main-content .et_pb_blurb .et-pb-icon {
    display: inline-flex; align-items: center; justify-content: center;
    width: 62px; height: 62px; font-size: 29px !important; line-height: 1 !important;
    color: #c32920 !important; background: #fff1ef !important;
    border: 1px solid #f0ddda !important; border-radius: 14px !important; padding: 0 !important;
}
body.rgb-theme-page #main-content .et_pb_blurb .et_pb_main_blurb_image { margin-bottom: 20px; }
body.rgb-theme-page #main-content .et_pb_blurb .et_pb_module_header { font-size: 20px !important; padding-bottom: 10px; }
body.rgb-theme-page #main-content .et_pb_blurb_content { max-width: 100%; }
body.rgb-theme-page #main-content .et_pb_blurb { box-shadow: none; }
body.rgb-theme-page #main-content .et_pb_blurb.et_pb_with_background { border-radius: 8px; }

/* Preserve light text in dark sections, with the homepage's button geometry. */
body.rgb-site-theme #main-content :is(.et_pb_button,.button,.wp-element-button,.cpro-cta-btn) {
    border-radius: 5px !important; min-height: 46px; padding: 12px 22px !important;
    font: 600 14px/1.5 'Open Sans',Arial,sans-serif !important;
    letter-spacing: 0 !important; text-transform: none !important;
    box-shadow: none !important; text-align: center; white-space: normal;
}
body.rgb-site-theme #main-content :is(.et_pb_button,.button.alt,.single_add_to_cart_button,.checkout-button) {
    color: #fff !important; background: var(--rgb-red) !important; border: 1px solid var(--rgb-red) !important;
}
body.rgb-site-theme #main-content :is(.et_pb_button,.button.alt,.single_add_to_cart_button,.checkout-button):hover {
    background: #be241b !important; border-color: #be241b !important;
}
body.rgb-site-theme #main-content .et_pb_button::after { display: none !important; }
body.rgb-site-theme #main-content .et_pb_promo { border-radius: 8px; box-shadow: none; padding: 32px !important; }
body.rgb-site-theme #main-content .et_pb_toggle { border: 1px solid var(--rgb-line); border-radius: 8px; box-shadow: none; }
body.rgb-site-theme #main-content .et_pb_toggle_title { font-size: 18px !important; }

/* Service and policy introductions use the same quiet grey as the home hero. */
body.rgb-theme-information #main-content .et_builder_inner_content > .et_pb_section:first-child {
    background: var(--rgb-paper) !important; border-bottom: 1px solid var(--rgb-line); padding-block: 56px !important;
}
body.rgb-theme-information #main-content .et_builder_inner_content > .et_pb_section:first-child :is(h1,h2,p,.et_pb_text) { color: var(--rgb-ink) !important; }
body.rgb-theme-information #main-content .et_builder_inner_content > .et_pb_section:first-child h1 { max-width: 900px; margin-inline: auto; }

.rgb-page-intro { background: var(--rgb-paper); border-bottom: 1px solid var(--rgb-line); padding: 52px 0; }
.rgb-page-intro > div { width: calc(100% - 80px); max-width: 1280px; margin: auto; }
.rgb-page-eyebrow { display: block; color: #b8241b; font-size: 12px; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; margin-bottom: 12px; }
.rgb-page-intro p { max-width: 650px; margin-top: 12px; padding: 0; }
body.rgb-site-theme.page-id-71 #main-content .et_pb_contact_form { padding: 28px; background: var(--rgb-paper); border: 1px solid var(--rgb-line); border-radius: 8px; }
body.rgb-site-theme.page-id-71 #main-content .et_pb_contact_form_container { margin-right: 0 !important; }
body.rgb-site-theme.page-id-71 #main-content .et_pb_contact_form { margin-left: 0; }
body.rgb-site-theme #main-content :is(input.input,textarea.et_pb_contact_message,input.input-text,textarea.input-text,select) {
    border: 1px solid #cdd1d6; border-radius: 5px; background-color: #fff; color: var(--rgb-ink); font-size: 16px;
}
body.rgb-site-theme #main-content :is(input,textarea,select):focus { outline: 2px solid #c32920; outline-offset: 2px; }
body.rgb-site-theme #crmWebToEntityForm { max-width: 100%; }
body.rgb-site-theme #crmWebToEntityForm :is(table,input,textarea,select) { max-width: 100%; box-sizing: border-box; }
body.rgb-site-theme #crmWebToEntityForm table { width: 100% !important; table-layout: fixed; }
body.rgb-site-theme #crmWebToEntityForm :is(input[type=text],textarea) { width: 100% !important; border: 1px solid #cdd1d6; border-radius: 5px; padding: 10px; font: inherit; }
body.rgb-site-theme #crmWebToEntityForm input[type=submit] { background: var(--rgb-red); color: #fff !important; border: 0; border-radius: 5px; padding: 12px 24px; font: 600 14px/1.5 'Open Sans',Arial,sans-serif !important; }
body.rgb-theme-app #main-content .et_pb_toggle_title::before { color: var(--rgb-red) !important; }
body.rgb-site-theme #main-content .rgb-help-note { background: var(--rgb-paper) !important; border-left: 4px solid var(--rgb-red) !important; }
body.rgb-site-theme #main-content .rgb-static-cta :is(.et_pb_text,p,a) { color: #f1f2f4 !important; }
body.rgb-site-theme #main-content .rgb-static-cta :is(h2,h3,h4,.et_pb_module_header) { color: #fff !important; }
body.rgb-site-theme #main-content .rgb-soft-section { background: var(--rgb-paper) !important; }
body.rgb-site-theme #main-content .rgb-app-step { text-align: center; }
body.rgb-site-theme #main-content .rgb-app-step .rgb-step-number { font-size: 36px; font-weight: 600; color: #ff8178 !important; padding-bottom: 12px; }
body.rgb-site-theme.page-id-3019633276 #main-content .entry-title { display: none; }

/* The custom catalogue templates live outside Divi's main-content wrapper. */
body.rgb-site-theme :is(.modern-shop-page,.modern-category-page) { font: 400 16px/1.7 'Open Sans',Arial,sans-serif; color: var(--rgb-muted); }
body.rgb-site-theme :is(.modern-shop-page,.modern-category-page) :is(h1,h2,h3) {
    font-family: 'Open Sans',Arial,sans-serif !important; font-weight: 600 !important;
    text-transform: none !important; letter-spacing: -.025em; line-height: 1.25;
}
body.rgb-site-theme .shop-hero { background: var(--rgb-paper); color: var(--rgb-ink); padding: 56px 24px; border-bottom: 1px solid var(--rgb-line); }
body.rgb-site-theme .shop-hero .hero-content { max-width: 1000px; margin: auto; }
body.rgb-site-theme .shop-hero .shop-title { color: var(--rgb-ink); font-size: clamp(30px,3.2vw,44px); }
body.rgb-site-theme .shop-hero :is(p,.shop-description) { color: var(--rgb-muted); font-size: 16px; line-height: 1.75; }
body.rgb-site-theme .shop-categories-wrapper > .container { max-width: 1280px; width: calc(100% - 80px); }
body.rgb-site-theme :is(.category-card,.product-card) { border: 1px solid var(--rgb-line); border-radius: 8px; box-shadow: none; overflow: hidden; }
body.rgb-site-theme :is(.category-card,.product-card):hover { box-shadow: 0 5px 18px #1b24330c; border-color: #dfaba6; transform: none; }
body.rgb-site-theme .category-card h3 { font-size: 20px; }
body.rgb-site-theme .category-hero-fullwidth .category-title { font-size: clamp(30px,3.4vw,46px); }
body.rgb-site-theme .modern-category-page .product-title { font-size: 19px; line-height: 1.4; }
body.rgb-site-theme .modern-category-page .product-title a { font: inherit; color: var(--rgb-ink); }
body.rgb-site-theme .modern-category-page .product-button {
    background: var(--rgb-red); color: #fff; border: 1px solid var(--rgb-red);
    border-radius: 5px; padding: 12px 20px; font: 600 14px/1.5 'Open Sans',Arial,sans-serif; text-transform: none;
}
body.rgb-site-theme .modern-category-page .product-button:hover { background: #be241b; }
body.rgb-site-theme .modern-category-page .controls-row { flex-wrap: wrap; gap: 16px; }
body.rgb-site-theme .modern-category-page .sort-controls { max-width: 100%; }
body.rgb-site-theme .modern-category-page .orderby { max-width: 100%; border: 1px solid #cdd1d6; border-radius: 5px; }

/* Shop and journal templates inherit typography and restrained card styling. */
body.rgb-site-theme #main-content .woocommerce-breadcrumb { font-size: 12px; margin-bottom: 24px; color: var(--rgb-muted); }
body.rgb-site-theme #main-content ul.products li.product { border: 1px solid var(--rgb-line); padding: 18px; border-radius: 8px; background: #fff; box-sizing: border-box; }
body.rgb-site-theme #main-content ul.products li.product .woocommerce-loop-product__title { font-size: 18px !important; line-height: 1.45 !important; }
body.rgb-site-theme #main-content ul.products li.product :is(.woocommerce-loop-product__title,.price) { padding-right: 0 !important; }
body.rgb-site-theme #main-content ul.products li.product > .button {
    position: static !important; display: inline-flex; width: auto !important; height: auto !important;
    max-width: 100%; margin-top: 16px; color: #b8241b !important; background: #fff !important;
    border: 1px solid #cdd1d6 !important; text-indent: 0 !important;
}
body.rgb-site-theme #main-content ul.products li.product > .button::before,
body.rgb-site-theme #main-content ul.products li.product > .button::after { display: none !important; }
body.rgb-site-theme #main-content .price { color: #b8241b; }
body.rgb-site-theme #main-content .woocommerce :is(table.shop_table,.woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content) { border-radius: 8px; }
body.rgb-site-theme #main-content .et_pb_post { border-color: var(--rgb-line); box-shadow: none; }
body.rgb-site-theme #main-content .et_pb_post h2 { font-size: 26px !important; }
body.rgb-site-theme #main-content .post-meta { font-size: 12px; }

/* Repair the legacy Canon guides without the original inline CSS or heavy shadows. */
body.rgb-site-theme .rgb-canon-guide { max-width: 1100px; margin-inline: auto; }
body.rgb-site-theme .rgb-canon-guide :is(h2,h3) { margin-block: 28px 14px; }
body.rgb-site-theme .cpro-hero-band { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: 40px; margin-bottom: 40px; }
body.rgb-site-theme .cpro-hero-badge { color: #b8241b; font-size: 12px; font-weight: 600; }
body.rgb-site-theme .cpro-hero-image img { width: 100%; height: auto; }
body.rgb-site-theme :is(.cpro-strip,.cpro-media-grid,.cpro-trust-grid) { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-block: 24px; }
body.rgb-site-theme .cpro-strip img { width: 100%; aspect-ratio: 4/3; object-fit: contain; background: var(--rgb-paper); border-radius: 8px; }
body.rgb-site-theme :is(.cpro-compare,.cpro-trust,.cpro-cta,.cpro-faq) { padding: 32px; border-radius: 8px; margin-block: 40px; }
body.rgb-site-theme :is(.cpro-compare,.cpro-trust,.cpro-cta) { background: #25282d; color: #e7eaee; }
body.rgb-site-theme :is(.cpro-compare,.cpro-trust,.cpro-cta) :is(h2,h3) { color: #fff; }
body.rgb-site-theme :is(.cpro-compare,.cpro-trust,.cpro-cta) a { color: #fff; text-decoration: underline; }
body.rgb-site-theme .cpro-compare-table-wrap { overflow-x: auto; }
body.rgb-site-theme .cpro-compare table { min-width: 640px; font-size: 14px; border-color: #606670 !important; }
body.rgb-site-theme .cpro-compare :is(th,td) { padding: 14px; border-color: #606670 !important; vertical-align: top; }
body.rgb-site-theme .cpro-compare th { background: #343a43; }
body.rgb-site-theme :is(.cpro-media-item,.cpro-faq) { background: var(--rgb-paper); border: 1px solid var(--rgb-line); }
body.rgb-site-theme :is(.cpro-media-item,.cpro-trust-item) { padding: 20px; border-radius: 8px; }
body.rgb-site-theme .cpro-trust-item { border: 1px solid #606670; }
body.rgb-site-theme .cpro-faq-item + .cpro-faq-item { border-top: 1px solid var(--rgb-line); margin-top: 24px; padding-top: 12px; }
body.rgb-site-theme .cpro-cta-actions { margin-top: 20px; }
body.rgb-site-theme .cpro-cta-btn { display: inline-flex; background: var(--rgb-red); color: #fff; text-decoration: none !important; }
body.rgb-theme-app #main-content .et_pb_number_counter .percent { color: #e02b20 !important; }
body.rgb-site-theme .rgb-wu-hero { background-color: #25282d; }
body.rgb-site-theme .rgb-wu-btn-primary { background: var(--rgb-red); border-color: var(--rgb-red); border-radius: 5px; }

@media (max-width: 980px) {
    body.rgb-theme-builder #main-content .et_pb_section > .et_pb_row,
    body.rgb-theme-builder #main-content .et_pb_fullwidth_header_container,
    body.rgb-theme-page #main-content > .container,.rgb-page-intro > div { width: calc(100% - 48px) !important; }
    body.rgb-theme-builder #main-content .et_pb_section { padding-block: 40px !important; }
    body.rgb-theme-builder #main-content .et_pb_fullwidth_section { padding: 0 !important; }
    body.rgb-theme-builder #main-content .et_pb_fullwidth_header { padding-block: 44px !important; }
    body.rgb-theme-builder #main-content .et_pb_row_inner { width: 100%; }
    body.rgb-theme-builder #main-content .et_pb_column { min-width: 0; }
    body.rgb-site-theme #main-content .et_pb_promo { padding: 24px !important; }
    body.rgb-site-theme .cpro-hero-band { grid-template-columns: 1fr; gap: 24px; }
    body.rgb-site-theme :is(.cpro-trust-grid,.cpro-media-grid) { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    body.rgb-site-theme #rgb-wu-form .rgb-wu-field { flex: 0 1 auto !important; }
    body.rgb-site-theme #crmWebToEntityForm :is(table,tbody,tr,td) { display: block; width: 100% !important; }
    body.rgb-site-theme #crmWebToEntityForm td { padding: 6px 0 !important; border: 0; }
    body.rgb-site-theme #crmWebToEntityForm tr { padding-block: 6px; }
    body.rgb-theme-builder #main-content .et_pb_section > .et_pb_row,
    body.rgb-theme-builder #main-content .et_pb_fullwidth_header_container,
    body.rgb-theme-page #main-content > .container,.rgb-page-intro > div { width: calc(100% - 36px) !important; }
    body.rgb-theme-page #main-content > .container { padding-block: 30px !important; }
    body.rgb-site-theme #main-content { font-size: 15px; }
    body.rgb-site-theme #main-content :is(.et_pb_text,.et_pb_blurb_description,.et_pb_toggle_content) { font-size: 15px; }
    body.rgb-theme-builder #main-content .et_pb_section { padding-block: 30px !important; }
    body.rgb-theme-information #main-content .et_builder_inner_content > .et_pb_section:first-child { padding-block: 36px !important; }
    .rgb-page-intro { padding: 36px 0; }
    body.rgb-site-theme.page-id-71 #main-content .et_pb_contact_form { padding: 18px; }
    body.rgb-site-theme #main-content :is(table,pre) { max-width: 100%; }
    body.rgb-site-theme .shop-categories-wrapper > .container { width: calc(100% - 36px); }
    body.rgb-site-theme .shop-hero { padding: 36px 18px; }
    body.rgb-site-theme .modern-category-page .sort-controls { flex-basis: 100%; }
    body.rgb-site-theme .modern-category-page .woocommerce-ordering { float: none; margin: 0; }
    body.rgb-site-theme .modern-category-page .hover-image { display: none; }
    body.rgb-site-theme :is(.cpro-compare,.cpro-trust,.cpro-cta,.cpro-faq) { padding: 20px; }
    body.rgb-site-theme .cpro-strip { gap: 8px; }
    body.rgb-site-theme #main-content ul.products { display: grid; grid-template-columns: 1fr; gap: 20px; }
    body.rgb-site-theme #main-content ul.products::before,
    body.rgb-site-theme #main-content ul.products::after { display: none; }
    body.rgb-site-theme #main-content ul.products li.product { width: 100% !important; margin: 0 !important; float: none !important; }
}
/* Shared page composition, using the approved homepage's existing design tokens. */
body.rgb-site-theme #main-content .rgb-static-hero,
body.rgb-theme-journal #main-content .et_builder_inner_content > .et_pb_fullwidth_section:first-child {
    background: linear-gradient(110deg,#f7f8f9,#eef0f3) !important;
    border-bottom: 1px solid var(--rgb-line); padding: 52px 0 !important;
}
body.rgb-site-theme #main-content .rgb-static-hero.et_pb_fullwidth_section { padding: 0 !important; min-height: 0 !important; }
body.rgb-site-theme #main-content .rgb-static-hero > .et_pb_row { padding-block: 0 !important; }
body.rgb-site-theme #main-content .rgb-static-hero :is(.et_pb_text,.et_pb_module_header,h1,h2,h3,p,.et_pb_header_content_wrapper) {
    color: var(--rgb-ink) !important; text-shadow: none !important; text-align: left !important;
}
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_text { margin-inline: 0 !important; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_text_inner { text-align: left !important; }
body.rgb-site-theme #main-content .rgb-static-hero :is(h1,.et_pb_module_header) { max-width: 920px; margin-inline: 0 !important; }
body.rgb-site-theme #main-content .rgb-static-hero p { max-width: 800px; font-size: 17px; line-height: 1.75; margin-inline: 0 !important; }
body.rgb-site-theme #main-content .rgb-static-hero :is(p strong,p span,p em) { color: inherit !important; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_image img { max-height: 400px; width: auto; object-fit: contain; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_code_inner > div { justify-content: flex-start !important; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_text_inner > p { margin-left: 0 !important; margin-right: 0 !important; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_fullwidth_header { padding: 52px 0 !important; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_fullwidth_header_container { width: calc(100% - 80px); max-width: 1280px; }
body.rgb-site-theme #main-content .rgb-static-hero .header-content-container { width: 100% !important; justify-content: flex-start; }
body.rgb-site-theme #main-content .rgb-static-hero .header-content { width: 100% !important; max-width: none; margin: 0 !important; padding: 0; text-align: left; }
body.rgb-site-theme #main-content .rgb-static-hero .header-content { display: flex; flex-direction: column; align-items: flex-start; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_fullwidth_header_subhead {
    color: #b8241b; font: 600 12px/1.5 'Open Sans',Arial,sans-serif; letter-spacing: .07em; text-transform: uppercase; margin: 14px 0;
}
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_fullwidth_header_subhead { order: -1; margin: 0 0 14px; }
body.rgb-site-theme #main-content :is(.et_pb_fullwidth_header_subhead,.rgb-page-eyebrow)::before { content: ''; display: inline-block; vertical-align: middle; width: 24px; height: 2px; margin-right: 10px; background: var(--rgb-red); }
body.rgb-theme-journal #main-content .et_builder_inner_content > .rgb-static-hero.et_pb_fullwidth_section { padding: 0 !important; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_header_content_wrapper { margin: 14px 0 0 !important; max-width: 800px; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_fullwidth_header_overlay { background: transparent !important; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_fullwidth_image { max-width: 160px; margin: 0 40px 24px; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_button { margin-top: 24px; }
body.rgb-site-theme #main-content .rgb-static-hero .et_pb_button_module_wrapper { text-align: left; }
body.rgb-site-theme #main-content .rgb-static-cta { background: #25282d !important; padding: 40px 0 !important; }
body.rgb-site-theme #main-content .rgb-static-cta :is(h2,p,.et_pb_promo_description) { color: #fff !important; }

/* About: preserve the original story with a clear heading/detail rhythm. */
/* Equal-height delivery cards with the same top inset for icons and headings. */
body.rgb-site-theme #main-content .rgb-delivery-options {
    display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); grid-auto-rows: 1fr; gap: 36px;
}
body.rgb-site-theme #main-content .rgb-delivery-options::after { display: none; }
body.rgb-site-theme #main-content .rgb-delivery-options > .et_pb_column {
    width: 100% !important; margin: 0 !important; min-width: 0; float: none;
}
body.rgb-site-theme #main-content .rgb-delivery-options .et_pb_blurb {
    height: 100%; box-sizing: border-box; padding: 30px 20px !important; margin: 0 !important;
}
@media (max-width:980px) {
    body.rgb-site-theme #main-content .rgb-delivery-options { grid-template-columns: minmax(0,1fr); gap: 24px; }
}

body.rgb-site-theme #main-content .rgb-support-contact,
body.rgb-site-theme #main-content .rgb-support-options > .et_pb_column {
    padding: 28px; border: 1px solid var(--rgb-line); border-radius: 8px; background: #fff;
}
body.rgb-site-theme #main-content .rgb-support-contact { background: var(--rgb-paper); }
body.rgb-site-theme #main-content .rgb-support-introduction { background: #fff !important; }
body.rgb-site-theme #main-content .rgb-support-introduction :is(.et_pb_text,h2) { text-align: left !important; }
body.rgb-site-theme #main-content .rgb-support-plans { background: var(--rgb-paper) !important; }
body.rgb-site-theme #main-content .rgb-support-plans > .et_pb_row:not(.rgb-support-options) > .et_pb_column { background: transparent !important; }
body.rgb-site-theme #main-content .rgb-support-plans > .et_pb_row:first-child .et_pb_text { max-width: 900px; }
body.rgb-site-theme #main-content .rgb-support-options { display: flex; flex-wrap: wrap; }
body.rgb-site-theme #main-content .rgb-support-price { color: var(--rgb-ink); font-size: 22px; font-weight: 600; margin-top: 12px; }
body.rgb-site-theme #main-content .rgb-support-terms { font-size: 13px; margin-top: 16px; }
body.rgb-site-theme #main-content .rgb-support-options .et_pb_button { margin-top: 12px; }
body.rgb-site-theme #main-content .rgb-about-story { padding-block: 24px !important; }
body.rgb-site-theme #main-content .rgb-editorial-row { padding-block: 48px !important; }
body.rgb-site-theme #main-content .rgb-editorial-row + .rgb-editorial-row { border-top: 1px solid var(--rgb-line); }
body.rgb-site-theme #main-content .rgb-editorial-row h2 { max-width: 340px; font-size: 30px !important; }
body.rgb-site-theme #main-content .rgb-editorial-row p { max-width: 780px; }
body.rgb-site-theme #main-content .rgb-editorial-row .rgb-page-eyebrow { margin-bottom: 18px; }

/* Divi archive cards: align photos, titles and excerpts with the home journal. */
body.rgb-theme-journal #main-content .et_pb_post {
    padding: 0 0 24px !important; border: 0 !important; border-bottom: 1px solid var(--rgb-line) !important;
    background: #fff; border-radius: 0; margin-bottom: 36px !important;
}
body.rgb-theme-journal #main-content .et_pb_image_container { margin: 0 0 20px !important; }
body.rgb-theme-journal #main-content .entry-featured-image-url { margin: 0 !important; border-radius: 8px; overflow: hidden; }
body.rgb-theme-journal #main-content .entry-featured-image-url img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
body.rgb-theme-journal #main-content .et_pb_post :is(.entry-title,.post-meta,.post-content) { position: static !important; width: 100% !important; margin-inline: 0 !important; padding-inline: 0 !important; }
body.rgb-theme-journal #main-content .et_pb_post h2 { font-size: 23px !important; line-height: 1.35 !important; margin: 0 0 12px !important; background: none; }
body.rgb-theme-journal #main-content .post-meta { text-transform: none; color: var(--rgb-muted); margin-bottom: 12px; }
body.rgb-theme-journal #main-content .post-content { font-size: 15px; line-height: 1.7; }
body.rgb-theme-journal #main-content .more-link { display: inline-block; margin-top: 18px; font-size: 14px; font-weight: 600; color: #b8241b; border-bottom: 1px solid #e02b2040; }
body.rgb-theme-journal #main-content .et_pb_ajax_pagination_container .pagination { padding-top: 16px; }
body.rgb-theme-article #main-content .rgb-article-body > .et_pb_row { max-width: 900px !important; }
body.rgb-theme-article #main-content .rgb-article-body :is(.et_pb_row,.et_pb_section) { width: 100%; }
body.rgb-theme-article #main-content .rgb-article-body > .et_pb_row { width: calc(100% - 80px); }
body.rgb-theme-article #main-content .rgb-article-heading .et_pb_title_container { max-width: 1000px; margin: 0; }
body.rgb-theme-article #main-content .rgb-article-body :is(h2,h3) { margin-top: 28px; }

/* Give native static pages the same full-width title band, with a constrained body. */
body.rgb-theme-plain:not(.page-id-3019633276) #main-content > .container { width: 100% !important; max-width: none; padding: 0 !important; }
body.rgb-theme-plain:not(.page-id-3019633276) #main-content .entry-title {
    background: linear-gradient(110deg,#f7f8f9,#eef0f3); border-bottom: 1px solid var(--rgb-line);
    padding: 52px max(40px,calc((100% - 1280px)/2)); margin: 0;
}
body.rgb-theme-plain:not(.page-id-3019633276) #main-content .entry-content { width: calc(100% - 80px); max-width: 1280px; margin: 40px auto; }
body.rgb-site-theme.page-id-299 #main-content .et_pb_row { max-width: 940px !important; }
body.rgb-site-theme.page-id-4 #main-content .entry-content { max-width: 940px; }
body.rgb-site-theme.page-id-102 #main-content .et_pb_section:not(.rgb-static-hero) > .et_pb_row { max-width: 1000px !important; }
body.rgb-site-theme.page-id-89 #main-content .et_pb_blurb { border: 1px solid var(--rgb-line); border-radius: 8px; padding: 28px; height: 100%; }
body.rgb-site-theme.page-id-66 #main-content .rgb-static-hero ~ .et_pb_section h1 { font-size: 30px !important; }
body.rgb-site-theme.page-id-3019633276 #main-content .rgb-wu-hero { background: linear-gradient(110deg,#f7f8f9,#eef0f3) !important; border-bottom: 1px solid var(--rgb-line); }
body.rgb-site-theme.page-id-3019633276 #main-content .rgb-wu-hero :is(h1,p,li,span,strong) { color: #25282d; }
body.rgb-site-theme.page-id-3019633276 #main-content .rgb-wu-hero-note { border-color: #d1d5db; }
body.rgb-site-theme #main-content .rgb-assistant-body { background: #fff !important; }
body.rgb-site-theme #main-content .rgb-assistant-body :is(h2,h3,p,.et_pb_text) { color: #25282d !important; }
body.rgb-site-theme #main-content .rgb-assistant-body h2 { font-size: 30px !important; }
body.rgb-site-theme #main-content .rgb-assistant-body .et_pb_row { border-bottom: 1px solid var(--rgb-line); padding-block: 28px; }
body.rgb-site-theme.page-id-3019632958 #main-content [style*="border-left"] { border-left-color: var(--rgb-red) !important; }
body.rgb-site-theme.page-id-3019633016 #main-content .et_pb_blurb { padding: 24px; border: 1px solid var(--rgb-line); border-radius: 8px; }
body.rgb-site-theme #main-content .cpro-hero-image img { max-height: 400px; object-fit: contain; }
body.rgb-site-theme.page-id-3019632968 #main-content .rgb-static-hero h2 { color: #b8241b !important; font-size: 12px !important; letter-spacing: .07em !important; }

@media (max-width:980px) {
    body.rgb-site-theme #main-content .rgb-static-hero .et_pb_fullwidth_header_container { width: calc(100% - 48px); }
    body.rgb-site-theme #main-content .rgb-editorial-row { padding-block: 32px !important; }
    body.rgb-site-theme #main-content .rgb-editorial-row h2 { max-width: 100%; }
}
@media (max-width:600px) {
    body.rgb-site-theme #main-content .rgb-static-hero { padding: 36px 0 !important; }
    body.rgb-site-theme #main-content .rgb-static-hero .et_pb_fullwidth_header { padding: 36px 0 !important; }
    body.rgb-site-theme #main-content .rgb-static-hero .et_pb_fullwidth_header_container { width: calc(100% - 36px); }
    body.rgb-site-theme #main-content .rgb-static-hero p { font-size: 16px; }
    body.rgb-theme-plain:not(.page-id-3019633276) #main-content .entry-title { padding: 36px 18px; }
    body.rgb-theme-plain:not(.page-id-3019633276) #main-content .entry-content { width: calc(100% - 36px); margin-block: 30px; }
    body.rgb-theme-article #main-content .rgb-article-body > .et_pb_row { width: calc(100% - 36px); }
}

/* Photographic page introductions. Appended to the shared stylesheet, no extra request. */
body.rgb-site-theme.rgb-photo-headers {
    --rgb-hero-shade: linear-gradient(90deg,rgba(22,27,33,.94) 0%,rgba(22,27,33,.84) 40%,rgba(22,27,33,.35) 75%,rgba(22,27,33,.16) 100%);
    --rgb-hero-position: center 52%;
}
body.rgb-site-theme.rgb-photo-headers #main-content :is(.rgb-static-hero,.rgb-page-intro,.rgb-wu-hero),
body.rgb-site-theme.rgb-photo-headers.rgb-theme-journal #main-content .et_builder_inner_content > .rgb-static-hero:first-child,
body.rgb-site-theme.rgb-photo-headers.rgb-theme-information #main-content .et_builder_inner_content > .rgb-static-hero:first-child,
body.rgb-site-theme.rgb-photo-headers.rgb-theme-plain:not(.page-id-3019633276) #main-content h1.entry-title,
body.rgb-site-theme.rgb-photo-headers .shop-hero {
    background-color: #25282d !important;
    background-image: var(--rgb-hero-shade),var(--rgb-hero-current,var(--rgb-hero-photo)) !important;
    background-position: center,var(--rgb-hero-position) !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    border-bottom-color: #25282d !important;
    color: #fff !important;
}
body.rgb-site-theme.rgb-photo-headers #main-content .rgb-static-hero .et_pb_fullwidth_header,
body.rgb-site-theme.rgb-photo-headers #main-content .rgb-static-hero .et_pb_fullwidth_header_overlay {
    background: transparent !important;
}
body.rgb-site-theme.rgb-photo-headers #main-content :is(.rgb-static-hero,.rgb-page-intro,.rgb-wu-hero) :is(h1,h2,h3,p,li,strong,em,span,.et_pb_text,.et_pb_module_header,.et_pb_header_content_wrapper),
body.rgb-site-theme.rgb-photo-headers #main-content .et_builder_inner_content .rgb-static-hero :is(h1,h2,h3,p,li,strong,em,span,.et_pb_text,.et_pb_module_header,.et_pb_header_content_wrapper),
body.rgb-site-theme.rgb-photo-headers .shop-hero :is(h1,p,.shop-title,.shop-description) {
    color: #fff !important;
    text-shadow: none !important;
}
body.rgb-site-theme.rgb-photo-headers #main-content :is(.rgb-static-hero,.rgb-page-intro) :is(.rgb-page-eyebrow,.et_pb_fullwidth_header_subhead),
body.rgb-site-theme.rgb-photo-headers #main-content .et_builder_inner_content .rgb-static-hero :is(.rgb-page-eyebrow,.et_pb_fullwidth_header_subhead) {
    color: #ffaaa4 !important;
}
body.rgb-site-theme.rgb-photo-headers .shop-hero { --rgb-hero-shade: linear-gradient(90deg,rgba(22,27,33,.85),rgba(22,27,33,.75)); }
body.rgb-site-theme.rgb-photo-headers #main-content .rgb-wu-hero { --rgb-hero-shade: linear-gradient(90deg,rgba(22,27,33,.87),rgba(22,27,33,.76)); }
body.rgb-site-theme.rgb-photo-headers #main-content :is(.rgb-static-hero,.rgb-page-intro) :is(h1,.et_pb_module_header) { max-width: 850px; }
body.rgb-site-theme.rgb-photo-headers #main-content :is(.rgb-static-hero,.rgb-page-intro) p { max-width: 710px; }
body.rgb-site-theme.rgb-photo-headers #main-content .rgb-wu-hero-note { background: rgba(22,27,33,.7); border-color: #ffffff60; }
body.rgb-site-theme.rgb-photo-headers #main-content .rgb-wu-hero .rgb-wu-step-num { background: var(--rgb-red) !important; color: #fff !important; }
body.rgb-site-theme.rgb-photo-headers #main-content .rgb-static-hero .et_pb_with_border.et_pb_text {
    background: rgba(22,27,33,.78) !important;
    border-color: var(--rgb-red) !important;
}
body.rgb-site-theme.rgb-photo-headers #main-content :is(.rgb-static-hero,.rgb-page-intro,.rgb-wu-hero) a:not(.et_pb_button) { color: #fff !important; text-decoration: underline; text-underline-offset: 3px; }
body.rgb-site-theme.rgb-photo-headers #main-content .rgb-static-hero :is(.et_pb_button_two,.rgb-button-secondary) { color: #fff !important; border-color: #ffffff80 !important; background: rgba(22,27,33,.6) !important; }
body.rgb-site-theme.rgb-photo-maintenance { --rgb-hero-position: center 55%; }
body.rgb-site-theme.rgb-photo-colour { --rgb-hero-position: center 45%; }
@media (max-width:767px) {
    body.rgb-site-theme.rgb-photo-headers {
        --rgb-hero-current: var(--rgb-hero-photo-mobile);
        --rgb-hero-shade: linear-gradient(90deg,rgba(22,27,33,.88),rgba(22,27,33,.66));
        --rgb-hero-position: 65% center;
    }
}
/* Shared blog presentation; bundled with the existing stylesheet. */
body.rgb-blog-theme #main-content .rgb-article-heading { background: #25282d !important; padding: 52px 0 !important; }
body.rgb-blog-theme #main-content .rgb-blog-title { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(0,1fr); align-items: center; gap: 48px; margin: 0; }
body.rgb-blog-theme #main-content .rgb-blog-title:not(:has(img)) { grid-template-columns: minmax(0,1fr); }
body.rgb-blog-theme #main-content .rgb-blog-title .et_pb_title_container { padding: 0 !important; margin: 0 !important; }
body.rgb-blog-theme #main-content .rgb-blog-title h1 { color: #fff !important; font-size: clamp(30px,3vw,44px) !important; margin: 0 0 22px !important; padding: 0; }
body.rgb-blog-theme #main-content .rgb-blog-title :is(.et_pb_title_meta_container,.et_pb_title_meta_container a,.et_pb_title_meta_container span) { color: #e4e6e9 !important; font-size: 13px; line-height: 1.8; }
body.rgb-blog-theme #main-content .rgb-blog-eyebrow { display: inline-block; margin-bottom: 18px; color: #ffaaa4 !important; text-transform: uppercase; letter-spacing: .07em; font: 600 12px/1.5 'Open Sans',Arial,sans-serif; }
body.rgb-blog-theme #main-content .rgb-blog-eyebrow::before { content: ''; display: inline-block; width: 24px; height: 2px; margin-right: 10px; vertical-align: middle; background: var(--rgb-red); }
body.rgb-blog-theme #main-content .rgb-blog-title .et_pb_title_featured_container { margin: 0 !important; width: 100% !important; }
body.rgb-blog-theme #main-content .rgb-blog-title .et_pb_image_wrap { display: flex; align-items: center; justify-content: center; background: #fff; border-radius: 8px; overflow: hidden; height: 300px; padding: 14px; }
body.rgb-blog-theme #main-content .rgb-blog-title img { display: block; width: 100%; height: 100% !important; object-fit: contain; }
body.rgb-blog-theme #main-content .rgb-article-body { padding: 40px 0 !important; background: #fff !important; }
body.rgb-blog-theme #main-content .rgb-article-body > .et_pb_row { max-width: 1080px !important; }
body.rgb-blog-theme #main-content .rgb-blog-content { --brand: #b8241b; --brand-soft: #f7f8f9; --accent: #e02b20; --text: #25282d; --muted: #575d65; font: 400 16px/1.8 'Open Sans',Arial,sans-serif; color: var(--rgb-muted); }
body.rgb-blog-theme #main-content .rgb-blog-content :is(p,li,td,th,div,span) { font-family: 'Open Sans',Arial,sans-serif !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(p,li,td,th) { color: var(--rgb-muted) !important; font-size: 16px !important; line-height: 1.8 !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(span,strong,em) { color: inherit !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(h2,h3,h4,h5,h6) { color: var(--rgb-ink) !important; text-align: left !important; }
body.rgb-blog-theme #main-content .rgb-blog-content h2 { font-size: clamp(25px,2.4vw,32px) !important; margin: 28px 0 16px !important; padding-bottom: 12px; border-bottom: 1px solid var(--rgb-line); }
body.rgb-blog-theme #main-content .rgb-blog-content h3 { font-size: 23px !important; margin: 22px 0 12px; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(p,ul,ol) { margin-bottom: 18px; padding-bottom: 0; }
body.rgb-blog-theme #main-content .rgb-blog-content p { max-width: 850px; }
body.rgb-blog-theme #main-content .rgb-blog-content .et_pb_fullwidth_header { background: var(--rgb-paper) !important; padding: 28px !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(ul,ol) { padding-left: 24px; }
body.rgb-blog-theme #main-content .rgb-blog-content li+li { margin-top: 6px; }
body.rgb-blog-theme #main-content .rgb-blog-content a { color: #b8241b !important; text-underline-offset: 3px; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(.et_pb_section,.et_pb_row) { width: 100% !important; max-width: none !important; margin-inline: 0 !important; }
body.rgb-blog-theme #main-content .rgb-blog-content .et_pb_section { padding: 24px 0 !important; background: #fff !important; min-height: 0 !important; }
body.rgb-blog-theme #main-content .rgb-blog-content .et_pb_row { padding: 0 !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(article,.auto-news-article) { padding: 0 !important; max-width: 100% !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(.et_pb_text,.et_pb_module) { max-width: 100%; }
body.rgb-blog-theme #main-content .rgb-blog-content [style*="background"]:not(a):not(img):not(.et_pb_section) { background: #f7f8f9 !important; border-color: #e4e6e9 !important; color: var(--rgb-ink) !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(.cad-note,.cad-highlight,.cad-series,.cad-cta) { background: var(--rgb-paper) !important; border-color: #e4e6e9 !important; color: var(--rgb-ink) !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(.et_pb_promo,.et_pb_blurb) { background: var(--rgb-paper) !important; border: 1px solid var(--rgb-line); border-radius: 8px; padding: 24px !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(.et_pb_promo_description,.et_pb_blurb_description) { color: var(--rgb-muted) !important; }
body.rgb-blog-theme #main-content .rgb-blog-content .et_pb_blurb .et-pb-icon { color: #c32920 !important; font-size: 30px !important; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(a.et_pb_button,a.button,a.btn,a[style*="background"]) { display: inline-block; background: var(--rgb-red) !important; border: 1px solid var(--rgb-red) !important; color: #fff !important; border-radius: 5px !important; padding: 12px 20px !important; font: 600 14px/1.5 'Open Sans',Arial,sans-serif !important; }
body.rgb-blog-theme #main-content .rgb-blog-content img { max-width: 100% !important; height: auto !important; max-height: 520px; object-fit: contain; border-radius: 6px; }
body.rgb-blog-theme #main-content .rgb-blog-content table { display: block; width: 100% !important; max-width: 100%; overflow-x: auto; border-collapse: collapse; margin: 24px 0; }
body.rgb-blog-theme #main-content .rgb-blog-content :is(th,td) { padding: 12px !important; border: 1px solid var(--rgb-line) !important; background: #fff !important; }
body.rgb-blog-theme #main-content .rgb-blog-content th { background: var(--rgb-paper) !important; color: var(--rgb-ink) !important; }
body.rgb-blog-theme #main-content .rgb-blog-content [style*="sticky"] { position: static !important; }
body.rgb-blog-theme #main-content .rgb-blog-archive-note { padding: 20px 24px; background: var(--rgb-paper); border-left: 3px solid var(--rgb-red); margin-bottom: 28px; font-size: 14px; }
body.rgb-blog-theme #main-content .rgb-blog-archive-note p { margin: 8px 0 0; font-size: 14px !important; }
body.rgb-blog-theme #main-content .rgb-blog-footer { background: #25282d !important; padding: 40px 0 !important; }
body.rgb-blog-theme #main-content .rgb-blog-footer .et_pb_promo { padding: 0 !important; }
body.rgb-blog-theme #main-content .rgb-blog-footer :is(h2,p,a,.et_pb_promo_description) { color: #fff !important; }
body.rgb-blog-theme #main-content .rgb-blog-footer .et_pb_text { margin-top: 28px; text-align: center; }
@media(max-width:980px){
 body.rgb-blog-theme #main-content .rgb-blog-title { gap: 28px; }
 body.rgb-blog-theme #main-content .rgb-blog-title .et_pb_image_wrap { height: 240px; }
 body.rgb-blog-theme #main-content .rgb-blog-content .et_pb_column { margin-bottom: 24px; }
}
@media(max-width:767px){
 body.rgb-blog-theme #main-content .rgb-article-heading { padding: 32px 0 !important; }
 body.rgb-blog-theme #main-content .rgb-blog-title { grid-template-columns: minmax(0,1fr); }
 body.rgb-blog-theme #main-content .rgb-blog-title .et_pb_image_wrap { height: 220px; }
 body.rgb-blog-theme #main-content .rgb-blog-content :is(article,[style*="grid-template-columns"]) { grid-template-columns: minmax(0,1fr) !important; padding-inline: 0 !important; }
 body.rgb-blog-theme #main-content .rgb-blog-content :is(.cad-grid,.grid) { grid-template-columns: minmax(0,1fr) !important; }
 body.rgb-blog-theme #main-content .rgb-blog-content .et_pb_text { margin-bottom: 20px !important; }
 body.rgb-blog-theme #main-content .rgb-blog-content :is(p,li,td,th,a) { overflow-wrap: anywhere; }
}
