/* Andrew Foreman's Find a Provider changes (email of Oct. 15, 2026; Blake's reply of Oct. 19 accepted
   them, and Daniel Goldberg confirmed the 24-48 hours the same day). includes/provider-roles.php holds
   the rules; OTX tools/staged/z-provider-roles.php puts the elements in templates 556 and 551. */

/* 1. Provider card 556: Learn More (e00afd2) and Book Appointment (otxb556b) sit in row otxb556r
   (.otx-card-actions; direction, wrap and gap are in its own settings, so the editor shows them). The
   row takes over LST-05's job (fixes-chrome.css) of holding the button at the card bottom, so the
   buttons still line up across a grid row; Learn More's own margin-top:auto would only push it down
   inside the row. On every page but Find a Provider the row holds Learn More alone and looks as before. */
.elementor-556 .elementor-element.otx-card-actions.e-con {
	margin-top: auto;
}
.elementor-556 .e-con.otx-card-actions > .elementor-element.elementor-widget {
	margin-top: 0;
}

/* When the card has both (Find a Provider, a physician) they share the row equally: the kit's 22 px
   side padding would put them on two lines in a three-column card under about 1,350 px, so 16 px a
   side, centered labels. Where the card is too narrow for both (phones), each takes the full width,
   Learn More on top. A card with Learn More alone (advanced practice providers, therapists, and the
   card on every other page) keeps its button as before. */
.elementor-556 .e-con.otx-card-actions:has(.otx-card-book) > .elementor-element.elementor-widget {
	flex: 1 1 auto;
}
.elementor-556 .e-con.otx-card-actions:has(.otx-card-book) .elementor-button {
	width: 100%;
	justify-content: center;
	padding-left: 16px;
	padding-right: 16px;
	white-space: nowrap;
}

/* 2. The banner above the listings (otxb551a, .otx-sched-banner): the profile's scheduling callout
   (pillar.css, .otx-sched-badge on template 348) on one line, centered over the grid. A white rounded
   rectangle, navy Gibson 600 (16.5:1), an orange disc holding a navy clock (7.1:1). */
.elementor-551 .elementor-element.otx-sched-banner.elementor-widget {
	margin: 0 0 30px;
	text-align: center;
}
.elementor-551 .otx-sched-banner p {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	max-width: 100%;
	padding: 8px 20px 8px 10px;
	background: #fff;
	color: #041E42;
	border-radius: 12px;
	box-shadow: 0 1px 4px rgba(4, 30, 66, 0.12);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.25;
	text-align: left;
	text-wrap: balance;
}
.elementor-551 .otx-sched-banner p::before {
	content: "";
	flex: 0 0 32px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: #FE8C42 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23041E42' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='8.5'/%3E%3Cpath d='M12 7.5V12l3 2'/%3E%3C/svg%3E") center/19px no-repeat;
}
@media (max-width: 767px) {
	.elementor-551 .elementor-element.otx-sched-banner.elementor-widget {
		margin-bottom: 20px;
	}
	.elementor-551 .otx-sched-banner p {
		font-size: 16px;
	}
}

/* 3. The profile's office tab ([provider_locations], shortcodes.php): phone numbers are a.otx-tel
   (one line, fixes-chrome.css); a fax number is plain text in span.otx-fax, held on one line the same
   way (Blake, Oct. 19, 2026). */
.location-contact .otx-fax {
	white-space: nowrap;
}

/* 4. Find a Provider lists physicians only (Oct. 21, 2026). A name search that matches advanced
   practice providers says so under the filter bar, linked to their page (includes/provider-roles.php),
   in the result count's type (pillar.css .otx-af-count) with the pinned line's link color. */
