/*
Theme Name: Fuel6
Theme URI: https://fuelmedical.com
Author: Fuel Medical
Description: A Fuel Medical block theme (2024)
Requires at least: 6.5
Tested up to: 6.7.1
Requires PHP: 8.0
Version: 6.3.7
Text Domain: fuel6
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Custom Properties
# Fuel Normalize
# Helper Classes
# WordPress Blocks
# Forms - Moved to css/gravity-forms.css
# Header
# Content
# Footer
# Our Providers
# Our Location Section
# Book Your Appt Section
# Animations
# print
# Safari 15.3 fallbacks
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Custom Properties
  Note: WordPress declares its variables in the body, so do the same to avoid scope issues.
--------------------------------------------------------------*/
body {
	 /* Structure - 1100px - for use outside of contain class */
	--contain-padding: clamp(1rem, calc(50vw - 29.93rem), 19rem);

	/* Design - Change in theme.json */
	--primary-color: var(--wp--preset--color--primary);
	--accent-color: var(--wp--preset--color--accent);
	--white: var(--wp--preset--color--white);
	--grey: var(--wp--preset--color--grey);
	--black: var(--wp--preset--color--black);

	--primary-transparent: var(--wp--preset--color--primarytransparent);
	--opaque-white: var(--wp--preset--color--opaquewhite);

	/* Top Level Primary Menu Colors - now managed on the block level */
	--wp--preset--color--menu-background: inherit;
	--wp--preset--color--menu-color: currentColor;
	--wp--preset--color--menu-hover-color: var(--white);
	--wp--preset--color--menu-hover-bg: var(--wp--preset--color--color-2);

	/* Sub Menu Colors */
	--wp--preset--color--sub-menu-background: var(--white);
	--wp--preset--color--sub-menu-color: var(--primary-color);
	--wp--preset--color--sub-menu-hover-color: var(--primary-color);
	--wp--preset--color--sub-menu-hover-bg: var(--wp--preset--color--color-3);

	/* Text */
	--title-font: var(--wp--preset--font-family--title);
	--title-color: var(--primary-color);

	--content-font: var(--wp--preset--font-family--content), sans-serif;
	--content-color: var(--wp--preset--color--content);
}


