/* Full Waiting Room: a clear, confident healthcare marketing identity.
   Text starts at 12px (9pt), above the required 8pt minimum. */
@font-face {
    font-family:"DM Sans";
    font-style:normal;
    font-weight:400;
    font-display:swap;
    src:url("/fonts/dm-sans-regular.ttf") format("truetype");
}

@font-face {
    font-family:"DM Sans";
    font-style:normal;
    font-weight:500;
    font-display:swap;
    src:url("/fonts/dm-sans-medium.ttf") format("truetype");
}

@font-face {
    font-family:"DM Sans";
    font-style:normal;
    font-weight:600;
    font-display:swap;
    src:url("/fonts/dm-sans-semibold.ttf") format("truetype");
}

@font-face {
    font-family:"DM Sans";
    font-style:normal;
    font-weight:700 900;
    font-display:swap;
    src:url("/fonts/dm-sans-bold.ttf") format("truetype");
}

:root {
    --ink:#0b2547;
    --blue:#1769e8;
    --muted:#4f6278;
    --paper:#ffffff;
    --line:#d7e2ee;
    --pale:#f1f6fd;
    --cyan:#58caef;
    --sans:"DM Sans",Arial,sans-serif;
}

* {
    box-sizing:border-box;
}

html {
    scroll-behavior:smooth;
    scroll-padding-top:120px;
}

body {
    margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:var(--sans);
    font-size:18px;
    line-height:1.7;
    -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,p {
    margin-top:0;
}

h1,h2,h3,h4 {
    color:var(--ink);
    font-weight:700;
}

h1,h2 {
    line-height:1.12;
    letter-spacing:-.045em;
}

h2 {
    font-size:clamp(34px,3.5vw,48px);
    margin-bottom:25px;
}

h3 {
    line-height:1.3;
    letter-spacing:-.025em;
}

p {
    color:var(--muted);
}

em {
    font-style:normal;
    color:var(--blue);
}

a {
    color:inherit;
    text-decoration:none;
}

a:hover {
    color:var(--blue);
}

img {
    display:block;
    max-width:100%;
    height:auto;
}

svg {
    display:block;
}

button,input,select,textarea {
    font:inherit;
}

button,a,summary {
    touch-action:manipulation;
}

button {
    cursor:pointer;
}

a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible {
    outline:3px solid var(--blue);
    outline-offset:4px;
}

.container {
    width:min(1320px,calc(100% - 96px));
    margin-inline:auto;
}

.section {
    padding-block:96px;
}

.eyebrow {
    display:block;
    font-size:13px;
    line-height:1.5;
    font-weight:700;
    letter-spacing:1.5px;
    text-transform:uppercase;
    color:var(--blue);
    margin-bottom:22px;
}

.intro {
    font-size:20px;
    line-height:1.75;
    max-width:720px;
}

.button-row {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:16px;
    margin-block:32px;
}

.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    min-height:56px;
    padding:17px 23px;
    border:1px solid transparent;
    border-radius:7px;
    font-size:16px;
    font-weight:700;
    line-height:1.35;
    transition:background .2s,box-shadow .2s;
}

.button span[aria-hidden] {
    font-size:22px;
}

.button-primary {
    background:var(--blue);
    color:#fff;
    box-shadow:0 5px 12px #1769e819;
}

.button-primary:hover {
    background:#1052be;
    color:white;
    box-shadow:0 8px 20px #1769e833;
}

.button-secondary {
    background:white;
    border-color:#b7cbe5;
    color:var(--ink);
}

.button-secondary:hover {
    background:#eaf2ff;
}

.button-lime {
    background:#fff;
    color:var(--blue);
}

.button-lime:hover {
    background:#dff2ff;
    color:var(--ink);
}

.text-link {
    display:inline-flex;
    align-items:center;
    gap:24px;
    border-bottom:1px solid #9ebce0;
    padding-block:8px;
    font-size:16px;
    font-weight:700;
    line-height:1.6;
}

.text-link span {
    font-size:22px;
}

.skip-link {
    position:fixed;
    top:-100px;
    left:20px;
    z-index:100;
    background:var(--blue);
    color:white;
    padding:12px;
}

.skip-link:focus {
    top:12px;
}

.announcement {
    min-height:38px;
    background:var(--ink);
    color:#fff;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:20px;
    padding-inline:max(40px,calc((100vw - 1320px)/2));
    font-size:13px;
    font-weight:500;
}

.announcement a:hover {
    color:#8fddff;
}

.site-header {
    position:sticky;
    top:0;
    z-index:30;
    background:#fffffff7;
    backdrop-filter:blur(12px);
    border-bottom:1px solid var(--line);
}

.nav-shell {
    width:min(1400px,calc(100% - 64px));
    min-height:100px;
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:26px;
}

.brand {
    display:inline-flex;
    align-items:center;
    gap:12px;
    flex:0 1 auto;
    min-width:0;
}

.brand img {
    width:46px;
    height:46px;
    flex:none;
}

.brand>span {
    min-width:0;
    font-size:25px;
    font-weight:700;
    letter-spacing:-.8px;
    line-height:1.2;
}

.brand-caption {
    display:block;
    font-size:12px;
    letter-spacing:.4px;
    font-weight:600;
    line-height:1.5;
    margin-top:7px;
}

.primary-nav {
    display:flex;
    align-items:center;
    gap:26px;
    font-size:15px;
    font-weight:600;
}

.primary-nav>a:not(.button) {
    padding-block:12px;
    white-space:nowrap;
}

.primary-nav>a[aria-current="page"]:not(.button) {
    box-shadow:0 2px var(--blue);
    color:var(--blue);
}

.primary-nav .nav-cta {
    font-size:14px;
    min-height:50px;
    padding:14px 18px;
    gap:16px;
}

.menu-toggle {
    display:none;
}

