.business-hero { padding: 94px 0 100px; overflow: hidden; }
.business-hero h1 { font-size: clamp(42px,5vw,72px); line-height: 1.06; letter-spacing: -.055em; max-width: 930px; margin: 24px 0; text-wrap: balance; }
.business-hero .intro { max-width: 730px; }
.business-hero .button-row { margin-top: 30px; }
.pricing-hero { background: #e7ecdf; position: relative; }
.pricing-hero::after { content: ''; position: absolute; width: 430px; height: 430px; border: 1px solid #c2cfb1; border-radius: 50%; right: -160px; bottom: -270px; box-shadow: 0 0 0 45px #dce4d3, 0 0 0 46px #c2cfb1; pointer-events: none; }
.pricing-hero .shell { position: relative; z-index: 1; }
.pricing-hero .button-outline { color: #253c32; border-color: #879776; }
.pricing-hero .button-outline:hover { background: #d8e2cb; }
.dedicated-pricing { padding-top: 70px; }
.dedicated-pricing .section-heading { max-width: 760px; margin-bottom: 36px; }
.equipment-included { display: flex; align-items: center; gap: 26px; padding: 30px 36px; border: 1px solid #d0dbbf; background: #eef2e8; border-radius: 16px; margin-top: 32px; }
.equipment-included h3 { font-size: 26px; line-height: 1.2; margin: 0 0 8px; }
.equipment-included p { margin: 0; max-width: 800px; color: #485546; }
.equipment-symbol { flex: 0 0 72px; width: 72px; height: 72px; display: grid; place-items: center; border: 1px solid #b9c8a9; border-radius: 50%; font-size: 44px; font-weight: 600; color: #365440; }
.pricing-details-link { margin-top: 28px; }
.calculator-section { background: #253c32; color: #fff; }
.calculator-layout { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; align-items: start; }
.calculator-layout h2 { max-width: 460px; }
.calculator-layout .intro { color: #d0dccc; }
.calculator-layout .eyebrow { color: #d2e5b0; }
.price-calculator { background: #fff; border: 1px solid #dce5d3; border-radius: 20px; color: #202626; overflow: hidden; box-shadow: 0 20px 60px #0f201f25; }
.calculator-inputs { padding: 12px 30px; }
.calculator-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 0; border-bottom: 1px solid #e4e9e1; }
.calculator-row:last-child { border-bottom: 0; }
.calculator-row label { min-width: 0; }
.calculator-row strong { display: block; font-size: 20px; margin-bottom: 4px; }
.calculator-row label span { display: block; color: #5c665a; font-size: 13px; }
.calculator-row input { flex: 0 0 90px; width: 90px; height: 56px; border: 1px solid #acb9a3; background: #f8faf5; border-radius: 8px; padding: 8px 12px; font: inherit; font-size: 22px; text-align: center; }
.calculator-result { padding: 28px 30px 30px; background: #e7eedc; }
.calculator-result label { display: block; font-size: 15px; }
.calculator-result output { display: block; font-size: clamp(30px,4vw,50px); letter-spacing: -.04em; line-height: 1.2; margin: 8px 0 14px; overflow-wrap: anywhere; }
.calculator-result p { font-size: 13px; color: #4d5b46; margin: 0; }
.pricing-faq .shell { max-width: 960px; }
.business-faq { margin-top: 30px; }
.business-faq details { border-bottom: 1px solid #cdd7c4; }
.business-faq summary { list-style: none; display: flex; justify-content: space-between; gap: 25px; align-items: center; padding: 25px 0; font-size: 21px; font-weight: 500; cursor: pointer; }
.business-faq summary::-webkit-details-marker { display: none; }
.business-faq summary span { font-size: 28px; transition: transform .2s; }
.business-faq details[open] summary span { transform: rotate(45deg); }
.business-faq p { padding-bottom: 26px; margin: 0; max-width: 760px; color: #4e594b; }
.integrations-hero { background: #253c32; color: #fff; }
.integrations-hero .intro { color: #d3dfce; }
.integrations-hero .eyebrow { color: #d2e5b0; }
.integrations-hero .button-outline { border-color: #809477; color: #fff; }
.integration-hero-layout { display: grid; grid-template-columns: 1.08fr .92fr; gap: 50px; align-items: center; }
.integration-network { width: 100%; max-width: 500px; margin-inline: auto; aspect-ratio: 1; position: relative; }
.network-ring { position: absolute; inset: 15%; border: 1px solid #64765b; border-radius: 50%; box-shadow: 0 0 0 40px #ffffff03, 0 0 0 41px #64765b55; }
.network-ring::before,.network-ring::after { content: ''; position: absolute; top: 50%; left: -10%; width: 120%; height: 1px; background: #64765b; transform: rotate(45deg); }
.network-ring::after { transform: rotate(-45deg); }
.network-hub { display: grid; justify-items: center; align-content: center; gap: 12px; position: absolute; inset: 33%; border: 1px solid #8c9a79; border-radius: 24px; background: #e4ecd8; color: #253c32; box-shadow: 0 15px 40px #101e2060; }
.network-hub strong { font-size: 16px; }
.network-node { position: absolute; display: grid; place-items: center; width: 29%; height: 13%; background: #304a3d; border: 1px solid #667d5a; border-radius: 12px; font-size: 17px; box-shadow: 0 6px 16px #10251840; }
.network-node-0 { top: 7%; left: 7%; background: #fbc2a0; color: #253c32; }
.network-node-1 { top: 7%; right: 7%; background: #d2e5b0; color: #253c32; }
.network-node-2 { top: 43%; left: 0; }
.network-node-3 { top: 43%; right: 0; }
.network-node-4 { bottom: 7%; left: 7%; }
.network-node-5 { bottom: 7%; right: 7%; }
.own-api-section { background: #f6f7f2; }
.api-domain-links { display: flex; flex-wrap: wrap; gap: 10px; margin: 28px 0; }
.api-domain-links a { display: flex; gap: 14px; align-items: center; border: 1px solid #cad4bf; border-radius: 30px; padding: 11px 17px; font-size: 14px; color: #3b533c; transition: background .2s; }
.api-domain-links a:hover { background: #e3ecd7; }
.integration-categories { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin: 36px 0 16px; }
.integration-categories a,.integration-category-copy { min-width: 0; overflow-wrap: anywhere; hyphens: auto; }
.integration-categories a { display: flex; flex-direction: column; align-items: flex-start; padding: 22px; background: #edf1e5; border: 1px solid #d2dbc5; border-radius: 12px; font-size: 19px; font-weight: 500; gap: 16px; }
.integration-categories a > span:first-child { font-size: 12px; color: #55674b; }
.integration-categories a > span:last-child { margin-top: auto; }
.integration-categories a:hover { background: #dde8ce; }
.integration-category { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; padding-block: 65px; border-bottom: 1px solid #d9dfd2; scroll-margin-top: 105px; }
.integration-category:last-child { border-bottom: 0; padding-bottom: 0; }
.category-number { display: block; color: #637658; font-size: 13px; margin-bottom: 18px; }
.integration-category h3 { font-size: 36px; line-height: 1.15; letter-spacing: -.035em; margin: 0 0 20px; }
.integration-category-copy > p { color: #475644; }
.integration-status-note { border-left: 2px solid #bbce9e; padding-left: 20px; font-size: 14px; margin-top: 22px; }
.integration-category .integration-options { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 0; align-content: center; }
.integration-category .integration-options article { width: auto; min-width: 0; min-height: 165px; background: #fbfcf9; border-radius: 14px; padding: 20px 14px; }
.integration-category .provider-logo { height: 72px; }
.integration-category .integration-options article > span { display: block; font-size: 12px; text-align: center; }
.integration-directory { background: #fff; }
.api-coverage { background: #eef2e7; }
.coverage-list { margin-top: 36px; }
.coverage-item { border: 1px solid #cbd6c0; border-radius: 12px; background: #fff; margin-bottom: 12px; scroll-margin-top: 100px; }
.coverage-item summary { padding: 23px 26px; display: flex; gap: 20px; justify-content: space-between; cursor: pointer; list-style: none; font-size: 20px; font-weight: 500; }
.coverage-item summary::-webkit-details-marker { display: none; }
.coverage-item summary > span { color: #668049; flex-shrink: 0; }
.coverage-item[open] summary { border-bottom: 1px solid #e1e7db; }
.coverage-content { padding: 24px 26px; }
.coverage-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; margin-top: 24px; }
.coverage-columns h3 { font-size: 15px; margin: 0 0 12px; }
.coverage-columns ul { list-style: none; padding: 0; margin: 0; }
.coverage-columns li { margin-bottom: 6px; }
.coverage-columns code { font-size: 12px; line-height: 1.65; overflow-wrap: anywhere; color: #35492d; }
.coverage-write { grid-column: 1/-1; padding-top: 20px; border-top: 1px solid #dbe4d2; }
.coverage-content > p { margin: 0; color: #54604e; }
@media (max-width: 1050px) {
  .business-hero { padding-block: 65px; }
  .integration-hero-layout { gap: 20px; }
  .calculator-layout { gap: 40px; }
  .integration-category { gap: 40px; }
  .integration-categories { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .network-hub strong { font-size: 13px; }
}
@media (max-width: 760px) {
  .business-hero { padding-block: 45px 55px; }
  .business-hero h1 { font-size: 45px; }
  .integration-hero-layout,.calculator-layout,.integration-category { grid-template-columns: minmax(0,1fr); }
  .integration-network { max-width: 390px; }
  .integration-hero-layout { gap: 40px; }
  .network-hub strong { font-size: 15px; }
  .equipment-included { padding: 24px; gap: 18px; align-items: flex-start; }
  .equipment-symbol { flex-basis: 42px; width: 42px; height: 42px; font-size: 28px; }
  .equipment-included h3 { font-size: 23px; }
  .equipment-included p { font-size: 14px; }
  .calculator-inputs { padding-inline: 20px; }
  .calculator-row { gap: 12px; }
  .calculator-row input { flex-basis: 76px; width: 76px; }
  .calculator-result { padding: 24px 20px; }
  .calculator-row strong { font-size: 18px; }
  .calculator-row label span { font-size: 12px; }
  .integration-categories { gap: 10px; }
  .integration-categories a { padding: 18px; font-size: 16px; }
  .integration-category { padding-block: 42px; gap: 24px; }
  .integration-category h3 { font-size: 30px; }
  .coverage-columns { grid-template-columns: 1fr; gap: 24px; }
  .coverage-item summary { font-size: 18px; padding: 20px; }
  .coverage-content { padding: 20px; }
  .coverage-write { grid-column: auto; }
  .business-faq summary { font-size: 18px; }
}
@media (max-width: 380px) {
  .business-hero h1 { font-size: 39px; }
  .network-hub strong { font-size: 12px; }
  .network-node { font-size: 14px; }
  .integration-categories { grid-template-columns: 1fr; }
  .integration-categories a { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; }
  .integration-categories a > span:last-child { margin-top: 0; }
}

.home-next { background: #f3f5ef; }
.home-next-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; align-items: stretch; }
.home-next-card { padding: 40px; border-radius: 22px; border: 1px solid #d5deca; background: #fff; display: flex; flex-direction: column; align-items: flex-start; scroll-margin-top: 100px; }
.home-next-card h2 { font-size: clamp(32px,3vw,43px); margin: 18px 0 22px; }
.home-next-card > p:not(.eyebrow) { font-size: 15px; color: #53614e; }
.home-next-card > .button { margin-top: auto; }
.home-connections { background: #273d32; border-color: #273d32; color: #fff; }
.home-connections > .eyebrow { color: #d2e4b7; }
.home-connections > p:not(.eyebrow) { color: #d6e1d0; }
.home-connections .button-light { color: #fff; border-color: #8b9d80; }
.home-connections .button-light:hover { background: #38533f; }
.home-provider-names { display: flex; flex-wrap: wrap; gap: 10px; margin: 24px 0 20px; }
.home-provider-names span { border: 1px solid #7c926f; border-radius: 8px; padding: 7px 12px; font-size: 15px; font-weight: 550; }
.home-api-links { display: flex; gap: 24px; margin-bottom: 28px; color: #f9bf97; font-size: 15px; }
.home-api-links a { text-decoration: underline; text-underline-offset: 5px; }
.home-price-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px 28px; width: 100%; margin-top: 4px; }
.home-price { border-bottom: 1px solid #d9e0d2; padding-bottom: 15px; min-width: 0; }
.home-price h3 { font-size: 17px; line-height: 1.4; letter-spacing: -.02em; overflow-wrap: anywhere; }
.home-price .price { font-size: 37px; margin: 5px 0 0; line-height: 1.15; }
.home-price .price span { font-size: 13px; }
.home-next-card .home-price-period { font-size: 12px; margin-top: 14px; }
.home-next-card .home-equipment { color: #37532c; font-weight: 600; font-size: 16px; margin: 20px 0 24px; }
.home-equipment span { color: #55753e; margin-right: 5px; }
@media (max-width: 1050px) {
  .home-next-card { padding: 28px; }
  .home-next-grid { gap: 18px; }
}
@media (max-width: 760px) {
  .home-next-grid { grid-template-columns: 1fr; }
  .home-next-card { padding: 26px; }
  .home-next-card h2 { font-size: 33px; }
  .home-next-card .button { width: 100%; }
}