/*--------------------------------------------------------------
# Fuel Normalize
--------------------------------------------------------------*/
*, *::before, *::after { box-sizing: border-box; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
html {font-size: clamp(125%, 1vw, 240%);line-height: 1.5;-webkit-text-size-adjust: 100%;scroll-behavior: smooth;scrollbar-gutter: stable;min-width: 18rem;}
iframe, img, svg, audio, canvas, video, object, embed { vertical-align: middle; max-width: 100%; }
img { object-fit: cover; }
img:not([src*=".png"], [src*=".gif"], [src*=".svg"]) { background: var(--grey); }
a { text-decoration: none; color: var(--accent-color); transition: color 300ms, background-color 300ms; }
a[href^="tel:"] { white-space: nowrap; }
a:hover { color: var(--primary-color); }
[hidden] { display: none; }

@media only screen and (min-width: 68.5em) { 
	*[id] { scroll-margin-top: 3rem; }
}


/*--------------------------------------------------------------
# Helper Classes
--------------------------------------------------------------*/
.contain {--contain-padding: clamp(var(--mobile-padding, 1rem), calc(50vw - 29.93rem), var(--desktop-padding, 19rem));display: block;position: relative;margin: auto;padding-right: var(--contain-padding);padding-left: var(--contain-padding);width: 100%;}
.icon-item { display: block; position: relative; margin: 1em 0; padding: 0 0 0 1.8em; }
.icon-item svg { position: absolute; top: 0.15em; left: 0; width: 1.2em; height: 1.2em; }

@media (min-width: 68.5em) { 
	.mobile-only { display: none !important; }
}

@media (max-width: 68.49em) { 
	.desktop-only { display: none !important; }
}

.zebra >*:not(tbody):nth-child(odd) { background-color: var(--zebra, var(--grey)); }

/* Use on query loops to help change the order every other column */ 
.stagger > :nth-child(even) .wp-block-columns { flex-direction: row-reverse; }

/* Use to make link fill entire block - use when you can't wrap blocks with anchor tag */ 
.cover-link {position: absolute !important;inset: 0;width: 100%;z-index: 1;background: none !important;}
:has(> .cover-link) { position: relative; }


/*--------------------------------------------------------------
# WordPress Blocks
--------------------------------------------------------------*/
@media (min-width: 37.5em) {
	.alignleft, .alignright { max-width: 48%; }
}

@media (min-width: 68.5em) {
	.is-position-sticky { top: 4rem; }
}


/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
.header-logo .wp-block-fuel-wrapper-block {width: fit-content;}
.header-logo svg { transition: transform 0.3s ease; }
.header-logo a:is(:hover, :focus-visible) svg {transform: scale(1.05);}
.header-quicklinks .wp-block-fuel-menu-wrapper { gap: 0.4rem; }
.header-quicklinks a {padding: 0.53rem 1.2rem;}
.header-quicklinks a:is(:hover, :focus-visible) {background: var(--white);color: var(--primary-color);}
.header-quicklinks svg { margin-right: 0.3rem; transform: translateY(-0.1rem); }
.header-quicklinks a svg path { transition: 300ms ease; }
.header-quicklinks a:is(:hover, :focus-visible) svg path { fill: var(--primary-color); }

@media (max-width: 68.49em) { 
	.header { position: relative; z-index: 998; }
	.header-quicklinks { display: none; }
	.header-columns { border-bottom: 1px solid var(--primary-color); }
	.header-logo { display: flex ; justify-content: center; text-align: center; }
	.header-logo svg, .footer-logo svg { height: clamp(4.26rem, 6vw, 5.5rem); }
}

@media (min-width: 68.5em) { 
	.header:not(.block-editor-block-list__block) { position: relative;z-index: 1;background: red;}
	.header {border-bottom: 1px solid var(--primary-color);}
	.header-number { position: relative; }
	.header-number:after {content: '';background: var(--primary-color);width: 100%;height: 1px;position: absolute;right: 0;bottom: 0;left: 0;margin: auto;transform: scale(0,1);transform-origin: center;transition: 300ms ease;}
	.header-number:is(:hover, :focus-visible):after {transform: scale(1,1);}
}


/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
.wp-site-blocks { margin: auto; }
#main { margin: 0 0 2em; font-size: var(--wp--preset--font-size--content); }
.entry-content .wp-block-list li { margin: 1em 0 0 0; }

/* If a grid has only one column, make it full width */ 
.wp-block-post-template.is-layout-grid:not(:has(li:nth-child(2))) { grid-template-columns: 1fr }

/* Location card loop - Used in content, and menu */ 

/* Bio grid custom loop */ 
.bio-list .bio-box {display: grid;grid-template-areas: "img label";justify-content: start;}
.bio-list .bio-image {grid-area: img;width: 2.5rem;height: 2.5rem;margin-right: 0.5rem;overflow: hidden;position: relative;}
.bio-list img { width: 100%; height: 100%; }
.bio-list .bio-label {grid-area: label;line-height: normal;display: flex;flex-wrap: wrap;align-content: center;}
.bio-list .bio-label span {flex: 1 1 100%;}
.bio-list .bio-cred { font-size: 0.8rem; }

@media (max-width: 68.49em) { 
	#main .bio-list .bio-box {padding: 0.4rem 1.5rem;margin-top: 0;margin-left: -1rem;width: calc(100% + 2rem);color: var(--primary-color) !important;}
	#main .bio-list .bio-box:nth-child(odd) {background: rgba(115,47,89,0.1);}
}

@media (min-width: 68.5em) { 
	.bio-list {display: flex;flex-wrap: wrap;gap: 1rem;align-items: flex-start;margin-top: 1rem;}
	.bio-list .bio-box {grid-template-areas: "img" "label";flex: 0 1 calc(25% - 1rem);min-width: 7.5rem; /* Adjust to prevent names from wrapping */text-align: center;}
	.bio-list.bio-list .bio-box:is(:hover, :focus-visible) { background: none; }
	.bio-list .bio-image {display: block;width: 100%;height: auto;aspect-ratio: 1 / 1.2;/* border-bottom: 0.4rem solid var(--primary-color); */margin-bottom: 0.8rem;}
	.bio-list .bio-image img { transition: transform 0.3s; }
	.bio-list .bio-box:is(:hover, :focus-visible) .bio-image img { transform: scale(1.1); }
	.bio-list .bio-cred { color: var(--content-color); }
}


/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer {margin: 0;}
.ftr-container {position: relative;}
.ftr-container:after {content: '';width: 68.8vw;max-width: 24.5rem;position: absolute;top: 0;bottom: 0;left: 0;z-index: 0;opacity: 0;transition: 1500ms;background-repeat: no-repeat;background-size: contain;background-image: url('data:image/svg+xml,<svg width="490" height="484" viewBox="0 0 490 484" fill="none" xmlns="http://www.w3.org/2000/svg"> <g opacity="0.1"> <path d="M266.601 43.8344C266.601 77.8166 257.153 109.684 240.515 136.757C214.711 107.428 199.2 68.9333 199.2 26.9137C199.2 68.9333 183.689 107.287 157.885 136.757C141.247 109.684 131.799 78.0986 131.799 43.8344C131.799 -12.7088 158.026 -63.3297 199.2 -96.043C240.233 -63.3297 266.601 -12.7088 266.601 43.8344Z" fill="white"/> <path d="M266.601 344.035C266.601 400.578 240.233 451.058 199.2 483.772C158.167 451.058 131.799 400.578 131.799 344.035C131.799 287.492 141.247 278.186 157.885 251.113C183.548 280.442 199.2 318.936 199.2 360.956C199.2 318.936 214.852 280.442 240.515 251.113C257.153 278.186 266.601 309.912 266.601 344.035Z" fill="white"/> <path d="M489.107 193.865C456.394 234.897 405.914 261.265 349.23 261.265C292.545 261.265 283.521 251.818 256.307 235.179C285.636 209.375 324.131 193.865 366.15 193.865C324.131 193.865 285.636 178.213 256.307 152.55C283.38 136.053 315.247 126.464 349.23 126.464C405.914 126.464 456.394 152.832 489.107 193.865Z" fill="white"/> <path d="M32.1087 193.865C74.1283 193.865 112.623 209.516 141.952 235.179C114.879 251.818 83.1527 261.265 49.0293 261.265C-7.51389 261.265 -57.9939 235.038 -90.7071 193.865C-57.9939 152.832 -7.51389 126.464 49.0293 126.464C105.573 126.464 114.879 136.053 141.952 152.55C112.623 178.354 74.1283 193.865 32.1087 193.865Z" fill="white"/> <path d="M351.345 39.4632C337.667 25.7857 315.53 25.7857 301.993 39.4632C287.469 53.9868 283.944 107.005 283.944 107.005C283.944 107.005 336.962 103.48 351.486 88.9561C365.163 75.2786 365.163 53.1407 351.486 39.6042L351.345 39.4632Z" fill="white"/> <path d="M111.071 107.005C111.071 107.005 107.546 53.9868 93.0224 39.4632C79.3449 25.7857 57.207 25.7857 43.6705 39.4632C29.993 53.1407 29.993 75.2786 43.6705 88.8151C58.1941 103.339 111.212 106.864 111.212 106.864L111.071 107.005Z" fill="white"/> <path d="M43.6712 347.56C57.3488 361.237 79.4866 361.237 93.0232 347.56C107.547 333.036 111.072 280.018 111.072 280.018C111.072 280.018 58.0538 283.543 43.5302 298.067C29.8527 311.744 29.8527 333.882 43.5302 347.419L43.6712 347.56Z" fill="white"/> <path d="M283.804 280.16C283.804 280.16 287.329 333.178 301.853 347.702C315.53 361.379 337.668 361.379 351.205 347.702C364.882 334.024 364.882 311.886 351.205 298.35C336.681 283.826 283.663 280.301 283.663 280.301L283.804 280.16Z" fill="white"/> </g> </svg>');}
.js-intersected.ftr-container:after { opacity: 1; }
.ftr-container > .wp-block-group { z-index: 1; }
.footer a {display: block;width: fit-content;background: linear-gradient(0deg, var(--white), var(--white)) no-repeat 0 bottom / 0 1px;transition: background-size 350ms;}
.footer a.icon-item { background-position-x: 1.6rem; }
.footer a:not(.footer-logo):is(:hover, :focus-visible) {background-size: 100% 1px;color: var(--white);}
.footer-logo path { fill: var(--white); }
.footer-socials a { transition: transform 0.3s ease; }
.footer-socials a:is(:hover, :focus) { background: none; transform: scale(1.2); }
.footer-logo svg { transition: transform 0.3s ease; }
.footer-logo:is(:hover, :focus-visible) svg { transform: scale(1.05); }
.ftr-fax-line { margin: 1em 0; padding: 0 0 0 1.8em; position: relative; } 
.ftr-fax-line svg { position: absolute; top: 0.15em; left: 0; width: 1.2em; height: 1.2em; }
.ftr-sec-title {position: relative;margin-bottom: 2.3rem;}
.ftr-sec-title:before {content: '';background: var(--white);width: 100%;height: 1px;position: absolute;right: 0;bottom: calc((0.5rem + 1px) * -1);left: 0;margin: auto;/* transform: scaleX(0); */transition: 500ms ease;}
.ftr-sec-title:after {content: '';background: var(--white);width: calc(0.4rem + 1px);height: calc(0.4rem + 1px);border-radius: 50%;position: absolute;/* right: 0; */bottom: -0.75rem;left: 0;margin: auto;}

@media (min-width: 68.5em) { 
	.copyright-section { margin-top: 3.7rem; }
}

/* 850px - Mobile breakpoint for copyright section */ 
@media only screen and (max-width: 53.125em) { 
	.copyright-wrapper { flex-direction: column; text-align: center; }
	.policy-menu { justify-content: center; }
}

/* Policy menu */
.policy-menu li:nth-child(n+1):not(:last-child)::before { content: '|'; position: absolute; right: -0.6rem; }


/*--------------------------------------------------------------
# Our Providers
--------------------------------------------------------------*/
#our_providers { margin-top: 2rem; }
.our-providers-columns { gap: 1.6rem; }
.our-providers-text-col-btns { justify-content: center; }
.our-providers-img-col .bio-list .bio-label { margin: 0; }
.our-providers-img-col .bio-list .bio-name, .our-providers-img-col .bio-list .bio-cred { margin: 0; flex: 1 1 100%; }


@media (min-width: 48.875em) and (max-width: 68.49em) { /* 782px - 1095px */
    .our-providers-columns {flex-wrap: wrap !important;}
    .our-providers-columns.wp-block-columns > .our-providers-text-col.wp-block-column {flex-basis: auto !important;}
    .our-providers-columns.wp-block-columns > .our-providers-img-col.wp-block-column {flex-basis: 0 !important;flex-grow: 1 !important;}
    #our_providers .bio-list .bio-box { margin-left: 0; width: 100%; }
}

@media (min-width: 68.5em) {
    #our_providers { padding-right: 0; padding-left: 0; margin-top: 4.6rem; margin-right: calc(var(--contain-padding) - 1rem); margin-left: calc(var(--contain-padding) - 1rem); }
    .our-providers-columns {max-width: 60rem;justify-content: space-between;}
    .our-providers-text-col {max-width: 28.5rem;padding-top: 6.2rem;}
    .our-providers-text-col-btns {justify-content: flex-start;margin-top: 2rem;}
    .our-providers-img-col {max-width: 24.9rem;}
    .our-providers-img-col .bio-list {display: grid;grid-template-areas: 'left top-right' 'left bottom-right';gap: 0.9rem 2.4rem;} 
    .our-providers-img-col .bio-box:nth-child(1) { grid-area: top-right; } 
    .our-providers-img-col .bio-box:nth-child(2) { grid-area: left; align-self: center; }
    .our-providers-img-col .bio-box:nth-child(3) { grid-area: bottom-right; }
    .our-providers-img-col .bio-list .bio-box { width: fit-content; }
    .our-providers-img-col .bio-list .bio-image {margin-right: 0;margin-bottom: 0.6rem;width: 11.25rem;height: 11.25rem;border-bottom: none;}
	.our-providers-img-col .bio-list .bio-image:before {content: '';width: 1.6rem;height: 1.6rem;position: absolute;top: 0.2rem;left: 0.2rem;z-index: 1;background-size: contain;background-repeat: no-repeat;background-image: url('data:image/svg+xml,<svg class="button-leaf-tl" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><mask id="mask0_4553_2927" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="20"><rect y="20" width="20" height="20" transform="rotate(-90 0 20)" fill="%23F3E9DB"/></mask><g mask="url(%23mask0_4553_2927)"><path d="M9.92925 -4.56595C13.6777 -4.56595 17.0242 -2.81791 19.1929 -0.097696C17.0242 2.62252 13.6777 4.37056 9.92925 4.37056C6.18078 4.37056 5.56382 3.74426 3.76904 2.64121C5.71339 0.939912 8.26534 -0.0976955 11.051 -0.0976957C8.26534 -0.0976955 5.71339 -1.1353 3.76904 -2.8366C5.56382 -3.93964 7.66708 -4.56595 9.92925 -4.56595Z" fill="white"/><path d="M-0.0258859 10.9794C-0.0258861 8.19379 1.01172 5.64184 2.71302 3.6975C3.81606 5.49228 4.44237 7.59553 4.44237 9.8577C4.44237 13.6062 2.70368 16.9527 -0.0258856 19.1214C-2.7461 16.9527 -4.49414 13.6062 -4.49414 9.8577C-4.49414 6.10923 -3.85849 5.49228 -2.7648 3.6975C-1.05415 5.64184 -0.0258861 8.19379 -0.0258859 10.9794Z" fill="white"/><path d="M10.1631 10.2129C11.0699 9.30614 11.0699 7.83854 10.1631 6.94115C9.20032 5.97832 5.68555 5.74463 5.68555 5.74463C5.68555 5.74463 5.91924 9.2594 6.88207 10.2222C7.7888 11.129 9.25641 11.129 10.1538 10.2222L10.1631 10.2129Z" fill="white"/></g></svg>');}
    .our-providers-img-col .bio-list .bio-image:after {content: '';width: 1.6rem;height: 1.6rem;position: absolute;right: 0.2rem;bottom: 0.2rem;z-index: 1;background-size: contain;background-repeat: no-repeat;background-image: url('data:image/svg+xml,<svg class="button-leaf-br" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><mask id="mask0_4553_2938" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="20" height="20"><rect x="20" width="20" height="20" transform="rotate(90 20 0)" fill="%23F3E9DB"/></mask><g mask="url(%23mask0_4553_2938)"><path d="M10.0707 24.5659C6.32228 24.5659 2.97576 22.8179 0.80707 20.0977C2.97576 17.3775 6.32228 15.6294 10.0707 15.6294C13.8192 15.6294 14.4362 16.2557 16.231 17.3588C14.2866 19.0601 11.7347 20.0977 8.94901 20.0977C11.7347 20.0977 14.2866 21.1353 16.231 22.8366C14.4362 23.9396 12.3329 24.5659 10.0707 24.5659Z" fill="white"/><path d="M20.0259 9.02056C20.0259 11.8062 18.9883 14.3582 17.287 16.3025C16.1839 14.5077 15.5576 12.4045 15.5576 10.1423C15.5576 6.39382 17.2963 3.04731 20.0259 0.878616C22.7461 3.04731 24.4941 6.39382 24.4941 10.1423C24.4941 13.8908 23.8585 14.5077 22.7648 16.3025C21.0541 14.3582 20.0259 11.8062 20.0259 9.02056Z" fill="white"/><path d="M9.83685 9.78712C8.93011 10.6939 8.93011 12.1615 9.83685 13.0589C10.7997 14.0217 14.3145 14.2554 14.3145 14.2554C14.3145 14.2554 14.0808 10.7406 13.1179 9.77777C12.2112 8.87103 10.7436 8.87103 9.8462 9.77777L9.83685 9.78712Z" fill="white"/></g></svg>');}
    .our-providers-img-col .bio-list .bio-name {color: var(--primary-color);font-weight: 700;margin-bottom: 0.6rem;position: relative;}
    .our-providers-img-col .bio-list .bio-name:after {content:'';width: 2.4rem;height: 1px;background: var(--primary-color);position: absolute;right: 0;bottom: -0.35rem;left: 0;margin: auto;}
    .our-providers-img-col .bio-list .bio-cred { font-size: 0.8rem; color: var(--primary-color); }
}


/*--------------------------------------------------------------
# Our Location Section
--------------------------------------------------------------*/
.location-cta { max-width: 81.6rem; position: relative; }
.location-cta:before {content: '';width: 4rem;height: 4rem;position: absolute;top: 0.2rem;left: 0.2rem;opacity: 0;transition: 1000ms ease;transition-delay: 500ms;background-size: contain;background-image: url('data:image/svg+xml,<svg width="200" height="200" viewBox="0 0 200 200" fill="none" xmlns="http://www.w3.org/2000/svg"><mask id="mask0_4371_1967" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="200" height="200"><rect y="200" width="200" height="200" transform="rotate(-90 0 200)" fill="%23F3E9DB"/></mask><g mask="url(%23mask0_4371_1967)"><path d="M99.2888 -45.6595C136.774 -45.6595 170.239 -28.1791 191.926 -0.976989C170.239 26.2251 136.774 43.7056 99.2888 43.7056C61.8041 43.7056 55.6345 37.4425 37.6868 26.4121C57.1302 9.39909 82.6497 -0.976984 110.506 -0.976985C82.6497 -0.976984 57.1302 -11.353 37.6867 -28.3661C55.6345 -39.3965 76.6671 -45.6595 99.2888 -45.6595Z" fill="white" fill-opacity="0.1"/><path d="M-0.265438 109.794C-0.265439 81.938 10.1106 56.4184 27.1236 36.975C38.1541 54.9228 44.4171 75.9554 44.4171 98.5771C44.4171 136.062 27.0302 169.527 -0.265434 191.214C-27.4676 169.527 -44.948 136.062 -44.948 98.5771C-44.948 61.0923 -38.5915 54.9228 -27.6545 36.975C-10.548 56.4184 -0.265439 81.938 -0.265438 109.794Z" fill="white" fill-opacity="0.1"/><path d="M101.626 102.129C110.693 93.0616 110.693 78.3855 101.626 69.4116C91.9975 59.7833 56.8498 57.4464 56.8498 57.4464C56.8498 57.4464 59.1867 92.5942 68.815 102.222C77.8823 111.29 92.5584 111.29 101.532 102.222L101.626 102.129Z" fill="white" fill-opacity="0.1"/></g></svg>');}
.location-cta:after {content: '';width: 4rem;height: 4rem;position: absolute;bottom: 0.2rem;right: 0.2rem;opacity: 0;transition: 1000ms ease;transition-delay: 500ms;background-size: contain;background-image: url('data:image/svg+xml,<svg width="200" height="200" viewBox="0 0 200 200" fill="none" xmlns="http://www.w3.org/2000/svg"> <mask id="mask0_4371_1956" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="200" height="200"> <rect x="200" width="200" height="200" transform="rotate(90 200 0)" fill="%23F3E9DB"/> </mask> <g mask="url(%23mask0_4371_1956)"> <path d="M100.711 245.66C63.2264 245.66 29.7613 228.179 8.07435 200.977C29.7613 173.775 63.2264 156.294 100.711 156.294C138.196 156.294 144.365 162.557 162.313 173.588C142.87 190.601 117.35 200.977 89.4938 200.977C117.35 200.977 142.87 211.353 162.313 228.366C144.365 239.396 123.333 245.66 100.711 245.66Z" fill="white" fill-opacity="0.1"/> <path d="M200.265 90.2056C200.265 118.062 189.889 143.582 172.876 163.025C161.846 145.077 155.583 124.045 155.583 101.423C155.583 63.9382 172.97 30.4731 200.265 8.78613C227.468 30.4731 244.948 63.9382 244.948 101.423C244.948 138.908 238.591 145.077 227.655 163.025C210.548 143.582 200.265 118.062 200.265 90.2056Z" fill="white" fill-opacity="0.1"/> <path d="M98.3743 97.8711C89.3069 106.938 89.3069 121.615 98.3743 130.588C108.003 140.217 143.15 142.554 143.15 142.554C143.15 142.554 140.813 107.406 131.185 97.7776C122.118 88.7102 107.442 88.7102 98.4677 97.7776L98.3743 97.8711Z" fill="white" fill-opacity="0.1"/> </g> </svg>');}
.js-intersected.location-cta:before, .js-intersected.location-cta:after { opacity: 1; }
.location-card {max-width: 55rem;margin: auto;position: relative;padding-right: 0.7rem !important;padding-left: 0.7rem !important;}
.loc-sec-title {position: relative;margin-top: 0;}
.loc-sec-title:before {content: '';background: var(--white);width: 100%;height: 1px;position: absolute;right: 0;bottom: calc((0.95rem + 1px) * -1);left: 0;margin: auto; transform: scale(0); transform-origin: left; transition: 500ms ease; transition-delay: 500ms; }
.js-intersected .loc-sec-title:before { transform: scale(1); }
.loc-sec-title:after {content: '';background: var(--white);width: calc(0.4rem + 1px);height: calc(0.4rem + 1px);border-radius: 50%;position: absolute;bottom: -1.2rem;left: 0;margin: auto;}
.loc-sec-column-container a{width: fit-content;background: linear-gradient(0deg, var(--white), var(--white)) no-repeat 0 bottom / 0 2px;transition: background-size 350ms;color: var(--white);}
.loc-sec-column-container a:is(:hover, :focus-visible) { background-size: 100% 2px; color: var(--white); }
.location-card .hours, .location-card .fax { color: var(--white); }
.loc-sec-img { margin: 0; }
.loc-sec-img img { contain-intrinsic-size: 21rem 13rem; }
.loc-info-item svg { width: 1rem; height: 1rem; vertical-align: -0.4rem; }

@media (min-width: 58.5em) { 	
	.loc-sec-title {margin-top: 0;}
	.location-cta:before {content: '';width: 10rem;height: 10rem;top: 0.4rem;left: 0.4rem;}
	.location-cta:after {content: '';width: 10rem;height: 10rem; bottom: 0.4rem;right: 0.4rem; } 
	.loc-sec-column-container { position: relative; z-index: 1; }
}

@media (min-width: 68.5em) { 
	.loc-sec-column-container {justify-content: space-between;gap: 1.1rem;margin-top: 2rem;}
}


/*--------------------------------------------------------------
# Book Your Appt Section
--------------------------------------------------------------*/
#fullwidth_contact_form {padding: 0;}
.fullwidth-contact-form-image {min-height: 9.4rem;height: 52.2vw;max-height: 18rem;max-width: none;}
.fullwidth-contact-form-text {padding-top: 3rem;padding-right: 1.5rem;padding-bottom: 1.8rem;padding-left: 1.5rem;position: relative;max-width: none;}
.fullwidth-contact-form-text:after {content: '';width: 4rem;height: 4rem;position: absolute;bottom: 0.2rem;right: 0.2rem;background-size: contain;background-image: url('data:image/svg+xml,<svg width="200" height="200" viewBox="0 0 200 200" fill="none" xmlns="http://www.w3.org/2000/svg"> <mask id="mask0_4371_1943" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="200" height="200"> <rect x="200" width="200" height="200" transform="rotate(90 200 0)" fill="%23F3E9DB"/> </mask> <g mask="url(%23mask0_4371_1943)"> <path d="M100.711 245.66C63.2263 245.66 29.7612 228.179 8.07423 200.977C29.7612 173.775 63.2263 156.294 100.711 156.294C138.196 156.294 144.365 162.557 162.313 173.588C142.87 190.601 117.35 200.977 89.4937 200.977C117.35 200.977 142.87 211.353 162.313 228.366C144.365 239.396 123.333 245.66 100.711 245.66Z" fill="white"/> <path d="M200.265 90.2056C200.265 118.062 189.889 143.582 172.876 163.025C161.846 145.077 155.583 124.045 155.583 101.423C155.583 63.9382 172.97 30.4731 200.265 8.78613C227.467 30.4731 244.948 63.9382 244.948 101.423C244.948 138.908 238.591 145.077 227.654 163.025C210.548 143.582 200.265 118.062 200.265 90.2056Z" fill="white"/> <path d="M98.3741 97.8711C89.3068 106.938 89.3068 121.615 98.3741 130.588C108.002 140.217 143.15 142.554 143.15 142.554C143.15 142.554 140.813 107.406 131.185 97.7776C122.118 88.7102 107.442 88.7102 98.4676 97.7776L98.3741 97.8711Z" fill="white"/> </g> </svg>');}
.fullwidth-contact-title {margin: 0 auto 0.8rem !important; position: relative;}
.fullwidth-contact-title:before {content: '';background: var(--primary-color);width: 100%;height: 1px;position: absolute;right: 50%;top: calc((1.5rem + 1px) * -1);left: -50%;}
.fullwidth-contact-title:after {content: '';background: var(--primary-color);width: calc(0.4rem + 1px);height: calc(0.4rem + 1px);border-radius: 50%;position: absolute;top: -1.75rem;right: 0;left: 0;margin: auto;}
.fullwidth-contact-btns { justify-content: center; }

@media (min-width: 58.5em) { 	
	#fullwidth_contact_form {display: flex;align-items: flex-end;}
	#fullwidth_contact_form:before {content: '';background: var(--primary-color);width: 50%;height: 1px;position: absolute;top: calc((-0.85rem + 1px) * -1);right: auto;left: 0rem;margin: auto;z-index: 1;}
	#fullwidth_contact_form:after {content: '';background: var(--primary-color);width: calc(0.4rem + 1px);height: calc(0.4rem + 1px);border-radius: 50%;position: absolute;right: 0;top: calc(0.55rem + 1px);left: 0;margin: auto;}
	.fullwidth-contact-form-image {width: calc(50% + 1rem);margin-right: -1rem !important;position: relative;z-index: 1;} 
	.fullwidth-contact-form-text {width: calc(50% + 1rem);margin-left: -1rem !important;padding-left: 4rem;}
	.fullwidth-contact-title:before, .fullwidth-contact-title:after { display: none; }
	.fullwidth-contact-btns { justify-content: flex-start; }
}

@media (min-width: 68.5em) { 
	.fullwidth-contact-form-image {min-height: 20rem;height: 26vw;max-height: 25rem;}
	.fullwidth-contact-form-text {padding-top: 2.5rem;padding-bottom: 4rem;padding-left: 5.4rem;}
	.fullwidth-contact-form-text:after { width: 10rem; height: 10rem; bottom: 0.4rem; right: 0.4rem; }
	.fullwidth-contact-text { max-width: 24rem; margin-left: 0 !important; }
}

@media (min-width: 82.5em) { 
	#fullwidth_contact_form:before {/* background: blue; */width: calc(50% + 0rem);top: calc((-1.25rem + 1px) * -1);}
	#fullwidth_contact_form:after {top: calc(0.95rem + 1px);}
	.fullwidth-contact-form-image {width: calc(50% + 2.5rem);min-height: 25rem;margin-right: -2.5rem !important;}
	.fullwidth-contact-form-text {width: calc(50% + 2.5rem);margin-left: -2.5rem !important;min-height: 27.4rem;padding-top: 5rem;padding-left: 10.8rem;}
}

@media (prefers-reduced-motion:no-preference) { 
	#fullwidth_contact_form::before {transform: scale(0);transform-origin: left;transition: 500ms ease;transition-delay: 500ms;}
	#fullwidth_contact_form::after {transform-origin: center;transform: scale(0);transition: 750ms ease;transition-delay: 1000ms;}
	.js-intersected#fullwidth_contact_form::before { transform: scale(1); }
	.js-intersected#fullwidth_contact_form::after {transform: scale(1,1);}
}


/*--------------------------------------------------------------
# Animations
--------------------------------------------------------------*/
@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(var(--spin-rotation, 360deg)); }
}

