/* RC5 bridge for established public URLs. Content and workflow hooks remain page-owned. */
:root{--rc5-paper:#f7f4ee;--rc5-white:#fff;--rc5-ink:#231f20;--rc5-muted:#69635f;--rc5-line:#d9d3cb;--rc5-pink:#c94f83;--rc5-max:1180px}
html{background:var(--rc5-paper);scroll-behavior:smooth}
body:not(.rc5-campaign){margin:0!important;background:var(--rc5-paper)!important;background-image:none!important;color:var(--rc5-ink)!important;font-family:"DM Sans",Arial,sans-serif!important}
body:not(.rc5-campaign)::before,body:not(.rc5-campaign)::after{display:none!important}
.rc5-skip-link{position:absolute!important;top:0!important;left:clamp(8px,2vw,24px)!important;z-index:10001!important;max-width:calc(100vw - 16px)!important;margin:0!important;padding:12px 18px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;transform:translateY(-200%)!important;background:var(--rc5-ink)!important;color:var(--rc5-white)!important;border:2px solid var(--rc5-white)!important;border-radius:0 0 4px 4px!important;font:700 .9rem/1.2 "DM Sans",Arial,sans-serif!important;text-decoration:none!important;box-shadow:0 2px 0 var(--rc5-pink)!important}
.rc5-skip-link:focus,.rc5-skip-link:focus-visible{clip-path:none!important;transform:translateY(0)!important;outline:3px solid var(--rc5-pink)!important;outline-offset:2px!important}
.rc5-frame-header,.rc5-frame-footer{box-sizing:border-box!important;font-family:"DM Sans",Arial,sans-serif!important;color:var(--rc5-ink)!important}
.rc5-frame-header *,.rc5-menu *,.rc5-frame-footer *{box-sizing:border-box}
.rc5-frame-header{position:relative!important;z-index:9000!important;width:100%!important;max-width:none!important;min-height:88px!important;height:auto!important;margin:0!important;padding:20px clamp(20px,4vw,64px)!important;display:flex!important;flex:0 0 auto!important;align-self:stretch!important;align-items:center!important;justify-content:space-between!important;gap:24px!important;background:var(--rc5-paper)!important;background-image:none!important;border:0!important;border-bottom:1px solid var(--rc5-line)!important;border-radius:0!important;box-shadow:none!important;text-align:left!important;transform:none!important}
.rc5-frame-header>.rc5-frame-brand{position:static!important;display:grid!important;flex:0 1 auto!important;width:auto!important;max-width:none!important;height:auto!important;margin:0!important;padding:0!important;align-items:initial!important;justify-content:initial!important;gap:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;transform:none!important;text-align:left!important}
.rc5-frame-header>.rc5-menu-toggle{position:static!important;display:flex!important;flex:0 0 auto!important;width:auto!important;margin:0!important;padding:0!important;transform:none!important}
.rc5-frame-brand{text-decoration:none;color:var(--rc5-ink);display:grid;line-height:1}
.rc5-frame-brand strong{font-family:"Playfair Display",Georgia,serif;font-size:1.8rem;font-weight:600;letter-spacing:-.045em}.rc5-frame-brand strong span{color:var(--rc5-pink)}
.rc5-frame-brand small{margin-top:7px;color:var(--rc5-muted);font-size:.72rem;letter-spacing:.04em;text-transform:none}
.rc5-menu-toggle,.rc5-menu-close{min-width:44px;min-height:44px;border:0;background:transparent;color:inherit;font:600 .9rem "DM Sans",sans-serif;cursor:pointer}
.rc5-menu-toggle{display:flex;align-items:center;gap:10px}.rc5-menu-toggle i{font:400 1.45rem/1 sans-serif}
.rc5-menu{position:fixed!important;inset:0!important;z-index:10000!important;visibility:hidden}.rc5-menu[aria-hidden="false"]{visibility:visible}.rc5-menu__shade{position:absolute;inset:0;background:rgba(35,31,32,.46);opacity:0;transition:opacity .2s ease}.rc5-menu[aria-hidden="false"] .rc5-menu__shade{opacity:1}
.rc5-menu__panel{position:absolute;right:0;top:0;width:min(520px,100%);height:100%;padding:26px clamp(24px,6vw,54px);background:var(--rc5-paper);transform:translateX(100%);transition:transform .22s ease;overflow:auto}.rc5-menu[aria-hidden="false"] .rc5-menu__panel{transform:none}
.rc5-menu__top{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--rc5-line);color:var(--rc5-muted)}
.rc5-menu nav{display:grid;margin:24px 0}.rc5-menu nav a{display:flex;gap:18px;padding:14px 0;border-bottom:1px solid var(--rc5-line);color:var(--rc5-ink);text-decoration:none;font:500 clamp(1.5rem,5vw,2.3rem) "Playfair Display",Georgia,serif}.rc5-menu nav a span{padding-top:.35rem;color:var(--rc5-muted);font:500 .7rem "DM Sans",sans-serif}
.rc5-menu__foot{margin-top:36px}.rc5-menu__foot p{color:var(--rc5-muted)}.rc5-menu__foot a{color:var(--rc5-ink);font-weight:700}
.rc5-frame-footer{width:100%!important;max-width:none!important;flex:0 0 auto!important;align-self:stretch!important;margin:64px 0 0!important;padding:clamp(40px,7vw,86px) clamp(20px,6vw,80px) 24px!important;background:#eee9e1!important;border:0!important;border-top:1px solid var(--rc5-line)!important;border-radius:0!important;box-shadow:none!important;text-align:left!important}
.rc5-frame-footer__lead{max-width:560px}.rc5-frame-footer__lead small{color:var(--rc5-pink);font-weight:700;text-transform:uppercase;letter-spacing:.12em}.rc5-frame-footer h2{margin:10px 0!important;color:var(--rc5-ink)!important;font:500 clamp(2.2rem,5vw,4rem)/1 "Playfair Display",Georgia,serif!important}.rc5-frame-footer p{color:var(--rc5-muted)}
.rc5-frame-footer__links{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:44px 0}.rc5-frame-footer__links h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.rc5-frame-footer__links a{display:block;margin:10px 0;color:var(--rc5-ink);text-decoration:none}.rc5-frame-footer__base{display:flex;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid var(--rc5-line);color:var(--rc5-muted);font-size:.8rem}
body:not(.rc5-campaign) :is(.hero,.hero-card,.card,.feature,.wide-panel,.cta-band,.support-strip,.quote-status-hero,.quote-decision-card,.success-panel,.panel,.form-shell,.personalization-card){background:var(--rc5-white)!important;background-image:none!important;border:1px solid var(--rc5-line)!important;border-radius:2px!important;box-shadow:none!important}
body:not(.rc5-campaign) :is(.hero,.section,.wrap,.cta-band){max-width:var(--rc5-max)}
body:not(.rc5-campaign) :is(h1,h2,.section-title,.hero h1,.hero h2,.hero h3){color:var(--rc5-ink)!important;font-family:"Playfair Display",Georgia,serif!important}.gradient-word{background:none!important;color:inherit!important;-webkit-text-fill-color:inherit!important}
body:not(.rc5-campaign) :is(p,.muted,.sub,.note,.section-intro){color:var(--rc5-muted)}
body:not(.rc5-campaign) :is(.btn,.button-primary,.nav-cta,a.button,.actions button,.pay-link,.track-link){min-height:44px;border-radius:999px!important;background:var(--rc5-ink)!important;background-image:none!important;color:#fff!important;box-shadow:none!important;transition:transform .18s ease,background .18s ease}
body:not(.rc5-campaign) :is(.button-secondary,.btn.secondary,.actions button+button){background:transparent!important;color:var(--rc5-ink)!important;border:1px solid var(--rc5-ink)!important}
body:not(.rc5-campaign) :is(.btn,.button-primary,.button-secondary,a.button,.actions button):hover{transform:translateY(-2px)}
body:not(.rc5-campaign) :is(.brand-mark,.poly-helper,.site-header,.topbar,body>footer,main+footer){display:none!important}
body.rc5-campaign>header:not(.rc5-frame-header),body.rc5-campaign>footer:not(.rc5-frame-footer){display:none!important}
body:not(.rc5-campaign) :is(.card,.mini,.next-step,.area-card,.project-card,.category-card,.quick-card,.faq-item,.product){border-radius:2px!important;box-shadow:none!important}
body:not(.rc5-campaign) img{border-radius:2px!important}.rc5-no-scroll{overflow:hidden!important}
:focus-visible{outline:2px solid var(--rc5-pink)!important;outline-offset:4px}
@media(max-width:700px){.rc5-frame-header{min-height:74px!important;padding:14px 18px!important}.rc5-frame-brand strong{font-size:1.55rem}.rc5-frame-brand small{font-size:.62rem}.rc5-frame-footer__links{grid-template-columns:1fr}.rc5-frame-footer__base{display:grid}body:not(.rc5-campaign) :is(.hero,.section,.wrap,.cta-band){width:calc(100% - 24px)!important;margin-left:auto!important;margin-right:auto!important}body:not(.rc5-campaign) :is(.hero,.card,.feature,.wide-panel,.cta-band,.support-strip,.quote-decision-card,.success-panel){padding:20px!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rc5-menu__shade,.rc5-menu__panel,*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
