/* End Custom Fonts CSS */

.elementor-widget-container .eael-protected-content-message {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-container .protected-content-error-msg {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-641 .elementor-element.elementor-element-9c7abc5 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
}

.elementor-641 .elementor-element.elementor-element-9c7abc5:not(.elementor-motion-effects-element-type-background), .elementor-641 .elementor-element.elementor-element-9c7abc5 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: var(--e-global-color-43beb17);
}

.elementor-widget-spacer .eael-protected-content-message {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-spacer .protected-content-error-msg {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-641 .elementor-element.elementor-element-391aa55 {
	--spacer-size: 130px;
}

.elementor-641 .elementor-element.elementor-element-0bd010c {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: initial;
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: space-between;
	--gap: 0px 0px;
	--row-gap: 0px;
	--column-gap: 0px;
	--margin-top: 20px;
	--margin-bottom: 0px;
	--margin-left: 0px;
	--margin-right: 0px;
}

.elementor-641 .elementor-element.elementor-element-4949509 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-widget-html .eael-protected-content-message {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-html .protected-content-error-msg {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-heading .eael-protected-content-message {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-heading .protected-content-error-msg {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-heading .elementor-heading-title {
	font-family: var(--e-global-typography-primary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-primary-font-weight);
	color: var(--e-global-color-primary);
}

.elementor-641 .elementor-element.elementor-element-7647669.elementor-element {
	--order: -99999;
}

.elementor-641 .elementor-element.elementor-element-7647669 {
	text-align: start;
}

.elementor-641 .elementor-element.elementor-element-7647669 .elementor-heading-title {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
	color: #7fa744;
}

.elementor-641 .elementor-element.elementor-element-b469008 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--justify-content: center;
}

.elementor-641 .elementor-element.elementor-element-c86e2db {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
}

.elementor-641 .elementor-element.elementor-element-95ceb65 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
	--margin-top: 0px;
	--margin-bottom: 40px;
	--margin-left: 0px;
	--margin-right: 0px;
}

.elementor-widget-text-editor .eael-protected-content-message {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-text-editor .protected-content-error-msg {
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
	font-weight: var(--e-global-typography-secondary-font-weight);
}

.elementor-widget-text-editor {
	font-family: var(--e-global-typography-text-font-family), Sans-serif;
	font-weight: var(--e-global-typography-text-font-weight);
	color: var(--e-global-color-text);
}

.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap {
	background-color: var(--e-global-color-primary);
}

.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap {
	color: var(--e-global-color-primary);
	border-color: var(--e-global-color-primary);
}

.elementor-641 .elementor-element.elementor-element-b1a7dd0 {
	font-family: "Roboto", Sans-serif;
	font-size: 20px;
	font-weight: 400;
}

.elementor-641 .elementor-element.elementor-element-df270f8 .elementor-heading-title {
	font-family: "Platypi", Sans-serif;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.2em;
	color: var(--e-global-color-text);
}

body.elementor-page-641:not(.elementor-motion-effects-element-type-background), body.elementor-page-641 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-image: url("https://mysynergydental.com/nitropack_static/LkwFjGuMWjXUwJYfGKxdWjnvItrFElGj/assets/images/optimized/rev-85c34f9/synergy4dev.wpenginepowered.com/wp-content/uploads/2025/10/22-2.webp");
	background-position: center right;
	background-repeat: no-repeat;
	background-size: 500px auto;
}

body.elementor-page-641:not(.elementor-motion-effects-element-type-background).nitro-lazy, body.elementor-page-641 > .elementor-motion-effects-container > .elementor-motion-effects-layer.nitro-lazy {
	background-image: none !important;
}

@media (min-width:768px) {
	.elementor-641 .elementor-element.elementor-element-0bd010c {
		--content-width: 1200px;
	}
	
	.elementor-641 .elementor-element.elementor-element-4949509 {
		--width: 35%;
	}
	
	.elementor-641 .elementor-element.elementor-element-b469008 {
		--width: 60%;
	}
}

@media (max-width:767px) {
	.elementor-641 .elementor-element.elementor-element-391aa55 {
		--spacer-size: 80px;
	}
	
	.elementor-641 .elementor-element.elementor-element-0bd010c {
		--content-width: 380px;
		--flex-direction: row;
		--container-widget-width: initial;
		--container-widget-height: 100%;
		--container-widget-flex-grow: 1;
		--container-widget-align-self: stretch;
		--flex-wrap-mobile: wrap;
	}
	
	.elementor-641 .elementor-element.elementor-element-7647669 {
		padding: 10px 0px 0px 0px;
	}
	
	.elementor-641 .elementor-element.elementor-element-7647669.elementor-element {
		--order: -99999;
	}
	
	.elementor-641 .elementor-element.elementor-element-b469008 {
		--margin-top: 21vw;
		--margin-bottom: 0vw;
		--margin-left: 0vw;
		--margin-right: 0vw;
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-641 .elementor-element.elementor-element-df270f8 {
		padding: 10px 0px 0px 0px;
	}
	
	.elementor-641 .elementor-element.elementor-element-df270f8 .elementor-heading-title {
		font-size: 48px;
	}
}

/* Start custom CSS for html, class: .elementor-element-cae64d9 */

/* Make the SVG responsive inside the wrapper */
#tooth-svg-wrap svg {
	width: 100%;
	height: auto;
	display: block;
}

/* Smooth transitions on tooth shapes */
#tooth-svg-wrap g.tooth path {
	transition: fill .2s ease, stroke .2s ease;
}

/* Hover preview */
#tooth-svg-wrap g.tooth:hover path {
	fill: #7fa745;
}

/* Click-selected tooth */
#tooth-svg-wrap g.tooth.is-active path {
	fill: #7fa745 !important;
	stroke: #f69fa6 !important;
}

/* Remove browser focus outline (the black box) */
#tooth-svg-wrap g.tooth:focus, #tooth-svg-wrap g.tooth:focus-visible {
	outline: none !important;
}