@keyframes fade {
	0% { opacity: var(--o1, 0); }
	100% { opacity: var(--o2, 1); }
}

@keyframes fadein {
	0% { opacity: var(--o1, 0); transform: translate(var(--x1, 0), var(--y1, 5rem)); }
	100% { opacity: var(--o2, 1); transform: translate(var(--x2, 0), var(--y2, 0)); }
}

@keyframes fadeout {
	0% { opacity: var(--o2, 1); transform: translate(var(--x2, 0), var(--y2, 0)); }
	100% { opacity: var(--o1, 0); transform: translate(var(--x1, 0), var(--y1, 5rem)); }
}

@keyframes point {
	0% { transform: translate(0, 0); }
	50% { transform: translate(var(--x, 1rem), var(--y, 0)); }
	100% { transform: translate(0, 0); }
}

/* popAnimation Example: https://jsfiddle.net/KTC_88/8xkLv520/ */
@keyframes popAnimation {
    0% {transform: scale(0.5); opacity: 0;}
    80% {transform: scale(1.1)}
    100% {transform: scale(1); opacity: 1}
}


/**
* Animation helper classes.
*/

@media (prefers-reduced-motion:no-preference) {
	.delay-200 { --delay: 200ms; }
	.delay-300 { --delay: 300ms; }
	.delay-400 { --delay: 400ms; }
	.delay-500 { --delay: 500ms; }
	.delay-600 { --delay: 600ms; }
	.delay-750 { --delay: 750ms; }
	.delay-800 { --delay: 800ms; }
	.delay-900 { --delay: 900ms; }
	.delay-1000 { --delay: 1000ms; }
	.delay-1500 { --delay: 1500ms; }

	.time-300 { --time: 300ms; }
	.time-500 {--time: 500ms;}
	.time-750 { --time: 750ms; }
	.time-1000 { --time: 1000ms; }

	/* Add to wrappers to animate children */
	.popin > * { transform: scale(0.5); opacity: 0; }
	.popin.js-intersected > * {--delay:calc(var(--i, 0) * 200ms);animation: popAnimation 500ms ease var(--delay) forwards;}
	.fadein-items > * { opacity: 0; transform: translateY(0); }
	.fadein-items.js-intersected > * { --delay:calc(var(--i, 0) * 200ms); animation: fadein var(--time, 400ms) ease var(--delay) forwards; }

	/* Add directly to element that will be affected */ 
	.fade { opacity: 0; }
	.fadein { opacity: 0; transform: translateY(0); --y1: 0; }
	.fadeup { opacity: 0; transform: translateY(5rem); }
	.fadedown { opacity: 0; transform: translateY(-5rem); --y1: -5rem; }
	.fadeleft { opacity: 0; transform: translateX(-5rem); --x1: -5rem; --y1: 0; }
	.faderight { opacity: 0; transform: translateX(5rem); --x1: 5rem; --y1: 0; }
	.js-intersected:is(.fadein, .fadeup, .fadedown, .fadeleft, .faderight)  { animation: fadein var(--time, 300ms) var(--delay, 300ms) var(--easing, ease) forwards; }
	.js-intersected:is(.fade) { animation: fade var(--time, 300ms) var(--delay, 300ms) var(--easing, ease) forwards; }
}