/* The first screen identifies the service, audience, and next action. */
.growth-hero {
    background:linear-gradient(110deg,#fff 5%,#f1f6fd 62%,#e7f2ff);
    border-bottom:1px solid var(--line);
}

.growth-hero-grid {
    display:grid;
    grid-template-columns:1.05fr 1fr;
    gap:56px;
    align-items:center;
    padding-block:65px;
}

.growth-hero-grid>* {
    min-width:0;
}

.growth-hero-copy .eyebrow {
    font-size:13px;
    letter-spacing:1.1px;
    margin-bottom:22px;
}

.growth-hero h1 {
    font-size:clamp(43px,4.35vw,64px);
    line-height:1.13;
    letter-spacing:-2.5px;
    margin-bottom:27px;
}

.growth-hero h1>span {
    color:var(--blue);
}

.growth-hero .hero-description {
    font-size:20px;
    line-height:1.7;
    max-width:600px;
    margin-bottom:0;
}

.growth-hero .button-row {
    gap:13px;
    margin-block:30px 20px;
}

.growth-hero .button {
    font-size:15px;
    padding-inline:19px;
    gap:16px;
}

.hero-support {
    font-size:14px;
    margin-bottom:24px;
}

.hero-service-links {
    display:flex;
    flex-wrap:wrap;
    gap:15px 27px;
    border-top:1px solid #d4dfed;
    padding-top:21px;
}

.hero-service-links a {
    font-size:15px;
    font-weight:700;
    display:flex;
    align-items:center;
    gap:17px;
}

.hero-service-links span {
    color:var(--blue);
}

.growth-visual {
    position:relative;
    padding:15px 0 0 0;
}

.website-example {
    background:white;
    border:1px solid #c8d9ef;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 20px 55px #103b6b1c;
}

.example-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    min-height:40px;
    padding:11px 15px;
    background:#e9f0fa;
    border-bottom:1px solid var(--line);
    font-size:12px;
    font-weight:700;
    letter-spacing:1px;
    color:#42648a;
}

.browser-dots {
    display:flex;
    gap:5px;
}

.browser-dots i {
    width:6px;
    height:6px;
    background:#8ba5c3;
    border-radius:50%;
}

.example-toolbar svg {
    height:15px;
    width:15px;
    stroke:#617e9f;
    fill:none;
    stroke-width:1.6;
}

.example-navigation {
    padding:20px 22px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}

.example-brand {
    font-size:16px;
    font-weight:700;
    letter-spacing:-.5px;
    display:flex;
    align-items:center;
    gap:8px;
}

.example-brand>span {
    font-size:29px;
    line-height:1;
    color:var(--blue);
}

.example-nav-label {
    font-size:12px;
    color:var(--muted);
    max-width:105px;
    line-height:1.4;
    text-align:right;
}

.example-content {
    display:grid;
    grid-template-columns:1.03fr 1fr;
    min-height:272px;
    background:#f4f8fd;
}

.example-copy {
    padding:25px 15px 25px 24px;
    align-self:center;
}

.example-kicker {
    font-size:12px;
    letter-spacing:.7px;
    font-weight:700;
    color:#37638e;
}

.example-copy h2 {
    font-size:31px;
    line-height:1.15;
    letter-spacing:-1.2px;
    margin:13px 0;
}

.example-copy p {
    font-size:12px;
    line-height:1.7;
    margin-bottom:18px;
}

.example-appointment {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:9px;
    background:var(--blue);
    color:white;
    padding:11px 10px;
    font-size:12px;
    font-weight:600;
    border-radius:4px;
    max-width:190px;
}

.example-content img {
    width:100%;
    height:100%;
    min-height:272px;
    max-height:316px;
    object-fit:cover;
    object-position:center 15%;
}

.example-benefits {
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    gap:8px;
    padding:16px 20px;
    font-size:12px;
    font-weight:600;
}

.patient-acquisition {
    display:flex;
    align-items:center;
    gap:17px;
    background:#0b2547;
    color:white;
    border:1px solid #234a77;
    border-radius:9px;
    box-shadow:0 12px 30px #10345c20;
    position:relative;
    margin:-2px -15px 0 28px;
    padding:22px;
}

.acquisition-icon {
    height:47px;
    width:47px;
    flex:none;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#1a446c;
    border-radius:9px;
}

.acquisition-icon svg {
    width:28px;
    height:28px;
    fill:none;
    stroke:#58caef;
    stroke-width:1.7;
}

.patient-acquisition .acquisition-label {
    font-size:12px;
    letter-spacing:1.2px;
    font-weight:700;
    color:#88d9f7;
    margin-bottom:5px;
}

.patient-acquisition h3 {
    font-size:19px;
    color:white;
    margin-bottom:6px;
}

.patient-acquisition p:last-child {
    font-size:12px;
    color:#d4e4f7;
    margin:0;
}

.patient-acquisition p>span {
    color:#69cbea;
    margin-inline:6px;
}

.visual-disclaimer {
    font-size:12px;
    color:#536d87;
    text-align:center;
    line-height:1.6;
    margin:18px 0 0;
}

.specialty-strip {
    background:white;
    border-bottom:1px solid var(--line);
}

.specialty-strip .container {
    min-height:104px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
}

.strip-label {
    font-size:12px;
    line-height:1.8;
    letter-spacing:1px;
    color:var(--muted);
    border-right:1px solid var(--line);
    padding-right:28px;
}

.strip-label strong {
    font-weight:700;
    color:var(--ink);
}

.specialty-strip .container>span:not(.strip-label) {
    font-size:17px;
    font-weight:600;
}

.specialty-strip a {
    font-size:14px;
    font-weight:600;
    white-space:nowrap;
    color:var(--blue);
}

.section-heading {
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:65px;
    margin-bottom:42px;
}

.section-heading h2 {
    margin-bottom:0;
}

.section-heading>p {
    font-size:18px;
    line-height:1.8;
    max-width:430px;
    margin:0;
}

.section-heading>.text-link {
    white-space:nowrap;
}

.service-duo {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:28px;
}

.home-service {
    padding:35px 35px 0;
    border:1px solid #cadcf2;
    border-top:4px solid var(--blue);
    border-radius:10px;
    background:white;
}

.marketing-card {
    background:#f1f6fd;
}

.websites-card {
    background:white;
}

.service-topline {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    margin-bottom:25px;
}

.card-number {
    font-size:12px;
    letter-spacing:1px;
    font-weight:700;
    color:var(--blue);
}

.service-symbol {
    height:46px;
    width:46px;
    fill:none;
    stroke:var(--blue);
    stroke-width:1.7;
}

.home-service h3 {
    font-size:32px;
    margin-bottom:18px;
}

.home-service p {
    font-size:18px;
    line-height:1.75;
}

.service-tags {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-block:25px 32px;
}

