/* Only presentation controls. No widths/heights or grids are rebuilt here.
   A named cascade layer lets these VARIABLE-driven rules take precedence over
   the legacy theme's unlayered !important alignment rules without a selector war. */
@layer crresponsive {
  body.crr-enabled .cr-site,
  body.crr-enabled .cr-site :where(div,section,article,header,footer,nav,p,h1,h2,h3,h4,h5,h6,blockquote,figcaption,summary,li,label,small,strong,span,dt,dd,table,td,th,a) {
    text-align:var(--crr-align,left)!important;
    text-align-last:auto!important;
  }
  /* Position short introductions at the same edge as their text. */
  body.crr-enabled .cr-site :is(.lead,.cr-home-hero-description) {
    margin-inline-start:var(--crr-copy-start,0)!important;
    margin-inline-end:var(--crr-copy-end,auto)!important;
  }
  body.crr-enabled .cr-site .cr55-title-row {
    justify-content:var(--crr-flow,flex-start)!important;
  }
  body.crr-enabled .cr-site :is(.cr-entry-header h1,.cr55-tagline) {
    margin-inline-start:0!important;
    margin-inline-end:0!important;
  }
  body.crr-enabled .cr-site :is(.actions,.wp-block-buttons) {
    justify-content:var(--crr-btn-flow,center)!important;
  }
  body.crr-enabled .cr-site :is(a.btn,button.btn) {
    display:table!important;
    width:fit-content!important;
    max-width:100%!important;
    margin-inline-start:var(--crr-btn-start,auto)!important;
    margin-inline-end:var(--crr-btn-end,auto)!important;
    align-self:var(--crr-btn-flow,center)!important;
    text-align:center!important;
  }
  body.crr-enabled .cr-site .actions > .btn {
    margin-inline:0!important;
  }
  body.crr-enabled .cr-site .wp-block-buttons > .wp-block-button {
    margin-inline:0!important;
  }
  body.crr-enabled .cr-site .wp-block-button__link {
    text-align:center!important;
    justify-content:center!important;
  }
  body.crr-enabled .cr-site .service-body {
    align-items:stretch!important;
  }
  /* Field contents keep their ordinary, readable input alignment. */
  body.crr-enabled .cr-site :is(input:not([type=submit]):not([type=button]),textarea,select) {
    text-align:left!important;
  }
  @media(max-width:1024px) {
    body.crr-enabled .cr-site .cr55-title-row {
      flex-direction:column!important;
      align-items:var(--crr-flow,center)!important;
    }
    body.crr-enabled .cr-site .cr55-title-row .cr55-tagline {
      border-left:0!important;
      border-top:2px solid #bdcdbf;
      padding:10px 0 0!important;
    }
    body.crr-enabled .cr-site .cr-home-hero-description {
      margin-inline-start:var(--crr-copy-start,auto)!important;
      margin-inline-end:var(--crr-copy-end,auto)!important;
    }
  }
  @media(max-width:767px) {
    body.crr-enabled .cr-site .actions {
      align-items:var(--crr-btn-flow,center)!important;
    }
  }
}

/* v1.3.1: the user's Home quote only. Does not change other page headings. */
@layer crresponsive {
  body.crr-enabled .cr-site .crh-home-quote > .crh-quote__text {
    display:block!important;
  }
  body.crr-enabled .cr-site .crh-home-quote > .crh-quote__author {
    display:block!important;
    margin-top:0.55em;
    font-size:clamp(18px, 0.45em, 28px);
    line-height:1.4;
    font-style:normal;
    font-weight:normal;
    white-space:nowrap!important;
  }
}
