.cost-refined .cg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:32px 0 16px}.cg-card{border:1px solid #dce2ee;border-radius:22px;background:white;overflow:hidden}.cg-copy{padding:25px}.cg-copy h3{font-size:20px;margin:0 0 12px}.cg-copy>strong{font-size:26px;color:#24394b}.cg-copy p{margin:8px 0 0;font-size:15px}.cg-art{height:220px;position:relative;display:grid;place-items:center;overflow:hidden;border-radius:16px}.cg-card .cg-art{border-radius:0}.cg-peach{background:linear-gradient(135deg,#ffe9b3,#d98c76)}.cg-mint{background:linear-gradient(135deg,#e0edaf,#4e9a91)}.cg-blue{background:linear-gradient(135deg,#25445e,#557fbc)}.cg-window,.cg-board{background:#fffcf8;border-radius:14px;padding:20px;width:70%;box-shadow:0 16px 24px #18324025;transform:rotate(-4deg)}.cg-window small,.cg-board small{font-weight:700;color:#1d334a}.cg-window i{display:block;height:13px;background:#e3e5ec;border-radius:4px;margin-top:12px}.cg-window i:nth-child(3){width:70%}.cg-chip{display:block;background:#e0eee5;color:#33715e;padding:9px;margin-top:15px;border-radius:6px;font-size:12px}.cg-float{position:absolute;right:16%;bottom:22%;background:#fff;border-radius:30px;padding:6px 20px;color:#a7492c;box-shadow:0 8px 18px #2222}.cg-board{transform:rotate(4deg)}.cg-board>div{display:flex;gap:8px;margin-top:12px}.cg-board i{height:36px;border-radius:5px;background:#e3b764;flex:1}.cg-board div:nth-child(3) i{background:#8bb9af}.cg-art svg{width:92%;height:90%}.cg-caption{font-size:14px;color:#526177}.cost-refined .cg-estimate{padding:32px;background:#fff;border:1px solid #dbe1ec;border-radius:22px;margin:24px 0 30px;box-shadow:0 14px 32px #283b5610}.cg-estimate-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.cg-estimate-head span{font-size:12px;letter-spacing:.1em}.cg-estimate-head strong{font-size:40px;color:#263c50}.cg-estimate-head small{font-size:16px}.cg-stack{display:flex;height:65px;gap:6px;margin:24px 0}.cg-stack i{width:16%;background:#e5a852;border-radius:9px;transform-origin:left}.cg-stack i:nth-child(2){width:56%;background:#5c70bd}.cg-stack i:nth-child(3){width:28%;background:#47958b}.cg-legend{display:flex;justify-content:space-between;font-size:14px;gap:14px}.cg-legend b{display:block;font-size:20px}.cg-estimate figcaption{border-top:1px solid #e3e7ed;margin-top:24px;padding-top:16px;font-size:14px;line-height:1.7}.cost-refined .cg-photo{position:relative;padding:100px 0;isolation:isolate;overflow:hidden;background:#f1e5d0}.cg-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.cg-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f9f3e9f5 5%,#f9f3e9d9 42%,#f9f3e900 78%);z-index:-1}.cg-photo-copy{max-width:510px}.cost-refined .cg-photo .h2{font-size:44px;line-height:1.13;color:#243947}.cg-photo-copy p{font-size:18px;line-height:1.75;color:#344c5b;margin:24px 0}.cost-refined #cost-models .cg-art{margin:0 0 24px}.cost-refined #cost-drivers{background:linear-gradient(115deg,#e9f0fb,#f0ebf8)}.cost-refined #cost-drivers .checklist{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cost-refined #cost-drivers .checklist li{background:#ffffffb8;border:1px solid #dce2ef;border-radius:14px;padding:22px}.cost-refined #cost-running .checklist li{background:#eef2fb}.cost-refined .dgm-box{background:#f6f8fc;border-radius:20px}.cost-refined .prose{max-width:900px}.cost-refined #cost-bands .prose{max-width:none}
@media(max-width:760px){.cost-refined .cg-grid{grid-template-columns:1fr}.cg-art{height:210px}.cost-refined #cost-drivers .checklist{grid-template-columns:1fr}.cost-refined .cg-photo{padding:64px 0}.cost-refined .cg-photo .h2{font-size:34px}.cg-photo:after{background:#faf4e9de}.cg-estimate-head strong{font-size:30px}.cost-refined .cg-estimate{padding:22px}.cg-legend{font-size:12px}.cg-stack{height:48px}}
.cost-refined .guide-table-scroll{overflow:auto;margin:24px 0;border:1px solid #dce2ef;border-radius:14px;background:#fff}.cost-refined .guide-table-scroll table{min-width:680px;margin:0!important}.cost-refined .guide-table-scroll:focus-visible{outline:3px solid #6b60af;outline-offset:3px}.cg-checks{display:flex;gap:10px;margin:18px 0}.cg-checks b{display:grid;place-items:center;width:36px;height:36px;background:#dceae0;color:#35715d;border-radius:9px}.cg-clock{position:relative;width:110px;height:110px;border:9px solid #fbfaf0;border-radius:50%;box-shadow:0 10px 20px #163c3a22;background:#245752}.cg-clock:before{content:'';position:absolute;inset:10px;border:2px dashed #a6cebb;border-radius:50%}.cg-clock i,.cg-clock b{position:absolute;left:45px;top:45px;width:29px;height:4px;border-radius:4px;background:#fff;transform-origin:left}.cg-clock b{transform:rotate(-90deg);width:23px}.cg-hours{position:absolute;background:#fff;padding:10px 20px;border-radius:30px;bottom:28px;right:24px;font-size:12px}.cg-hours strong{color:#4b8c80;margin-left:15px}.cg-stairs{display:flex;align-items:flex-end;gap:13px;width:75%;height:145px}.cg-stairs i{font-style:normal;flex:1;border-radius:12px 12px 4px 4px;background:#f1b76c;height:45%;padding:15px;color:#28415b;font-size:18px;font-weight:700}.cg-stairs i:nth-child(2){height:70%;background:#8dc6ba}.cg-stairs i:nth-child(3){height:95%;background:#eeecfa}

/* The cost drivers use a light surface, not the site's dark-section theme. */
.cost-refined #cost-drivers .h2{color:#17283f}
.cost-refined #cost-drivers .kicker{color:#60558c}
.cost-refined #cost-drivers .prose p,.cost-refined #cost-drivers .checklist li{color:#45526a}
.cost-refined #cost-drivers .checklist li{background:#fff;border-top:3px solid #90aaa9;padding:24px;line-height:1.75}
.cost-refined #cost-drivers .checklist li:nth-child(3n+2){border-top-color:#c5a46c}
.cost-refined #cost-drivers .checklist li:nth-child(3n){border-top-color:#a597c7}
.cost-refined #cost-drivers .checklist li strong{display:block;color:#22374b;font-size:18px;margin-bottom:8px}
.cost-refined #cost-drivers .checklist li:before,.cost-refined #cost-drivers .checklist li:after{content:none;display:none}
/* Photographic section headings keep detailed costs on a solid reading surface. */
.cost-refined .cg-scene-section{padding-top:0;background:#f5f6fb}
.cg-scene-heading{position:relative;isolation:isolate;overflow:hidden;min-height:360px;display:flex;align-items:center;padding:76px 0;margin-bottom:48px;background:#22313d}
.cg-scene-heading>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.cg-scene-heading:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#132431e8,#132431b8 48%,#13243115)}
.cg-scene-right:after{background:linear-gradient(90deg,#151a2110,#151a21bd 45%,#151a21ed)}
.cg-scene-title{max-width:560px}
.cg-scene-right .cg-scene-title{margin-left:auto}
.cost-refined .cg-scene-heading .h2{color:#fff;font-size:42px;line-height:1.2;margin:0;text-wrap:balance}
.cost-refined .cg-scene-heading .kicker{color:#e2ddfb;margin-bottom:22px}
.cost-refined #cost-running>.wrap>.prose{background:#fff;padding:32px;border:1px solid #dfe4ee;border-radius:20px}
@media(max-width:760px){.cg-scene-heading{min-height:300px;padding:56px 0;margin-bottom:32px}.cost-refined .cg-scene-heading .h2{font-size:32px}.cg-scene-heading:after,.cg-scene-right:after{background:#182735bc}.cost-refined #cost-running>.wrap>.prose{padding:22px}.cg-scene-right>img{object-position:28% center}}
.cg-scene-heading>.wrap{width:calc(100% - 56px);max-width:1124px;flex:0 1 1124px}
/* Running costs: one clear plan, with separate scope considerations. */
.cost-refined #cost-running>.wrap>.prose{max-width:none;background:transparent;padding:0;border:0;border-radius:0}
.cg-running-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);gap:24px;margin:30px 0}
.cg-running-plan{background:#f3e8d4;border:1px solid #e3d3b9;border-radius:22px;padding:34px;align-self:stretch;display:flex;flex-direction:column;align-items:flex-start}
.cg-plan-label{font-size:11px;letter-spacing:.13em;color:#70582e;font-weight:700}
.cost-refined .cg-running-plan h3{font-size:27px;line-height:1.2;color:#263b42;margin:24px 0}
.cg-plan-price{font-size:40px;line-height:1.15;letter-spacing:-.035em;font-weight:700;color:#243a42}
.cg-plan-price span{display:block;font-size:15px;font-weight:500;letter-spacing:0;margin-top:9px}
.cost-refined #cost-running .cg-plan-year{font-size:13px;color:#665c4b;margin:12px 0 26px}
.cost-refined #cost-running .cg-running-plan>p:not(.cg-plan-year){font-size:15px;line-height:1.8;color:#424e51;margin:0 0 24px}
.cg-running-plan>.lnk{margin-top:auto;font-size:15px}
.cg-running-extras{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cg-running-item{background:#fff;border:1px solid #e1e5e8;border-radius:18px;padding:26px}
.cg-running-mark{display:grid;place-items:center;width:38px;height:38px;background:#e5f0eb;color:#376b5b;border-radius:11px;font-size:24px;margin-bottom:20px}
.cg-running-item:nth-child(2) .cg-running-mark{background:#f7ebd7;color:#88652c}
.cg-running-item:nth-child(3) .cg-running-mark{background:#eee9f6;color:#685681}
.cg-running-item:nth-child(4) .cg-running-mark{background:#e7eff6;color:#446681}
.cost-refined .cg-running-item h3{font-size:18px;line-height:1.35;color:#243a42;margin:0 0 12px}
.cost-refined #cost-running .cg-running-item p{font-size:15px;line-height:1.75;color:#495764;margin:0}
@media(max-width:850px){.cg-running-layout{grid-template-columns:1fr}.cg-running-plan{padding:28px}}
@media(max-width:540px){.cg-running-extras{grid-template-columns:1fr}.cg-running-item{padding:24px}.cg-plan-price{font-size:36px}}
/* Readable HTML replaces the miniature six-column SVG. */
.cg-phases-heading{max-width:720px;margin-bottom:30px}
.cost-refined .cg-phases-heading .h2{font-size:36px;margin:12px 0 16px;color:#213847}
.cg-phases-heading p,.cg-phase-note{font-size:17px;line-height:1.75;color:#4b5b69}
.cg-phase-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;counter-reset:none}
.cg-phase{--phase-accent:#3d7467;--phase-tint:#e8f3ed;background:var(--phase-tint);border:1px solid #d8e4df;border-radius:20px;padding:28px;min-height:285px;display:flex;flex-direction:column}
.cg-phase:nth-child(2){--phase-accent:#a3612a;--phase-tint:#fbefde;border-color:#eddfc8}
.cg-phase:nth-child(3){--phase-accent:#506faf;--phase-tint:#eaf0fb;border-color:#dbe3f3}
.cg-phase:nth-child(4){--phase-accent:#7c5b9d;--phase-tint:#f0eaf7;border-color:#e5daf0}
.cg-phase:nth-child(5){--phase-accent:#9e6258;--phase-tint:#f8ebe5;border-color:#ecddd4}
.cg-phase:nth-child(6){--phase-accent:#32777f;--phase-tint:#e4f1f2;border-color:#d0e5e7}
.cg-phase-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;color:var(--phase-accent)}
.cg-phase-number{font-size:28px;font-weight:600;letter-spacing:-.04em}
.cg-phase-arrow{font-size:27px}.cg-phase:last-child .cg-phase-arrow{visibility:hidden}
.cost-refined .cg-phase h3{font-size:23px;line-height:1.3;color:#233947;margin:0 0 8px}
.cost-refined .cg-phase>p{font-size:16px;line-height:1.5;color:#4c5b67;margin:0 0 23px}
.cg-phase-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}
.cg-phase-tags span{padding:7px 11px;border-radius:8px;background:#ffffffd9;color:#344852;font-size:15px;line-height:1.5}
.cg-phase-note{margin:26px 0 0;padding-left:20px;border-left:3px solid #9daec2;max-width:900px}
@media(max-width:850px){.cg-phase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.cg-phase-grid{grid-template-columns:1fr;gap:16px}.cg-phase{min-height:0;padding:25px}.cg-phase-top{margin-bottom:16px}.cg-phase-arrow{transform:rotate(90deg)}.cost-refined .cg-phases-heading .h2{font-size:30px}.cg-phase-note{font-size:16px}}
/* Each cost driver has its own compact illustration. */
.cost-refined #cost-drivers .prose{max-width:none}
.cost-refined #cost-drivers .checklist{gap:20px}
.cost-refined #cost-drivers .checklist li{display:grid;grid-template-columns:146px minmax(0,1fr);align-items:center;gap:22px;padding:20px;border-top:1px solid #dce2ef;min-height:220px}
.cg-driver-art{height:176px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(145deg,#e5edc0,#78ad99);overflow:hidden}
.cg-driver-art svg{width:100%;height:100%;filter:drop-shadow(0 6px 6px #25435418)}
#cost-drivers li:nth-child(2) .cg-driver-art{background:linear-gradient(145deg,#ffebbc,#d9a581)}
#cost-drivers li:nth-child(3) .cg-driver-art{background:linear-gradient(145deg,#e8dff6,#a88bbe)}
#cost-drivers li:nth-child(4) .cg-driver-art{background:linear-gradient(145deg,#d7edf1,#739cb7)}
#cost-drivers li:nth-child(5) .cg-driver-art{background:linear-gradient(145deg,#f4d8c5,#c78e7c)}
#cost-drivers li:nth-child(6) .cg-driver-art{background:linear-gradient(145deg,#dbe4fb,#8a98c7)}
#cost-drivers li:nth-child(7) .cg-driver-art{background:linear-gradient(145deg,#cfe6d9,#73a6a1)}
#cost-drivers li:nth-child(8) .cg-driver-art{background:linear-gradient(145deg,#f6e8bb,#c4a773)}
.cost-refined #cost-drivers .cg-driver-copy{font-size:15px;line-height:1.75;color:#45526a}
.cost-refined #cost-drivers .cg-driver-copy strong{font-size:18px;line-height:1.35;margin-bottom:10px}
@media(min-width:761px) and (max-width:1050px){.cost-refined #cost-drivers .checklist li{grid-template-columns:1fr}.cg-driver-art{height:145px}.cg-driver-art svg{max-width:180px}}
@media(max-width:540px){.cost-refined #cost-drivers .checklist li{grid-template-columns:1fr;gap:20px;padding:22px}.cg-driver-art{height:155px}.cg-driver-art svg{max-width:185px}}

/* A quiet dark texture behind the cost-driver cards. */
.cost-refined #cost-drivers{position:relative;isolation:isolate;overflow:hidden;background:#243443}
.cost-refined #cost-drivers:before{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;background:url('/img/visual-cards/scene-notes-1200.webp') center/cover no-repeat;opacity:.22}
.cost-refined #cost-drivers:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(125deg,#182b3b38,#3a344d52)}
.cost-refined #cost-drivers>.wrap{position:relative;z-index:1}
.cost-refined #cost-drivers .h2{color:#fff}
.cost-refined #cost-drivers .kicker{color:#d1c9ef}
.cost-refined #cost-drivers .prose>p{color:#e1e7ee}
.cost-refined #cost-drivers .checklist li{background:#fffffff5;border-color:#ffffff55;box-shadow:0 10px 28px #0d1b2920}
.cost-refined #cost-drivers .cg-driver-copy{color:#45526a}
.cost-refined #cost-drivers .cg-driver-copy strong{color:#22374b}
/* Start the cost guide with the answer, then the detailed scope table. */
.cost-refined .cg-budget-hero{padding:54px 0 34px;min-height:0}
.cost-refined .cg-budget-hero>.wrap{display:block}
.cost-refined .cg-budget-hero .inner{max-width:850px;width:100%;padding:0}
.cost-refined .cg-budget-hero .h1{font-size:clamp(32px,3.3vw,46px);line-height:1.13;margin:14px 0}
.cost-refined .cg-budget-hero .lead{font-size:17px;line-height:1.6;margin-bottom:0}
.cost-refined .cg-budget-hero .cg-grid{margin:28px 0 14px}
.cost-refined .cg-budget-hero .cg-art{height:150px}
.cost-refined .cg-budget-hero .cg-copy{padding:20px 24px}
.cost-refined .cg-budget-hero .cg-copy h3{font-size:19px;margin-bottom:8px}
.cost-refined .cg-budget-hero .cg-copy>strong{font-size:27px}
.cost-refined .cg-budget-hero .cg-caption{max-width:950px;font-size:14px;line-height:1.6;color:#526177;margin:12px 0}
.cg-budget-nav{display:flex;flex-wrap:wrap;gap:14px 26px;margin:20px 0;font-size:15px}
.cg-hero-byline{font-size:13px;line-height:1.7;color:#526177;margin:20px 0 0}
@media(max-width:760px){.cost-refined .cg-budget-hero{padding-top:30px}.cost-refined .cg-budget-hero .cg-grid{gap:14px}.cost-refined .cg-budget-hero .cg-card{display:grid;grid-template-columns:105px minmax(0,1fr);align-items:stretch}.cost-refined .cg-budget-hero .cg-art{height:100%;min-height:138px}.cost-refined .cg-budget-hero .cg-copy{padding:17px}.cost-refined .cg-budget-hero .cg-copy>strong{font-size:23px}.cost-refined .cg-budget-hero .cg-copy h3{font-size:17px}.cost-refined .cg-budget-hero .cg-copy p{font-size:14px}.cg-budget-nav{gap:12px 20px}.cg-budget-hero .cg-window,.cg-budget-hero .cg-board{width:85%;padding:10px}}
.cost-refined .cg-budget-hero>.wrap{position:relative;z-index:1}
.cost-refined .cg-budget-hero .cg-card{background:#fff}
.cost-refined .cg-budget-hero .cg-window{transform:scale(.78) rotate(-4deg)}
.cost-refined .cg-budget-hero .cg-board{transform:scale(.78) rotate(4deg)}
/* Review refinements: semantic price text and a shorter mobile reading path. */
.cost-refined .cg-copy .cg-price{font-size:27px;line-height:1.2;color:#24394b;margin:8px 0}
.cost-refined .cg-card-title{font-size:19px;line-height:1.3;margin:0 0 8px;color:#17283f}
.cost-refined .cg-plan-price{margin:0}
.cg-tax-note{font-size:13px;line-height:1.65;color:#526177;max-width:950px;margin:10px 0}
.cost-refined #cost-drivers .cg-driver-copy p{font-size:15px;line-height:1.75;color:#45526a;margin:0}
.cost-refined main .checklist:not(#cost-drivers .checklist)>li:before,.cost-refined main .checklist:not(#cost-drivers .checklist)>li:after{content:none;display:none}
.cost-refined main .checklist:not(#cost-drivers .checklist)>li{padding:15px 20px;border-left:3px solid #b3b9cf;background:#f5f6fa;border-radius:0 10px 10px 0}
.cg-project-evidence{margin-top:36px;padding:28px 32px;background:#eff4f1;border:1px solid #d8e5df;border-radius:18px;max-width:900px}
.cg-project-evidence h3{font-size:23px;line-height:1.3;margin:12px 0 18px;color:#243c42}
.cg-project-evidence p{font-size:16px;line-height:1.75;color:#455664;margin:12px 0}
@media(max-width:760px){.cost-refined .cg-budget-hero .cg-price{font-size:23px}.cost-refined #cost-drivers .checklist{gap:14px}.cost-refined #cost-drivers .checklist li{grid-template-columns:88px minmax(0,1fr);gap:16px;padding:18px;min-height:0}.cost-refined #cost-drivers .cg-driver-art{height:110px}.cost-refined #cost-drivers .cg-driver-copy strong{font-size:17px}.cost-refined #cost-drivers .cg-driver-copy p{font-size:15px;line-height:1.65}.cg-phase{padding:20px;min-height:0}.cg-phase-top{margin-bottom:8px}.cost-refined .cg-phase h3{font-size:21px}.cost-refined .cg-phase>p{margin-bottom:12px}.cg-phase-tags span{padding:5px 9px}.cg-phase-grid{gap:12px}.cg-phase-number{font-size:23px}.cg-project-evidence{padding:22px}.cg-project-evidence h3{font-size:21px}}
.cost-refined .cg-price-tax{display:inline-block;font-size:12px;font-weight:500;letter-spacing:0;color:#526177;white-space:nowrap}
