/* Clinic homepage. Shared navigation and footer retain their approved menus. */
.clinic-home {
  background:#fff;
  color:#142d43
}
.clinic-home .container {
  max-width:1240px;
  width:calc(100% - 64px)
}
.clinic-home :where(main) h1,.clinic-home :where(main) h2,.clinic-home :where(main) h3 {
  color:#153149
}
.clinic-home :where(main) p {
  color:#526476
}
.clinic-home :is(a,button,input,select,summary):focus-visible {
  outline:3px solid #2674ba;
  outline-offset:4px
}
.clinic-home .site-header {
  min-height:83px
}
.hc-section {
  padding:88px 0
}
.hc-warm {
  background:#f7f6f2
}
.hc-pale {
  background:#eef5f8
}
.hc-kicker {
  font-size:14px;
  letter-spacing:1.8px;
  font-weight:700;
  text-transform:uppercase;
  color:#235e84!important;
  margin:0 0 18px
}
.hc-section-head {
  max-width:780px;
  margin-bottom:36px
}
.hc-section-head h2 {
  font-size:clamp(28px,3.1vw,40px);
  line-height:1.2;
  letter-spacing:-1.1px;
  margin-bottom:18px;
  text-wrap:balance
}
.hc-section-head p:last-child {
  margin-bottom:0
}
.hc-section-head>p:not(.hc-kicker) {
  font-size:18px;
  line-height:1.8;
  max-width:740px
}
.hc-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:48px;
  padding:13px 21px;
  border:1px solid #174f82;
  border-radius:6px;
  font:inherit;
  font-weight:700;
  font-size:16px;
  line-height:1.4;
  color:#fff;
  background:#174f82;
  cursor:pointer;
  text-align:center;
  transition:background .15s ease
}
.hc-button:hover {
  background:#103d66
}
.hc-button:disabled {
  opacity:.65;
  cursor:wait
}
.hc-button-secondary {
  background:transparent;
  border-color:#bacbd7;
  color:#174466
}
.hc-button-secondary:hover {
  background:#eaf1f5
}
.hc-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px
}
.hc-text-link {
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  color:#1a5581;
  font-size:16px;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:4px
}
.hc-hero {
  background:radial-gradient(ellipse at 85% 35%,#e3edf1 0,transparent 55%),#f8faf9;
  padding:76px 0 60px;
  overflow:hidden
}
.hc-hero-grid {
  display:grid;
  grid-template-columns:1.15fr 1fr;
  align-items:center;
  gap:44px
}
.hc-hero h1 {
  font-size:clamp(36px,3.5vw,51px);
  max-width:650px;
  line-height:1.12;
  letter-spacing:-1.8px;
  font-weight:700
}
.hc-hero h1 em {
  font-style:normal;
  color:#27678e
}
.hc-hero .hc-kicker {
  font-size:14px;
  display:flex;
  align-items:center;
  gap:8px
}
.hc-dot {
  width:7px;
  height:7px;
  border-radius:50%;
  background:#3a917e
}
.hc-lead {
  font-size:18px;
  line-height:1.75;
  margin:24px 0
}
.hc-hero-support {
  font-size:14px;
  font-weight:700;
  margin:24px 0 12px
}
.hc-hero-support span {
  padding:0 4px;
  color:#8babbc
}
.hc-secondary-identity {
  font-size:14px;
  max-width:440px;
  margin:0
}
.hc-product {
  margin:0;
  background:#fff;
  border:1px solid #ccdae3;
  border-radius:12px;
  box-shadow:0 24px 60px #274b6420;
  overflow:hidden
}
.hc-product-top {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:17px 20px;
  gap:10px;
  border-bottom:1px solid #e3eaf0
}
.hc-product-brand {
  font-weight:800;
  color:#215a84;
  font-size:18px
}
.hc-product-brand>span {
  font-size:14px;
  font-weight:400;
  color:#687e8b
}
.hc-demo-badge {
  border:1px solid #d4e0e6;
  border-radius:4px;
  padding:3px 7px;
  color:#526878;
  font-size:14px;
  white-space:nowrap
}
.hc-product-body {
  padding:26px 22px 22px
}
.hc-product-heading {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:22px
}
.hc-micro {
  font-size:14px;
  font-weight:700;
  letter-spacing:1.2px;
  color:#567080
}
.hc-product-heading p {
  font-size:25px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:-.6px;
  color:#173c54;
  margin:10px 0 0
}
.hc-product-symbol {
  width:54px;
  height:54px;
  border-radius:50%;
  background:#e9f2f5;
  text-align:center;
  line-height:54px;
  font-size:30px;
  color:#2a6a8b
}
.hc-enquiry {
  padding:14px 12px;
  border:1px solid #dbe7ec;
  background:#f4f8fa;
  border-radius:7px;
  display:flex;
  gap:10px;
  align-items:center
}
.hc-app-icon {
  flex:0 0 30px;
  width:30px;
  height:30px;
  text-align:center;
  line-height:30px;
  background:#dceaf0;
  border-radius:6px;
  font-size:20px
}
.hc-enquiry strong {
  display:block;
  font-size:14px
}
.hc-enquiry p {
  font-size:14px;
  margin:1px 0 0
}
.hc-status {
  margin-left:auto;
  background:#dfede4;
  color:#286148;
  font-size:14px;
  padding:3px 6px;
  border-radius:4px
}
.hc-pipeline {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:24px 0
}
.hc-pipeline>div {
  background:#f2f5f7;
  padding:8px;
  border-radius:5px;
  min-width:0
}
.hc-pipeline h3 {
  font-size:14px;
  margin:3px 0 10px
}
.hc-mini-card {
  min-height:116px;
  background:#fff;
  padding:10px 8px;
  border:1px solid #e0e7eb;
  border-radius:5px
}
.hc-mini-source {
  display:block;
  font-size:14px;
  color:#637786;
  margin-bottom:7px
}
.hc-mini-card strong {
  font-size:14px;
  display:block
}
.hc-mini-card p {
  font-size:14px;
  margin:5px 0 10px
}
.hc-mini-tag {
  display:inline-block;
  font-size:14px;
  padding:3px 5px;
  border-radius:3px;
  background:#edf3f7;
  color:#386480
}
.hc-tag-green {
  background:#e4f0e9;
  color:#326649
}
.hc-appointment {
  display:flex;
  gap:12px;
  align-items:center;
  border-top:1px solid #e5ebee;
  padding-top:15px
}
.hc-appointment>span {
  color:#2c7555;
  background:#e6f1e9;
  border-radius:50%;
  width:29px;
  height:29px;
  text-align:center;
  line-height:29px
}
.hc-appointment strong {
  font-size:14px
}
.hc-appointment p {
  font-size:14px;
  margin:1px 0 0
}
.hc-product figcaption {
  padding:9px 20px;
  font-size:14px;
  color:#5b6e7b;
  background:#f7f9fa;
  border-top:1px solid #e3eaf0
}
.hc-trust {
  border-bottom:1px solid #e2e9ed;
  padding:28px 0;
  background:#fff
}
.hc-trust h2 {
  font-size:17px;
  text-align:center;
  letter-spacing:0
}
.hc-trust ul {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px 28px;
  padding:0;
  margin:15px 0 0;
  list-style:none;
  font-size:14px;
  color:#556b7a
}
.hc-trust li::before {
  content:'✓';
  color:#34765b;
  padding-right:9px
}
.hc-cards {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-bottom:30px
}
.hc-card {
  padding:26px;
  border:1px solid #dce6ed;
  border-radius:8px;
  background:#fff
}

.hc-card h3 {
  font-size:19px;
  margin:0 0 12px;
  line-height:1.3
}
.hc-card p {
  font-size:16px;
  line-height:1.8;
  margin:0
}
.hc-card .hc-text-link {
  margin-top:12px;
  font-size:14px
}
.hc-dark {
  background:#133d59
}
.hc-dark :is(h2,h3) {
  color:#fff
}
.hc-dark p {
  color:#cfdee8
}
.hc-dark .hc-kicker {
  color:#a8ccd9!important
}
.hc-dark .hc-button-secondary {
  border-color:#7193a8;
  color:#fff
}
.hc-dark .hc-button-secondary:hover {
  background:#255470
}
.hc-connected {
  list-style:none;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding:0;
  margin:42px 0 30px;
  gap:30px
}
.hc-connected li {
  border-top:1px solid #50748a;
  padding-top:20px;
}

.hc-connected h3 {
  font-size:23px;
  margin-bottom:10px
}
.hc-connected p {
  font-size:16px;
  margin:0;
  max-width:340px
}
.hc-workflow {
  display:flex;
  list-style:none;
  margin:0 0 35px;
  padding:0;
  gap:22px
}
.hc-workflow li {
  position:relative;
  flex:1;
  background:#fff;
  border:1px solid #d6e2e8;
  border-radius:6px;
  padding:16px 10px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-size:14px;
  font-weight:700
}
.hc-workflow li:not(:last-child)::after {
  content:'→';
  position:absolute;
  right:-18px;
  color:#647e8b
}
.hc-crm-details {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:center
}
.hc-checks {
  padding:0;
  margin:0;
  list-style:none
}
.hc-checks li {
  position:relative;
  padding:12px 0 12px 27px;
  font-size:17px;
  border-bottom:1px solid #dce4e8
}
.hc-checks li::before {
  content:'✓';
  position:absolute;
  left:0;
  color:#377b67;
  font-weight:700
}
.hc-boundary {
  background:#e8eff1;
  padding:30px;
  border-radius:8px
}
.hc-boundary h3 {
  font-size:25px;
  margin:12px 0 16px;
  line-height:1.3
}
.hc-boundary p {
  font-size:16px
}
.hc-case-grid {
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:70px;
  align-items:center
}
.hc-project-facts {
  margin:0 0 20px
}
.hc-project-facts>div {
  display:grid;
  grid-template-columns:90px 1fr;
  gap:20px;
  border-top:1px solid #dce6ed;
  padding:12px 0;
  font-size:16px
}
.hc-project-facts dt {
  color:#6a7e8b
}
.hc-project-facts dd {
  margin:0
}
.hc-case-status {
  font-size:16px
}
.hc-project-art {
  min-height:370px;
  padding:36px;
  display:flex;
  flex-direction:column;
  background:#e7e9e1;
  border-radius:10px;
  border:1px solid #d8dece
}
.hc-project-art>p {
  font-family:Georgia,serif;
  color:#394a3f;
  font-size:52px;
  letter-spacing:-2px;
  margin:40px 0 20px
}
.hc-project-art>p span {
  display:block;
  font:14px Arial,sans-serif;
  letter-spacing:2.7px;
  text-transform:uppercase;
  margin-top:-5px
}
.hc-project-location {
  font-size:16px;
  color:#4b5e51;
  display:block
}
.hc-project-location>span {
  float:right;
  font-size:36px
}
.hc-project-art>small {
  border-top:1px solid #bbc8b7;
  padding-top:15px;
  margin-top:auto;
  font-size:14px;
  color:#4d6252
}
.hc-journey {
  list-style:none;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:32px;
  padding:0;
  margin:0
}
.hc-journey li {
  display:flex;
  gap:14px
}

.hc-journey h3 {
  font-size:18px;
  margin:7px 0 12px
}
.hc-journey p {
  font-size:16px;
  margin-bottom:10px
}
.hc-journey small {
  display:block;
  font-size:14px;
  color:#376580
}
.hc-two-column {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center
}
.hc-capabilities {
  padding:0;
  margin:0;
  list-style:none
}
.hc-capabilities a {
  border-bottom:1px solid #d8e3ea;
  padding:18px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  font-size:17px
}
.hc-capabilities a:hover {
  color:#23618d
}
.hc-capabilities span {
  color:#47778f
}
.hc-process {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  list-style:none;
  padding:0;
  margin:0 0 30px;
  gap:28px
}
.hc-process li {
  border-top:2px solid #98b4c8;
  padding-top:20px
}
.hc-process li>span {
  font-size:14px;
  color:#48758f
}
.hc-process h3 {
  margin:20px 0 12px;
  font-size:22px
}
.hc-process p {
  font-size:16px
}
.hc-proof {
  background:#edf3f5
}
.hc-proof-note {
  border-left:2px solid #9cb5c2;
  padding:12px 0 12px 32px
}
.hc-proof-note h3 {
  font-size:30px;
  margin-bottom:18px
}
.hc-faq-grid {
  display:grid;
  grid-template-columns:.75fr 1.25fr;
  gap:64px;
  align-items:start
}
.hc-faq {
  width:100%;
  max-width:none;
  margin:0
}
.hc-faq details {
  background:#fff;
  border-radius:5px;
  border:1px solid #d8e3e9;
  padding:0
}
.hc-faq summary {
  font-size:17px;
  padding:20px 42px 20px 20px;
  min-height:52px
}
.hc-faq details p {
  padding:0 20px 20px;
  margin:0;
  font-size:16px
}
.hc-audit-section {
  background:#153d58
}
.hc-audit-grid {
  display:grid;
  grid-template-columns:.9fr 1.1fr;
  gap:75px;
  align-items:start
}
.hc-audit-section .hc-section-head h2 {
  color:#fff
}
.hc-audit-section .hc-section-head p,.clinic-home .hc-audit-contact {
  color:#d2e2eb
}
.hc-audit-section .hc-kicker {
  color:#a9d0e1!important
}
.hc-audit-section .hc-checks {
  color:#e3eef3
}
.hc-audit-section .hc-checks li {
  border-color:#47697e
}
.hc-audit-section .hc-checks li::before {
  color:#a2d0ba
}
.hc-audit-contact {
  margin-top:28px;
  font-size:16px
}
.hc-audit-contact a {
  color:#fff
}
.hc-audit-form {
  position:relative;
  background:#fff;
  padding:32px;
  border-radius:10px
}
.hc-audit-form h3 {
  font-size:24px;
  margin-bottom:10px
}
.hc-audit-form>p {
  font-size:16px
}
.hc-form-fields {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px
}
.hc-field-wide {
  grid-column:1/-1
}
.hc-form-fields label {
  display:block;
  font-size:14px;
  font-weight:700;
  margin-bottom:7px
}
.hc-form-fields label span {
  font-weight:400;
  color:#667683
}
.hc-form-fields :is(input,select) {
  width:100%;
  min-width:0;
  min-height:46px;
  border:1px solid #b8c9d5;
  border-radius:4px;
  background:#fff;
  padding:10px 12px;
  font:inherit;
  font-size:16px;
  color:#17364e
}
.hc-field-help {
  margin:-10px 0 0;
  font-size:14px
}
.hc-honeypot {
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip-path:inset(50%)
}
.hc-form-boundary {
  border-top:1px solid #dce5eb;
  padding-top:16px;
  margin:20px 0 15px
}
.hc-consent {
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-bottom:20px;
  font-size:14px;
  line-height:1.6;
  cursor:pointer;
  min-height:44px
}
.hc-consent input {
  flex:0 0 20px;
  width:20px;
  height:20px;
  margin:1px 0 0;
  accent-color:#174f82
}
.hc-consent a {
  text-decoration:underline;
  text-underline-offset:3px
}
.hc-audit-form>button {
  width:100%
}
.hc-form-status {
  border:1px solid #b4c9d5;
  padding:15px;
  margin:16px 0 0;
  border-radius:5px;
  background:#eef5f8
}
.hc-form-status[data-state=error] {
  color:#852e29;
  border-color:#c9918d;
  background:#fff3f2
}
.hc-form-status[data-state=success] {
  color:#236042;
  background:#edf7f0
}
@media(max-width:1120px) {
  .hc-hero-grid {
    gap:28px
  }
  .hc-hero h1 {
    font-size:40px
  }
  .hc-product-brand>span {
    display:none
  }
  .hc-hero .hc-actions {
    flex-direction:column;
    align-items:stretch
  }
  .hc-case-grid,.hc-two-column,.hc-audit-grid {
    gap:40px
  }
  .hc-workflow {
    flex-wrap:wrap
  }
  .hc-workflow li {
    flex:1 0 20%
  }
  .hc-workflow li::after {
    display:none
  }
  .hc-crm-details {
    gap:30px
  }
}
@media(max-width:800px) {
  .clinic-home .container {
    width:calc(100% - 40px)
  }
  .hc-section {
    padding:60px 0
  }
  .hc-hero {
    padding:40px 0
  }
  .hc-hero-grid,.hc-two-column,.hc-case-grid,.hc-audit-grid,.hc-faq-grid,.hc-crm-details {
    grid-template-columns:1fr;
    gap:32px
  }
  .hc-hero h1 {
    font-size:clamp(34px,6.5vw,48px);
    letter-spacing:-1px;
    max-width:650px
  }
  .hc-hero .hc-lead {
    margin:18px 0;
    font-size:17px
  }
  .hc-hero .hc-actions {
    max-width:540px
  }
  .hc-hero-support {
    margin-top:18px
  }
  .hc-product {
    max-width:580px;
    width:100%;
    justify-self:center
  }
  .hc-product-brand>span {
    display:inline
  }
  .hc-cards,.hc-journey,.hc-process,.hc-connected {
    grid-template-columns:1fr
  }
  .hc-card {
    padding:24px
  }
  
  .hc-section-head {
    margin-bottom:28px
  }
  .hc-project-art {
    min-height:320px
  }
  .hc-trust ul {
    gap:10px;
    display:grid;
    grid-template-columns:1fr 1fr
  }
  .hc-trust h2 {
    text-align:left;
    line-height:1.5
  }
  .hc-workflow {
    flex-direction:column;
    gap:20px
  }
  .hc-workflow li {
    flex:auto;
    padding:14px
  }
  .hc-workflow li:not(:last-child)::after {
    content:'↓';
    display:block;
    right:calc(50% - 5px);
    bottom:-21px
  }
  .hc-connected {
    gap:24px
  }
  .hc-connected p {
    max-width:none
  }
  .hc-audit-form {
    padding:24px
  }
  .hc-faq-grid>.hc-section-head {
    margin:0
  }
  .hc-proof-note {
    padding-left:22px
  }
  .hc-audit-grid {
    gap:32px
  }
}
@media(max-width:480px) {
  .hc-hero .hc-kicker {
    font-size:14px;
    letter-spacing:1.25px
  }
  .hc-hero h1 {
    font-size:34px
  }
  .hc-button {
    width:100%
  }
  .hc-trust ul {
    grid-template-columns:1fr
  }
  .hc-product-body {
    padding:20px 14px
  }
  .hc-product-top {
    padding:14px
  }
  .hc-product-brand>span {
    font-size:14px
  }
  .hc-pipeline {
    grid-template-columns:1fr
  }
  .hc-pipeline>div {
    display:grid;
    grid-template-columns:80px 1fr;
    align-items:center;
    gap:8px
  }
  .hc-pipeline h3 {
    font-size:14px;
    margin:0 0 0 3px
  }
  .hc-mini-card {
    min-height:0
  }
  .hc-mini-card strong {
    font-size:14px
  }
  .hc-mini-source,.hc-mini-card p,.hc-mini-tag {
    font-size:14px
  }
  .hc-enquiry p,.hc-appointment p,.hc-product figcaption {
    font-size:14px
  }
  .hc-enquiry strong,.hc-appointment strong {
    font-size:14px
  }
  .hc-status {
    display:none
  }
  .hc-form-fields {
    grid-template-columns:1fr
  }
  .hc-audit-form {
    padding:22px 18px
  }
  .hc-project-art {
    padding:28px
  }
  .hc-project-art>p {
    font-size:44px
  }
  .hc-boundary {
    padding:24px
  }
  .clinic-home .whatsapp-sticky-button {
    font-size:14px;
    padding:10px
  }
}
@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }
  .clinic-home *,.clinic-home *::before,.clinic-home *::after {
    transition:none!important;
    animation:none!important
  }
}
.hc-form-availability {
  padding:14px;
  border:1px solid #ccdce6;
  background:#f1f6f9;
  border-radius:5px
}
.hc-form-availability a {
  text-decoration:underline;
  text-underline-offset:3px
}

