/* Individual bar-processing and machining capabilities. */
.bar-service-page main { color: #14212b; }
.bar-service-page main .btn { display: inline-flex; justify-content: center; align-items: center; min-height: 54px; padding: 16px 25px; border-radius: 5px; font-size: 16px; text-align: center; }
.bar-service-page main a:focus-visible,
.bar-service-page main summary:focus-visible { outline: 3px solid #165ba5; outline-offset: 6px; }
.bar-service-hero { position: relative; isolation: isolate; overflow: hidden; display: flex; align-items: center; min-height: 690px; padding: 136px 0 76px; color: #fff; background: #142a3a; }
.bar-service-hero > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: center right; }
.bar-service-hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #0c1d2bf5 0%, #0c1d2bdb 37%, #0c1d2b66 70%, #0c1d2b33 100%); }
.bar-service-hero .breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 42px; color: #c6d9e8; font-size: 12px; }
.bar-service-hero .breadcrumbs a:hover { color: #fff; text-decoration: underline; }
.bar-service-copy { max-width: 830px; }
.bar-service-copy .eyebrow { margin: 0 0 22px; color: #bfd9ed; }
.bar-service-page .bar-service-copy h1 { margin: 0 0 26px; font-size: clamp(46px, 5.1vw, 76px); line-height: 1.06; letter-spacing: -.045em; font-weight: 400; }
.bar-service-copy h1 em { color: #acd1f1; font-weight: 400; }
.bar-service-copy > p:not(.eyebrow) { max-width: 610px; margin: 0 0 30px; font-size: 18px; line-height: 1.75; color: #dfebf4; }
.bar-service-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 15px 28px; }
.bar-service-text-link { display: inline-block; padding-block: 9px; color: #165ba5; font-size: 16px; line-height: 1.5; text-decoration: underline; text-decoration-color: #9db9cd; text-underline-offset: 6px; }
.bar-service-text-link:hover { text-decoration-color: currentColor; }
.bar-service-hero .bar-service-text-link { color: #fff; text-decoration-color: #8ca8bb; }
.bar-service-page main .bar-service-hero a:focus-visible,
.bar-service-page main .bar-service-review-note a:focus-visible,
.bar-service-page main .bar-service-process a:focus-visible { outline-color: #fff; }
.bar-service-jump { border-bottom: 1px solid #d5e0e7; background: #fff; }
.bar-service-jump .wrap { display: flex; flex-wrap: wrap; gap: 8px 35px; padding-block: 19px; }
.bar-service-jump a { padding-block: 5px; font-size: 15px; color: #244c67; }
.bar-service-jump a:hover { text-decoration: underline; text-underline-offset: 5px; }
.bar-service-section { padding: 88px 0; }
.bar-service-page .bar-service-section h2 { margin: 0 0 25px; font-size: clamp(34px, 3.55vw, 53px); font-weight: 400; line-height: 1.13; letter-spacing: -.04em; }
.bar-service-section h2 em { color: #165ba5; }
.bar-service-section .eyebrow { margin: 0 0 20px; color: #165ba5; }
.bar-service-section p { margin: 0 0 20px; font-size: 17px; line-height: 1.75; color: #506371; }
.bar-service-section p:last-child { margin-bottom: 0; }
.bar-service-intro-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: clamp(35px, 6vw, 90px); }
.bar-service-scope { display: flex; flex-wrap: wrap; gap: 12px 26px; margin-top: 27px; padding-top: 23px; border-top: 1px solid #d5e0e7; color: #244c67; font-size: 15px; }
.bar-service-benefits { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 34px; margin-top: 55px; }
.bar-service-benefits article { padding-top: 24px; border-top: 2px solid #acc3d4; }
.bar-service-benefits h3 { margin: 0 0 15px; font-size: 25px; line-height: 1.2; letter-spacing: -.025em; font-weight: 400; }
.bar-service-benefits p { font-size: 16px; }
.bar-service-plan { background: #eff4f7; }
.bar-service-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 65px; align-items: end; margin-bottom: 40px; }
.bar-service-heading h2,
.bar-service-heading > p { margin-bottom: 0; }
.bar-service-review { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(260px, .8fr); gap: 32px; }
.bar-service-requirements { margin: 0; background: #fff; border: 1px solid #d5e0e7; }
.bar-service-requirements > div { display: grid; grid-template-columns: minmax(130px, .7fr) minmax(0, 1.3fr); gap: 28px; padding: 25px 28px; }
.bar-service-requirements > div + div { border-top: 1px solid #d5e0e7; }
.bar-service-requirements dt { font-size: 17px; line-height: 1.55; color: #244c67; }
.bar-service-requirements dd { margin: 0; font-size: 16px; line-height: 1.7; color: #506371; }
.bar-service-review-note { display: flex; flex-direction: column; padding: 32px; color: #fff; background: #165ba5; }
.bar-service-review-note .eyebrow { color: #d4e6f3; }
.bar-service-review-note h3 { margin: 0 0 22px; font-size: 29px; line-height: 1.2; letter-spacing: -.03em; font-weight: 400; }
.bar-service-review-note p { color: #e3eef6; font-size: 16px; }
.bar-service-review-note .bar-service-text-link { margin-top: auto; color: #fff; text-decoration-color: #bdd7ea; }
.bar-service-process { color: #fff; background: #142a3a; }
.bar-service-process .eyebrow,
.bar-service-process h2 em { color: #acd1f1; }
.bar-service-process p { color: #d0e0eb; }
.bar-service-sequence { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 42px; padding: 0; margin: 45px 0 0; list-style: none; counter-reset: service-step; }
.bar-service-sequence li { border-top: 1px solid #517084; padding-top: 26px; counter-increment: service-step; }
.bar-service-sequence li::before { content: "0" counter(service-step); display: block; margin-bottom: 22px; color: #a4c6de; font-size: 14px; }
.bar-service-sequence h3 { font-size: 26px; line-height: 1.25; font-weight: 400; letter-spacing: -.025em; margin: 0 0 15px; }
.bar-service-sequence p { font-size: 16px; }
.bar-service-process .bar-service-text-link { color: #dceaf4; text-decoration-color: #6e90a7; }
.bar-service-case { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 65px; align-items: center; margin-top: 48px; padding-top: 38px; border-top: 1px solid #517084; }
.bar-service-case h3 { font-size: 28px; font-weight: 400; line-height: 1.25; margin: 0 0 15px; }
.bar-service-case p { font-size: 16px; }
.bar-service-case ol { margin: 0; padding-left: 24px; color: #d0e0eb; }
.bar-service-case li { padding-left: 8px; margin-bottom: 15px; font-size: 16px; line-height: 1.6; }
.bar-service-connected { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.bar-service-connected article { display: flex; flex-direction: column; padding: 29px; border: 1px solid #d5e0e7; background: #fff; }
.bar-service-connected h3 { font-size: 26px; font-weight: 400; line-height: 1.2; letter-spacing: -.025em; margin: 0 0 17px; }
.bar-service-connected p { font-size: 16px; margin: 0 0 22px; }
.bar-service-connected a { margin-top: auto; }
.bar-service-faq { padding-top: 0; }
.bar-service-faq-grid { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.3fr); gap: 75px; }
.bar-service-faq details { border-top: 1px solid #d5e0e7; }
.bar-service-faq details:last-child { border-bottom: 1px solid #d5e0e7; }
.bar-service-faq summary { display: flex; justify-content: space-between; align-items: baseline; gap: 25px; padding: 25px 0; cursor: pointer; list-style: none; font-size: 19px; line-height: 1.45; }
.bar-service-faq summary::-webkit-details-marker { display: none; }
.bar-service-faq summary::after { content: "+"; flex: 0 0 auto; color: #165ba5; font-size: 24px; line-height: 1; }
.bar-service-faq details[open] summary::after { content: "−"; }
.bar-service-faq details p { margin: 0 28px 25px 0; font-size: 16px; }
.bar-service-quote { background: #eff4f7; }
.bar-service-quote .bar-service-intro-grid { align-items: center; }
.bar-service-quote h2 { margin-bottom: 0; }
.bar-service-quote .bar-service-actions { margin-top: 27px; }
@media (max-width: 1000px) {
  .bar-service-review { grid-template-columns: minmax(0, 1.45fr) minmax(240px, .85fr); gap: 24px; }
  .bar-service-requirements > div { padding: 23px; grid-template-columns: minmax(100px, .65fr) minmax(0, 1.35fr); gap: 20px; }
  .bar-service-review-note { padding: 27px; }
  .bar-service-heading,
  .bar-service-faq-grid,
  .bar-service-case { gap: 38px; }
  .bar-service-benefits,
  .bar-service-sequence { gap: 28px; }
  .bar-service-connected { gap: 16px; }
  .bar-service-connected article { padding: 24px; }
}
@media (max-width: 760px) {
  .bar-service-hero { min-height: 620px; padding: 120px 0 60px; }
  .bar-service-hero::after { background: linear-gradient(90deg, #0c1d2bf0, #0c1d2b99); }
  .bar-service-hero .breadcrumbs { margin-bottom: 30px; font-size: 11px; gap: 8px; }
  .bar-service-page .bar-service-copy h1 { font-size: clamp(43px, 8vw, 60px); }
  .bar-service-copy > p:not(.eyebrow) { font-size: 17px; }
  .bar-service-jump .wrap { gap: 6px 24px; padding-block: 14px; }
  .bar-service-jump a { font-size: 14px; }
  .bar-service-section { padding: 58px 0; }
  .bar-service-page .bar-service-section h2 { font-size: clamp(32px, 6.4vw, 43px); }
  .bar-service-intro-grid,
  .bar-service-heading,
  .bar-service-review,
  .bar-service-faq-grid,
  .bar-service-case { grid-template-columns: minmax(0, 1fr); gap: 25px; }
  .bar-service-intro-grid h2 { margin-bottom: 0; }
  .bar-service-benefits { grid-template-columns: minmax(0, 1fr); gap: 25px; margin-top: 35px; }
  .bar-service-benefits article { padding-top: 21px; }
  .bar-service-benefits h3 { font-size: 24px; margin-bottom: 12px; }
  .bar-service-section p { font-size: 16px; }
  .bar-service-heading { margin-bottom: 32px; }
  .bar-service-review-note { padding: 29px; }
  .bar-service-sequence { grid-template-columns: minmax(0, 1fr); gap: 25px; margin-top: 33px; }
  .bar-service-sequence li { position: relative; padding: 23px 0 0 48px; }
  .bar-service-sequence li::before { position: absolute; top: 27px; left: 0; }
  .bar-service-sequence h3 { font-size: 24px; }
  .bar-service-connected { grid-template-columns: minmax(0, 1fr); gap: 18px; }
  .bar-service-connected article { padding: 28px; }
  .bar-service-faq { padding-top: 0; }
  .bar-service-faq summary { font-size: 18px; padding-block: 23px; }
  .bar-service-case { margin-top: 30px; padding-top: 29px; }
}
@media (max-width: 480px) {
  .bar-service-page .wrap { width: calc(100% - 40px); }
  .bar-service-page main .btn { width: 100%; padding-inline: 16px; }
  .bar-service-actions { gap: 13px; }
  .bar-service-actions > a:not(.btn) { margin-inline: auto; }
  .bar-service-requirements > div { grid-template-columns: minmax(0, 1fr); gap: 9px; }
  .bar-service-requirements dt { font-weight: 600; }
}
@media print {
  .bar-service-hero { min-height: 0; padding: 25px 0; color: #14212b; background: #fff; }
  .bar-service-hero > img,
  .bar-service-hero::after,
  .bar-service-hero .breadcrumbs,
  .bar-service-jump,
  .bar-service-actions,
  .bar-service-quote { display: none; }
  .bar-service-copy h1 em,
  .bar-service-copy .eyebrow { color: #165ba5; }
  .bar-service-copy > p:not(.eyebrow) { color: #506371; }
  .bar-service-section { padding: 28px 0; }
  .bar-service-process { background: #f0f4f7; color: #14212b; }
  .bar-service-process p,
  .bar-service-case ol { color: #506371; }
  .bar-service-process .eyebrow,
  .bar-service-process h2 em,
  .bar-service-process .bar-service-text-link { color: #165ba5; }
  .bar-service-faq details > p { display: block; }
}