.service-tags span {
    font-size:12px;
    font-weight:600;
    border:1px solid #c2d5ef;
    border-radius:4px;
    padding:6px 10px;
    color:#365b87;
    background:#fff;
}

.service-link {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    border-top:1px solid var(--line);
    padding-block:23px;
    font-size:16px;
    font-weight:700;
}

.service-link span {
    font-size:24px;
}

.split-layout {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:80px;
    align-items:center;
}

.split-layout>* {
    min-width:0;
}

.dark-section {
    background:var(--ink);
    color:white;
}

.dark-section h2,.dark-section h3 {
    color:white;
}

.dark-section p {
    color:#c8d9ee;
}

.dark-section .eyebrow,.dark-section .card-number,.dark-section em {
    color:#79d4f4;
}

.dark-section .text-link {
    color:#fff;
    border-color:#6595c5;
}

.dark-section .button-primary {
    background:#fff;
    color:var(--blue);
}

.dark-section .button-secondary {
    color:white;
    background:transparent;
    border-color:#7c9fca;
}

.difference-list article {
    display:flex;
    gap:24px;
    padding-block:29px;
    border-bottom:1px solid #ffffff28;
}

.difference-list article:first-child {
    padding-top:0;
}

.difference-list article>span {
    font-size:19px;
    font-weight:700;
    color:var(--cyan);
}

.difference-list h3 {
    font-size:23px;
    margin-bottom:13px;
}

.difference-list p {
    font-size:17px;
    margin-bottom:0;
}

.light-link {
    margin-top:12px;
}

.website-section {
    display:grid;
    grid-template-columns:1.1fr 1fr;
    align-items:center;
    gap:80px;
}

.website-showcase {
    background:#eaf3ff;
    border-radius:12px;
    padding:40px 26px;
    position:relative;
}

.website-preview {
    background:#fff;
    border:1px solid #bcd1e8;
    border-radius:9px;
    overflow:hidden;
    box-shadow:0 18px 40px #10335915;
}

.preview-browser {
    display:flex;
    align-items:center;
    gap:5px;
    padding:12px 16px;
    background:#e9f0fa;
    border-bottom:1px solid var(--line);
}

.preview-browser i {
    height:6px;
    width:6px;
    border-radius:50%;
    background:#92aac4;
}

.preview-browser span {
    font-size:12px;
    font-weight:600;
    letter-spacing:.6px;
    flex:1;
    text-align:center;
    color:#46698e;
}

.concept-website {
    background:#fff;
}

.concept-nav {
    padding:20px 16px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    flex-wrap:wrap;
    font-size:12px;
}

.concept-brand {
    font-size:24px;
    font-weight:700;
    color:var(--blue);
    line-height:1;
}

.concept-brand>span {
    display:block;
    font-size:12px;
    letter-spacing:1px;
    margin-top:6px;
}

.concept-book {
    background:var(--blue);
    padding:7px 10px;
    color:white;
    border-radius:3px;
}

.concept-body {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:15px;
    align-items:center;
    background:#f1f6fd;
    padding-left:20px;
}

.concept-eyebrow {
    font-size:12px;
    font-weight:700;
    letter-spacing:.5px;
}

.concept-body h3 {
    font-size:30px;
    line-height:1.15;
    margin:12px 0;
}

.concept-body p {
    font-size:12px;
    line-height:1.65;
}

.concept-body img {
    height:270px;
    width:100%;
    object-fit:cover;
    object-position:50% 15%;
}

.concept-button {
    display:inline-flex;
    background:var(--blue);
    color:white;
    border-radius:4px;
    padding:10px 14px;
    font-size:12px;
}

.concept-bottom {
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    padding:20px 15px;
    gap:15px;
    font-size:12px;
}

.concept-disclaimer {
    display:block;
    font-size:12px;
    text-align:center;
    line-height:1.7;
    color:#466586;
    margin-top:17px;
}

.showcase-stamp {
    display:none;
}

.check-list {
    list-style:none;
    padding:0;
    margin-block:25px 30px;
}

.check-list li {
    position:relative;
    font-size:17px;
    line-height:1.7;
    padding:8px 0 8px 28px;
}

.check-list li::before {
    content:"✓";
    position:absolute;
    left:0;
    color:var(--blue);
    font-weight:700;
}

.process-section,.resources-section {
    background:var(--pale);
}

.steps-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:34px;
}

.step {
    border-top:2px solid #bdd1ec;
    padding-top:25px;
}

.step>span {
    font-size:29px;
    font-weight:700;
    color:var(--blue);
}

.step>.card-number {
    font-size:14px;
}

.step h3 {
    font-size:26px;
    margin:20px 0 14px;
}

.step p {
    font-size:17px;
    line-height:1.8;
}

.home-faq {
    display:grid;
    grid-template-columns:1fr 1.25fr;
    gap:80px;
}

.home-faq>div>p {
    font-size:18px;
}

.faq-list details {
    border-bottom:1px solid var(--line);
}

.faq-list details:first-child {
    border-top:1px solid var(--line);
}

.faq-list summary {
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    font-size:18px;
    font-weight:600;
    padding:24px 0;
}

.faq-list summary::-webkit-details-marker {
    display:none;
}

.faq-list summary::after {
    content:"+";
    font-size:25px;
    color:var(--blue);
    flex:none;
}

.faq-list details[open] summary::after {
    content:"−";
}

.faq-list details p {
    font-size:17px;
    padding:0 22px 23px 0;
    line-height:1.8;
    margin:0;
}

.resource-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:26px;
}

.resource-card {
    border:1px solid #cfdded;
    border-radius:9px;
    overflow:hidden;
    background:white;
    display:flex;
    flex-direction:column;
    transition:box-shadow .2s;
}

.resource-card:hover {
    color:var(--ink);
    box-shadow:0 10px 25px #0b254712;
}

.resource-art {
    height:205px;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    flex-direction:column;
    background:#e5f0ff;
    color:#1769e8;
    overflow:hidden;
}

.resource-art>span:last-child {
    position:absolute;
    bottom:18px;
    font-size:12px;
    line-height:1.5;
    letter-spacing:1px;
    font-weight:700;
    text-align:center;
}

.art-growth>span:first-child {
    font-size:118px;
    line-height:1;
    font-weight:500;
    margin-bottom:28px;
}

.art-web,.resource-art-website {
    background:#dcebf8;
    color:#0b477c;
}

.art-local,.resource-art-local {
    background:#dff3f9;
    color:#087999;
}

