:root {
  --blue: #df1730;
  --blue-dark: #b50d22;
  --ink: #111113;
  --muted: #626368;
  --line: rgba(17, 17, 19, .12);
  --paper: #f3f3f4;
  --glass: rgba(255, 255, 255, .66);
  --glass-strong: rgba(255, 255, 255, .82);
  --shadow: 0 28px 80px rgba(22, 20, 23, .14), 0 8px 28px rgba(223, 23, 48, .06);
}

body.theme-rbw { background: #f3f3f4; }

.theme-rbw .ambient {
  background:
    radial-gradient(circle at 88% 7%, rgba(229, 28, 52, .1), transparent 30%),
    linear-gradient(180deg, #fafafa 0%, #f0f0f2 47%, #f8f8f8 100%);
}
.theme-rbw .ambient i { filter: blur(22px); opacity: .62; }
.theme-rbw .ambient i:nth-child(1) { background: radial-gradient(circle, rgba(232, 35, 56, .34), rgba(232, 35, 56, 0) 69%); }
.theme-rbw .ambient i:nth-child(2) { background: radial-gradient(circle, rgba(30, 30, 34, .22), rgba(30, 30, 34, 0) 70%); }
.theme-rbw .ambient i:nth-child(3) { background: radial-gradient(circle, rgba(239, 63, 78, .26), rgba(239, 63, 78, 0) 70%); }

.theme-rbw .glass {
  border-color: rgba(255, 255, 255, .86);
  box-shadow: 0 22px 70px rgba(25, 23, 27, .12), 0 8px 30px rgba(214, 20, 43, .055), inset 0 1px 0 rgba(255, 255, 255, .96);
}
.theme-rbw .site-header { background: rgba(255, 255, 255, .69); }
.theme-rbw .site-nav { background: rgba(17, 17, 19, .065); }
.theme-rbw .site-nav a:hover { background: rgba(255, 255, 255, .92); }
.theme-rbw .phone-pill { background: rgba(255, 255, 255, .82); }
.theme-rbw .menu-toggle { background: rgba(17, 17, 19, .075); }

.theme-rbw .hero-stage {
  background:
    radial-gradient(circle at 9% 16%, rgba(255, 255, 255, .98), rgba(255, 255, 255, 0) 34%),
    radial-gradient(circle at 88% 9%, rgba(239, 51, 72, .6), rgba(239, 51, 72, 0) 35%),
    radial-gradient(circle at 78% 94%, rgba(25, 25, 28, .25), rgba(25, 25, 28, 0) 37%),
    linear-gradient(135deg, #ffffff 0%, #f7eeee 54%, #eeeeef 100%);
  box-shadow: 0 36px 100px rgba(29, 27, 31, .15), inset 0 1px 0 rgba(255, 255, 255, .96);
}
.theme-rbw .hero-stage::after { background: linear-gradient(135deg, rgba(232, 31, 53, .36), rgba(22, 22, 25, .27)); }
.theme-rbw .eyebrow { background: rgba(255, 255, 255, .65); }
.theme-rbw .hero-copy h1 em { color: var(--blue); }
.theme-rbw .primary-button,
.theme-rbw .icon-button,
.theme-rbw .round-action,
.theme-rbw .submit-button { background: linear-gradient(135deg, #ef3348, #ca1027); }
.theme-rbw .primary-button,
.theme-rbw .icon-button,
.theme-rbw .round-action,
.theme-rbw .submit-button { box-shadow: 0 14px 30px rgba(205, 18, 42, .28), inset 0 1px 0 rgba(255, 255, 255, .3); }
.theme-rbw .hero-notes span { background: rgba(223, 23, 48, .12); color: #b10c20; }
.theme-rbw .hero-photo { box-shadow: 0 34px 80px rgba(31, 27, 31, .25), inset 0 1px 0 rgba(255, 255, 255, .85); }
.theme-rbw .label-address .pin { background: var(--blue); }

.theme-rbw .section-kicker { color: var(--blue); }
.theme-rbw .product-card { background: rgba(255, 255, 255, .88); box-shadow: 0 24px 70px rgba(28, 27, 30, .105), inset 0 1px 0 #fff; }
.theme-rbw .product-blue::before { background: #ff5d6e; }
.theme-rbw .product-purple::before { background: #303035; }
.theme-rbw .product-pink::before { background: #ff98a3; }
.theme-rbw .product-orange::before { background: #b8b8bc; }
.theme-rbw .product-number { background: rgba(17, 17, 19, .08); color: #29292d; }

.theme-rbw .price-shell {
  background:
    radial-gradient(circle at 100% 0, rgba(231, 35, 56, .12), transparent 35%),
    rgba(255, 255, 255, .72);
}
.theme-rbw .segmented { background: rgba(17, 17, 19, .075); }
.theme-rbw .segmented .is-selected { background: #171719; color: #fff; box-shadow: 0 7px 18px rgba(17, 17, 19, .2); }
.theme-rbw .price-card { box-shadow: 0 12px 36px rgba(28, 27, 30, .09); }
.theme-rbw .price-card div span { color: var(--blue); }
.theme-rbw .price-card button { background: #171719; color: #fff; }

.theme-rbw .work-card { background: #dedee1; }
.theme-rbw .work-card > span { border-color: rgba(255, 255, 255, .92); }
.theme-rbw .process-grid li > span { background: linear-gradient(135deg, #ef3348, #c70f26); box-shadow: 0 9px 22px rgba(205, 18, 42, .25); }

.theme-rbw .contact-scene { box-shadow: 0 28px 80px rgba(18, 17, 20, .22); }
.theme-rbw .contact-copy .section-kicker { color: #ffbac1; }
.theme-rbw .contact-links a { border-color: rgba(255, 255, 255, .24); background: rgba(20, 20, 23, .46); }
.theme-rbw .form-heading span { color: var(--blue); }
.theme-rbw .calc-form input:focus,
.theme-rbw .calc-form select:focus { box-shadow: 0 0 0 4px rgba(223, 23, 48, .13); }
.theme-rbw .file-field { border-color: rgba(223, 23, 48, .34); background: rgba(223, 23, 48, .055); }
.theme-rbw .file-icon { background: var(--blue); }
.theme-rbw .consent a { color: var(--blue); }
.theme-rbw .form-message { background: #f8e3e6; color: #7f0b1a; }

.theme-rbw .mobile-dock button { background: linear-gradient(135deg, #ef3348, #ca1027); }
.theme-rbw .lightbox > button { background: #171719; color: #fff; }
.theme-rbw .skip-link { background: #171719; color: #fff; }
.theme-rbw :focus-visible { outline: 3px solid rgba(223, 23, 48, .42); outline-offset: 3px; }

@media (max-width: 920px) {
  .theme-rbw .site-nav { background: rgba(255, 255, 255, .95); border-color: rgba(17, 17, 19, .1); }
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .theme-rbw .glass,
  .theme-rbw .site-nav,
  .theme-rbw .mobile-dock { background: rgba(255, 255, 255, .97); }
}

@media (prefers-reduced-transparency: reduce) {
  .theme-rbw .glass,
  .theme-rbw .site-header,
  .theme-rbw .mobile-dock { background: #fff; }
}