/* Used to make images in links grow when link is hovered - simply add .hover-img-grow to link or image block */
figure.hover-img-grow, .hover-img-grow figure { overflow: hidden; }

.hover-img-grow img { transition: transform var(--time, 0.3s); }

a:has(+ .hover-img-grow):is(:hover, :focus-visible) + figure img,
a:has(.hover-img-grow):is(:hover, :focus-visible) img,
a.hover-img-grow:is(:hover, :focus-visible) img { transform: scale(var(--scale, 1.1)); }


/*--------------------------------------------------------------
# Print
--------------------------------------------------------------*/
@media print {
	@page { margin: 0.5cm; }
	* { background: transparent !important; color: black !important; text-shadow: none !important; -webkit-filter: none !important; filter: none !important; -ms-filter: none !important; }
	a, a:visited { color: #444 !important; text-decoration: underline; }
	pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
	tr, img { page-break-inside: avoid; }
	img { max-width: 100% !important; }
	p, h1, h2, h3 { orphans: 3; widows: 3; }
	h1, h2, h3 { page-break-after: avoid; }
	.main-header { padding-top: 0 !important; padding-bottom: 0 !important; }
	.main-title { margin: 0; padding-bottom: 1rem; border-bottom: 2px solid #000; }
	.primary-menu, #sidebar, .header, .footer, .page-navigation, .pagination, .wp-prev-next, .respond-form { display: none !important; }
}


/*--------------------------------------------------------------
# Safari 15.3 fallbacks
  Safari 15.3 and under bug fixes - welcome to the new IE
--------------------------------------------------------------*/
@media not all and (min-resolution: 0.001dpcm) {
	@supports (-webkit-appearance: none) { 
		/* Hide Dialog (not supported) */ 
		dialog { display: none; background-color: var(--white); z-index: 9999; }
		dialog[open] { display: block; }
		
		/* Menu Fixes */ 
		.js-active .sub-menu-trigger[aria-expanded=true] + .sub-menu .sub-animate > * { background: var(--white); }
		.primary-menu .menu-label:hover { color: var(--white); }
	}
}