.mini-window {
    width:175px;
    height:100px;
    border:2px solid #548dc5;
    border-radius:7px;
    padding:8px;
    margin-bottom:24px;
}

.mini-window i {
    display:inline-block;
    width:4px;
    height:4px;
    border-radius:50%;
    background:#548dc5;
}

.mini-window div {
    height:57px;
    border-top:1px solid #548dc5;
    margin-top:4px;
    background:linear-gradient(90deg,transparent 48%,#9cc4e8 48%);
}

.art-local svg {
    width:74px;
    height:90px;
    fill:none;
    stroke:#1392b1;
    stroke-width:2;
    margin-bottom:28px;
}

.resource-art-growth>span:first-child,.resource-art-website>span:first-child,.resource-art-local>span:first-child {
    font-size:64px;
    font-weight:700;
    margin-bottom:20px;
}

.resource-body,.resource-card-body {
    padding:28px;
    flex:1;
}

.resource-body .eyebrow,.resource-card-body .eyebrow {
    font-size:12px;
    letter-spacing:.7px;
    margin-bottom:16px;
}

.resource-body h3,.resource-card-body h2,.resource-card-body h3 {
    font-size:25px;
    line-height:1.3;
    letter-spacing:-.6px;
    margin-bottom:22px;
}

.resource-body .text-link,.resource-card-body .text-link {
    font-size:15px;
}

.resource-card-body p {
    font-size:16px;
}

.cta-section {
    background:var(--blue);
    color:white;
}

.cta-inner {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:70px;
    padding-block:78px;
}

.cta-section .eyebrow {
    color:#d1e5ff;
}

.cta-section h2 {
    font-size:50px;
    color:white;
    max-width:710px;
}

.cta-section h2 em {
    color:#fff;
}

.cta-section p {
    font-size:18px;
    color:#e6f0ff;
    max-width:700px;
    margin-bottom:0;
}

.cta-section .eyebrow {
    font-size:12px;
    margin-bottom:20px;
}

.cta-actions {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:24px;
    flex:none;
}

.cta-actions .button {
    background:white;
    color:var(--blue);
    min-width:280px;
    font-size:16px;
    padding:20px 26px;
}

.cta-actions>a:not(.button) {
    color:white;
    font-size:16px;
}

.cta-actions>span {
    font-size:13px;
    color:#d9eaff;
    max-width:290px;
    text-align:center;
    line-height:1.7;
}

.site-footer {
    background:#f5f8fc;
    padding-top:65px;
}

.footer-grid {
    display:grid;
    grid-template-columns:1.5fr 1fr 1fr 1.3fr;
    gap:42px;
    padding-bottom:60px;
}

.footer-brand .brand>span {
    font-size:24px;
}

.footer-brand p {
    font-size:16px;
    margin-block:25px 20px;
    line-height:1.9;
}

.footer-brand .footer-phone {
    font-size:18px;
}

.footer-grid>div>h2 {
    font-size:16px;
    letter-spacing:0;
    margin:4px 0 23px;
}

.footer-grid>div>a:not(.brand) {
    display:block;
    font-size:14px;
    line-height:1.7;
    margin-bottom:13px;
}

.footer-invite .eyebrow {
    font-size:12px;
}

.footer-grid>.footer-invite h2 {
    font-size:29px;
    line-height:1.25;
    margin-bottom:18px;
    letter-spacing:-.6px;
}

.footer-grid>.footer-invite .text-link {
    display:inline-flex;
    font-size:14px;
    gap:12px;
}

.footer-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    border-top:1px solid var(--line);
    padding-block:23px;
    font-size:12px;
    color:#526a83;
}

.footer-bottom>div {
    display:flex;
    gap:23px;
}

/* Interior page layouts share legible type and the same medical identity. */
.page-hero {
    background:linear-gradient(110deg,#fff,#eef5ff);
    padding-block:74px;
    border-bottom:1px solid var(--line);
}

.page-hero .display-title {
    font-size:clamp(43px,4.6vw,66px);
    line-height:1.15;
    max-width:1040px;
    margin-bottom:27px;
}

.page-hero>.container>.intro {
    max-width:850px;
}

.page-hero.container {
    background:white;
}

.page-hero .button-row {
    margin-bottom:0;
}

.page-hero .split-layout {
    align-items:start;
    gap:60px;
}

.page-hero .split-layout .display-title {
    font-size:clamp(41px,4vw,56px);
}

.page-hero .callout {
    border:1px solid #bed3ed;
    border-top:4px solid var(--blue);
    border-radius:8px;
    padding:32px;
    background:white;
}

.page-hero .callout h2 {
    font-size:32px;
}

.card-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:26px;
}

.feature-card {
    padding:32px;
    border:1px solid var(--line);
    border-radius:9px;
    background:#f7faff;
}

.feature-card .card-number {
    display:block;
    margin-bottom:24px;
}

.feature-card h3 {
    font-size:27px;
}

.feature-card p {
    font-size:17px;
}

.feature-card .text-link {
    font-size:16px;
}

.feature-card .check-list {
    margin-bottom:0;
}

.feature-card .check-list li {
    font-size:16px;
}

.dark-section .feature-card {
    background:#123357;
    border-color:#406284;
}

.dark-section .check-list li::before {
    color:var(--cyan);
}

.tag {
    display:inline-flex;
    border:1px solid #b7cee8;
    padding:8px 14px;
    border-radius:5px;
    font-size:14px;
    font-weight:500;
    color:#2c588d;
    background:white;
}

.service-list {
    list-style:none;
    padding:0;
    margin:0;
    border-top:1px solid var(--line);
}

.service-list>li {
    display:flex;
    gap:20px;
    padding-block:23px;
    border-bottom:1px solid var(--line);
}

.service-list .card-number {
    padding-top:4px;
    flex:none;
}

.service-list h3 {
    font-size:23px;
    margin-bottom:10px;
}

.service-list p {
    font-size:17px;
    margin-bottom:0;
}

.dark-section .service-list,.dark-section .service-list>li {
    border-color:#7896b544;
}

.callout {
    padding:30px 34px;
    border-left:4px solid var(--blue);
    border-radius:0 7px 7px 0;
    background:#edf5ff;
}

.callout h3 {
    font-size:26px;
    margin-bottom:14px;
}

.callout p {
    font-size:17px;
    margin-bottom:12px;
}

