/* Keep decorative artwork out of the text flow at every intermediate width. */
html { scrollbar-gutter: stable; }
.services-mosaic .service-ai h3,.services-mosaic .service-ai>p { width: 57%; }
.services-mosaic .service-chat { width: 30%; right: .5rem; }
.services-mosaic .service-card:has(.service-caption)::after { content: ''; position: absolute; inset: auto 0 0; height: 3rem; background: #080d0d; z-index: 1; pointer-events: none; }
.services-mosaic .service-card.pale:has(.service-caption)::after { background: #e9e6e0; }
.calc-visual .calc-types label { display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; }
.calc-visual .calc-types label>.type-text { flex: none; position: relative; z-index: 1; }
.calc-visual .type-picture { position: relative; inset: auto; flex: none; width: calc(100% + 1rem); height: 7rem; margin: 1.5rem -1rem -3rem 1rem; }
.calc-visual .calc-intro { display: grid; grid-template-columns: 1.1fr 1fr; gap: 1.5rem 3rem; align-items: end; min-height: 0; }
.calc-visual .calc-intro>p { position: static; max-width: 38ch; margin: 0; color: #d0d1cb; }
.calc-header-actions { position: static; grid-column: 1 / -1; justify-self: end; }
.calc-visual::before { background-image: linear-gradient(90deg,#080b0cf7 0%,#080b0cee 37%,#080b0cbd 68%,#080b0c75 100%),url('assets/calculator-scene.jpg'); }
.calc-visual .calc-extras label { position: relative; }
.calc-visual .calc-extras input { position: static; flex: none; align-self: center; }
.calc-visual .extra-icon { margin-left: 0; }
.calc-visual .calc-result { margin-top: 0; container-type: inline-size; }
.calc-visual #calc-price { font-size: clamp(1.5rem,9cqw,2.5rem); }
.calc-visual .calc-volume { display: grid; grid-template-columns: minmax(0,1fr) minmax(15rem,.65fr); gap: 1.5rem; margin-top: 0; align-items: end; }
.calc-visual .volume-slider { width: 100%; padding-top: 2.5rem; }
.calc-visual #block-count { top: .5rem; }
.calc-visual .volume-card { position: static; width: auto; }
.calc-visual .volume-card>svg { flex-shrink: 0; }
.calc-visual .volume-card>div { min-width: 0; }
.calc-visual .volume-card small br { display: none; }
.calc-visual .calc-design-fieldset>.calc-step-hint { width: auto; }
.calc-visual .calc-design { margin-top: 0; margin-left: 3.25rem; width: calc(100% - 3.25rem); }
.hero-stats { width: fit-content; padding: .5rem; margin-left: -.5rem; border-radius: .25rem; background: #0608086b; }
.discovery-note { bottom: 1.75rem; z-index: 2; background: #141b17; padding: .35rem .5rem; border-radius: .2rem; }
.process-browser { bottom: -2.5rem; }
@media(max-width:1199.98px) {
  .calc-visual .calc-volume { grid-template-columns: 1fr; }
  .calc-visual .calc-types { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .calc-visual .calc-types label { min-height: 12rem; }
  .calc-header-actions { justify-self: start; margin: 0; }
  .services-mosaic .service-build h3,.services-mosaic .service-build>p,
  .services-mosaic .service-ai h3,.services-mosaic .service-ai>p { width: 57%; }
  .services-mosaic .service-chat { width: 30%; right: .5rem; }
}
@media(max-width:991.98px) {
  .calc-visual .calc-intro { grid-template-columns: 1fr; gap: 1.25rem; }
  .calc-visual .calc-intro>p { margin: 0; max-width: 48ch; }
  .calc-visual .calc-types { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .services-mosaic .service-design { display: flex; flex-direction: column; }
  .services-mosaic .service-design>p { margin-bottom: 1.5rem; }
  .services-mosaic .service-site { position: relative; inset: auto; flex: none; margin: auto -2rem 2.5rem 1rem; width: calc(100% + 1rem); height: 14rem; }
  .services-mosaic .service-consult { display: flex; flex-direction: column; }
  .services-mosaic .service-paper { position: relative; inset: auto; flex: none; margin: 3rem -2rem -5rem 1rem; width: calc(100% + 1rem); height: 14rem; }
  .services-mosaic .consult-list { margin-bottom: 1rem; }
}
@media(max-width:767.98px) {
  .calc-visual .calc-types { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .calc-visual .calc-volume { grid-template-columns: 1fr; }
  .calc-visual .calc-design { grid-template-columns: 1fr; }
  .process-browser { position: relative; inset: auto; width: 90%; height: 12rem; margin: 3rem -2rem -4rem auto; }
  .discovery-card { min-height: 0; padding-bottom: 3rem; }
  .discovery-copy { max-width: 32ch; }
  .discovery-note { bottom: 1rem; }
}
@media(min-width:768px) and (max-width:991.98px) {
  .process-composition { grid-template-columns: 1fr; }
  .discovery-card { min-height: 0; padding-bottom: 3rem; }
  .process-browser { position: relative; inset: auto; width: 65%; height: 14rem; margin: 3rem -2rem -4rem auto; }
}
@media(max-width:575.98px) {
  .calc-visual::before { background-image: linear-gradient(#080b0ce8,#080b0ce8),url('assets/calculator-scene.jpg'); }
  .calc-visual .calc-design { margin-left: 0; width: 100%; }
  .service-cards.services-mosaic { grid-template-rows: auto; }
  .services-mosaic .service-design { min-height: 34rem; }
  .services-mosaic .service-build,.services-mosaic .service-ai { display: flex; flex-direction: column; min-height: 28rem; padding-bottom: 3.5rem; }
  .services-mosaic .service-build h3,.services-mosaic .service-build>p,
  .services-mosaic .service-ai h3,.services-mosaic .service-ai>p { width: 100%; }
  .services-mosaic .service-build>p br,.services-mosaic .service-ai>p br,.services-mosaic .service-design>p br { display: none; }
  .services-mosaic .service-code,.services-mosaic .service-chat { position: relative; inset: auto; flex: none; width: 65%; height: 13rem; margin: 2rem -.75rem -1rem auto; }
  .services-mosaic .service-code { height: 12rem; }
  .services-mosaic .service-code code { font-size: .625rem; }
  .services-mosaic .service-ai .round { right: 1.25rem; bottom: 1.25rem; }
  .service-orb { bottom: 8rem; left: 20%; }
  .services-mosaic .service-consult { min-height: 0; }
  .services-mosaic .service-paper { padding-top: 2rem; margin-top: 2rem; margin-bottom: -4rem; }
  .services .section-heading .text-link { position: static; margin: 0; }
  .calc-visual .calc-types label { min-height: 13rem; }
  .calc-visual .type-picture { height: 7rem; }
  .calc-visual .calc-extras label { gap: .75rem; }
  .calc-visual .calc-extras .extra-icon { width: 1.5rem; }
  .process-stages li { grid-template-columns: 1.5rem minmax(0,1fr); }
  .process-stages .stage-art { grid-column: 2; justify-self: end; width: 7rem; height: 4.75rem; margin-top: .75rem; }
  .process-stages .launch-art { height: 5.5rem; }
  .process-stages .launch-art>span { width: 3.75rem; height: 3.75rem; }
  .process-stages .launch-art small { right: 0; font-size: .55rem; }
  .stage-copy p { max-width: none; }
  .process-footer { flex-wrap: wrap; }
  .process-footer p { max-width: none; }
}
@media(max-width:359.98px) {
  .hero h1 { font-size: 1.875rem; }
  .brand small { font-size: .625rem; }
  .calc-visual .calc-types { grid-template-columns: 1fr; }
  .calc-visual .calc-types label { min-height: 12rem; }
  .calc-visual #calc-price { font-size: 1.625rem; }
  .result-tabs button { font-size: .6875rem; }
  .calc-visual legend { font-size: .875rem; }
}