/* Optional: nicer keyboard focus indicator */
#tooth-svg-wrap g.tooth:focus-visible path {
	stroke: #f69fa6 !important;
	stroke-width: 5px;
}

#tooth-svg-wrap .tooth-label {
	fill: #111;
	opacity: 1;
	pointer-events: none;
}

/* Hide the original label paths (dark text-like paths not inside a tooth group) */
#tooth-svg-wrap svg > g path[fill="black"], #tooth-svg-wrap svg > g path[fill="#282A2B"], #tooth-svg-wrap svg > g path[fill="#06150A"] {
	display: none;
}

#tooth-svg-wrap text.tooth-label {
	fill: #111;
	/* label color */
	font-size: 22px;
	/* tweak */
	font-weight: 400;
	font-family: Montserrat, sans-serif;
	pointer-events: none;
	/* never blocks tooth clicks */
	user-select: none;
}

/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-7f14898 */

/* ===== Chart styling (matches your screenshot) ===== */
.tooth-card {
	max-width: 680px;
}

.tooth-title {
	margin: 0 0 10px;
	font-size: 32px;
	font-weight: 700;
	font-family: Platypi;
}

.tooth-table {
	border: 1px solid #000;
	background: #fff;
}

.tooth-table .row {
	display: grid;
	grid-template-columns: 200px 1fr;
	min-height: 70px;
	border-top: 1px solid #000;
}

.tooth-table .row:first-child {
	border-top: 0;
}

.tooth-table .label {
	background: #7fa745;
	color: #fff;
	font-weight: 400;
	font-size: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 8px 10px;
	border-right: 1px solid #9aa0a6;
	font-family: Lexend;
}

.tooth-table .value {
	padding: 10px 12px;
	font-size: 14px;
	line-height: 1.35;
	display: flex;
	align-items: center;
}

.tooth-table .row.tall {
	min-height: 120px;
}

#valOther {
	white-space: pre-wrap;
}

.organs-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.organ {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}

.organ img {
	width: 42px;
	height: 42px;
	object-fit: contain;
}

.organ-label {
	font-size: 12px;
	text-align: center;
}

/* ===== SVG label + click helpers ===== */
#tooth-svg-wrap g.tooth {
	cursor: pointer;
}

#tooth-svg-wrap g.tooth.is-active path, #tooth-svg-wrap g.tooth.is-active polygon, #tooth-svg-wrap g.tooth.is-active rect, #tooth-svg-wrap g.tooth.is-active circle {
	/* optional active highlight if your tooth shapes are these elements */
	opacity: .85;
}
