/* Keep grid children inside their tracks, even when text is long or zoomed. */
.container{width:calc(100% - 40px);max-width:1180px}
.results-grid{grid-template-columns:minmax(0,1fr)}
.results-grid>article,.three-grid>article,.fit-grid>article{min-width:0;overflow-wrap:anywhere}
.pricing-short h2{max-width:100%;overflow-wrap:anywhere}
.idea-strip{width:100%;}
@media(min-width:720px){.container{width:calc(100% - 80px)}}
@media(min-width:720px) and (max-width:959px){.results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.results-grid .result-main{grid-column:1/-1}}
@media(min-width:960px){.results-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Give display headings a deliberate buffer before the content they introduce. */
.home-hero h1 + .hero-lede{margin:24px 0 0}
.page-hero h1 + .answer-block{margin:24px 0 0}
.page-hero .button-row{margin-top:32px}
.page-hero .answer-block + .button{margin-top:32px}
.section .container > h2 + :is(.results-grid,.three-grid,.four-grid,.fit-grid,.card-grid,.security-grid,.faq-list,.steps){margin-top:32px}
.four-grid article > b + h3,.three-grid a > b + h3{margin-top:16px}
.three-grid article > h3:first-child,.fit-grid article > h3:first-child,.security-grid article > h3:first-child{margin-top:0}
.results-grid article > p + h3{margin-top:18px}
.pricing-short .three-grid article > h3:first-child{margin-top:0}
.problem-band h2 + p:not(.eyebrow),
.final-cta h2 + p:not(.eyebrow){margin:22px 0 0}
.final-cta h2 + p:not(.eyebrow) + .button-row{margin-top:28px}
@media(max-width:719px){
  .home-hero,.page-hero{padding-top:56px;padding-bottom:64px}
  .home-hero h1 + .hero-lede,.page-hero h1 + .answer-block{margin-top:20px}
  .page-hero .button-row{margin-top:28px}
  .page-hero .answer-block + .button{margin-top:28px}
  .section .container > h2 + :is(.results-grid,.three-grid,.four-grid,.fit-grid,.card-grid,.security-grid,.faq-list,.steps){margin-top:26px}
}
