:root {
  --ink: #07111f;
  --navy: #0b1930;
  --panel: #10213d;
  --panel-soft: #132846;
  --cyan: #69e8f3;
  --blue: #5b8dff;
  --lime: #b8f36b;
  --paper: #f5f7fa;
  --muted: #a9b6c9;
  --text: #dbe4f1;
  --white: #fff;
  --line: rgba(255, 255, 255, .13);
  --dark-line: #dfe5ec;
  --fire: linear-gradient(110deg, #f1263d 0%, #ff5b18 48%, #ffc400 100%);
  --shell: min(1160px, calc(100% - 40px));
  --radius: 22px;
}

* { box-sizing: border-box; }
html {
  overflow-x: hidden;
  scroll-behavior: smooth;
}
body {
  margin: 0;
  overflow-x: hidden;
  background: var(--ink);
  color: var(--white);
  font-family: "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
}
body.article-page { background: var(--paper); color: var(--navy); }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
img, iframe { max-width: 100%; }
.shell { width: var(--shell); margin-inline: auto; }
.narrow { width: min(790px, calc(100% - 40px)); margin-inline: auto; }
.skip-link {
  position: fixed;
  z-index: 999;
  left: 16px;
  top: 12px;
  transform: translateY(-150%);
  background: var(--white);
  color: var(--ink);
  padding: 10px 14px;
  border-radius: 8px;
}
.skip-link:focus { transform: none; }

.site-header {
  min-height: 82px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-bottom: 1px solid var(--line);
  position: relative;
  z-index: 20;
}
.article-page .site-header { border-color: rgba(8, 17, 31, .12); }
.brand { display: flex; align-items: center; gap: 11px; font-family: Manrope, sans-serif; }
.brand-word { font-size: 20px; letter-spacing: .01em; }
.brand-word em { color: var(--cyan); font-style: normal; }
.article-page .brand-word em { color: #087783; }
.brand-mark { width: 31px; height: 31px; display: grid; grid-template-columns: repeat(3, 1fr); align-items: end; gap: 3px; transform: skew(-8deg); }
.brand-mark i { display: block; border-radius: 3px; background: linear-gradient(180deg, var(--cyan), var(--blue)); }
.brand-mark i:nth-child(1) { height: 45%; }
.brand-mark i:nth-child(2) { height: 72%; }
.brand-mark i:nth-child(3) { height: 100%; }
.header-nav { display: flex; align-items: center; gap: 23px; font-size: 13px; font-weight: 700; }
.header-nav a:not(.button) { color: var(--muted); }
.article-page .header-nav a:not(.button) { color: #58677b; }
.header-nav a:hover { color: var(--cyan); }

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 52px;
  padding: 14px 21px;
  border: 0;
  border-radius: 8px;
  background: var(--cyan);
  color: #061321;
  font-weight: 800;
  line-height: 1.2;
  cursor: pointer;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}
.button:hover { transform: translateY(-2px); background: #91f5fb; box-shadow: 0 14px 34px rgba(54, 211, 226, .16); }
.button:focus-visible, a:focus-visible, input:focus-visible { outline: 3px solid var(--lime); outline-offset: 3px; }
.button-fire { color: #fff; background: var(--fire); box-shadow: 0 14px 34px rgba(255, 73, 24, .22); }
.button-fire:hover { background: linear-gradient(110deg, #ff3148, #ff6b18 50%, #ffd11a); }
.text-link { font-weight: 800; border-bottom: 1px solid currentColor; padding-bottom: 3px; }
.text-link span { color: var(--cyan); }

.eyebrow, .section-label {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--cyan);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.eyebrow i, .section-label i { width: 26px; height: 1px; background: currentColor; }
h1, h2, h3 {
  margin: 0;
  font-family: Manrope, sans-serif;
  letter-spacing: -.045em;
  line-height: 1.06;
}
p { margin-top: 0; }

.dental-hero {
  min-height: 710px;
  display: grid;
  grid-template-columns: 1.03fr .97fr;
  align-items: center;
  gap: 70px;
  padding-block: 70px 95px;
  position: relative;
}
.dental-hero::before {
  content: "";
  position: absolute;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  top: 20px;
  right: -250px;
  background: #235edc;
  filter: blur(120px);
  opacity: .22;
  pointer-events: none;
}
.dental-hero h1 { font-size: clamp(48px, 5.6vw, 78px); margin: 22px 0 26px; }
.gradient-text { background: linear-gradient(90deg, var(--cyan), #8fb4ff 55%, var(--lime)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hero-lede { max-width: 640px; font-size: 19px; line-height: 1.7; color: #bcc8d8; }
.hero-actions { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; margin-top: 31px; }
.microcopy { color: #8292aa; font-size: 12px; margin: 15px 0 0; }

.dental-console {
  min-height: 540px;
  position: relative;
  border: 1px solid var(--line);
  border-radius: 30px;
  background: radial-gradient(circle at 75% 15%, rgba(91, 141, 255, .28), transparent 34%), linear-gradient(145deg, rgba(17, 39, 70, .92), rgba(7, 17, 31, .96));
  box-shadow: 0 34px 90px rgba(0, 0, 0, .32);
  overflow: hidden;
}
.dental-console::before, .dental-console::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(105, 232, 243, .12);
  border-radius: 50%;
  width: 440px;
  height: 440px;
  right: -170px;
  top: -160px;
}
.dental-console::after { width: 560px; height: 560px; right: -220px; top: -220px; }
.console-status { position: absolute; top: 27px; left: 29px; font-size: 10px; font-weight: 800; letter-spacing: .12em; color: var(--cyan); }
.console-status i { display: inline-block; width: 7px; height: 7px; margin-right: 7px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 0 6px rgba(184, 243, 107, .09); }
.dental-orb-console { min-height: 590px; padding: 70px 24px 24px; }
.orb-intro { position: relative; z-index: 2; text-align: center; }
.orb-intro span, .orb-intro strong, .orb-intro small { display: block; }
.orb-intro span { color: var(--cyan); font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.orb-intro strong { margin: 7px 0 5px; font: 800 24px Manrope, sans-serif; }
.orb-intro small { color: var(--muted); font-size: 12px; }
.orb-frame {
  position: relative;
  z-index: 2;
  height: 390px;
  margin-top: 18px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 24px 60px rgba(0, 0, 0, .28);
}
.orb-frame iframe { display: block; width: 100%; height: 100%; border: 0; background: #fff; }
.orb-note { position: relative; z-index: 2; margin: 13px 0 0; color: #8fa0b7; font-size: 10px; text-align: center; }
.call-card {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(390px, calc(100% - 50px));
  transform: translate(-50%, -52%);
  padding: 26px;
  border-radius: 19px;
  background: rgba(255, 255, 255, .96);
  color: var(--navy);
  box-shadow: 0 25px 70px rgba(0, 0, 0, .28);
}
.call-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; border-bottom: 1px solid #e5eaf0; padding-bottom: 18px; }
.call-head span:first-child { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 13px; background: #e7fbfc; color: #087783; font-size: 22px; }
.call-head div { flex: 1; }
.call-head small { display: block; color: #6f7d8e; font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.call-head strong { font: 800 16px Manrope, sans-serif; }
.live-pill { padding: 7px 10px; border-radius: 999px; background: #e8f8df; color: #3b741d; font-size: 9px; font-weight: 800; }
.call-row { display: grid; grid-template-columns: 32px 1fr auto; align-items: center; gap: 12px; padding-top: 17px; }
.call-row b { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 9px; background: #edf2ff; color: #476fc4; }
.call-row strong, .call-row small { display: block; }
.call-row strong { font-size: 13px; }
.call-row small { color: #748195; font-size: 10px; }
.call-row em { font-style: normal; color: #16836f; font-size: 10px; font-weight: 800; }
.console-chip { position: absolute; border-radius: 11px; padding: 13px 16px; font-size: 11px; font-weight: 800; box-shadow: 0 16px 30px rgba(0, 0, 0, .22); }
.chip-one { left: 18px; bottom: 63px; background: var(--lime); color: #153214; transform: rotate(-3deg); }
.chip-two { right: 17px; bottom: 29px; background: var(--cyan); color: #07111f; transform: rotate(3deg); }

.trust-strip { border-block: 1px solid var(--line); background: rgba(255, 255, 255, .025); }
.trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); min-height: 110px; }
.trust-grid div { display: flex; flex-direction: column; justify-content: center; padding: 20px 28px; border-left: 1px solid var(--line); }
.trust-grid div:first-child { border-left: 0; padding-left: 0; }
.trust-grid strong { font: 800 17px Manrope, sans-serif; }
.trust-grid span { color: var(--muted); font-size: 11px; }

.paper-section { background: var(--paper); color: var(--navy); padding-block: 110px; }
.dark-section { background: var(--ink); color: var(--white); padding-block: 110px; }
.section-heading { max-width: 850px; margin-bottom: 56px; }
.section-heading.center { margin-inline: auto; text-align: center; }
.section-heading.center .section-label { justify-content: center; }
.paper-section .section-label { color: #087783; }
.section-heading h2 { font-size: clamp(38px, 4.4vw, 59px); margin: 16px 0 20px; }
.section-heading p { color: #647184; font-size: 17px; max-width: 720px; }
.dark-section .section-heading p { color: var(--muted); }

.problem-grid, .workflow-grid, .resource-grid, .industry-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.problem-card, .workflow-card, .resource-card, .industry-card {
  border: 1px solid var(--dark-line);
  border-radius: 18px;
  background: #fff;
  padding: 28px;
}
.problem-card span, .workflow-card span { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 11px; background: #e9fbfc; color: #087783; font-weight: 900; }
.problem-card h3, .workflow-card h3, .resource-card h3, .industry-card h3 { font-size: 20px; letter-spacing: -.025em; margin: 20px 0 10px; }
.problem-card p, .workflow-card p, .resource-card p, .industry-card p { color: #68768a; font-size: 14px; margin: 0; }
.workflow-grid { grid-template-columns: repeat(2, 1fr); }
.workflow-card { display: grid; grid-template-columns: 52px 1fr; gap: 18px; }
.workflow-card h3 { margin: 0 0 8px; }

.human-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.human-card { padding: 35px; border-radius: 22px; border: 1px solid var(--line); background: var(--panel); }
.human-card.ai { background: linear-gradient(145deg, #123351, #10213d); border-color: rgba(105, 232, 243, .25); }
.human-card h3 { font-size: 28px; margin-bottom: 22px; }
.human-card ul { list-style: none; padding: 0; margin: 0; }
.human-card li { position: relative; padding: 12px 0 12px 30px; border-top: 1px solid var(--line); color: #c4cede; }
.human-card li::before { content: "✓"; position: absolute; left: 0; color: var(--cyan); font-weight: 900; }

.calculator-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 55px; align-items: center; }
.calculator-copy h2 { font-size: clamp(38px, 4.4vw, 57px); margin: 16px 0 22px; }
.calculator-copy p { color: #647184; }
.calculator {
  background: var(--white);
  border: 1px solid var(--dark-line);
  border-radius: 22px;
  padding: 33px;
  box-shadow: 0 24px 60px rgba(6, 19, 37, .08);
}
.calculator label { display: block; margin-bottom: 20px; color: #445369; font-size: 13px; font-weight: 800; }
.calculator input { width: 100%; margin-top: 7px; padding: 13px 14px; border: 1px solid #cbd5e0; border-radius: 9px; color: var(--navy); background: #f9fbfd; }
.calculator-result { margin-top: 26px; padding: 24px; border-radius: 16px; background: var(--navy); color: var(--white); }
.calculator-result span { display: block; color: var(--cyan); font-size: 10px; font-weight: 800; letter-spacing: .1em; }
.calculator-result strong { display: block; margin: 5px 0; font: 800 39px Manrope, sans-serif; }
.calculator-result small { color: #9fadc0; }
.disclaimer { color: #7c8898; font-size: 11px; margin-top: 12px; }

.integration-panel { display: grid; grid-template-columns: .8fr 1.2fr; gap: 65px; align-items: center; }
.integration-panel h2 { font-size: clamp(38px, 4.3vw, 56px); margin: 16px 0 22px; }
.integration-panel p { color: var(--muted); }
.integration-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 13px; }
.integration-list span { padding: 18px; border: 1px solid var(--line); border-radius: 12px; background: var(--panel); font-weight: 800; text-align: center; }

.compliance-panel { display: grid; grid-template-columns: 1fr 1fr; gap: 65px; align-items: start; }
.compliance-panel h2 { font-size: clamp(38px, 4.1vw, 54px); margin: 16px 0 21px; }
.compliance-panel p { color: #637185; }
.guardrails { display: grid; gap: 13px; }
.guardrail { padding: 20px; border: 1px solid var(--dark-line); border-radius: 13px; background: #fff; }
.guardrail strong { display: block; margin-bottom: 4px; }
.guardrail span { color: #6b788b; font-size: 13px; }

.founder-section { display: grid; grid-template-columns: .78fr 1.22fr; gap: 30px; align-items: stretch; }
.founder-card { padding: 34px; border-radius: 22px; background: var(--panel); border: 1px solid var(--line); }
.founder-id { display: flex; gap: 17px; align-items: center; margin-top: 25px; }
.founder-id img { width: 78px; height: 78px; border-radius: 18px; object-fit: cover; object-position: center 18%; border: 2px solid rgba(105, 232, 243, .42); }
.founder-id span, .founder-id small { display: block; }
.founder-id span { font-weight: 800; }
.founder-id small { color: var(--muted); }
.video-stage { position: relative; overflow: hidden; border-radius: 22px; min-height: 390px; background: #000; border: 1px solid var(--line); }
.video-stage iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }

.faq-list { display: grid; gap: 12px; max-width: 900px; margin-inline: auto; }
.faq-list details { border: 1px solid var(--dark-line); border-radius: 13px; background: #fff; padding: 19px 22px; }
.faq-list summary { cursor: pointer; font-weight: 800; }
.faq-list p { color: #66758a; margin: 14px 0 2px; }

.form-section { padding-block: 110px; color: var(--navy); background: #f1f4f8; }
.early-form-section { padding-top: 86px; }
.form-heading { max-width: 720px; margin: 0 auto 45px; text-align: center; }
.form-heading .section-label { color: #087783; justify-content: center; }
.form-heading h2 { font-size: clamp(38px, 4.7vw, 58px); margin: 16px 0; }
.form-heading p { color: #657286; }
.form-fire-wrap { max-width: 950px; margin: 0 auto; position: relative; padding: 14px; border-radius: 30px; background: var(--fire); box-shadow: 0 0 40px rgba(255, 73, 24, .28), 0 24px 70px rgba(6, 18, 36, .14); }
.form-fire-wrap::before { content: ""; position: absolute; inset: -11px; z-index: 0; border-radius: 36px; background: var(--fire); filter: blur(15px); opacity: .6; }
.ghl-form-shell { min-height: 950px; position: relative; z-index: 1; border-radius: 19px; overflow: hidden; background: #fff; }
.ghl-form-shell iframe { display: block; width: 100%; min-height: 950px; border: 0; background: #fff; }
.ghl-form-loading { position: absolute; inset: 0; z-index: 0; display: grid; place-items: center; color: #5d6979; background: #fff; }
.ghl-form-shell iframe { position: relative; z-index: 1; }
.ghl-form-shell[data-form-state="loaded"] .ghl-form-loading { display: none; }

.content-hero { padding-block: 78px 88px; background: var(--ink); color: var(--white); }
.content-hero .breadcrumbs { color: #93a2b7; font-size: 12px; margin-bottom: 28px; }
.content-hero .breadcrumbs a { border-bottom: 1px solid rgba(255,255,255,.35); }
.content-hero h1 { max-width: 950px; font-size: clamp(44px, 5.4vw, 73px); margin: 17px 0 24px; }
.content-hero p { max-width: 760px; color: #bcc8d8; font-size: 18px; }
.article-layout { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 65px; padding-block: 80px 110px; }
.article-body h2 { margin: 54px 0 18px; font-size: 36px; }
.article-body h3 { margin: 35px 0 13px; font-size: 25px; }
.article-body p, .article-body li { color: #435268; font-size: 17px; }
.article-body li { margin-bottom: 10px; }
.article-body a { color: #087783; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.article-callout { margin: 34px 0; padding: 28px; border-left: 4px solid #18a3b0; border-radius: 0 16px 16px 0; background: #e9f9fb; }
.article-callout strong { display: block; margin-bottom: 6px; }
.article-sidebar { position: relative; }
.sidebar-card { position: sticky; top: 24px; padding: 26px; border-radius: 18px; background: var(--navy); color: #fff; }
.sidebar-card h3 { font-size: 23px; margin-bottom: 12px; }
.sidebar-card p { color: #b8c4d3; font-size: 14px; }
.sidebar-card .button { width: 100%; margin-top: 10px; text-align: center; }
.article-calculator { margin: 35px 0; }

.hub-hero { padding-block: 90px; }
.hub-hero h1 { font-size: clamp(48px, 5.7vw, 76px); max-width: 900px; margin: 20px 0 25px; }
.hub-hero p { max-width: 760px; color: var(--muted); font-size: 18px; }
.hub-grid-section { padding-block: 90px 115px; background: var(--paper); color: var(--navy); }
.resource-card, .industry-card { display: flex; flex-direction: column; min-height: 260px; }
.resource-card small, .industry-card small { color: #087783; font-weight: 800; letter-spacing: .1em; }
.resource-card a, .industry-card a { margin-top: auto; padding-top: 22px; color: #087783; font-weight: 800; }
.industry-card.coming { opacity: .7; }

.site-footer { border-top: 1px solid var(--line); padding-block: 33px; background: var(--ink); color: #fff; }
.site-footer .shell { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 30px; }
.footer-copy { color: #8392a8; font-size: 11px; text-align: center; }
.footer-links { display: flex; gap: 18px; color: #a6b4c7; font-size: 11px; }

.mobile-cta { display: none; }

@media (max-width: 960px) {
  .dental-hero { grid-template-columns: 1fr; padding-top: 70px; }
  .hero-copy { text-align: center; }
  .eyebrow { justify-content: center; }
  .hero-lede { margin-inline: auto; }
  .hero-actions { justify-content: center; }
  .dental-console { width: min(620px, 100%); margin-inline: auto; }
  .dental-orb-console { width: min(620px, 100%); }
  .problem-grid, .resource-grid, .industry-grid { grid-template-columns: repeat(2, 1fr); }
  .trust-grid { grid-template-columns: repeat(2, 1fr); padding-block: 20px; }
  .trust-grid div, .trust-grid div:first-child { border: 0; padding: 16px; text-align: center; }
  .calculator-layout, .integration-panel, .compliance-panel { grid-template-columns: 1fr; }
  .founder-section { grid-template-columns: 1fr; }
  .article-layout { grid-template-columns: 1fr; }
  .sidebar-card { position: static; }
}

@media (max-width: 680px) {
  :root { --shell: min(100% - 30px, 1160px); }
  .site-header { min-height: 72px; }
  .header-nav a:not(.button) { display: none; }
  .header-nav .button { min-height: 42px; padding: 10px 12px; font-size: 12px; }
  .brand-word { font-size: 17px; }
  .dental-hero { min-height: 0; padding-block: 55px 70px; gap: 48px; }
  .dental-hero h1 { font-size: 45px; }
  .hero-lede { font-size: 17px; }
  .hero-actions { display: grid; gap: 18px; }
  .dental-console { min-height: 455px; }
  .dental-orb-console { min-height: 550px; padding: 65px 14px 18px; }
  .orb-intro strong { font-size: 21px; }
  .orb-frame { height: 360px; border-radius: 17px; }
  .orb-note { padding-inline: 8px; }
  .call-card { padding: 20px; }
  .console-chip { font-size: 9px; padding: 10px 12px; }
  .chip-one { left: 10px; bottom: 35px; }
  .chip-two { right: 10px; bottom: 9px; }
  .trust-grid, .problem-grid, .workflow-grid, .resource-grid, .industry-grid, .human-grid { grid-template-columns: 1fr; }
  .paper-section, .dark-section, .form-section { padding-block: 76px; }
  .section-heading { margin-bottom: 38px; }
  .section-heading h2, .calculator-copy h2, .integration-panel h2, .compliance-panel h2, .form-heading h2 { font-size: 36px; }
  .workflow-card { grid-template-columns: 44px 1fr; padding: 22px; }
  .calculator { padding: 23px; }
  .calculator-result strong { font-size: 33px; }
  .integration-list { grid-template-columns: 1fr; }
  .video-stage { min-height: 230px; }
  .form-fire-wrap { padding: 8px; border-radius: 22px; }
  .ghl-form-shell, .ghl-form-shell iframe { min-height: 1280px; }
  .content-hero { padding-block: 60px 65px; }
  .content-hero h1 { font-size: 43px; }
  .article-layout { padding-block: 55px 80px; }
  .article-body h2 { font-size: 31px; }
  .site-footer .shell { grid-template-columns: 1fr; text-align: center; }
  .footer-links { justify-content: center; flex-wrap: wrap; }
  .mobile-cta { display: block; position: fixed; z-index: 30; left: 10px; right: 10px; bottom: 10px; }
  .mobile-cta .button { width: 100%; box-shadow: 0 10px 34px rgba(0,0,0,.34); }
  body { padding-bottom: 75px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}
