/* Progressive two-tab service planner with a persistent estimate. */
html body.digital-storefronts-page{padding-bottom:86px!important}
html body.digital-storefronts-page .ds-services-section{overflow:visible!important}
.ds-planner{margin-top:22px}.planner-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:7px;border:1px solid #d2e1e6;border-radius:16px;background:linear-gradient(115deg,#edf8f3,#eef6fb)}
html body .planner-tabs button{font:inherit;font-size:.95rem;font-weight:600;padding:16px 18px;border:1px solid transparent;border-radius:12px;background:transparent!important;color:#3A506D!important;cursor:pointer;line-height:1.45}
html body .planner-tabs button[aria-selected="true"]{background:linear-gradient(115deg,#273C53,#3A506D)!important;color:#fff!important;box-shadow:0 4px 12px rgba(39,60,83,.1)}
.planner-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr);align-items:start;gap:26px;margin-top:24px}.planner-panel,.planner-summary{border:1px solid #d9e5e9;border-radius:18px;padding:28px;min-width:0;background:#fff}
.planner-panel{border-top:3px solid #7AD4E2}.planner-summary{position:sticky;top:110px;background:linear-gradient(135deg,#edf8f4,#f1f7fb 70%,#f5f1f7);border-color:#cbdfe3}
html body .planner-step{font-size:.68rem!important;font-weight:600;letter-spacing:.09em;line-height:1.5;color:#52647a!important;margin:0 0 12px}
html body .planner-panel h2,html body .planner-summary h2{font-size:1.4rem!important;line-height:1.25;margin:0 0 22px}
.planner-panel label{display:block;font-size:.85rem;font-weight:600;margin:18px 0 8px}.planner-panel :is(input,select,textarea){display:block;width:100%;font:inherit;min-height:46px;padding:12px;border:1px solid #b8cbd5;border-radius:10px;box-sizing:border-box}.planner-panel fieldset{border:0;padding:0;margin:0}.planner-panel legend{font-size:1rem;font-weight:600;margin-bottom:4px}.planner-panel [hidden]{display:none!important}#planner-options{margin-top:30px;padding-top:24px;border-top:1px solid #e0eaed}
html body .planner-note{font-size:.8rem!important;line-height:1.65;color:#52647a!important;margin:14px 0}
html body .planner-total{display:block;font-size:clamp(1.65rem,3vw,2.5rem);font-weight:700;color:#273C53;margin:14px 0;line-height:1.2;overflow-wrap:anywhere}
html body #planner-breakdown,html body #planner-selection{font-size:.9rem;line-height:1.6;color:#3A506D!important}
html body #planner-enquiry{display:block;width:100%;padding:14px 18px;border-radius:24px;border:0;background:#273C53!important;color:#fff!important;font:inherit;font-size:.9rem;line-height:1.4;cursor:pointer}html body #planner-enquiry:disabled{opacity:.5;cursor:default}
.planner-total-bar{position:fixed;bottom:0;left:0;right:0;z-index:120;display:flex;justify-content:center;align-items:center;gap:22px;padding:15px 24px;background:rgba(245,250,251,.98);border-top:2px solid #7AD4E2;box-shadow:0 -5px 20px rgba(39,60,83,.08);font-size:.86rem;color:#273C53}.planner-total-bar strong{font-size:1.15rem;line-height:1.4}.planner-total-bar a{color:#26758a;text-decoration:none;font-weight:600}#planner-summary{scroll-margin-top:130px}
/* Keep all existing page photographs, without sale/rental promotions. */
.planner-gallery{padding:32px 0 46px}.planner-gallery>h2{font-size:1.4rem;margin-bottom:22px}.planner-gallery>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.planner-gallery figure{margin:0;border:1px solid #dde6eb;border-radius:12px;overflow:hidden;background:#fff}.planner-gallery img{display:block;width:100%;height:180px;object-fit:cover;filter:none!important;opacity:1!important}
/* Shared service strip, institutional intake and footer palette. */
html body.digital-storefronts-page .ds-feature-strip{background:linear-gradient(110deg,#e7f5ee,#e9f4f9 65%,#f3edf7)!important;border-color:#cbdfe3!important;margin-top:24px;padding:24px 0!important}
html body.digital-storefronts-page .ds-feature-grid>div{border-color:#c7dce3!important}html body.digital-storefronts-page .ds-feature-grid strong{color:#273C53!important;font-size:.82rem;line-height:1.4}html body.digital-storefronts-page .ds-feature-grid span{color:#52647a!important;font-size:.85rem;line-height:1.5}
html body.digital-storefronts-page .ds-lifecycle-app{padding:28px!important;border:2px solid transparent!important;border-radius:20px;background:linear-gradient(120deg,#f7fcfa,#f3f8fc) padding-box,linear-gradient(120deg,#61D2A3,#7AD4E2,#b7abc7,#E1AE90) border-box!important;color:#273C53!important}
html body.digital-storefronts-page .ds-lifecycle-app::before,html body.digital-storefronts-page .ds-lifecycle-app::after,html body.digital-storefronts-page .ds-lifecycle-app h2::after{display:none!important;content:none!important}
html body.digital-storefronts-page .ds-lifecycle-app h2{font-size:1.8rem!important;color:#273C53!important}html body.digital-storefronts-page .app-kicker{background:#e1f3eb!important;color:#273C53!important;box-shadow:none}
html body.digital-storefronts-page .ds-intake-heading{background:linear-gradient(110deg,#e5f4ed,#e9f3fa)!important;border-left-color:#61D2A3!important}html body.digital-storefronts-page .ds-intake-form fieldset{border-top-color:#7AD4E2!important}html body.digital-storefronts-page .ds-intake-form legend{color:#3A506D!important}html body.digital-storefronts-page .ds-intake-form button{background:#273C53!important;color:#fff!important;padding:14px 22px!important;font-size:.9rem!important}
html body.digital-storefronts-page .ds-bottom-strip,html body.digital-storefronts-page .site-footer{background:linear-gradient(115deg,#edf7f2,#edf4f9 65%,#f3eff7)!important;color:#273C53!important;border-color:#d5e3e8!important}html body.digital-storefronts-page .ds-bottom-strip strong,html body.digital-storefronts-page .site-footer :is(h3,strong){color:#273C53!important}html body.digital-storefronts-page .ds-bottom-strip span,html body.digital-storefronts-page .site-footer :is(p,a){color:#3A506D!important}
@media(max-width:900px){.planner-layout{grid-template-columns:1fr}.planner-summary{position:static}.planner-gallery>div{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-total-bar{gap:12px;justify-content:space-between;padding:12px 16px}.planner-total-bar>span{max-width:45%;font-size:.76rem}.planner-total-bar strong{font-size:1rem}.planner-total-bar a{font-size:.76rem}}
@media(max-width:550px){.planner-tabs{grid-template-columns:1fr}.planner-panel,.planner-summary{padding:22px}.planner-gallery>div{grid-template-columns:1fr}html body.digital-storefronts-page .ds-lifecycle-app{padding:22px!important}.planner-total-bar{flex-wrap:wrap;gap:6px 12px}.planner-total-bar>span{max-width:55%}}html body.digital-storefronts-page .ds-detail-master{display:block!important}
html body.digital-storefronts-page .ds-detail-card-stack{width:100%!important;max-width:none!important}
html body.digital-storefronts-page .ds-detail-master::before,html body.digital-storefronts-page .ds-detail-master::after{display:none!important;content:none!important}
