/* Shared finishing layer. Keep after the original theme. */
:root{--rd-contact-height:82px}
.rd-page{min-width:0}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #76531b;outline-offset:4px}
.rd-form input,.rd-form select,.rd-form textarea{font-size:16px;min-width:0;max-width:100%}
.rd-form [type=submit]:disabled{opacity:.7;cursor:wait}
.rd-form__result{line-height:1.5;overflow-wrap:anywhere}
.rd-form__result:empty{display:none}
.rd-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);pointer-events:none}
.rd-modal{z-index:1200}
.rd-lightbox{z-index:1300}
.rd-modal__box{overscroll-behavior:contain;padding-top:56px;max-height:calc(100dvh - 36px);margin:18px auto}
body.rd-dialog-open .rd-cookie-banner{visibility:hidden}
.rd-service-page{padding-top:30px}
.rd-service-hero{gap:clamp(24px,4vw,54px);padding:30px 0 36px}
.rd-service-hero>div{min-width:0}
.rd-service-hero .rd-lead{max-width:640px}
.rd-service-hero img{border:8px solid #fff;box-shadow:0 18px 50px #6b4c1714}
.rd-service-actions a{min-height:44px;display:inline-flex;align-items:center;line-height:1.4}
.rd-service-actions .rd-phone{display:inline-flex}
.rd-service-branch{display:flex;flex-direction:column;box-shadow:0 12px 35px #5b482109}
.rd-service-branch h3{line-height:1.25}
.rd-service-branch>p{margin:8px 0;font-size:16px;line-height:1.6}
.rd-service-prices{flex:1}
.rd-service-branch .rd-branch-enquire{margin:16px 0;width:100%}
.rd-service-branch .rd-service-actions{gap:8px 20px;font-size:15px}
.rd-service-copy{max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:32px 0}
.rd-service-copy section{margin:0;padding:28px;border:1px solid #eee4cd;border-radius:24px;background:#fffdf7}
.rd-service-copy h2{font-size:25px;margin:0 0 14px;line-height:1.25}
.rd-service-copy p{margin:0;font-size:17px;line-height:1.7}
.rd-service-faq details{max-width:none;background:#fff;border:1px solid #e8dfca;border-radius:18px;padding:18px 22px;margin-bottom:12px}
.rd-service-faq summary{min-height:28px;padding-right:8px;font-size:18px}
.rd-service-faq p{margin-bottom:0}
.rd-service-enquiry{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);padding:clamp(24px,4vw,48px);margin:36px 0 48px;border-radius:32px;background:#fff2bf;border:1px solid #ecdaa1;scroll-margin-top:100px}
.rd-service-enquiry__intro h2{font-size:clamp(28px,3.2vw,42px);line-height:1.16;margin:0 0 20px}
.rd-service-enquiry__intro>p{font-size:17px;line-height:1.6}
.rd-service-enquiry__form{background:#fff;padding:26px;border-radius:24px;min-width:0;box-shadow:0 16px 38px #77551a0d}
.rd-service-enquiry__form label{line-height:1.5}
.rd-field-note{color:#746b57;font-size:12px;font-weight:400}
.rd-enquiry-phone{font-size:24px;font-weight:800;color:#44341c;text-decoration:none;display:inline-block;padding:12px 0}
.rd-service-enquiry .rd-service-note a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;color:#44341c;text-underline-offset:4px}
.rd-visit-steps{list-style:none;counter-reset:visit;padding:0;margin:28px 0}
.rd-visit-steps li{position:relative;padding:0 0 22px 46px;counter-increment:visit}
.rd-visit-steps li:before{content:counter(visit);position:absolute;left:0;top:0;width:32px;height:32px;display:grid;place-items:center;background:#fff;border-radius:50%;font-weight:800}
.rd-visit-steps b,.rd-visit-steps span{display:block;line-height:1.5}
.rd-visit-steps span{color:#625337;font-size:15px;margin-top:4px}
.rd-breadcrumbs{flex-wrap:wrap;line-height:1.5}
.rd-service-reading{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px}
.rd-service-reading li{margin:0}
.rd-service-reading a{display:block;height:100%;padding:20px;border:1px solid #e8dfca;border-radius:18px;background:white;color:#44341c;line-height:1.5;text-decoration:none}
.rd-service-reading a:hover{background:#fff4cd}
@media(max-width:1100px){
 .rd-floating--messengers{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;position:fixed;left:12px;right:12px;bottom:max(8px,env(safe-area-inset-bottom));z-index:90}
 .rd-floating--messengers .rd-floating__action b{font-size:10px!important;line-height:1.2!important}
 .rd-floating--messengers .rd-floating__action{min-height:58px!important}
 .rd-page{padding-bottom:calc(var(--rd-contact-height) + env(safe-area-inset-bottom))!important}
 .rd-cookie-banner{bottom:calc(var(--rd-contact-height) + env(safe-area-inset-bottom))!important;z-index:1100!important}
 .rd-cookie-banner__content{max-height:calc(100dvh - 170px);overflow-y:auto;overscroll-behavior:contain}
 .rd-mobile-menu{max-height:calc(100dvh - 180px)!important}
 .rd-service-page{padding-top:26px}
 body.rd-dialog-open .rd-floating{visibility:hidden}
}
@media(max-width:760px){
 .rd-service-hero{grid-template-columns:1fr;padding-top:8px;margin-top:16px;gap:24px}
 .rd-service-hero h1{font-size:clamp(29px,7.5vw,40px);line-height:1.15;letter-spacing:-.025em}
 .rd-service-hero img{max-height:280px;border-width:5px;border-radius:24px}
 .rd-service-actions{gap:10px 18px}
 .rd-service-actions .rd-btn{width:100%}
 .rd-service-copy{grid-template-columns:1fr;gap:14px}
 .rd-service-copy section{padding:22px}
 .rd-service-enquiry{grid-template-columns:1fr;padding:22px 18px;border-radius:24px;gap:22px}
 .rd-service-enquiry__form{padding:20px 16px;border-radius:20px}
 .rd-service-enquiry__intro h2{font-size:30px}
 .rd-service-branch{padding:22px}
 .rd-service-faq details{padding:17px}
 .rd-service-faq summary{font-size:17px}
 .rd-modal__box{width:calc(100% - 20px);padding:54px 20px 24px;border-radius:24px}
 .rd-modal__box h2{font-size:27px}
 .rd-modal__close{width:44px;height:44px;right:12px;top:10px}
 .rd-mobile-menu a{min-height:44px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.rd-format-nav{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.rd-format-nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 15px;border:1px solid #e5d7b1;border-radius:999px;background:#fffdf6;color:#5c461b;font-size:14px;font-weight:700;text-decoration:none}.rd-format-nav a:hover{background:#ffe38a}