.callout p:last-child {
    margin-bottom:0;
}

.dark-section .callout {
    background:#12385e;
    border-color:var(--cyan);
}

.specialty-nav {
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:30px;
}

.specialty-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:26px;
}

.specialty-grid article {
    scroll-margin-top:125px;
}

.approach-image {
    margin:0;
}

.approach-image img {
    width:100%;
    height:500px;
    object-fit:cover;
    object-position:center 15%;
    border-radius:10px;
}

.approach-image figcaption {
    font-size:13px;
    line-height:1.7;
    color:var(--muted);
    margin-top:16px;
}

.preview-site {
    padding:23px;
    background:#f1f6fd;
}

.preview-nav {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    font-size:15px;
    border-bottom:1px solid var(--line);
    padding-bottom:16px;
    margin-bottom:18px;
}

.preview-nav strong {
    color:var(--blue);
}

.preview-nav strong>span {
    font-size:12px;
}

.preview-heading {
    font-size:37px!important;
    line-height:1.15;
    margin:20px 0;
}

.preview-copy {
    font-size:15px;
    max-width:300px;
}

.preview-site .eyebrow {
    font-size:12px;
}

.preview-pill {
    display:inline-flex;
    border-radius:4px;
    background:var(--blue);
    color:white;
    padding:11px 13px;
    font-size:12px;
    white-space:nowrap;
}

.preview-site img {
    width:100%;
    height:235px;
    object-fit:cover;
    object-position:center 20%;
    border-radius:6px;
    margin-top:22px;
}

.preview-caption {
    font-size:12px;
    text-align:center;
    line-height:1.7;
    margin:15px 20px;
}

.marketing-overview {
    border:1px solid #bdd2ee;
    border-top:4px solid var(--blue);
    border-radius:9px;
    background:white;
    padding:32px;
}

.marketing-overview h2 {
    font-size:32px;
    line-height:1.2;
    margin-bottom:26px;
}

.marketing-overview .service-list h3 {
    font-size:23px;
}

.marketing-overview .service-list p {
    font-size:17px;
}

.marketing-overview .service-list li:last-child {
    border-bottom:0;
    padding-bottom:0;
}

.article-hero .display-title {
    max-width:1100px;
}

.article-byline {
    display:flex;
    flex-wrap:wrap;
    gap:25px;
    font-size:14px;
    color:#4f6783;
    margin-top:25px;
}

.article-layout {
    display:grid;
    grid-template-columns:270px 1fr;
    align-items:start;
    gap:85px;
}

.article-sidebar {
    position:sticky;
    top:125px;
    font-size:15px;
}

.article-sidebar nav {
    display:flex;
    flex-direction:column;
    gap:15px;
    padding-block:8px 28px;
    border-bottom:1px solid var(--line);
    margin-bottom:25px;
}

.article-sidebar nav a:hover {
    text-decoration:underline;
    text-underline-offset:4px;
}

.article-sidebar .button {
    font-size:14px;
}

.article-sidebar .eyebrow {
    font-size:12px;
}

.prose {
    max-width:860px;
}

.prose h2 {
    font-size:35px;
    line-height:1.25;
    margin:50px 0 23px;
}

.prose h2:first-child {
    margin-top:0;
}

.prose h3 {
    font-size:26px;
    margin-top:30px;
}

.prose p,.prose li {
    font-size:18px;
    line-height:1.9;
    color:var(--muted);
}

.prose li {
    margin-bottom:11px;
}

.prose a:not(.button) {
    color:var(--blue);
    text-decoration:underline;
    text-underline-offset:4px;
}

.prose ul,.prose ol {
    padding-left:25px;
}

.prose .check-list {
    padding:0;
}

.prose .callout {
    margin-block:35px;
}

.prose .callout h3 {
    margin-top:0;
}

.prose section+section {
    margin-top:45px;
}

.prose strong {
    color:var(--ink);
    font-weight:700;
}

.prose table {
    border-collapse:collapse;
    width:100%;
}

.prose th,.prose td {
    border:1px solid var(--line);
    padding:15px;
    font-size:16px;
    text-align:left;
}

.dark-section .step {
    border-color:#6097c1;
}

.dark-section .step>span {
    color:var(--cyan);
}

/* Tablet and mobile retain readable body text and full-size controls. */
@media(max-width:1250px) {
    .nav-shell {
        width:calc(100% - 48px);
        gap:20px;
    }
    .brand>span {
        font-size:23px;
    }
    .primary-nav {
        gap:18px;
        font-size:14px;
    }
    .primary-nav .nav-cta {
        font-size:13px;
        padding-inline:14px;
    }
    .container {
        width:calc(100% - 72px);
    }
    .growth-hero-grid {
        gap:40px;
    }
    .growth-hero h1 {
        font-size:53px;
    }
    .growth-hero .button {
        font-size:14px;
        padding-inline:16px;
    }
    .example-copy h2 {
        font-size:27px;
    }
    .example-copy {
        padding-left:20px;
    }
    .example-brand {
        font-size:14px;
    }
    .patient-acquisition {
        margin-left:10px;
        margin-right:0;
        padding:18px;
        gap:14px;
    }
    .patient-acquisition h3 {
        font-size:17px;
    }
    .footer-grid {
        gap:28px;
        grid-template-columns:1.4fr 1fr 1fr 1fr;
    }
    .footer-brand .brand>span {
        font-size:21px;
    }
    .specialty-strip .container>span:not(.strip-label) {
        font-size:15px;
    }
    .strip-label {
        padding-right:18px;
    }
}