/* Visual refresh: illustrated cards, depth and gentle motion. */
.hc-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  margin-bottom: 24px;
  border: 1px solid rgba(64, 115, 153, .13);
  border-radius: 17px;
  color: #24699e;
  background: linear-gradient(145deg, #f3faff, #dbeafa);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .85), 0 7px 18px rgba(42, 92, 133, .06);
}
.hc-icon svg { width: 28px; height: 28px; }
.hc-icon-teal { color: #22776c; background: linear-gradient(145deg, #f1fcf7, #d6eee4); border-color: #c9e4da; }
.hc-icon-purple { color: #7554ad; background: linear-gradient(145deg, #faf6ff, #e9def7); border-color: #e3d7f0; }
.hc-icon-amber { color: #93641e; background: linear-gradient(145deg, #fffaf0, #f5e7c9); border-color: #ecdfc2; }
.hc-card {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 30px;
  border-color: #e0e8ed;
  border-radius: 18px;
  background: linear-gradient(145deg, #fff 60%, #f7fafc);
  box-shadow: 0 5px 22px rgba(30, 69, 99, .035);
  transition: transform 240ms ease, box-shadow 240ms ease, border-color 240ms ease;
}
.hc-card::after {
  content: '';
  position: absolute;
  z-index: -1;
  width: 135px;
  height: 135px;
  right: -65px;
  top: -65px;
  border: 22px solid rgba(77, 137, 174, .045);
  border-radius: 50%;
  pointer-events: none;
}
.hc-card h3 { font-size:20px; }
.hc-card .hc-icon { transition: transform 240ms ease; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .hc-card:hover { transform: translateY(-6px); box-shadow: 0 18px 38px rgba(30, 69, 99, .10); border-color: #b4cfdc; }
  .hc-card:hover .hc-icon { transform: translateY(-2px) rotate(-5deg); }
  .hc-button:hover > span, .hc-text-link:hover > span { transform: translate(3px, -3px); }
}
.hc-card:focus-within { border-color: #8eb6cf; box-shadow: 0 0 0 2px #e2edf4; }
.hc-button { border-radius: 9px; box-shadow: 0 6px 16px rgba(24, 80, 121, .12); }
.hc-button-secondary { box-shadow: none; }
.hc-button > span, .hc-text-link > span { transition: transform 200ms ease; }
.hc-hero { position: relative; background: radial-gradient(ellipse at 82% 27%, #d9eee9 0, transparent 42%), radial-gradient(ellipse at 5% 60%, #ecf4fc 0, transparent 55%), #f9fbfa; }
.hc-hero::before {
  content: '';
  position: absolute;
  top: -270px;
  right: -140px;
  width: 780px;
  height: 780px;
  border: 1px solid rgba(81, 137, 153, .10);
  border-radius: 50%;
  box-shadow: 0 0 0 75px rgba(81, 137, 153, .035), 0 0 0 150px rgba(81, 137, 153, .025);
  pointer-events: none;
}
.hc-hero-grid { position: relative; z-index: 1; }
.hc-product { border-radius: 20px; border-color: #c5dcd9; box-shadow: 0 28px 70px rgba(38, 95, 104, .15), 0 3px 7px rgba(38, 95, 104, .04); }
.hc-product-top { background: linear-gradient(90deg, #fff, #f2f9f7); }
.hc-product-symbol { background: linear-gradient(145deg, #dff1eb, #deebf9); box-shadow: 0 7px 20px #265b6910; }
.hc-enquiry { background: linear-gradient(120deg, #f0f8f5, #f5f9fc); border-color: #d2e6e0; }
.hc-mini-card { border-radius: 8px; box-shadow: 0 4px 9px #264b6510; }
.hc-dark { position: relative; background: radial-gradient(ellipse at 100% 0, #245f6d 0, transparent 55%), #133d59; }
.hc-connected { gap: 20px; }
.hc-connected li {
  border: 1px solid #547989;
  padding: 28px;
  border-radius: 16px;
  background: linear-gradient(130deg, #ffffff0d, #ffffff03);
}
.hc-connected .hc-icon { background: #ffffff13; border-color: #749998; color: #b5e5d4; box-shadow: none; }
.hc-connected h3 { margin-top: 0; }
.hc-workflow li { border-radius: 10px; box-shadow: 0 4px 14px #284b6210; }
.hc-journey { gap: 20px; }
.hc-journey li { background: #ffffffb8; padding: 24px; border: 1px solid #dae8ed; border-radius: 16px; gap: 18px; }
.hc-journey .hc-icon { flex-basis: 46px; width: 46px; height: 46px; border-radius: 14px; margin: 0; }
.hc-journey .hc-icon svg { width: 24px; height: 24px; }
.hc-journey h3 { margin-top: 10px; }
.hc-process { gap: 20px; }
.hc-process li { position: relative; border: 1px solid #dce6ed; border-radius: 16px; background: linear-gradient(145deg, #fff, #f3f8fb); padding: 28px; }
.hc-process li > .hc-icon { color: #24699e; margin-bottom: 0; }
.hc-process h3 { margin-top: 22px; }
.hc-process li:not(:last-child)::after { content: '↗'; position: absolute; right: 26px; top: 27px; color: #9bb6c7; font-size:24px; }
.hc-project-art { position: relative; isolation: isolate; overflow: hidden; background: linear-gradient(140deg, #edf1e7, #dce9e1); border-radius: 20px; min-height: 395px; }
.hc-project-art::after { content: ''; width: 320px; height: 320px; border: 40px solid #ffffff36; border-radius: 50%; position: absolute; z-index: -1; right: -120px; top: -80px; }
.hc-clinic-art { height: 72px; position: absolute; top: 58px; right: 30px; opacity: .72; }
.hc-clinic-art > .hc-icon { width: 64px; height: 64px; border-radius: 20px; transform: rotate(8deg); background: #f8fff9b3; box-shadow: 0 8px 25px #346c5010; }
.hc-clinic-art .hc-icon svg { width: 34px; height: 34px; }
.hc-clinic-art-dot { position: absolute; right: -10px; bottom: 0; width: 17px; height: 17px; background: #acc9b7; border: 4px solid #eff7ee; border-radius: 50%; }
.hc-project-art > p { margin-top: 76px; }
#insights .hc-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hc-insight-card { padding-top: 0; }
.hc-insight-image { width: calc(100% + 60px); max-width: none; margin: 0 -30px 26px; aspect-ratio: 16/8; object-fit: cover; border-bottom: 1px solid #e0e8ed; }
.hc-insight-card > .hc-icon { width: 46px; height: 46px; border-radius: 13px; margin-bottom: 18px; }
.hc-insight-card > .hc-icon svg { width: 23px; height: 23px; }
.hc-boundary, .hc-audit-form { border-radius: 18px; }
.hc-audit-section { background: radial-gradient(ellipse at 0 90%, #236576 0, transparent 60%), #153d58; }
.hc-audit-form { box-shadow: 0 20px 55px #071f382e; }
@media (max-width: 800px) {
  .hc-card { padding: 26px; }
  .hc-hero::before { width: 500px; height: 500px; right: -300px; }
  .hc-journey li { padding: 22px; }
  .hc-connected li, .hc-process li { padding: 26px; }
  #insights .hc-cards { grid-template-columns: 1fr; }
  .hc-insight-card { padding-top: 0; }
  .hc-insight-image { width: calc(100% + 52px); margin-left: -26px; margin-right: -26px; }
}
@media (max-width: 480px) {
  .hc-clinic-art { right: 23px; top: 64px; }
  .hc-clinic-art > .hc-icon { width: 48px; height: 48px; border-radius: 15px; }
  .hc-clinic-art .hc-icon svg { width: 28px; height: 28px; }
  .hc-project-art > p { margin-top: 82px; }
}
@media (prefers-reduced-motion: reduce) {
  .hc-card, .hc-card .hc-icon, .hc-button > span, .hc-text-link > span { transition: none !important; }
}

/* Readable homepage typography and a product-led CRM showcase. */
.hc-product-top { flex-wrap: wrap; }
.hc-demo-badge { white-space: normal; }
.hc-pipeline { gap: 10px; }
.hc-mini-card { overflow-wrap: anywhere; }
.hc-project-real { position: relative; margin: 0; padding: 18px 28px 18px 18px; border: 1px solid #cbded3; border-radius: 20px; background: linear-gradient(130deg, #e7f0e8, #f4f8f5); box-shadow: 0 20px 45px #20473b12; }
.hc-project-real > a { display: block; border: 1px solid #c9dcd1; border-radius: 12px; overflow: hidden; background: #fff; }
.hc-project-browser { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px; font-size: 14px; color: #3c6859; font-weight: 700; }
.hc-project-desktop { width: 100%; }
.hc-project-phone { position: absolute; right: -12px; bottom: 70px; width: 23%; max-height: 270px; overflow: hidden; border: 4px solid #254b47; border-radius: 16px; box-shadow: 0 12px 26px #1a453d30; }
.hc-project-phone img { width: 100%; }
.hc-project-real figcaption { font-size: 14px; color: #496b5c; padding-top: 18px; }
.hc-crm-premium { background: radial-gradient(ellipse at 90% 25%, #e0eaf8, transparent 55%), linear-gradient(135deg, #f0f7f5, #f6f8fc); }
.hc-crm-premium > .container > .hc-section-head { max-width: 860px; }
.hc-crm-showcase { display: grid; grid-template-columns: .8fr 1.2fr; gap: 42px; align-items: center; margin: 40px 0 48px; }
.hc-crm-value > h3 { font-size: 29px; line-height: 1.25; margin-bottom: 18px; letter-spacing: -.5px; }
.hc-crm-value > p { font-size: 18px; line-height: 1.75; }
.hc-crm-benefits { display: grid; gap: 18px; margin: 26px 0; }
.hc-crm-benefits > div { display: grid; grid-template-columns: 42px 1fr; column-gap: 14px; }
.hc-crm-benefits > div > span { grid-row: span 2; display: grid; place-items: center; width: 42px; height: 42px; color: #2a6b79; background: #e0eef0; border: 1px solid #c3dce1; border-radius: 12px; font-size: 23px; }
.hc-crm-benefits strong { font-size: 18px; }
.hc-crm-benefits p { font-size: 16px; line-height: 1.7; margin: 5px 0 0; }
.hc-crm-value .hc-crm-demo-note { font-size: 14px; margin: 12px 0 0; }
.hc-crm-console { margin: 0; border: 1px solid #b9ced9; border-radius: 20px; box-shadow: 0 24px 65px #23496720; background: #fff; overflow: hidden; }
.hc-crm-console-bar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding: 22px; color: #fff; background: linear-gradient(115deg, #173f5c, #256779); }
.hc-crm-console-bar strong { font-size: 18px; }
.hc-crm-console-bar strong span { display: block; font-size: 14px; font-weight: 400; margin-top: 4px; color: #d3e7eb; }
.hc-crm-console-bar .hc-demo-badge { color: #e2f0f2; border-color: #8dafba; }
.hc-crm-console-body { padding: 24px; background: #f3f7fa; }
.hc-crm-chat, .hc-crm-lead { background: #fff; padding: 22px; border: 1px solid #d8e5eb; border-radius: 14px; }
.hc-crm-panel-title { display: flex; gap: 12px; align-items: center; margin-bottom: 20px; }
.hc-crm-avatar { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: #fff; background: #2f7486; font-size: 25px; flex-shrink: 0; }
.hc-crm-panel-title strong { display: block; font-size: 16px; }
.hc-crm-panel-title div > span { display: block; font-size: 14px; color: #5d7482; }
.hc-chat-message { background: #eaf3f6; border: 1px solid #d1e4ea; border-radius: 12px 12px 12px 3px; padding: 14px; max-width: 94%; margin: 12px 0; }
.hc-chat-message.hc-chat-visitor { margin-left: auto; background: #f3f1fa; border-color: #e1dded; border-radius: 12px 12px 3px 12px; }
.hc-chat-message > span { font-size: 14px; color: #426479; font-weight: 700; }
.hc-chat-message p { font-size: 16px; line-height: 1.6; margin: 5px 0 0; }
.hc-crm-transfer { font-size: 14px; color: #3b7568; font-weight: 700; text-align: center; margin-top: 18px; }
.hc-crm-transfer > span { display: inline-block; margin-right: 7px; }
.hc-crm-lead { margin-top: 16px; border-color: #bddccc; background: linear-gradient(130deg, #fff, #eef8f1); }
.hc-crm-lead-heading { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 14px; }
.hc-crm-lead-heading .hc-kicker { margin: 0; font-size: 14px; }
.hc-crm-stage { background: #def0e5; color: #32654b; padding: 4px 10px; border-radius: 20px; font-size: 14px; }
.hc-crm-lead h3 { font-size: 22px; margin-bottom: 5px; }
.hc-crm-sample { font-size: 14px; }
.hc-crm-lead dl { margin: 15px 0; }
.hc-crm-lead dl > div { display: flex; justify-content: space-between; gap: 18px; padding: 10px 0; border-bottom: 1px solid #d7e6dd; font-size: 16px; }
.hc-crm-lead dt { color: #5a7369; }
.hc-crm-lead dd { margin: 0; text-align: right; font-weight: 700; }
.hc-crm-next { display: flex; align-items: center; gap: 12px; }
.hc-crm-next > span { color: #367a5c; font-size: 24px; }
.hc-crm-next strong { display: block; font-size: 16px; }
.hc-crm-next div > span { display: block; font-size: 14px; color: #567366; }
.hc-crm-console figcaption { font-size: 14px; padding: 14px 24px; color: #536c7c; border-top: 1px solid #dbe5ec; }
.hc-crm-flow-title { font-size: 23px; margin-bottom: 22px; }
.hc-crm-premium .hc-workflow { gap: 12px; }
.hc-crm-premium .hc-workflow li { font-size: 14px; padding: 18px 12px; border-radius: 12px; background: linear-gradient(135deg, #fff, #e8f3f5); }
.hc-crm-premium .hc-workflow li::after { display: none; }
.hc-crm-feature-card { padding: 28px; background: #fff; border: 1px solid #d3e3e7; border-radius: 16px; }
.hc-crm-feature-card h3 { font-size: 23px; line-height: 1.35; margin-bottom: 14px; }
.hc-crm-premium .hc-boundary { background: linear-gradient(135deg, #173f59, #246777); border: 1px solid #366b7e; border-radius: 16px; }
.hc-crm-premium .hc-boundary :is(h3,p) { color: #eef6f8; }
.hc-crm-premium .hc-boundary .hc-kicker { color: #b6dae3 !important; }
.hc-crm-premium .hc-boundary .hc-button { background: #e0f1e9; color: #1b564c; border-color: #e0f1e9; }
.hc-crm-premium .hc-boundary .hc-button:hover { background: #fff; }
@media (max-width: 1120px) { .hc-crm-showcase { gap: 26px; grid-template-columns: 1fr 1.15fr; } .hc-case-grid { gap: 32px; } }
@media (max-width: 800px) { .hc-crm-showcase { grid-template-columns: 1fr; } .hc-crm-console { max-width: 650px; width: 100%; justify-self: center; } .hc-project-real { max-width: 650px; width: 100%; justify-self: center; } }
@media (max-width: 480px) { .hc-crm-console-body { padding: 14px; } .hc-crm-chat, .hc-crm-lead { padding: 16px; } .hc-crm-value > h3 { font-size: 26px; } .hc-product-brand > span { display: block; } .hc-project-phone { right: -4px; } }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
 .hc-workflow li, .hc-mini-card, .hc-enquiry, .hc-crm-feature-card, .hc-crm-lead, .hc-crm-chat, .hc-faq details, .hc-proof-note, .hc-project-real { transition: transform 220ms ease, box-shadow 220ms ease, border-color 220ms ease; }
 .hc-workflow li:hover, .hc-mini-card:hover, .hc-enquiry:hover, .hc-crm-feature-card:hover, .hc-crm-lead:hover, .hc-crm-chat:hover, .hc-faq details:hover, .hc-proof-note:hover, .hc-project-real:hover { transform: translateY(-3px); box-shadow: 0 12px 28px #244f6815; border-color: #86b9bd; }
}
