/* Product and channel sections share the site's viewport-based rem scale. */
.offering-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;padding-block:1.5rem}
.offering-links>a{display:flex;align-items:center;gap:1rem;padding:1.125rem 0;border-block:2px solid var(--ink);text-decoration:none;min-width:0}
.offering-number{font:700 2rem/1 var(--display);color:var(--blue-ink)}
.offering-links b,.offering-links small{display:block}
.offering-links b{font-size:1.0625rem}
.offering-links small{font-size:.8125rem;color:var(--muted);margin-top:.25rem}
.offering-links>a>span:last-child{margin-left:auto;font-size:1.5rem}
.offering-links>a:hover b{text-decoration:underline;text-decoration-color:var(--blue);text-underline-offset:.25rem}
.software-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.75rem}
.software-card{min-width:0;padding:2.125rem;border:2px solid var(--ink);border-radius:1.375rem;box-shadow:.375rem .375rem 0 var(--ink);display:flex;flex-direction:column;scroll-margin-top:1.5rem}
.bridge{background:#F3F2F0}
.dentalytics{background:#FBE9E8}
.software-topline{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}
.software-badge{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;line-height:1.4}
.software-symbol{font-size:2rem;width:3rem;height:3rem;display:grid;place-items:center;border:2px solid var(--ink);border-radius:.75rem;background:var(--green);transform:rotate(-5deg)}
.dentalytics .software-symbol{background:var(--lilac);transform:rotate(5deg)}
.software-card h3{font-size:2.75rem;letter-spacing:-.05em;margin-bottom:.875rem;overflow-wrap:anywhere}
.software-promise{font-size:1.125rem;font-weight:600;line-height:1.55;margin-bottom:1.5rem}
.product-visual{margin:0 0 1.5rem}
.product-visual-open{display:block;position:relative;width:100%;padding:0;border:1px solid #15171c38;border-radius:1rem;overflow:hidden;background:transparent;text-align:left}
.product-visual-open img{width:100%;height:auto;aspect-ratio:3/2;transition:transform .3s ease}
.product-visual-open:hover img{transform:scale(1.025)}
.product-zoom{position:absolute;bottom:.75rem;right:.75rem;padding:.4375rem .75rem;background:white;border:1px solid var(--ink);border-radius:99px;font-size:.75rem;font-weight:700;box-shadow:2px 2px 0 var(--ink)}
.product-visual figcaption{font-size:.75rem;color:#414955;line-height:1.5;margin-top:.625rem}
.plan-price{width:100%;border-block:1px solid #15171c33;padding:1rem 0;margin:0 0 1.25rem}
.plan-price b,.plan-price span{display:block}
.pricing .format>.pill{font-size:.75rem;white-space:normal;line-height:1.45;min-height:2rem;display:flex;align-items:center}
.pricing .format>p{min-height:3.3em}
.plan-price b{font-family:var(--display);font-size:2.5rem;line-height:1.2;margin-bottom:.5rem}
.plan-price span{font-size:.8125rem;line-height:1.5;color:#414955}
.pricing-extra{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.375rem;margin-top:1.75rem}
.extra-plan{display:flex;flex-direction:column;gap:1.25rem;padding:1.75rem;border:2px solid var(--ink);border-radius:1.125rem;background:#FBE9E8;min-width:0}
.extra-plan:last-child{background:#F3F2F0}
.extra-plan .eyebrow{margin-bottom:.75rem}
.extra-plan h3{font-size:1.75rem;margin-bottom:.75rem}
.extra-plan p{font-size:.9375rem;line-height:1.65;margin:0}
.extra-plan>div:last-child{border-top:1px solid #15171c33;padding-top:1.125rem;margin-top:auto}
.extra-price{font:700 2rem/1.3 var(--display);display:block}
.extra-period{display:block;font-size:.8125rem;color:#414955;margin:.375rem 0 1rem}
.extra-plan .text-button{font-size:.9375rem;min-height:44px}
.pricing-note{font-size:.875rem;line-height:1.7;color:var(--muted);max-width:70rem;margin:1.5rem 0 0}
#product-preview{width:min(94vw,1280px);max-width:none;max-height:94svh;padding:24px;border:2px solid var(--ink);border-radius:20px;box-shadow:8px 8px 0 var(--ink);overflow:auto}
#product-preview::backdrop{background:#15171cd9}
.product-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
#product-preview-title{font:700 24px/1.3 var(--body);text-transform:none;letter-spacing:-.02em;margin:0}
.product-preview-close{width:44px;height:44px;flex-shrink:0;font-size:30px;line-height:1;border:1px solid var(--ink);border-radius:50%;background:white}
#product-preview-image{width:100%;height:auto;max-height:calc(94svh - 150px);object-fit:contain;border-radius:12px}
#product-preview>p{margin:16px 0 0;font-size:13px;line-height:1.5;color:var(--muted)}
.product-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:.4375rem;padding:1.125rem .875rem;background:white;border:1px solid var(--ink);border-radius:.75rem;text-align:center;font-size:.75rem;font-weight:600;margin-bottom:1.5rem}
.product-flow b{color:var(--blue-ink);font-size:1rem}
.software-intro{font-size:1rem;line-height:1.65;margin-bottom:1.125rem}
.software-features{list-style:none;padding:0;margin:0 0 1.5rem}
.software-features li{position:relative;padding:1rem 0 1rem 1.625rem;border-top:1px solid #15171c26}
.software-features li:before{content:'↗';position:absolute;left:0;top:.9375rem;font-size:1.25rem}
.software-features b,.software-features span{display:block}
.software-features b{font-size:1rem;margin-bottom:.25rem}
.software-features span{font-size:.9375rem;color:#414955;line-height:1.6}
.software-bottom{margin-top:auto}
.software-bottom p{font-size:.8125rem;color:#414955;margin-bottom:1rem}
.software-bottom .btn{width:100%;min-height:3.5rem;box-shadow:.1875rem .1875rem 0 white}
.software-connection{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;padding:2rem 0 0;margin-top:1rem}
.connection-mark{font-size:3rem;color:var(--blue-ink)}
.software-connection h3{font-size:1.25rem;margin-bottom:.625rem}
.software-connection p{font-size:.9375rem;color:var(--muted);margin:0;max-width:65rem;line-height:1.65}
.software-connection .text-button{white-space:nowrap;margin-left:1rem;font-size:.9375rem}
.channel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.125rem}
.channel-card{min-width:0;border:2px solid var(--ink);border-radius:1.125rem;padding:1.5rem 1.25rem;display:flex;flex-direction:column;background:#fff}
.channel-heading{display:flex;align-items:center;gap:.75rem;margin-bottom:1.375rem}
.channel-icon{display:grid;place-items:center;flex:0 0 2.5rem;height:2.5rem;border:1px solid var(--ink);border-radius:.625rem;font:700 1.625rem/1 var(--body)}
.channel-heading .eyebrow{font-size:.625rem;letter-spacing:.05em;line-height:1.55;margin:0}
.channel-card h3{font-size:1.3125rem;line-height:1.3;margin-bottom:.875rem}
.channel-card p{font-size:.9375rem;line-height:1.7;margin-bottom:1.5rem;color:#414955}
.channel-foot{margin-top:auto;padding-top:.875rem;border-top:1px solid #15171c26;font-size:.75rem;font-weight:600;line-height:1.55}
.traffic-plan{display:flex;align-items:center;justify-content:space-between;gap:2.5rem;padding:2rem;margin-top:1.75rem;background:#F5F3F0;border:2px solid var(--ink);border-radius:1.125rem}
.traffic-plan h3{font-size:1.375rem;margin-bottom:.625rem}
.traffic-plan p{font-size:.9375rem;line-height:1.65;margin:0;max-width:50rem}
.traffic-plan .btn{flex-shrink:0;font-size:1rem}
.resilience-card{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:2.5rem;background:#F5F3F0;border:2px solid var(--ink);border-radius:1.375rem;box-shadow:.375rem .375rem 0 var(--ink);padding:2.75rem}
.resilience-copy,.infrastructure-card{min-width:0}
.resilience-copy h2{font-size:3.25rem;margin-bottom:1.5rem;line-height:1.17}
.resilience-copy h2 span{background:var(--yellow);box-decoration-break:clone;-webkit-box-decoration-break:clone;padding-inline:.2em}
.resilience-copy p{font-size:1rem;line-height:1.7;margin-bottom:1.25rem}
.resilience-copy .resilience-lead{font-size:1.1875rem;font-weight:700;line-height:1.5}
.resilience-channels{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;padding:0;margin:1.5rem 0}
.resilience-channels li{font-size:.8125rem;font-weight:600;border:1px solid var(--ink);border-radius:99px;padding:.375rem .875rem;background:white}
.resilience-channels li:nth-child(2){background:var(--lilac)}
.resilience-channels li:nth-child(3){background:#E1E1DF}
.resilience-copy .resilience-method{font-size:.9375rem;margin:0}
.infrastructure-card{padding:1.75rem;border:2px solid var(--ink);border-radius:1rem;background:#F3F2F0;display:flex;flex-direction:column}
.infrastructure-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}
.server-mark{width:6.25rem;height:6rem;flex-shrink:0}
.infrastructure-sticker{background:var(--blue);color:white;font-size:.8125rem;font-weight:700;line-height:1.4;padding:.625rem .875rem;border:2px solid var(--ink);box-shadow:.1875rem .1875rem 0 var(--ink);transform:rotate(5deg)}
.infrastructure-card .eyebrow{font-size:.6875rem;margin-bottom:.75rem;line-height:1.5}
.infrastructure-card h3{font-size:1.75rem;line-height:1.25;margin-bottom:1.25rem}
.infrastructure-card p{font-size:.9375rem;line-height:1.65;margin-bottom:1rem}
.infrastructure-card .text-button{font-size:.9375rem;align-self:flex-start;margin-top:auto;min-height:44px}
.resilience-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:2rem;border-top:1px solid #15171c55;padding-top:1.75rem}
.resilience-bottom p{font-size:.9375rem;line-height:1.6;margin:0}
.resilience-bottom .btn{font-size:1rem;flex-shrink:0;box-shadow:.1875rem .1875rem 0 white}
@media(max-width:1100px){.resilience-card{padding:2rem;gap:1.5rem}.resilience-copy h2{font-size:2.625rem}.infrastructure-card{padding:1.5rem}.infrastructure-card h3{font-size:1.5rem}.infrastructure-sticker{font-size:.6875rem;padding:.5rem}.resilience-bottom{gap:1.5rem}}
@media(max-width:900px){.resilience-card{grid-template-columns:minmax(0,1fr)}.resilience-copy h2{font-size:3rem}.infrastructure-top{justify-content:flex-start;gap:1.5rem}.resilience-bottom{align-items:flex-start;flex-direction:column}.resilience-copy p,.infrastructure-card p{font-size:1rem}}
@media(max-width:680px){.resilience-card{padding:1.5rem;gap:1.75rem;box-shadow:.25rem .25rem 0 var(--ink)}.resilience-copy h2{font-size:2.25rem}.resilience-copy .resilience-lead{font-size:1.125rem}.resilience-copy .resilience-method,.resilience-bottom p{font-size:1rem}.resilience-channels li{font-size:.8125rem;padding:.375rem .625rem}.infrastructure-card{padding:1.25rem}.infrastructure-card h3{font-size:1.5rem}.resilience-bottom .btn{width:100%;font-size:.9375rem;padding:1rem .75rem;gap:.5rem}}
@media(max-width:370px){.resilience-card{padding:1.125rem}.resilience-copy h2{font-size:2rem}.infrastructure-card{padding:1rem}.infrastructure-top{gap:.75rem}.server-mark{width:5rem;height:4.8rem}.infrastructure-card h3{font-size:1.375rem}.resilience-bottom .btn{font-size:.875rem}}
@media(min-width:1101px){.nav{gap:1.25rem}}
@media(max-width:1100px){
  .offering-links{gap:1.25rem}
  .offering-links>a{gap:.625rem}
  .offering-links b{font-size:.9375rem}
  .offering-links small{font-size:.75rem}
  .offering-number{font-size:1.625rem}
  .software-card{padding:1.5rem}
  .software-card h3{font-size:2.375rem}
  .software-promise{font-size:1rem}
  .software-promise br{display:none}
  .product-flow{font-size:.6875rem;padding:1rem .625rem;gap:.25rem}
  .channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .traffic-plan{align-items:flex-start;flex-direction:column;gap:1.5rem}
}
@media(max-width:760px){
  .offering-links{grid-template-columns:minmax(0,1fr);gap:0;padding-block:1rem}
  .offering-links>a{border-bottom:0;gap:1rem;min-height:5rem}
  .offering-links>a:last-child{border-bottom:2px solid var(--ink)}
  .offering-links b{font-size:1rem}
  .offering-links small{font-size:.8125rem}
  .software-grid{grid-template-columns:minmax(0,1fr);gap:1.75rem}
  .software-card{padding:1.5rem;box-shadow:.25rem .25rem 0 var(--ink)}
  .software-promise{font-size:1.0625rem}
  .product-flow{font-size:.75rem}
  .software-connection{grid-template-columns:auto 1fr;align-items:start;gap:1rem}
  .software-connection .text-button{grid-column:2;margin:0;justify-self:start}
  .software-connection p{font-size:1rem}
}
@media(max-width:680px){
  .pricing .format>p{min-height:0}
  .pricing-extra{grid-template-columns:minmax(0,1fr)}
  .extra-plan{padding:1.5rem}
  .extra-plan p{font-size:1rem}
  .pricing-note{font-size:1rem}
  #product-preview{padding:14px;border-radius:14px}
  #product-preview-title{font-size:20px}
  .product-zoom{font-size:.6875rem;bottom:.5rem;right:.5rem}
  .software-card h3{font-size:2.25rem}
  .software-features span,.channel-card p{font-size:1rem}
  .software-badge{font-size:.6875rem;max-width:11rem}
  .software-symbol{flex-shrink:0}
  .software-bottom .btn{font-size:1rem;padding:1rem .75rem;gap:.75rem;min-height:3.5rem}
  .channel-grid{grid-template-columns:minmax(0,1fr)}
  .channel-card{padding:1.5rem}
  .channel-card h3{font-size:1.5rem}
  .channel-heading .eyebrow{font-size:.6875rem}
  .channel-foot{font-size:.8125rem}
  .traffic-plan{padding:1.5rem;gap:1.5rem}
  .traffic-plan p{font-size:1rem}
  .traffic-plan .btn{width:100%;padding:1rem .75rem;gap:.625rem}
}
@media(max-width:370px){
  .software-card{padding:1.125rem}
  .software-card h3{font-size:2rem}
  .product-flow{grid-template-columns:1fr auto 1fr;font-size:.75rem;gap:.5rem;padding:.875rem .5rem}
  .product-flow>b:nth-child(4){display:none}
  .software-bottom .btn,.traffic-plan .btn{font-size:.875rem}
}

/* A focused dental team, including medical legal specialists. */
.team-card{display:grid;grid-template-columns:1fr 1fr;gap:3rem;padding:2.75rem;border:2px solid var(--ink);border-radius:1.375rem;box-shadow:.375rem .375rem 0 var(--ink);background:#F3F2F0}
.team-intro h2{margin-bottom:1.5rem}
.team-intro>p{font-size:1.0625rem;line-height:1.65;margin:0}
.team-intro .team-responsibility{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #15171c33}
.team-roles{list-style:none;margin:0;padding:0;display:grid;gap:1.25rem}
.team-roles li{display:flex;align-items:flex-start;gap:1rem;padding-bottom:1.25rem;border-bottom:1px solid #15171c33}
.team-roles li:last-child{padding-bottom:0;border-bottom:0}
.team-role-number{font:700 1.75rem/1.2 var(--display);color:var(--blue-ink)}
.team-roles h3{font-size:1.1875rem;line-height:1.4;margin:0 0 .5rem}
.team-roles p{font-size:.9375rem;line-height:1.6;margin:0}
.hero .cta-note a,.hero-context>p:last-child a{display:inline-block;text-decoration-color:#E1060070;text-underline-offset:3px}
@media(max-width:959px){.team-card{grid-template-columns:minmax(0,1fr);gap:2rem;padding:2rem}.team-intro>p{font-size:1rem}}
@media(max-width:599px){.team-card{padding:1.5rem 1.25rem;gap:1.5rem}.team-intro h2{font-size:2rem}.team-roles h3{font-size:1.0625rem}.team-roles p{font-size:.9375rem}.team-role-number{font-size:1.5rem}.team-roles li{gap:.75rem}}