@media(max-width:1100px) {
    .nav-shell {
        min-height:86px;
    }
    .menu-toggle {
        display:flex;
        align-items:center;
        gap:12px;
        border:1px solid #b1c7e2;
        background:white;
        color:var(--ink);
        border-radius:5px;
        padding:10px 13px;
        font-size:15px;
        font-weight:600;
    }
    .menu-lines {
        width:20px;
        height:12px;
        border-block:2px solid var(--ink);
    }
    .primary-nav {
        display:none;
        position:absolute;
        top:100%;
        left:0;
        right:0;
        padding:20px 30px 28px;
        background:white;
        border-bottom:1px solid var(--line);
        box-shadow:0 20px 30px #0b254715;
    }
    .primary-nav.is-open {
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:8px;
    }
    .primary-nav>a:not(.button) {
        font-size:17px;
        padding-block:11px;
    }
    .primary-nav .nav-cta {
        align-self:start;
        font-size:16px;
        margin-top:8px;
    }
    .growth-hero h1 {
        font-size:46px;
        letter-spacing:-1.8px;
    }
    .growth-hero .hero-description {
        font-size:18px;
    }
    .growth-hero-grid {
        gap:32px;
        padding-block:54px;
    }
    .growth-hero-copy .eyebrow {
        font-size:12px;
        letter-spacing:1px;
    }
    .example-nav-label {
        display:none;
    }
    .example-copy h2 {
        font-size:24px;
    }
    .example-copy p {
        font-size:12px;
    }
    .example-content {
        min-height:245px;
    }
    .example-content img {
        min-height:245px;
    }
    .example-copy {
        padding:20px 12px 20px 17px;
    }
    .example-benefits {
        font-size:12px;
        padding-inline:14px;
    }
    .example-toolbar {
        font-size:12px;
    }
    .acquisition-icon {
        width:38px;
        height:38px;
    }
    .patient-acquisition .acquisition-label {
        font-size:12px;
    }
    .patient-acquisition p:last-child {
        font-size:12px;
    }
    .patient-acquisition h3 {
        font-size:15px;
    }
    .visual-disclaimer {
        font-size:12px;
    }
    .specialty-strip .container {
        flex-wrap:wrap;
        justify-content:center;
        gap:15px 30px;
        padding-block:23px;
    }
    .strip-label {
        width:100%;
        border:0;
        text-align:center;
        padding:0;
        font-size:12px;
    }
    .strip-label br {
        display:none;
    }
    .strip-label strong {
        margin-left:4px;
    }
    .split-layout,.website-section,.home-faq {
        gap:45px;
    }
    .section-heading {
        gap:40px;
    }
    .section-heading>p {
        font-size:17px;
        max-width:350px;
    }
    .home-service {
        padding:30px 28px 0;
    }
    .service-link {
        font-size:15px;
    }
    .home-service p {
        font-size:17px;
    }
    .footer-grid {
        grid-template-columns:1.3fr 1fr 1fr;
    }
    .footer-invite {
        display:none;
    }
    .resource-body,.resource-card-body {
        padding:23px;
    }
    .resource-body h3,.resource-card-body h2 {
        font-size:23px;
    }
    .resource-body .eyebrow,.resource-card-body .eyebrow {
        font-size:12px;
    }
    .cta-section h2 {
        font-size:42px;
    }
    .cta-actions .button {
        min-width:250px;
        font-size:15px;
    }
    .cta-inner {
        gap:40px;
    }
    .article-layout {
        grid-template-columns:220px 1fr;
        gap:45px;
    }
    .card-grid {
        grid-template-columns:1fr 1fr;
    }
    .page-hero .split-layout {
        gap:36px;
    }
}

@media(max-width:800px) {
    .container {
        width:calc(100% - 48px);
    }
    .announcement {
        padding-inline:24px;
        font-size:13px;
        padding-block:9px;
        line-height:1.5;
    }
    .growth-hero-grid {
        grid-template-columns:1fr;
        gap:32px;
        padding-block:45px;
    }
    .growth-hero-copy {
        max-width:680px;
    }
    .growth-hero h1 {
        font-size:clamp(42px,6.8vw,58px);
    }
    .growth-hero-copy .eyebrow {
        font-size:12px;
    }
    .growth-hero .hero-description {
        font-size:20px;
    }
    .growth-hero .button {
        font-size:16px;
    }
    .growth-visual {
        max-width:620px;
        width:100%;
        margin-inline:auto;
    }
    .example-copy h2 {
        font-size:34px;
    }
    .example-content img {
        height:300px;
    }
    .example-copy p {
        font-size:14px;
    }
    .example-copy {
        padding:25px;
    }
    .example-kicker {
        font-size:12px;
    }
    .example-appointment {
        font-size:12px;
    }
    .example-brand {
        font-size:19px;
    }
    .example-nav-label {
        display:block;
        font-size:12px;
    }
    .example-toolbar {
        font-size:12px;
    }
    .example-benefits {
        font-size:12px;
        padding:18px 23px;
    }
    .patient-acquisition {
        margin:0 14px;
        padding:23px;
        gap:20px;
    }
    .acquisition-icon {
        width:45px;
        height:45px;
    }
    .patient-acquisition .acquisition-label {
        font-size:12px;
    }
    .patient-acquisition h3 {
        font-size:20px;
    }
    .patient-acquisition p:last-child {
        font-size:13px;
    }
    .visual-disclaimer {
        font-size:12px;
    }
    .section {
        padding-block:70px;
    }
    h2 {
        font-size:38px;
    }
    .section-heading {
        display:block;
        margin-bottom:32px;
    }
    .section-heading>p {
        max-width:none;
        margin-top:22px;
    }
    .section-heading>.text-link {
        margin-top:22px;
    }
    .service-duo {
        grid-template-columns:1fr;
        gap:24px;
    }
    .split-layout,.website-section,.home-faq {
        grid-template-columns:1fr;
        gap:38px;
    }
    .website-showcase {
        padding:35px;
    }
    .concept-body img {
        height:300px;
    }
    .concept-body h3 {
        font-size:35px;
    }
    .concept-body p {
        font-size:14px;
    }
    .concept-button {
        font-size:12px;
    }
    .concept-nav {
        font-size:12px;
    }
    .concept-bottom {
        font-size:12px;
    }
    .concept-eyebrow {
        font-size:12px;
    }
    .steps-grid {
        grid-template-columns:1fr 1fr;
        gap:32px;
    }
    .step h3 {
        font-size:25px;
    }
    .resource-grid {
        grid-template-columns:1fr;
    }
    .resource-art {
        height:200px;
    }
    .resource-body,.resource-card-body {
        padding:30px;
    }
    .resource-body h3,.resource-card-body h2 {
        font-size:29px;
        max-width:580px;
    }
    .resource-body .eyebrow,.resource-card-body .eyebrow {
        font-size:12px;
    }
    .resource-card-body p {
        font-size:17px;
    }
    .cta-inner {
        display:block;
        padding-block:65px;
    }
    .cta-section h2 {
        font-size:43px;
    }
    .cta-actions {
        align-items:start;
        margin-top:30px;
        gap:24px;
    }
    .cta-actions>span {
        text-align:left;
        max-width:none;
    }
    .cta-actions .button {
        min-width:280px;
    }
    .footer-grid {
        grid-template-columns:1fr 1fr;
        gap:35px;
    }
    .footer-brand {
        grid-column:1/-1;
    }
    .footer-brand .brand>span {
        font-size:26px;
    }
    .footer-bottom {
        flex-wrap:wrap;
        justify-content:start;
        gap:18px;
    }
    .footer-bottom>span:last-child {
        width:100%;
    }
    .page-hero {
        padding-block:52px;
    }
    .page-hero .display-title,.page-hero .split-layout .display-title {
        font-size:46px;
    }
    .page-hero .intro {
        font-size:19px;
    }
    .page-hero .split-layout {
        gap:40px;
    }
    .specialty-grid {
        grid-template-columns:1fr;
    }
    .article-layout {
        display:flex;
        flex-direction:column;
        gap:40px;
    }
    .article-sidebar {
        position:static;
        background:var(--pale);
        padding:27px;
        border:1px solid var(--line);
        border-radius:8px;
        width:100%;
    }
    .article-sidebar .callout {
        display:none;
    }
    .preview-site img {
        height:310px;
    }
    .article-byline {
        font-size:14px;
    }
    .prose {
        max-width:none;
    }
}

