/* CTA study built on the single shared project design. */
.project-cta-page { --cta-height:64px; --cta-padding:28px; }
.project-cta-page :is(.button-orange,.consultation-button,.request-form__button) { min-height:64px; padding:18px 28px; font-size:18px; line-height:1.3; }
.project-cta-page .similar-button__order.button-orange { min-height:64px; font-size:18px; }
.project-estimate-band { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-top:40px; padding:28px 32px; border:1px solid #333; background:#171717; color:#fff; }
.project-estimate-band__copy { min-width:0; max-width:420px; }
.project-estimate-band h3 { font:400 28px/1.15 var(--first-font); letter-spacing:normal; margin:0 0 12px; }
.project-estimate-band p { font:400 16px/1.5 var(--first-font); color:#b9b9b9; margin:0; }
.project-estimate-band--planning { background:#efefef; border-color:#d7d7d7; color:#111; }
.project-estimate-band--planning p { color:#616161; }
.project-estimate-band__actions { display:flex; gap:12px; flex-shrink:0; }
.project-cta-page .estimate-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; white-space:nowrap; min-height:64px; padding:18px 22px; font-size:18px; opacity:1; cursor:default; }
.project-cta-page .estimate-button::after { display:none; }
.estimate-button img { width:22px; height:22px; flex:0 0 22px; filter:brightness(0) invert(1); }
.project-cta-page .estimate-button--max { background:transparent; color:inherit; border:1px solid #777; }
.project-estimate-band--planning .estimate-button--max img { filter:brightness(0); }
.project-cta-page .steps .steps-row .steps-bottom { grid-column:1/-1; grid-row:3; justify-content:center; gap:12px; margin-top:16px; flex-wrap:wrap; }
@media(max-width:1200px){
 .project-estimate-band { align-items:flex-start; flex-direction:column; gap:24px; }
 .project-estimate-band__copy { max-width:none; }
}
@media(max-width:768px){
 .project-cta-page { --cta-height:56px; --cta-padding:20px; }
 .project-cta-page :is(.button-orange,.consultation-button,.request-form__button),
 .project-cta-page .similar-button__order_mobile.button-orange { min-height:56px; padding:16px 20px; font-size:17px; }
 .project-estimate-band { margin-top:28px; padding:24px 20px; gap:20px; }
 .project-estimate-band h3 { font-size:26px; }
 .project-estimate-band p { font-size:15px; }
 .project-estimate-band__actions { width:100%; flex-direction:column; gap:10px; }
 .project-cta-page .estimate-button { width:100%; min-height:56px; font-size:16px; padding:16px; gap:10px; }
 .project-cta-page .steps .steps-row .steps-bottom { grid-row:auto; flex-direction:column; align-items:stretch; margin-top:24px; }
 .project-cta-page .steps-bottom__button { width:100%; }
}

/* A full-width headline followed directly by the two estimate actions. */
.project-estimate-band--packages { flex-direction:column; align-items:flex-start; gap:24px; }
.project-estimate-band--packages .project-estimate-band__copy { max-width:none; width:100%; }
.project-estimate-band--packages h3 { margin:0; }
.project-cta-page .estimate-button--max { transition:background-color .25s ease,border-color .25s ease,color .25s ease,box-shadow .25s ease; }
.project-cta-page .estimate-button--max img { transition:filter .25s ease; }
.project-cta-page .estimate-button--max:hover,
.project-cta-page .estimate-button--max:focus-visible { background:#ff6a33; border-color:#ff6a33; color:#fff; box-shadow:0 5px 18px #ff6a331a; }
.project-cta-page .estimate-button--max:hover img,
.project-cta-page .estimate-button--max:focus-visible img { filter:brightness(0) invert(1); }
.project-cta-page .estimate-button--max:active { background:#e85a25; border-color:#e85a25; box-shadow:none; }
@media(prefers-reduced-motion:reduce) {
 .project-cta-page .estimate-button--max,.project-cta-page .estimate-button--max img { transition:none; }
}

@media(min-width:769px) {
 .project-cta-page .steps .steps-row .steps-bottom {
  grid-column:2; grid-row:1; justify-content:flex-end; flex-wrap:nowrap; margin-top:0; gap:12px;
 }
 .project-cta-page .steps .steps-row > .steps-content { grid-column:1/-1; grid-row:2; }
 .project-cta-page .steps .steps-row > .steps__title { min-width:0; }
}
@media(min-width:769px) and (max-width:1200px) {
 .project-cta-page .steps .steps-row { grid-template-columns:minmax(180px,1fr) minmax(0,3fr); }
 .project-cta-page .steps .steps-row .steps-bottom { flex-wrap:wrap; min-width:0; width:100%; }
}

@media(min-width:769px) {
 .project-estimate-band--packages .project-estimate-band__actions { align-self:flex-end; justify-content:flex-end; }
}

/* Budget callout: a single aligned desktop row with slightly more compact actions. */
@media(min-width:769px) {
 .project-cta-page .project-estimate-band--packages { flex-direction:row; align-items:center; gap:28px; }
 .project-cta-page .project-estimate-band--packages .project-estimate-band__copy { width:auto; flex:1; min-width:0; }
 .project-cta-page .project-estimate-band--packages .project-estimate-band__actions { align-self:center; flex-shrink:0; }
 .project-cta-page .project-estimate-band--packages h3 { font-size:26px; }
 body.project-cta-page .project-estimate-band--packages .estimate-button { min-height:60px; padding:16px 20px; font-size:18px; gap:10px; }
 .project-cta-page .project-estimate-band--packages .estimate-button img { width:20px; height:20px; flex-basis:20px; }
}
@media(min-width:769px) and (max-width:1100px) {
 .project-cta-page .project-estimate-band--packages .project-estimate-band__actions { flex-direction:column; align-items:stretch; }
}
