
.prices-guide .pg-estimate-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;align-items:stretch;margin-bottom:32px}
.prices-guide .pg-cost-factors{display:grid;gap:0}
.prices-guide .pg-cost-factor{display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:22px;row-gap:8px;padding:24px 0;border-bottom:1px solid #dde5e9}
.prices-guide .pg-cost-factor:first-child{padding-top:8px}
.prices-guide .pg-cost-factor .pg-icon{grid-column:1;grid-row:1 / 3;width:44px;height:44px;margin:0;background:transparent;border-radius:0;color:#339ace}
.prices-guide .pg-cost-factor .pg-icon svg{width:36px;height:36px;stroke:#339ace}
main#panel .prices-guide .pg-cost-factor h3{grid-column:2;margin:0!important;font:700 20px/1.35 Montserrat,Arial,sans-serif!important;color:#111}
.prices-guide .pg-cost-factor p{grid-column:2;margin:0;color:#56636d;font:400 15px/1.7 Montserrat,Arial,sans-serif}
.prices-guide .pg-estimate-summary{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:40px;border-radius:30px;background:#f5f5f5}
main#panel .prices-guide .pg-estimate-summary h3{margin:0 0 20px!important;font:700 28px/1.3 Montserrat,Arial,sans-serif!important;color:#111}
.prices-guide .pg-estimate-summary p{margin:0;font:400 16px/1.75 Montserrat,Arial,sans-serif;color:#333}
.prices-guide a.pg-estimate-button{display:inline-flex;align-items:center;justify-content:center;gap:30px;margin-top:28px;padding:17px 26px;border-radius:100px;background:#339ace;color:#fff;text-decoration:none;font:600 15px/1.4 Montserrat,Arial,sans-serif;transition:background .25s ease}
.prices-guide a.pg-estimate-button:hover{background:#2785b4;color:#fff}
.prices-guide .pg-estimate-button span{font-size:22px;line-height:1}
@media(max-width:991px){.prices-guide .pg-estimate-layout{gap:28px}.prices-guide .pg-estimate-summary{padding:30px}main#panel .prices-guide .pg-estimate-summary h3{font-size:24px!important}}
@media(max-width:767px){.prices-guide .pg-estimate-layout{grid-template-columns:1fr;gap:24px}.prices-guide .pg-cost-factor{column-gap:16px;padding:20px 0}main#panel .prices-guide .pg-cost-factor h3{font-size:18px!important}.prices-guide .pg-estimate-summary{padding:28px 24px;border-radius:24px}.prices-guide a.pg-estimate-button{width:100%;box-sizing:border-box}}

/* Main section headings match the calculator introduction. */
main#panel .prices-guide h2{font-family:Montserrat,sans-serif!important;font-size:50px!important;font-weight:700!important;line-height:1.22!important;letter-spacing:normal!important;text-transform:none!important;text-align:left!important;color:#000!important}
@media(max-width:1024px){main#panel .prices-guide h2{font-size:40px!important}}
@media(max-width:767px){main#panel .prices-guide h2{font-size:32px!important}}

/* Align the estimate panel to the two equal cards below. */
@media(min-width:768px){.prices-guide .pg-estimate-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}

/* Estimate stages as a connected vertical sequence. */
.prices-guide .pg-stages-wrap{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:32px 0;background:#fff;border-radius:0;border-top:1px solid #dde5e9}
.prices-guide .pg-stages-heading{margin:0;padding-right:36px;align-self:start}
.prices-guide .pg-stages-heading p{max-width:430px;font:400 15px/1.75 Montserrat,Arial,sans-serif;color:#56636d;margin:20px 0 0}
.prices-guide .pg-stages{display:block;list-style:none;margin:0;padding:0}
.prices-guide .pg-stages>li{display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:22px;align-items:start;position:relative;padding:0 0 24px;margin:0;background:transparent;border-radius:0;min-width:0}
.prices-guide .pg-stages>li:last-child{padding-bottom:0}
.prices-guide .pg-stages>li:not(:last-child):before{content:"";position:absolute;left:20px;top:42px;bottom:0;width:2px;background:#dbeef7}
.prices-guide .pg-stages span{position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#339ace;color:#fff;font:700 14px/1 Montserrat,Arial,sans-serif}
.prices-guide .pg-stages strong{display:block;min-height:42px;box-sizing:border-box;padding:8px 0 22px;border-bottom:1px solid #e3e9ec;font:600 17px/1.5 Montserrat,Arial,sans-serif;color:#111}
.prices-guide .pg-stages>li:last-child strong{padding-bottom:8px;border-bottom:0}
@media(max-width:991px){.prices-guide .pg-stages-heading{padding-right:12px}.prices-guide .pg-stages strong{font-size:16px}}
@media(max-width:767px){.prices-guide .pg-stages-wrap{grid-template-columns:1fr;gap:28px;padding:26px 0}.prices-guide .pg-stages-heading{padding-right:0}.prices-guide .pg-stages>li{column-gap:16px}.prices-guide .pg-stages-heading p{margin-top:16px}}

/* Horizontal estimate sequence; scroll on narrow screens. */
.prices-guide .pg-stages-wrap{display:block;padding:32px 0}
.prices-guide .pg-stages-heading{padding:0;margin:0 0 32px}
.prices-guide .pg-stages-heading p{max-width:none;margin-top:16px}
.prices-guide .pg-stages{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;overflow-x:auto;padding:0 0 12px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#339ace #edf3f6}
.prices-guide .pg-stages>li{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:0 22px 0 0;position:relative;scroll-snap-align:start}
.prices-guide .pg-stages>li:last-child{padding:0}
.prices-guide .pg-stages>li:not(:last-child):before{left:42px;right:0;top:20px;bottom:auto;width:auto;height:2px;background:#dbeef7}
.prices-guide .pg-stages span{flex:0 0 42px}
.prices-guide .pg-stages strong,.prices-guide .pg-stages>li:last-child strong{padding:0;border:0;min-height:0;font-size:16px;line-height:1.5}
@media(max-width:991px){.prices-guide .pg-stages{grid-template-columns:repeat(6,200px)}.prices-guide .pg-stages-heading{margin-bottom:28px}}
@media(max-width:767px){.prices-guide .pg-stages-wrap{padding:26px 0}.prices-guide .pg-stages{grid-template-columns:repeat(6,190px)}.prices-guide .pg-stages>li{gap:16px;padding-right:24px}.prices-guide .pg-stages strong{font-size:15px}}

/* Six evenly spaced milestones across the content width. */
.prices-guide .pg-stages{width:100%;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;box-sizing:border-box}
.prices-guide .pg-stages>li,.prices-guide .pg-stages>li:last-child{display:flex;align-items:center;text-align:center;padding:0 12px;gap:20px;box-sizing:border-box}
.prices-guide .pg-stages>li:not(:last-child):before{left:50%;right:-50%;top:20px;height:2px;width:auto;background:#cfe7f3;z-index:0}
.prices-guide .pg-stages span{z-index:1;flex-shrink:0}
.prices-guide .pg-stages strong,.prices-guide .pg-stages>li:last-child strong{width:100%;max-width:220px;margin:0 auto;text-align:center;font-size:15px;line-height:1.55;font-weight:600;overflow-wrap:normal}
@media(max-width:991px){.prices-guide .pg-stages{grid-template-columns:repeat(6,minmax(175px,1fr))}}
@media(max-width:767px){.prices-guide .pg-stages>li,.prices-guide .pg-stages>li:last-child{padding:0 14px;gap:16px}.prices-guide .pg-stages strong{font-size:14px}}

/* Extend the timeline through both outer half-columns. */
.prices-guide .pg-stages>li:first-child:after{content:"";position:absolute;left:0;right:50%;top:20px;height:2px;background:#cfe7f3;z-index:0}
.prices-guide .pg-stages>li:last-child:before{content:"";position:absolute;left:50%;right:0;top:20px;bottom:auto;width:auto;height:2px;background:#cfe7f3;z-index:0}

/* Photographic assurance panel, matching the gas-block planning section. */
.prices-guide .pg-assurance{position:relative;isolation:isolate;display:block;box-sizing:border-box;width:min(1600px,calc(100vw - 40px));max-width:none;left:50%;transform:translateX(-50%);overflow:hidden;border:0;border-radius:60px;padding:56px max(40px,calc((min(1600px,100vw - 40px) - 1280px)/2));background:#1d3442 url('/images/estimate-agreement-v1.webp') center/cover no-repeat;color:#fff}
.prices-guide .pg-assurance:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,31,43,.96),rgba(15,31,43,.84) 48%,rgba(15,31,43,.22))}
.prices-guide .pg-assurance-copy{width:70%;max-width:850px}
.prices-guide .pg-assurance-copy>.pg-label{display:none}
main#panel .prices-guide .pg-assurance h2{color:#fff!important;margin:0 0 24px!important}
.prices-guide .pg-assurance p{font:400 16px/1.75 Montserrat,Arial,sans-serif;color:#fff;margin:0}
.prices-guide .pg-assurance .pg-guarantee{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:12px;row-gap:7px;padding:0;margin:24px 0 0;background:transparent;border:0;border-radius:0;box-shadow:none}
.prices-guide .pg-assurance .pg-check{grid-column:1;grid-row:1 / 3;display:block;width:auto;height:auto;padding:0;margin:0;background:transparent;color:#72d1ff;font-size:23px;line-height:1.3}
main#panel .prices-guide .pg-assurance .pg-guarantee h3{grid-column:2;margin:0!important;color:#fff;font:700 18px/1.4 Montserrat,Arial,sans-serif!important}
.prices-guide .pg-assurance .pg-guarantee p{grid-column:2;font-size:15px}
.prices-guide .pg-assurance .pg-estimate-button{margin-top:28px}
@media(max-width:991px){.prices-guide .pg-assurance{border-radius:40px;padding:40px 32px}.prices-guide .pg-assurance-copy{width:85%}}
@media(max-width:767px){.prices-guide .pg-assurance{width:calc(100vw - 24px);padding:32px 24px;border-radius:28px}.prices-guide .pg-assurance-copy{width:100%}.prices-guide .pg-assurance:before{background:rgba(15,31,43,.84)}.prices-guide .pg-assurance p{font-size:15px}.prices-guide .pg-assurance .pg-estimate-button{width:auto}}

/* Equal section-title sizes and balanced gaps after swapping the blocks. */
main#panel .prices-guide .pg-assurance h2,main#panel .prices-guide .pg-stages-heading h2{font-size:50px!important;font-weight:700!important;line-height:1.22!important;letter-spacing:normal!important}
.prices-guide .pg-assurance{margin-top:32px;margin-bottom:48px}
@media(max-width:1024px){main#panel .prices-guide .pg-assurance h2,main#panel .prices-guide .pg-stages-heading h2{font-size:40px!important}}
@media(max-width:767px){main#panel .prices-guide .pg-assurance h2,main#panel .prices-guide .pg-stages-heading h2{font-size:32px!important}.prices-guide .pg-assurance{margin-top:24px;margin-bottom:32px}}

/* Remove the divider above the estimate stages heading. */
.prices-guide .pg-stages-wrap{border-top:0}
