/* Four-stage plan builder. Uses the site's green, gold and Poppins palette. */
.plan-builder-section{--pb-line:rgba(255,255,255,.18);--pb-muted:#d2d9cf;--pb-surface:#263524;--pb-accent:#c5a36e;--pb-area-0:#c5a36e;--pb-area-1:#8cac88;--pb-area-2:#d4b99b;--pb-area-3:#97baba;--pb-area-4:#c1bd7c;--pb-area-5:#a99dba;--pb-area-6:#c9907d;--pb-area-7:#8ca4ba;--pb-area-8:#d0a6b7;background:#2c3b2b;color:#fff}
.pb-intro{max-width:940px}.pb-intro :is(h1,h2){max-width:940px;font-size:clamp(1.8rem,3.7vw,2.75rem);line-height:1.2;letter-spacing:-.035em;color:#fff}.pb-intro .lead{max-width:700px;color:var(--pb-muted)}
.pb{--pb-nav-top:110px;position:relative}.pb *{box-sizing:border-box}.pb button,.pb input{font-family:inherit}.pb button{cursor:pointer}.pb button:disabled{cursor:not-allowed}.pb [hidden]{display:none!important}.pb h3,.pb h4{font-family:var(--sans);color:inherit}.pb h3{font-size:clamp(1.35rem,2.3vw,1.85rem);font-weight:500;line-height:1.25;margin:0 0 12px}.pb h4{font-size:17px;font-weight:500;line-height:1.5;margin:0 0 10px}.pb p{line-height:1.75}.pb-kicker{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--pb-accent);margin:0 0 14px}.pb-small{font-size:12px;color:var(--pb-muted);line-height:1.75;margin:10px 0 0}
.pb-progress ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;list-style:none;margin:0 0 28px;padding:0}.pb-progress button{display:flex;align-items:center;gap:12px;width:100%;min-height:70px;border:1px solid var(--pb-line);border-radius:5px;padding:14px;background:transparent;color:var(--pb-muted);text-align:left;font:500 13px/1.4 var(--sans)}.pb-progress small{display:block;font-size:10px;font-weight:400;margin-top:4px}.pb-step-number{display:grid;place-items:center;flex:0 0 28px;height:28px;border:1px solid var(--pb-line);border-radius:50%;font-size:12px}.pb-progress button[aria-current=step]{border-color:var(--pb-accent);background:rgba(197,163,110,.12);color:#fff}.pb-progress button[aria-current=step] .pb-step-number{background:var(--pb-accent);border-color:var(--pb-accent);color:#263524}.pb-progress button.is-complete .pb-step-number{border-color:var(--pb-accent);color:var(--pb-accent)}.pb-progress button:disabled{opacity:.45}.pb-progress button:hover:not(:disabled){border-color:var(--pb-accent)}
.pb-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:32px;align-items:start}.pb-content{min-width:0}.pb-panel{display:flex;flex-direction:column;gap:20px;min-width:0}.pb-panel-head{display:flex;justify-content:space-between;gap:20px;align-items:start}.pb-panel-head p:not(.pb-kicker){font-size:14px;color:var(--pb-muted);margin:0}.pb-panel-head .pb-kicker{margin-bottom:10px}.pb-panel-head .pb-text-button{font-size:11px;max-width:140px;text-align:right;flex-shrink:0}.pb-text-button{border:0;padding:5px 0;background:transparent;color:#e6c79c;font-size:12px;font-weight:500;text-decoration:underline;text-underline-offset:5px;line-height:1.6}.pb-card{padding:24px;border:1px solid var(--pb-line);border-radius:6px;background:rgba(0,0,0,.09)}
.pb-question{border:0;padding:0;margin:0;min-width:0}.pb-question+.pb-question{border-top:1px solid var(--pb-line);padding-top:24px;margin-top:24px}.pb-question legend{font-size:14px;font-weight:500;margin-bottom:14px;padding:0;float:left;width:100%}.pb-choices{display:flex;gap:8px;flex-wrap:wrap;clear:both}.pb-choice{position:relative;display:inline-flex;cursor:pointer;min-width:0}.pb-choice input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.pb-choice>span{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:5px 8px;padding:11px 14px;border:1px solid var(--pb-line);border-radius:5px;background:rgba(0,0,0,.05);color:var(--pb-muted);font-size:12px;line-height:1.5;min-height:44px}.pb-choice input:checked+span{background:#c5a36e;border-color:#c5a36e;color:#202d20}.pb-choice:hover>span{border-color:var(--pb-accent)}.pb-choice input:focus-visible+span{outline:3px solid #e5c79f;outline-offset:3px}.pb-choice input:disabled+span{opacity:.4;cursor:not-allowed}.pb-choice small{font-size:10px;line-height:1.4;display:block}
.pb-profile{display:flex;align-items:center;gap:16px;background:rgba(197,163,110,.1)}.pb-profile-label{color:#e6c79c;font-weight:600;font-size:13px}.pb-profile p{font-size:12px;color:var(--pb-muted);margin:0}.pb-profile-scale{display:flex;gap:4px;margin-left:auto;flex-shrink:0}.pb-profile-scale i{width:13px;height:5px;background:var(--pb-line);border-radius:2px}.pb-profile-scale i.on{background:var(--pb-accent)}
.pb-area{min-width:0;border:0;padding:0;margin:0}.pb-area+.pb-area{border-top:1px solid var(--pb-line);margin-top:20px;padding-top:20px}.pb-area legend{padding:0 0 13px;float:left;width:100%;font-size:14px;line-height:1.5;font-weight:500}.pb-area legend span::before{content:'';display:inline-block;width:8px;height:8px;margin-right:9px;border-radius:50%;background:var(--area-color)}.pb-area legend small{display:block;font-size:11px;line-height:1.6;font-weight:400;color:var(--pb-muted);margin-top:3px}.pb-hours .pb-choice>span{padding:9px 13px;font-size:11px;min-height:40px}.pb-week-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:18px}.pb-week-head .pb-kicker{margin-bottom:6px}.pb-week-head>p{font-size:11px;text-align:right;color:var(--pb-muted);margin:0}.pb-week-head strong{display:block;color:#fff;font-weight:500;font-size:20px}.pb-week-grid{display:grid;gap:6px}.pb-week-row{display:grid;grid-template-columns:28px repeat(8,minmax(0,1fr));gap:5px;align-items:center;font-size:10px;color:var(--pb-muted)}.pb-week-row i{height:18px;border-radius:2px;background:repeating-linear-gradient(135deg,transparent 0 3px,rgba(255,255,255,.09) 3px 4px);border:1px solid rgba(255,255,255,.08)}.pb-week-key{display:flex;gap:8px 16px;flex-wrap:wrap;margin-top:18px;font-size:10px;color:var(--pb-muted)}.pb-week-key span::before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--area-color);margin-right:6px}
.pb-rate-choices{margin:20px 0}.pb-custom-rate{font-size:12px;display:flex;align-items:center;flex-wrap:wrap;gap:12px}.pb-custom-rate>span{display:flex;align-items:center;gap:8px}.pb input[type=number]{width:135px;background:#fff;color:#263524;border:1px solid #a5afa3;border-radius:4px;font:400 14px/1.5 var(--sans);padding:10px 12px;min-height:44px}.pb-income{border-top:1px solid var(--pb-line);margin-top:20px;padding-top:17px;font-size:12px}.pb-income summary{cursor:pointer;color:#e6c79c;line-height:1.7}.pb-income>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}.pb-income .btn{min-height:44px;font-size:11px;padding:8px 14px}.pb-cost-note{border-left:2px solid var(--pb-accent);background:rgba(197,163,110,.09);padding:14px 16px;margin:22px 0 0;font-size:13px}
.pb-commitment{margin:0;min-width:0}.pb-commitment legend{float:left;width:100%;padding:0;margin:0 0 15px;font-size:15px;font-weight:500}.pb-commitment .pb-choice>span{flex-direction:column;align-items:flex-start;min-width:138px}.pb-commitment .pb-small{clear:both;padding-top:5px}.pb-service-groups{display:grid;gap:12px}.pb-group{border:1px solid var(--pb-line);border-radius:6px;overflow:hidden;background:rgba(0,0,0,.06)}.pb-group>summary{display:flex;align-items:center;gap:16px;justify-content:space-between;padding:21px 22px;cursor:pointer;list-style:none}.pb-group>summary::-webkit-details-marker{display:none}.pb-group>summary::after{content:'+';color:var(--pb-accent);font-size:24px;font-weight:300}.pb-group[open]>summary::after{content:'−'}.pb-group>summary strong{font-size:15px;font-weight:500;display:block}.pb-group>summary small{font-size:11px;color:var(--pb-muted);display:block;margin-top:4px;line-height:1.5}.pb-group-total{margin-left:auto;white-space:nowrap;font-size:12px;text-align:right;flex-shrink:0}.pb-group-body{border-top:1px solid var(--pb-line);padding:4px 22px 14px}.pb-service-line{display:flex;align-items:start;justify-content:space-between;gap:18px;padding:19px 0}.pb-service-line+.pb-service-line{border-top:1px solid var(--pb-line)}.pb-service-toggle{display:flex;align-items:start;gap:11px;cursor:pointer}.pb-service-toggle input,.pb-quote-option input{width:18px;height:18px;margin:2px 0 0;flex-shrink:0;accent-color:var(--pb-accent)}.pb-service-toggle strong{font-size:13px;line-height:1.55;font-weight:500;display:block}.pb-service-toggle small{font-size:11px;line-height:1.65;color:var(--pb-muted);display:block;margin-top:4px}.pb-reason{color:#e6c79c!important}.pb-service-price{font-size:14px;white-space:nowrap;font-weight:500;text-align:right;flex-shrink:0}.pb-service-price small{font-size:10px;font-weight:400;display:block;color:var(--pb-muted);margin-top:5px}.pb-service-line.is-unavailable{opacity:.55}.pb-executive{padding-top:18px}.pb-executive .pb-choices{margin:12px 0}.pb-executive .pb-choice>span{flex-direction:column;align-items:flex-start}.pb-quote-options{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:22px}.pb-quote-option{display:flex;align-items:start;gap:10px;cursor:pointer}.pb-quote-option strong{display:block;font-weight:500;font-size:12px;line-height:1.6}.pb-quote-option small{display:block;font-size:11px;color:var(--pb-muted);line-height:1.6;margin-top:4px}
.pb-ledger{position:sticky;top:var(--pb-nav-top);padding:25px 23px}.pb-ledger>strong{display:block;font-size:clamp(1.45rem,2.4vw,2.15rem);font-weight:600;line-height:1.25;overflow-wrap:anywhere;letter-spacing:-.025em}.pb-ledger-price-note{font-size:11px;color:var(--pb-muted);margin:10px 0 20px}.pb-ledger dl{margin:0;border-top:1px solid var(--pb-line)}.pb-ledger dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--pb-line);font-size:11px;line-height:1.65}.pb-ledger dt{color:var(--pb-muted)}.pb-ledger dd{margin:0;font-weight:500;text-align:right}.pb-ledger-note{font-size:11px;line-height:1.8;color:var(--pb-muted);margin:18px 0 0}.pb-mobile-total{display:none}
.pb-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px}.pb-comparison strong{font-size:clamp(1.8rem,3.2vw,2.5rem);font-weight:600;line-height:1.3;letter-spacing:-.03em}.pb-comparison p:not(.pb-kicker){font-size:12px;margin:10px 0 0;color:var(--pb-muted)}.pb-after{border-color:var(--pb-accent);background:rgba(197,163,110,.1)}.pb-saving{border-left:3px solid var(--pb-accent)}.pb-saving>p:first-child{font-size:20px;line-height:1.5;font-weight:500;margin:0 0 10px}.pb-saving>p:nth-child(2){font-size:13px;color:var(--pb-muted);margin:0 0 12px}.pb-saving .pb-small{font-size:11px}.pb-review-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.pb-review-heading h4{margin:0}.pb-review-line{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-top:1px solid var(--pb-line);font-size:12px;line-height:1.7}.pb-review-line b{white-space:nowrap;font-weight:500}.pb-review-line small{display:block;color:var(--pb-muted);font-size:10px}.pb-contract{font-size:12px;border-top:1px solid var(--pb-line);padding-top:17px;margin:12px 0 0;color:#e6c79c}.pb-send{scroll-margin-top:120px}.pb-send .hero-form.enq{width:100%;max-width:none;margin:0;box-shadow:none;border-top:3px solid var(--pb-accent);background:#fff;padding:30px;color:#2c3b2b}.pb-send .hero-form-head h2{font-size:1.8rem;color:#2c3b2b}.pb-send .hero-form-head>p:last-child{color:#5c665b}.pb-send .hero-form-head{margin-bottom:22px}.pb-send .hero-form.enq .field input,.pb-send .hero-form.enq .field textarea{color:#2c3b2b;background:#fff;border-color:#cbd1c9}.pb-send .field label,.pb-send .lead-consent,.pb-send .form-fine{color:#4e5a4c}.pb-send .hero-form.enq button[type=submit]{background:#2c3b2b;border-color:#2c3b2b;color:#fff}.pb-send .frow{gap:16px}.pb-send .sent{color:#2c3b2b}.pb-message-hint{color:var(--pb-muted);font-size:11px;margin:12px 0 0}
.pb-navigation{position:sticky;bottom:0;z-index:25;display:flex;align-items:center;gap:20px;padding:17px 0; margin-top:28px;border-top:1px solid var(--pb-line);background:#2c3b2b;box-shadow:0 -10px 22px rgba(44,59,43,.6)}.pb-navigation>div{margin-right:auto;min-width:0;font-size:11px;color:var(--pb-muted)}.pb-navigation .btn{font-size:12px;min-height:46px;padding:12px 18px;flex-shrink:0}.pb-navigation p{font-size:11px;line-height:1.5;color:#edc8aa;margin:3px 0 0;max-width:350px}.pb-navigation [aria-disabled=true]{opacity:.55;cursor:pointer}.pb-navigation.is-form-visible{position:static}.pb-notice{font-size:12px;border-left:3px solid var(--pb-accent);padding:14px 18px;margin:0 0 24px;background:rgba(197,163,110,.1);color:#fff}
@media(max-width:1050px){.pb-layout{grid-template-columns:minmax(0,1fr) 265px;gap:22px}.pb-ledger{padding:22px 18px}.pb-progress button{padding:12px;gap:8px}.pb-commitment .pb-choice>span{min-width:0}.pb-service-line{gap:12px}.pb-service-price{font-size:12px}.pb-panel-head{flex-direction:column;gap:8px}.pb-panel-head .pb-text-button{max-width:none;text-align:left}.pb-card{padding:21px}}
@media(max-width:900px){.pb-layout{grid-template-columns:1fr}.pb-ledger{display:none}.pb-mobile-total{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 15px;border:1px solid var(--pb-line);border-radius:5px;margin-bottom:22px;font-size:11px;background:rgba(0,0,0,.09)}.pb-mobile-total b{font-size:14px;font-weight:500;text-align:right}.pb-progress small{display:none}.pb-progress button{min-height:58px;font-size:12px}.pb-progress ol{margin-bottom:16px}.pb-intro :is(h1,h2){font-size:2rem}.pb-send .hero-form-head h2{font-size:1.6rem}}
@media(max-width:560px){.pb-progress ol{gap:6px}.pb-progress button{flex-direction:column;text-align:center;justify-content:flex-start;padding:10px 3px;font-size:10px;min-height:79px;gap:7px}.pb-step-number{flex-basis:24px;width:24px;height:24px;font-size:10px}.pb-intro :is(h1,h2){font-size:1.7rem;line-height:1.25}.pb-intro .lead{font-size:14px}.pb-card{padding:20px 17px}.pb-panel{gap:16px}.pb-question legend,.pb-area legend{font-size:13px}.pb-choice>span{font-size:11px;padding:10px 12px}.pb-choices{gap:7px}.pb-hours{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.pb-hours .pb-choice>span{font-size:9px;padding:10px 2px;width:100%;min-height:40px}.pb-profile{align-items:flex-start;flex-wrap:wrap;gap:9px}.pb-profile p{flex-basis:100%;order:3}.pb-profile-scale{margin-top:6px}.pb-week-head h4{font-size:15px}.pb-week-head>p{font-size:9px}.pb-week-row{gap:3px}.pb-week-key{gap:7px 12px}.pb-commitment .pb-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.pb-commitment .pb-choice>span{width:100%;font-size:10px;padding:11px 7px;align-items:center;text-align:center}.pb-commitment .pb-choice small{font-size:9px}.pb-group>summary{padding:18px 16px;gap:12px}.pb-group>summary strong{font-size:13px}.pb-group>summary small{font-size:10px}.pb-group-total{font-size:10px}.pb-group-body{padding:2px 16px 12px}.pb-service-line{flex-wrap:wrap;gap:10px}.pb-service-toggle{flex-basis:100%;gap:9px}.pb-service-price{margin-left:27px;text-align:left;display:flex;gap:9px;align-items:baseline}.pb-service-price small{margin:0}.pb-quote-options{grid-template-columns:1fr;gap:18px}.pb-comparison{grid-template-columns:1fr;gap:12px}.pb-comparison strong{font-size:2rem}.pb-saving>p:first-child{font-size:18px}.pb-send .hero-form.enq{padding:24px 18px}.pb-send .frow{grid-template-columns:1fr;gap:0}.pb-send .hero-form-head h2{font-size:1.5rem}.pb-send .hero-form.enq .field input,.pb-send .hero-form.enq .field textarea{font-size:16px}.pb-navigation{gap:10px;padding:12px 0 calc(12px + env(safe-area-inset-bottom));align-items:center}.pb-navigation .btn{padding:11px 12px;font-size:10px;min-height:44px}.pb-navigation>div{font-size:10px}.pb-navigation p{font-size:10px}.pb-review-line{font-size:11px;gap:12px}.pb-review-heading h4{font-size:15px}.pb-review-heading .pb-text-button{font-size:11px}}
.pb-navigation .btn[aria-disabled="true"]{pointer-events:auto}
.pb-nav-space{min-height:calc(var(--pb-nav-height,80px) + 28px);margin-top:28px}.pb-navigation{position:static;margin-top:0}.pb-navigation.is-floating{position:fixed;left:var(--pb-left);width:var(--pb-width);bottom:0;margin:0;padding-inline:14px;border:1px solid var(--pb-line);border-bottom:0;border-radius:6px 6px 0 0;background:#263524;box-shadow:0 -8px 30px rgba(0,0,0,.15)}
.console.plan-builder-section{overflow:clip}
/* Keep the standalone builder stable when the header acquires its scrolled shadow. */
.dw-builder-page .nav.stuck .nav-in{min-height:92px}@media(max-width:1000px){.dw-builder-page .nav.stuck .nav-in{min-height:82px}}
.pb-choice,.pb input,.pb button,.pb textarea,.pb select{scroll-margin-top:var(--pb-nav-top,110px);scroll-margin-bottom:calc(var(--pb-nav-height,80px) + 24px)}
.plan-builder-promo{background:#2c3b2b;color:#fff}.pb-promo-inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:72px;align-items:center}.pb-promo-copy h2{color:#fff;font-size:clamp(1.8rem,3.3vw,2.6rem);line-height:1.22;letter-spacing:-.035em;margin:0 0 24px}.pb-promo-copy .lead{color:#d2d9cf;max-width:560px;margin:0 0 28px}.pb-promo-copy .pb-promo-note{color:#d2d9cf;font-size:11px;line-height:1.7;margin:15px 0 0}.pb-promo-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 28px;list-style:none;padding:0;margin:0}.pb-promo-steps li{border-top:1px solid rgba(255,255,255,.2);padding:22px 0;min-width:0}.pb-promo-steps li>span{display:block;color:#c5a36e;font-size:12px;letter-spacing:.1em;margin-bottom:15px}.pb-promo-steps h3{font-family:var(--sans);color:#fff;font-size:16px;font-weight:500;line-height:1.5;margin:0 0 7px}.pb-promo-steps p{color:#d2d9cf;font-size:12px;line-height:1.75;margin:0}@media(max-width:900px){.pb-promo-inner{gap:36px}.pb-promo-steps{gap:0 18px}}@media(max-width:680px){.pb-promo-inner{grid-template-columns:1fr;gap:32px}.pb-promo-copy h2{font-size:1.85rem}.pb-promo-steps li{padding:18px 0}.pb-promo-steps li>span{margin-bottom:9px}.pb-promo-copy .lead{font-size:15px}}
