/* Centered phone and portrait-tablet layouts; embedded form controls retain
   their provider's input alignment and behavior. */
@media (max-width:900px) {
  main,.footer {text-align:center}
  .hero-grid {padding-top:38px;gap:34px}
  .hero-copy {max-width:620px;width:100%;margin-inline:auto}
  .hero h1 {font-size:clamp(44px,10.8vw,68px);line-height:1.08;max-width:560px;margin-inline:auto}
  .hero h1 br:nth-child(2) {display:block}
  .hero h1 span:before {content:none}
  .hero .eyebrow {max-width:330px;margin-inline:auto;line-height:1.9}
  .eyebrow-line {display:block;width:30px;margin:0 auto 13px}
  .hero-description {max-width:520px;margin-inline:auto;line-height:1.8}
  .hero .button-row {grid-template-columns:1fr 1fr;max-width:430px;margin-inline:auto}
  .button {justify-content:center;min-height:52px;gap:18px}
  .hero-proof {justify-content:center}
  .hero-visual {max-width:540px;padding-left:28px}
  .photo-tag {left:43px}
  .trust-inner {justify-content:center;gap:17px 24px;padding-block:24px}
  .trust-bbb {width:100%;padding:0}
  .trust-bbb img {margin-inline:auto}
  .trust-inner>span:nth-child(5) {margin-left:0}
  .section-heading,.intro-copy,.page-intro h1,.service-detail h2 {margin-inline:auto}
  .section-heading>.text-link {margin-top:20px}
  .service-card-body p {padding-right:0}
  .more-services,.service-jump>.container,.filter-bar,.error-actions {justify-content:center}
  .more-services>a,.service-jump a {display:inline-flex;align-items:center;justify-content:center;min-height:44px}
  .project-caption {flex-direction:column;gap:6px}
  .check-list {justify-items:center}
  .check-list li {justify-content:center;max-width:440px}
  .check-list li:before {flex-shrink:0}
  .process-grid p {margin-inline:auto;max-width:540px}
  .step {max-width:180px;margin-inline:auto}
  .about-copy>.button {margin-top:24px}
  .cta-actions {justify-items:center}
  .cta-inner p:not(.eyebrow) {margin-inline:auto;max-width:520px}
  .contact-grid aside>p {max-width:540px;margin-inline:auto}
  .contact-details {max-width:540px;margin-inline:auto}
  .integration-panel {text-align:left}
  .integration-panel>.integration-note {text-align:center}
  .footer-top {grid-template-columns:1fr 1fr;gap:36px 24px;padding-block:48px}
  .footer-brand {grid-column:1/-1;grid-row:auto}
  .footer-brand>p {max-width:460px;margin-inline:auto}
  .footer-badges {margin-inline:auto}
  .footer-nav,.footer-legal {grid-column:auto;grid-row:auto}
  .footer h2:after {margin-inline:auto}
  .footer-nav>a {justify-content:center;min-height:44px}
  .footer-contact-items {grid-template-columns:1fr;max-width:400px;margin-inline:auto;gap:0}
  .footer-contact .contact-item {display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 0 20px;margin:0 0 20px}
  .footer-contact .contact-icon {margin:0;width:43px;height:43px}
  .footer-contact .contact-item strong {font-size:14px}
  .footer-payments {display:block;margin-top:24px}
  .footer-payments>p br {display:none}
  .payment-marks {justify-content:center;margin-top:14px}
  .footer-bottom {display:flex;flex-direction:column;justify-content:center;gap:15px;padding:26px 0}
  .footer-credit {justify-content:center;gap:15px}
  .footer-credit span {max-width:none;white-space:nowrap}
  .footer-bottom>p {text-align:center}
  .footer-bottom>p>span {display:block}
  .nav.is-open {text-align:center}
  .nav>a.nav-pay {justify-content:center}
  .nav .button {align-self:center;width:min(100%,340px)}
}
@media (max-width:600px) {
  .hero .button-row {grid-template-columns:1fr;width:100%;max-width:340px;gap:12px}
  .hero-copy .button {font-size:13px;min-height:54px;padding:15px 20px;gap:20px}
  .hero-proof {flex-direction:column;gap:7px;margin-top:25px}
  .hero-proof p {font-size:12px}
  .proof-stars {font-size:17px;letter-spacing:3px}
  .hero-proof a {display:inline-block;padding:5px 0}
  .hero-visual {padding-left:20px;height:430px}
  .photo-tag {left:32px}
  .hero-side-note {display:none}
  .cta-actions {width:100%;max-width:340px;margin-inline:auto}
  .cta-actions .button {width:100%;min-width:0}
  .footer-credit {flex-direction:column;gap:9px}
  .footer-credit img {width:135px}
}
@media (max-width:380px) {
  .hero h1 {font-size:44px}
  .hero .eyebrow {font-size:8px}
  .hero-visual {height:385px}
  .check-list li {font-size:12px;gap:7px}
  .footer-nav>a {gap:7px;font-size:11px}
}