@media(max-width:520px) {
    body {
        font-size:17px;
    }
    .container {
        width:calc(100% - 40px);
    }
    .announcement {
        padding-inline:20px;
        font-size:13px;
        flex-wrap:wrap;
        justify-content:center;
        gap:3px 16px;
        text-align:center;
    }
    .announcement>span {
        width:100%;
        line-height:1.5;
    }
    .announcement a {
        font-size:14px;
        white-space:nowrap;
    }
    .announcement a span {
        display:none;
    }
    .nav-shell {
        width:calc(100% - 40px);
        min-height:100px;
        padding-block:14px;
        gap:12px;
    }
    .brand {
        gap:9px;
    }
    .brand img {
        width:38px;
        height:38px;
    }
    .brand>span {
        font-size:24px;
        letter-spacing:-.7px;
    }
    .brand-caption {
        font-size:12px;
        letter-spacing:.25px;
        margin-top:6px;
    }
    .menu-toggle {
        font-size:14px;
        gap:8px;
        padding:9px;
        min-width:44px;
        min-height:44px;
        flex:none;
        justify-content:center;
    }
    .menu-toggle>span:first-child {
        position:absolute;
        width:1px;
        height:1px;
        padding:0;
        overflow:hidden;
        clip-path:inset(50%);
        white-space:nowrap;
    }
    .menu-lines {
        width:20px;
        height:14px;
    }
    .primary-nav {
        padding-inline:20px;
    }
    .primary-nav .nav-cta {
        font-size:15px;
    }
    .growth-hero-grid {
        padding-block:35px;
        gap:22px;
    }
    .growth-hero-copy .eyebrow {
        font-size:14px;
        letter-spacing:.6px;
        line-height:1.6;
    }
    .growth-hero h1 {
        font-size:39px;
        line-height:1.15;
        letter-spacing:-2px;
        margin-bottom:23px;
    }
    .growth-hero .hero-description {
        font-size:18px;
        line-height:1.75;
    }
    .growth-hero .button-row {
        gap:12px;
        margin-block:26px 20px;
        align-items:stretch;
    }
    .growth-hero .button {
        width:100%;
        font-size:16px;
        justify-content:space-between;
    }
    .hero-support {
        font-size:14px;
    }
    .hero-service-links {
        gap:12px 20px;
        padding-top:19px;
    }
    .hero-service-links a {
        font-size:14px;
        gap:12px;
    }
    .growth-visual {
        padding-top:0;
    }
    .example-toolbar {
        font-size:12px;
        letter-spacing:.5px;
        padding:10px 11px;
        gap:8px;
    }
    .browser-dots {
        gap:3px;
    }
    .browser-dots i {
        height:4px;
        width:4px;
    }
    .example-navigation {
        padding:17px 14px;
    }
    .example-brand {
        font-size:14px;
        gap:5px;
    }
    .example-nav-label {
        display:none;
    }
    .example-content {
        min-height:240px;
        grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);
    }
    .example-copy {
        padding:18px 12px 18px 16px;
    }
    .example-kicker {
        font-size:12px;
        letter-spacing:.3px;
        line-height:1.5;
        display:block;
    }
    .example-copy h2 {
        font-size:26px;
        letter-spacing:-.8px;
        line-height:1.15;
    }
    .example-copy p {
        font-size:14px;
        line-height:1.6;
    }
    .example-appointment {
        font-size:12px;
        padding:9px;
        gap:5px;
    }
    .example-content img {
        height:100%;
        min-height:240px;
        max-height:none;
        object-position:center 15%;
    }
    .example-benefits {
        font-size:12px;
        padding:13px 12px;
        gap:8px;
    }
    .patient-acquisition {
        margin:0 7px;
        padding:18px 14px;
        gap:13px;
    }
    .acquisition-icon {
        width:36px;
        height:36px;
    }
    .acquisition-icon svg {
        width:24px;
        height:24px;
    }
    .patient-acquisition .acquisition-label {
        font-size:12px;
        letter-spacing:.6px;
    }
    .patient-acquisition h3 {
        font-size:20px;
        margin-bottom:6px;
    }
    .patient-acquisition p:last-child {
        font-size:14px;
    }
    .patient-acquisition p>span {
        margin-inline:3px;
    }
    .visual-disclaimer {
        font-size:12px;
        margin-top:16px;
    }
    .specialty-strip .container {
        gap:13px 20px;
        padding-block:21px;
    }
    .specialty-strip .container>span:not(.strip-label) {
        font-size:14px;
    }
    .specialty-strip a {
        font-size:14px;
    }
    .strip-label {
        font-size:12px;
    }
    .section {
        padding-block:58px;
    }
    h2 {
        font-size:33px;
        line-height:1.2;
    }
    .eyebrow {
        font-size:12px;
        letter-spacing:1px;
    }
    .intro {
        font-size:18px;
    }
    .section-heading>p {
        font-size:17px;
    }
    .home-service {
        padding:27px 24px 0;
    }
    .home-service h3 {
        font-size:29px;
    }
    .home-service p {
        font-size:17px;
    }
    .card-number {
        font-size:12px;
    }
    .service-symbol {
        width:38px;
        height:38px;
    }
    .service-tags span {
        font-size:12px;
    }
    .service-link {
        font-size:15px;
        line-height:1.6;
    }
    .difference-list h3 {
        font-size:23px;
    }
    .difference-list p {
        font-size:17px;
    }
    .difference-list article {
        gap:18px;
    }
    .website-showcase {
        padding:23px 16px;
    }
    .concept-nav {
        padding:16px 12px;
    }
    .concept-nav>span:nth-child(2) {
        display:none;
    }
    .concept-brand {
        font-size:21px;
    }
    .concept-book {
        font-size:12px;
    }
    .concept-body {
        padding-left:14px;
        gap:10px;
    }
    .concept-body h3 {
        font-size:26px;
    }
    .concept-body p {
        font-size:14px;
    }
    .concept-body img {
        height:100%;
        min-height:300px;
    }
    .concept-button {
        font-size:12px;
        padding:9px 11px;
    }
    .concept-eyebrow {
        font-size:12px;
    }
    .concept-bottom {
        font-size:12px;
        padding:15px 12px;
    }
    .concept-disclaimer {
        font-size:12px;
    }
    .check-list li {
        font-size:16px;
    }
    .steps-grid {
        gap:24px 20px;
        grid-template-columns:1fr;
    }
    .step>span {
        font-size:27px;
    }
    .step>.card-number {
        font-size:14px;
    }
    .step h3 {
        font-size:23px;
    }
    .step p {
        font-size:16px;
    }
    .faq-list summary {
        font-size:17px;
        line-height:1.6;
        gap:15px;
        padding-block:22px;
    }
    .faq-list details p {
        font-size:16px;
        padding-right:10px;
    }
    .resource-body,.resource-card-body {
        padding:25px;
    }
    .resource-body h3,.resource-card-body h2 {
        font-size:26px;
    }
    .resource-body .eyebrow,.resource-card-body .eyebrow {
        font-size:12px;
    }
    .cta-section h2 {
        font-size:36px;
    }
    .cta-section p {
        font-size:17px;
    }
    .cta-inner {
        padding-block:56px;
    }
    .cta-actions .button {
        min-width:0;
        width:100%;
        justify-content:space-between;
        font-size:16px;
    }
    .cta-actions>a:not(.button) {
        font-size:15px;
    }
    .cta-actions>span {
        font-size:13px;
    }
    .footer-grid {
        gap:30px 22px;
        padding-bottom:40px;
    }
    .site-footer {
        padding-top:45px;
    }
    .footer-grid>div>a:not(.brand) {
        font-size:14px;
    }
    .footer-grid>div>h2 {
        font-size:16px;
    }
    .footer-bottom {
        font-size:12px;
    }
    .page-hero .display-title,.page-hero .split-layout .display-title {
        font-size:39px;
        letter-spacing:-1.6px;
    }
    .page-hero .intro {
        font-size:18px;
    }
    .page-hero .callout {
        padding:25px;
    }
    .page-hero .callout h2 {
        font-size:29px;
    }
    .card-grid {
        grid-template-columns:1fr;
    }
    .feature-card {
        padding:26px;
    }
    .feature-card h3 {
        font-size:27px;
    }
    .feature-card p {
        font-size:17px;
    }
    .service-list h3 {
        font-size:23px;
    }
    .service-list p {
        font-size:17px;
    }
    .callout {
        padding:25px;
    }
    .callout p {
        font-size:17px;
    }
    .callout h3 {
        font-size:24px;
    }
    .tag {
        font-size:13px;
        padding:7px 11px;
    }
    .approach-image img {
        height:390px;
    }
    .prose h2 {
        font-size:29px;
        margin-top:40px;
    }
    .prose h3 {
        font-size:25px;
    }
    .prose p,.prose li {
        font-size:17px;
    }
    .preview-nav {
        font-size:14px;
    }
    .preview-pill {
        font-size:12px;
        padding:10px;
    }
    .preview-heading {
        font-size:32px!important;
    }
    .preview-site {
        padding:20px;
    }
    .preview-site img {
        height:260px;
    }
    .marketing-overview {
        padding:25px;
    }
    .marketing-overview h2 {
        font-size:29px;
    }
    .desktop-break {
        display:none;
    }
}