.otx-pillar .otx-af-also {
	margin: -10px 0 18px;
	font-size: 15px;
	line-height: 1.4;
}
.otx-pillar .otx-af-also a {
	color: var(--blue, #2D68C4);
	font-weight: 600;
	text-decoration: underline;
}

/* 5. Profile section links (PRO-12; container 4e5b21a, .provider-menu, template 348): on phones the
   provider's name drops out of the labels, "About" and "Specialties" instead of "About Dr. Atkinson"
   and "Dr. Atkinson Specialties", so the links fit in fewer rows. includes/provider-profile.php wraps
   the name in span.otx-pm-name. Tablet and desktop unchanged. */
@media (max-width: 767px) {
	.provider-menu .otx-pm-name {
		display: none;
	}
}

/* 6. Click-to-call under a physician's scheduling button (Andrew Foreman, Oct. 14, 2026;
   includes/provider-profile.php prints div.otx-call-line after the hero's Schedule row 03af0ad). It
   reads as a line, not a third button: white Gibson 600 on the navy hero (16.5:1), an orange disc
   holding a navy handset like the callout's clock (7.1:1), the number underlined. The whole line is the
   link, at least 44 px tall. Its side padding is the 10 px the hero's containers have (Elementor's
   default), so it lines up with the button and the callout above it; 6 px plus the row's 10 px bottom
   padding put it 16 px under them, the row's own gap. */
.elementor-348 .otx-call-line {
	box-sizing: border-box;
	margin: 6px 0 0;
	padding: 0 10px;
	max-width: 100%;
}
.elementor-348 .otx-call-line .otx-call-link {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 6px;
	min-height: 44px;
	padding-left: 42px;
	position: relative;
	color: #fff;
	font-family: "Gibson", sans-serif;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.25;
	text-decoration: none;
}
.elementor-348 .otx-call-line .otx-call-link::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 32px;
	height: 32px;
	margin-top: -16px;
	border-radius: 50%;
	background: #FE8C42 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23041E42' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E") center/16px no-repeat;
}
.elementor-348 .otx-call-line .otx-call-number {
	white-space: nowrap;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.elementor-348 .otx-call-line .otx-call-link:hover .otx-call-number,
.elementor-348 .otx-call-line .otx-call-link:focus-visible .otx-call-number {
	text-decoration-thickness: 2px;
}
.elementor-348 .otx-call-line .otx-call-link:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 4px;
	border-radius: 4px;
}
@media (max-width: 767px) {
	.elementor-348 .otx-call-line .otx-call-link {
		font-size: 16px;
	}
}

/* 7. The All-Star text line (Andrew Foreman, Oct. 14, 2026; includes/allstar-text.php): "Text the office
   to schedule an appointment" and the number, one sms: link. It copies the call line above: the whole
   line is the link, at least 44 px tall, an orange disc (here holding a navy message bubble) and the
   number underlined and never split. On the profile hero (--hero) it sits right under the call line in
   the same white Gibson 600; on the office page under the phone list and on All-Star's landing page in
   "Your Locations" (--light) it takes the surrounding size, the body text color for the words and the
   page's own link color for the number. No new colors. On narrow phones the client's wording does not
   fit beside the number, so the number moves to its own line, whole. */
.otx-text-line {
	box-sizing: border-box;
	max-width: 100%;
}
.otx-text-line .otx-text-link {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 6px;
	min-height: 44px;
	max-width: 100%;
	box-sizing: border-box;
	padding-left: 42px;
	position: relative;
	font-family: "Gibson", sans-serif;
	line-height: 1.25;
	text-decoration: none;
}
.otx-text-line .otx-text-link::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 32px;
	height: 32px;
	margin-top: -16px;
	border-radius: 50%;
	background: #FE8C42 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23041E42' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3Cpath d='M8 9h8M8 13h5'/%3E%3C/svg%3E") center/16px no-repeat;
}
/* When the words wrap, wrap them evenly ("Text the office to / schedule an appointment"), never with
   "appointment" left alone on its own row. */
.otx-text-line .otx-text-label {
	text-wrap: balance;
}
.otx-text-line .otx-text-number {
	white-space: nowrap;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.otx-text-line .otx-text-link:hover .otx-text-number,
.otx-text-line .otx-text-link:focus-visible .otx-text-number {
	text-decoration-thickness: 2px;
}
.otx-text-line .otx-text-link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
	border-radius: 4px;
}
/* Profile hero: under the call line, the same type. */
.elementor-348 .otx-text-line--hero {
	margin: 0;
	padding: 0 10px;
}
.elementor-348 .otx-text-line--hero .otx-text-link {
	color: #fff;
	font-size: 17px;
	font-weight: 600;
}
.elementor-348 .otx-text-line--hero .otx-text-link:focus-visible {
	outline-color: #fff;
}
/* Office page (under the phone list) and landing page ("Your Locations"). */
.otx-text-line--light {
	margin: 10px 0 4px;
}
.otx-content .otx-text-line--light {
	margin: 4px 0 18px;
}
.otx-text-line--light .otx-text-link {
	font-size: inherit;
}
.otx-text-line--light .otx-text-label {
	color: #222E3F;
	font-weight: 600;
}
.otx-text-line--light .otx-text-number {
	font-weight: 400;
}
/* On the landing page the office links right below are .otx-card-link, #0A7CC4 at 600 (otx-content.css).
   The number takes their weight and the same blue at the AA-passing tone the site already uses for
   .otx links (#086AA8, 5.77:1 on white; ART-07 in fixes-articles.css), since #0A7CC4 is 4.47:1. Office
   pages keep the phone list's own link color. */
.otx-content .otx-text-line--light .otx-text-number {
	color: #086AA8;
	font-weight: 600;
}
@media (max-width: 767px) {
	.elementor-348 .otx-text-line--hero .otx-text-link {
		font-size: 16px;
	}
}