@media(max-width:370px) {
    .container,.nav-shell {
        width:calc(100% - 32px);
    }
    .brand img {
        width:31px;
        height:31px;
    }
    .brand {
        gap:7px;
    }
    .brand>span {
        font-size:22px;
    }
    .brand-caption {
        font-size:12px;
        letter-spacing:0;
    }
    .menu-toggle {
        font-size:12px;
        padding:8px;
        gap:6px;
    }
    .nav-shell {
        gap:10px;
    }
    .growth-hero h1 {
        font-size:38px;
        letter-spacing:-1.6px;
    }
    .growth-hero-copy .eyebrow {
        font-size:14px;
        letter-spacing:.6px;
    }
    .hero-service-links {
        gap:12px;
    }
    .hero-service-links a {
        font-size:12px;
        gap:10px;
    }
    .example-copy h2 {
        font-size:26px;
    }
    .example-content,.concept-body {
        grid-template-columns:1fr;
    }
    .example-copy {
        padding:22px;
    }
    .example-content img,.concept-body img {
        height:300px;
    }
    .concept-body {
        padding:0;
        gap:0;
    }
    .concept-body>div {
        padding:22px;
    }
    .patient-acquisition .acquisition-label {
        font-size:12px;
    }
    .patient-acquisition h3 {
        font-size:20px;
    }
    .patient-acquisition p:last-child {
        font-size:14px;
    }
    .example-nav-label {
        display:none;
    }
    .preview-nav {
        flex-wrap:wrap;
    }
}

@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto;
    }
    *,*::before,*::after {
        transition:none!important;
        animation:none!important;
    }
}

@media print {
    .announcement,.site-header,.site-footer,.cta-section,.article-sidebar,.button-row {
        display:none;
    }
    .container {
        width:100%;
    }
    .section {
        padding:25px 0;
    }
    .page-hero {
        padding:15px 0;
        background:none;
    }
    .article-layout {
        display:block;
    }
    body {
        background:white;
        color:black;
    }
    .prose {
        max-width:none;
    }
    a {
        color:black;
    }
}
