/*
Theme Name: Austral Smiles
Theme URI: https://generatepress.com
Template: generatepress
Author: Tom Usborne
Author URI: https://tomusborne.com
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
Tags: two-columns,three-columns,one-column,right-sidebar,left-sidebar,footer-widgets,blog,e-commerce,flexible-header,full-width-template,buddypress,custom-header,custom-background,custom-menu,custom-colors,sticky-post,threaded-comments,translation-ready,rtl-language-support,featured-images,theme-options
Version: 3.5.1.1746509505
Updated: 2025-05-06 13:31:45

*/


@font-face {
	font-family: "Bon Vivant Family Serif";
	src: url('../../../wp-content/uploads/2025/05/BonVivantSerifBold.woff2') format('woff2'),
	url('../../../wp-content/uploads/2025/05/BonVivantSerifBold.woff') format('woff'),
	url('../../../wp-content/uploads/2025/05/BonVivantSerifBold.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}


:root {
	--rose-taupe: #8E6964;
	--white-smoke: #F3F3F3;
	--bon-vivant-font: "Bon Vivant Family Serif", Sans-serif;
	--roboto-font: "Roboto Slab";
	--dark-choco-brown: #543F42;
	--tea-rose: #EBC6C5; 
	--darker-brown: #4D3A3D;
	--black: #2A201E;
	--transition-all-ease-03: all 0.3s ease;
}


html {
    overflow-x: hidden;
	scroll-behavior: auto;
}

body.elementor-editor-active {
	opacity: 1 !important;
}

body {
	font-family: var(--e-global-typography-secondary-font-family);
    background-color: #fff;
	opacity: 0.01;
  	transition: opacity 1s ease-in-out;
}

::selection {
	background: var(--tea-rose);
	color: var(--black);
}

::-moz-selection {
	background: var(--tea-rose);
	color: var(--black);
}

.grid-container {
    max-width: 100%;
}

.text-highlight {
    background-color: var(--tea-rose);
}

/*==============================================
 *  GENERAL
================================================*/

h1, h2, h3, h4, h5, h6 {
	font-family: var(--bon-vivant-font);
}

.font-bon-vivant h1, .font-bon-vivant h2, .font-bon-vivant h3, .font-bon-vivant h4, .font-bon-vivant h5, .font-bon-vivant h6, .font-bon-vivant span {
	font-family: var(--bon-vivant-font) !important;
}

.font-roboto-slab h1, .font-roboto-slab h2, .font-roboto-slab h3, .font-roboto-slab h4, .font-roboto-slab h5, .font-roboto-slab h6, .font-roboto-slab span {
	font-family: var(--roboto-font) !important;
}

.dentists-swiper .swiper__thumbnail .swiper__btn:hover img,
.offcanvas-social a:hover img {
    filter: brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(5703%) hue-rotate(214deg) brightness(119%) contrast(91%);
}

.primary-btn, .secondary-btn {
	font-family: "Roboto Slab";
	text-decoration: none;
    font-size: 20px;
    font-weight: 700;
	 text-align: center;
    cursor: pointer;
    transition: 0.5s all ease;
    padding: 15px 30px;
    display: flex;
    align-items: center;
}

.btn-primary .elementor-button, .primary-btn, .tabs-slider .e-n-tabs .e-n-tab-title,
.accordion-btn-primary .e-n-accordion-item-title, .header__contact .has-mega-menu>a {
	color: #FFF;
    border-radius: 31px;
    border: 1px solid #543F42;
    background: linear-gradient(0deg, #4D3A3D 0%, #624B4F 100%);
    box-shadow: 0px 2px 0px 0px rgba(255, 255, 255, 0.25) inset, 0px 2px 4px 0px rgba(92, 70, 74, 0.50);
    transition: 0.5s all ease;
	position: relative;
}

.btn-primary .elementor-button, .primary-btn,
.btn-secondary .elementor-button, .header__contact .has-mega-menu>a {
    padding: 15px 30px;
}


.accordion-btn-primary .e-n-accordion-item-title {
	border-radius: 50px !important;
    width: 100%;
    max-width: 300px;
    padding: 17px 10px !important;
    margin: 0 auto 10px !important;
}

.tabs-slider .e-n-tabs .e-n-tab-title {
    padding-block: 10px;
}

.btn-primary .elementor-button:hover, .primary-btn:hover, .accordion-btn-primary .e-n-accordion-item-title:hover {
    color: #fff;
    background-color: transparent;
    background-image: linear-gradient(180deg, #2A201E 0%, #2A201E 100%);
}

.secondary-btn  {
    color: #4D3A3D;
    border-radius: 40px;
    border: 1px solid #D9D9D9;
    background: #FFF;
    backdrop-filter: blur(2px);
}

.secondary-btn:hover {
    background: #e8e0dd;
    border-color: #e8e0dd;
}

.default-container {
    max-width: 1440px;
    margin: 0 auto;
}

.def-block-padding {
	padding: 0 20px; 
}

.light-brown {
    color: var(--rose-taupe);
}

.tea-rose {
    color: var(--tea-rose);
}

.black {
	color: var(--black);
}

.overflow-hidden {
    overflow: hidden !important;
	position:relative !important;
    z-index: 9;
}

.elementor-editor-active .overflow-hidden {
    overflow: inherit !important;
}

.relative {
	position:relative !important;
}

.thumbnail--object-fit img {
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
}

.row-large-content {
    width: 100%;
    max-width: 750px;
}

.row-large-content.reverse {
    margin-left: auto;
}

.icon-checklist .elementor-image-box-img {
    width: 55px !important;
}

.icon-checklist .elementor-image-box-wrapper {
    display: flex;
}

.card-hover-white:hover .elementor-heading-title,
.card-hover-white:hover .elementor-widget-container,
.card-hover-white:hover .elementor-button-text {
    color: var(--white-smoke) !important;
}

.card-hover-white:hover .elementor-button-icon {
    filter: brightness(0) saturate(100%) invert(99%) sepia(4%) saturate(98%) hue-rotate(253deg) brightness(112%) contrast(91%);
}

/* error page */
.error404  .site-content,
.error404 .inside-article {
    background-color: var(--rose-taupe);
}

.error404 .site-content {
    padding: 190px 20px 90px;
	height: 100vh;
	color: var(--white-smoke);
}

.error404 .inside-article {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
	text-align: center;
	padding: 0;
}

.error404 .entry-content {
    margin: 10px 0 !important;
}

.error404 form.search-form {
    margin-top: 40px;
	text-align: center;
}

.error404 .content-area {
    display: flex;
    align-items: center;
    justify-content: center;
}

.error404 .search-submit {
    background-color: #543f42;
}

.faq-accordion .elementor-widget-container a {
    color: currentColor;
}

.faq-accordion .elementor-widget-icon-list .elementor-icon-list-text a {
    text-decoration: underline;
    font-weight: 400;
    width: auto;
    display: inline-block;
}


/*=======================================================
 * Fallback for backend builder preview
 * ======================================================*/
.elementor-editor-active .custom-header,
.single-ae_global_templates .custom-header {
    position: relative;
}

.elementor-editor-active .services-swiper .swiper-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.elementor-editor-active .category-swiper .swiper-slide,
.elementor-editor-active .services-swiper .swiper-slide {
    flex: 0 0 calc(33.333% - 20px);
    box-sizing: border-box;
}
@media (max-width: 1024px) {
	.row-large-content {
		width: 100% !important;
		max-width: 100% !important;
	}
	.elementor-editor-active .category-swiper .swiper-slide,
    .elementor-editor-active .services-swiper .swiper-slide {
        flex: 0 0 calc(50% - 20px);
    }
	.row-large-content.reverse {
		margin-left: inherit;
	}
}
@media (max-width: 768px) {
    .elementor-editor-active .services-swiper .swiper-slide {
        flex: 0 0 100%;
    }
}



/*=======================================================
 * PARTNERS LOGO
 * ======================================================*/

.scrolling-image-container {
  overflow: hidden;
  position: relative;
  width: 100%;
  --mask-direction: to right;
  -webkit-mask-image: linear-gradient(var(--mask-direction), hsl(0 0% 0% / 0), hsl(0 0% 0% / 1) 15%, hsl(0 0% 0% / 1) 85%, hsl(0 0% 0% / 0));
  mask-image: linear-gradient(var(--mask-direction), hsl(0 0% 0% / 0), hsl(0 0% 0% / 1) 15%, hsl(0 0% 0% / 1) 85%, hsl(0 0% 0% / 0));
}

.scrolling-image-inner {
  display: flex;
  flex-wrap: nowrap;
  width: max-content;
  animation: scroll-left 25s linear infinite;
  will-change: transform;
}

.scrolling-image-container:hover .scrolling-image-inner {
  animation-play-state: paused;
}


.scrolling-image-container .scrolling-images img {
    height: 55px !important;
    width: auto;
    object-fit: contain;
    display: block !important;
    margin: 0 20px; 
	 padding: 15px;
}

.scrolling-image-container .scrolling-images {
	display: flex;
    width: max-content; 
	justify-content: center;
    align-items: center;
}

/* Animation */
@keyframes scroll-left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}


/*==================================================
 * floting buttons - Appoinment
 * =================================================*/

.darkHeader .bottom-appointment {
    transform: translateY(0);
}

.bottom-appointment {
	display: flex;
    column-gap: 10px;
    justify-content: center;
    background-color: #fff;
    padding: 15px;
    position: fixed;
    bottom: 0;
    width: 100%;
    text-align: center;
    z-index: 999;
    transition: .3s;
    transform: translateY(100%);
}

.bottom-appointment a {
    font-size: 15px;
    padding: 10px 26px;
}

.app-calendar-icons {
    gap: 10px;
    justify-content: end;
    display: flex;
}


.app-calendar-icons .icon {
    padding: 5px;
    width: 35px;
    height: 35px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    border: 1px solid #D9D9D9;
}

.app-calendar-icons .icon.icon--one {
    background: linear-gradient(0deg, #4D3A3D 0%, #624B4F 100%);
}

.app-calendar-icons .icon.icon--two {
    color: #4D3A3D;
    border-radius: 40px;
    background: #ffffff;
    backdrop-filter: blur(2px);
}


/*==============================================
 *  Header Layout 
================================================*/

.header-inner.mobile {
    display: none;
}

.custom-header.scrolled {
    background-color: var(--dark-choco-brown);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
	padding: 10px 20px;
}

.custom-header.scrolled .site-logo img {
    width: 125px;
}
/* 
.custom-header.scrolled .header-inner {
	grid-template-columns: 10% 57% 31%;
} */

.custom-header.scrolled .header-buttons__avail {
    display: none;
}

.custom-header.scrolled .header-buttons {
     display: flex;
    flex-direction: row;
}

/* .custom-header.scrolled .primary-btn {
    background-image: linear-gradient(180deg, #8E6964 0%, #8E6964 100%);
} */

.custom-header.scrolled .primary-btn:hover {
    color: #4D3A3D;
    background-image: linear-gradient(180deg, #e8e0dd 0%, #e8e0dd 100%);
}

.custom-header, .landing-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  padding: 20px 16px;
}

.header-inner-wrapper.desktop .menu-items a {
    color: #fff;
    text-decoration: none;
}

.header-inner-wrapper.desktop .custom-submenu-wrapper .sub-menu a {
    color: #543F42;
}

.header-inner-wrapper.desktop .menu-items a .dropdown-arrow {
    filter: invert(1);
	margin-left: 10px;
}

.dropdown-arrow {
    display: none;
}
.header-inner-wrapper.desktop .dropdown-arrow {
	display: inline-block;
}


.header__contact .custom-submenu-wrapper {
    right: 0 !important;
    left: auto !important;
    width: 40rem !important;
    justify-items: end;
    padding: 35px 0 0 !important;
}

.header__contact .custom-submenu-wrapper .sub-menu {
	flex-direction: column;
    display: flex;
    gap: 20px;
}

.header__contact .custom-submenu-wrapper .primary-btn {
    text-align: center !important;
    display: block;
}

.header__contact .custom-submenu-wrapper .primary-btn a {
    color: #fff !important;
}

.header__contact .custom-submenu-wrapper .inner-wrap {
    background-color: #ffff;
    padding: 20px !important;
    border-radius: 20px;
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
}

.header__contact .custom-submenu-wrapper .inner-wrap a {
    background-color: transparent !important;
}

.header-inner {
	  width: 100%;
	  max-width: 1440px;
	  margin: 0 auto;
	display: grid;
    justify-content: space-between;
    align-items: center;
    grid-template-columns: 15% 68% 15%;
    gap: 10px;
}

.header-inner ul {
    list-style: none;
    margin: 0;
}

.header-inner__col {
    display: flex;
    flex-direction: column;
}

.header-buttons__avail {
    display: block;
    text-align: center;
    font-family: "Roboto Slab";
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 7.2px;
    color: var(--white-smoke);
    text-transform: uppercase;
	width: 100%;
    max-width: 270px;
    margin-left: auto;
}

.site-logo {
  text-align: left;
  flex: 1;
}
.site-logo img {
  width: 190px;
  transition: width 0.3s ease;
}

.header-buttons {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end; 
  gap: 10px;
  transition: var(--transition-all-ease-03);
}

.header-buttons .btn {
  font-size: 20px;
  transform: scale(1);
}

.custom-header.scrolled .header-buttons .btn {
  font-size: 16px;
  padding: 15px 25px;
  transform: scale(0.98);
  margin-bottom: 0;
}

.custom-header.scrolled .header-buttons .btn.secondary-btn {
    padding: 13px 28px;
}

.header-buttons .btn .calendar {
    position: relative;
    font-size: 26px;
    height: 28px;
	width: 28px;
}

.header-buttons .btn span {
	position: relative;    
    padding-left: 20px;
}
.header-buttons .btn span:before {
    content: "";
    position: absolute;
    left: 11px;
    top: 2px;
    height: 27px;
    width: 1px;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url(https://australsmiles.com.au/wp-content/uploads/2025/06/button-img.png);
}

.header-buttons .primary-btn {
    margin-bottom: 5px;
}

.header-buttons.desktop {
    display: none !important;
}

.call-us-today {
    font-family: var(--bon-vivant-font);
    text-decoration: none;
    color: var(--white-smoke);
    display: flex;    
	align-items: center;
    gap: 10px;
    max-width: 160px;
    width: 100%;
    margin-left: auto;
    cursor: pointer;
    padding: 10px 5px 10px 15px;
    border-radius: 50px;
	position: relative;
}

.call-us-today:hover {
    color: var(--white-smoke);
    background-color: var(--rose-taupe);
}


#burgerToggle {
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
  max-width: 95px;
  text-align: left;
  padding: 10px 20px 10px 0;
}


/* ===============================================================
   Mega Menu: Base Styles
================================================================== */

.header-inner-wrapper {
    width: 100%;
}

.header-inner__col.navigation .menu-items {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 35px;
    margin: 0;
    list-style: none;
}

.header-inner__col.navigation .header__contact .menu-items {
    justify-content: flex-end;
}

.header-inner__col.navigation .menu-items li.has-mega-menu {
    position: relative;
}

.header-inner__col.navigation .menu-items li .custom-submenu-wrapper {
    display: none;
    position: absolute;
    z-index: 1000;
}

.header-inner__col.navigation .menu-items li.has-mega-menu:hover .custom-submenu-wrapper {
    display: block;
}

.header-inner__col.navigation .menu-items li.has-mega-menu .custom-submenu-wrapper {
    padding: 20px 0;
    top: auto;
    left: auto;
    margin: 0;
    width: 20rem;
    min-width: 10rem;
    max-width: 1000px;
}

.header-inner__col.navigation .menu-items li.has-mega-menu .custom-submenu-wrapper .inner-wrap {
    background: #fff;
    padding: 15px 0 20px;
    border-radius: 25px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    z-index: 1000;
}

.has-mega-menu > a .dropdown-arrow img {
    transform: rotate(0deg);
	transition: 0.3s ease-in-out;
}

.contact-us-menus .custom-submenu-wrapper {
    background-color: transparent !important;
    box-shadow: none !important;
    right: 0;
    padding-top: 46px;
}

.custom-submenu-wrapper .inner-wrap ul.sub-menu > li:hover>a {
    background-color: #ebc6c575;
}

.custom-submenu-wrapper .inner-wrap ul.sub-menu > li>a .dropdown-arrow {
    margin: 0;
    padding: 10px;
    top: 0;
}

.custom-submenu-wrapper .inner-wrap ul.sub-menu > li:hover>a .dropdown-arrow {
	transform: rotate(270deg);
}

li.has-mega-menu.has-mega-menu__childs .custom-submenu-wrapper .inner-wrap {
    display: flex;
    gap: 30px;
    padding: 30px;
    flex-wrap: nowrap;
    border-radius: 25px;
	height: 290px;
    overflow: hidden;
    position: relative;
}

.custom-submenu-wrapper li.has-mega-menu.inner > ul.sub-menu li a {
    padding: 8px 10px;
    display: block;
    white-space: nowrap;
}

.header-inner__col.navigation .menu-items li.has-mega-menu ul.sub-menu li a {
    display: block;
    padding: 10px;
    color: #333;
}

li.has-mega-menu.has-mega-menu__childs .custom-submenu-wrapper {
	width: 45rem !important;
    left: -16rem !important;
    right: 0;
}

li.has-mega-menu.has-mega-menu__childs .custom-submenu-wrapper .inner-wrap ul.sub-menu {
	width: 100%;
}

.header-inner__col.navigation .menu-items li.has-mega-menu.has-mega-menu__childs li.has-mega-menu.inner {
    width: 100%;
    position: inherit;
}

li.has-mega-menu.no-inner {
    width: 50%;
}

.header-inner__col.navigation .menu-items li.has-mega-menu.has-mega-menu__childs li.has-mega-menu.inner>a {
    display: block !important;
    width: 50%;
    position: relative;
}

.header-inner__col.navigation .menu-items li.has-mega-menu.has-mega-menu__childs li.has-mega-menu.inner a .dropdown-arrow {
	filter: brightness(0.5);
    position: absolute;
    right: 0;
}


.header-inner__col.navigation .menu-items li.has-mega-menu.has-mega-menu__childs li.has-mega-menu.inner>ul>li>a {
    display: block !important;
    width: 100%;
}

.custom-submenu-wrapper li.has-mega-menu.inner {
    display: flex;
    gap: 10px;
	justify-content: space-between;
}

.custom-submenu-wrapper li.has-mega-menu.inner > ul.sub-menu {
    position: absolute !important;
    right: 0;
    top: 0 !important;
    opacity: 0;
    width: 50% !important;
	background-color: #fff;
    height: 100%;
    padding: 15px 0;
}

.custom-submenu-wrapper li.has-mega-menu.inner:hover > ul.sub-menu {
    opacity: 1;
    visibility: visible;
	z-index: 99;
}


/* Misc Fixes */

#menu-primary-menu-1 ul.sub-menu a {
    display: block;
    padding: 8px 20px;
}

.header__contact .custom-submenu-wrapper .sub-menu a {
    padding: 0 !important;
}



/* =============================================
   Off-Canvas
================================================= */

.off-canvas-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  opacity: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}

.offcanvas-inner {
    position: relative;
}

.off-canvas-menu.active .off-canvas-inner {
  opacity: 1;
  pointer-events: auto;
}

#closeCanvas {
  align-self: flex-start;
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
  position: absolute;
  top: 45px;
  left: 0;
  z-index: 999;
  padding-left: 0;
}

.offcanvas-logo {
  text-align: center;
  padding-bottom: 60px;
}

.offcanvas-logo .custom-logo-link img {
    width: 185px;
}

.offcanvas-nav {
	flex-grow: 1;
    display: flex;
    justify-content: center;
    min-height: 478px;
    max-height: calc(100vh - 100px);
 	overflow-y: auto;
  	scroll-behavior: smooth;
    scrollbar-width: thin;
	padding: 20px 0;
}

.offcanvas-nav::-webkit-scrollbar {
  width: 6px;
}

.offcanvas-nav::-webkit-scrollbar-track {
	background: var(--white-smoke);
	opacity: 0.8;
}

.offcanvas-nav::-webkit-scrollbar-thumb {
  background: var(--white-smoke);
  border-radius: 3px;
}


.offcanvas-menu {
  font-family: var(--bon-vivant-font);
  list-style: none;
  padding: 0;
  width: 100%;
  max-height: 100vh;
  margin: 0;
}

.offcanvas-menu li {
  margin-bottom: 1rem;
  font-size: 30px;
  font-weight: 400;
}

.offcanvas-menu .sub-menu[aria-hidden="true"] {
  display: none;
}
.offcanvas-menu .sub-menu[aria-hidden="false"] {
  display: block;
}

.offcanvas-menu li ul.sub-menu li {
    font-size: 32px;
}

.offcanvas-menu li.active > a,
.offcanvas-menu li a.menu-active {
    opacity: 0.5;
}

.offcanvas-menu li, .offcanvas-menu li a {
    color: var(--white-smoke);
    transition: 0.5s all ease;
	text-decoration: none;
}

.offcanvas-social {
	padding: 30px 0;
}

.offcanvas-social a {
	display: inline-block;
    background-color: var(--white-smoke);
    border-radius: 50px;
    width: 50px;
    height: 50px;
    text-align: center;
    padding: 12px;
	margin-right: 12px;
}

.offcanvas-social a:hover {
    background-color: var(--darker-brown);
}

.offcanvas-menu .menu-item .small-text span {
    font-family: var(--roboto-font);
    font-size: 14px;
    font-weight: 200;
}


/* Base Off-Canvas Styles */
.off-canvas-menu {
  position: fixed;
  top: 0; left: 0;
  width: 100vw;
  height: 100vh;
  background: var(--rose-taupe);
  z-index: 9999;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 2rem 3rem;
  transform: translateX(-100%);
  transition: transform 0.4s ease, opacity 0.4s ease;
  opacity: 0;
  pointer-events: none;
}


html.no-scroll {
	overflow: hidden;
}

/* Slide Down: Open */
.off-canvas-menu.active {
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
}

/* Hide all submenus by default */
.offcanvas-menu .sub-menu {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  padding: 10px 0 0 35px;
  list-style: none;
  margin-left: 0;
}

/* Show submenu when parent is active */
.offcanvas-menu .menu-item.active > .sub-menu {
 max-height: 1000px;
}

/* Focus styles */
button:focus, a:focus {
  outline: 3px solid #007acc;
  outline-offset: 2px;
}


/* Style submenu toggle button */
.submenu-toggle {
  background: none !important;
  border: none;
  cursor: pointer;
  padding: 0 15px;
  vertical-align: middle;
  margin-left: 30px;
}

/* Arrow style */
.submenu-toggle svg {
  width: 25px;
  height: 25px;
  transition: transform 0.3s ease;
}

/* Rotate only the svg when parent menu item is active */
.menu-item-has-children.active > .submenu-toggle svg {
  transform: rotate(180deg);
  opacity: 0.5;
}

.why-choose__card:hover .elementor-image-box-description {
	color: var(--white-smoke) !important;
}

.dental-clinic-video .elementor-custom-embed-image-overlay {
    border-radius: 300px 300px 0 0;
}


/*==============================================
 *  FOOTER 
================================================*/
.page-id-3540 .cut-stars {
    display: none;
}

.site-footer {
	background-color: var(--dark-choco-brown);
}

.site-footer .elementor-heading-title a {
    color: var(--white-smoke);
}

.site-info {
    background-color: none;
}

.footer-bottom {
	background-color: var(--dark-choco-brown);
}

.footer-bottom__logo {
    text-align: center;
}

.footer-accordion .e-n-accordion-item-title {
    border: none !important;
    border-bottom: 1px solid 1px solid rgba(243, 243, 243, 0.26) !important;
}

.accord-why-choose .e-n-accordion-item-title svg,
.footer-accordion .e-n-accordion-item-title svg,
.e-n-accordion-item-title svg {
    fill: none !important;
}

.footer-accordion .e-n-accordion-item:last-child .e-n-accordion-item-title {
    border-bottom: none !important;
}

.footer-accordion .elementor-element {
    border: none !important;
}

.footer-accordion .e-n-accordion-item-title {
    border-bottom: 1px solid rgba(243, 243, 243, 0.26) !important;
    border-inline: none !important;
    border-top: none !important;
}

.footer-accordion .e-n-accordion-item-title a,
.footer-accordion .e-n-accordion-item-title-text {
    color: var(--white-smoke);
	font-size: 16px;
}


.footer-code-map iframe {
    border-radius: 40px !important;
    overflow: hidden;
}



/* Gohighlevel Form */

html body #form-builder {
    padding: 5px;
}

.footer-form #form-builder .ghl-form-wrap {
    width: 100% !important;
    max-width: 100% !important;
}

.footer-form #form-builder #_builder-form {
    width: 100% !important;
    max-width: 100% !important;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.footer-form #_builder-form .fields-container {
    padding: 40px 30px !important;
    width: 100%;
}

.hl-app .hl_form-builder--main {
    padding: 0 0 !important;
}

.footer-menus .elementor-icon-list-items {
    margin: 0;
    list-style: none !important;
}

.footer-legal .elementor-icon-list-items {
    margin: 0;
    list-style: none;
    display: flex;
    justify-content: end;
    flex-wrap: wrap;
}

.site-footer .elementor-icon-list-items {
    margin: 0;
    list-style: none;
}

/*==============================================
 *  Service - Slider
================================================*/

.button-next, .button-prev,
.swiper-button-next, .swiper-button-prev {
    background-color: #4D3A3D;
    color: #fff;
    width: 70px;
    height: 70px;
    border-radius: 50px;
	pointer-events: auto;
	display: flex;
    justify-content: center;
}

.swiper-controls .button-next,
.swiper-controls .button-prev {
	position: relative;
}

.swiper-controls .button-prev {
    right: 20px;
}

.swiper-controls .button-next {
    left: 20px;
}

.swiper-container .swiper-controls {
    position: absolute;
	top: 57%;
	left: 50%;
	transform: translate(-50%, -55%);
    z-index: 99;
    width: 100%;
    display: flex;
    justify-content: space-between;
	 pointer-events: none;
}
.swiper-container button img {
    width: 16px;
}

/* end of buttons */


.services-swiper .swiper-slide {
    background-color: #fff;
    border-radius: 30px;
    overflow: hidden;
	margin-bottom: 50px;
}

.services-swiper.services-swiper--slider {
    padding: 0 20px;
	margin: 0 45px;
}

.services-swiper .swiper-slide:hover {
    box-shadow: 0 8px 0px 0 var(--darker-brown);
}

.services-swiper .swiper__content {
    font-family:var(--roboto-font);
    padding: 84px 23px 56px;
    position: relative;
}

.services-swiper .swiper__icon {
	position: absolute;
    width: 120px;
    height: 120px;
    background: #4D3A3D;
    border-radius: 50%;
    bottom: -70px;
    left: 23px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 5px solid var(--white-smoke);
    z-index: 9;
}

.services-swiper .swiper__headline {
	font-size: 32px;
    margin-top: 10px;
    margin-bottom: 25px;
	font-family:var(--roboto-font);
}

.services-swiper .swiper__headline a {
    color: currentColor;
}

.services-swiper .swiper__text {
    display: inline-block;
    font-size: 20px;
    line-height: 34px;
}

.swiper-pagination .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background-color: #4D3A3D;
}

/* CARD Learn more button */

.services-swiper .swiper__btn {
    display: flex;
    align-items: center;
    color: #4D3A3D;
    font-size: 20px;
	gap: 20px;
	text-decoration: none;
	margin-top: 35px;
}

.services-swiper .swiper__btn,
.dentists-swiper .swiper__content .swiper__btn {
	transition: all 0.3s ease;
}

.services-swiper .swiper__btn img,
.dentists-swiper .swiper__content .swiper__btn img {
    transition: transform 0.3s ease;
}

.services-swiper .swiper__btn:hover img,
.dentists-swiper .swiper__content .swiper__btn:hover img {
    transform: translateX(15px);
}


/* Services CARDS */

.swiper-container--two .swiper-wrapper {
  display: grid;
  grid-template-columns: 1;
  gap: 20px;
}

.swiper-container--max .cards-btn-ctrl {
    display: flex;
}

.services-swiper--cards .swiper-slide {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}



/* global */
.swiper-wrapper {
  display: flex;
  align-items: stretch; 
}

.swiper-slide {
  display: flex;
  height: auto;  
  flex-direction: column;
}

.swiper__content {
  display: flex;
  flex-direction: column;
  width: 100%;
}




/*==============================================
 *  Image Thumbnails Contoling Size
================================================*/
.services-swiper .swiper__thumbnail,
.post-items__thumbnail {
    position: relative;
    padding-top: 60%;        
    height: auto;         
    max-height: none;
}

.post-items__thumbnail {       
    overflow: hidden;
}

.services-swiper .swiper__thumbnail-img,
.post-items__thumbnail img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100% !important;
    object-fit: cover;
    object-position: top center;
    display: block;
}

.services-swiper .swiper__thumbnail::after,
.post-items__thumbnail:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgb(42 32 30 / 0%) 0%, rgb(30 30 30 / 36%) 100%);
    pointer-events: none;
}

/*==============================================
 *  TAB - Sliders
================================================*/
.category-swiper {
    padding: 0 85px;
	position: relative;
}
.category-swiper:before,
.category-swiper:after {
	content: '';
    position: absolute;
	top: 0;
	width: 20%;
    height: 100%;
    z-index: 99;
	background: #fff;
	mask-size: cover;
    -webkit-mask-size: cover;
}

.category-swiper:before {
    left: 0;
    mask-image: linear-gradient(270deg, rgb(0 0 0 / 0%) 0%, rgb(255 255 255 / 90%) 100%);
    -webkit-mask-image: linear-gradient(270deg, rgb(0 0 0 / 0%) 0%, rgb(255 255 255 / 90%) 100%);
}

.category-swiper:after {
    right: 0;
    mask-image: linear-gradient(90deg, rgb(0 0 0 / 0%) 0%, rgb(255 255 255 / 90%) 100%);
    -webkit-mask-image: linear-gradient(90deg, rgb(0 0 0 / 0%) 0%, rgb(255 255 255 / 90%) 100%);
}

.category-swiper .thumbnail {
    position: relative;
    border-radius: 35px;
    overflow: hidden;
    padding-top: 70%;
}

.category-swiper .thumbnail img {
    position: absolute;
    top: 0;
    height: 100%;
}

.category-swiper .swiper__text {
    text-align: center;
	font-family: var(--roboto-font);
	font-size: 24px;
    padding: 10px 0;
} 

.tabs-slider .e-n-tab-title-text img {
    margin-right: 10px;
}

.tabs-slider .e-n-tabs-heading {
    margin-bottom: 50px;
    display: flex !important;
}

.tabs-slider .elementor-widget-n-tabs .e-n-tabs-content {
    display: flex !important;
}

.tabs-slider .e-n-tabs-heading .e-n-tab-title {
    margin-block: 0 !important;
}

.tabs-slider.hide-tab-title .e-n-tabs-heading {
    display: none !important;
}

/*==============================================
 *  Dentists Slider
================================================*/
.swiper-pagination.swiper-pagination-clickable,
.services-swiper .swiper-pagination.swiper-pagination-clickable {
	display: block !important;
	bottom: 0px;
}
.dentists-swiper .swiper-slide {
    margin-bottom: 35px;
}
.dentists-swiper .swiper-pagination {
    display: none !important;
}

.no-bottom-spacing .e-con-inner {
    padding-bottom: 0 !important;
}

.dentists-swiper .swiper__thumb-img {
    width: 100%;
    height: auto;
    max-height: 100%;
    object-fit: cover;
    object-position: top center;
    position: absolute;
    top: 0;
    left: 0;
	background-color: var(--white-smoke);
	transition: all 0.3s ease;
}

.dentists-swiper .swiper__thumbnail:hover .swiper__thumb-img {
    background-color: transparent;
}

.dentists-swiper .swiper__bg-img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
	opacity: 0;
	transition: all 0.3s ease;
}

.dentists-swiper .swiper__thumbnail:hover .swiper__bg-img {
    opacity: 1;
}

.dentists-swiper .swiper__thumbnail {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
	margin-bottom: 20px;
    padding-top: 100%;
}

.dentists-swiper .swiper__thumbnail .swiper__btn {
    position: absolute;
    bottom: -50px; 
    left: 50%;
    transform: translateX(-50%);
    transition: bottom 0.3s ease, opacity 0.3s ease;
    opacity: 0;
    z-index: 2;
	border: 1px solid  var(--darker-brown);
    color: var(--darker-brown);
	background-color: var(--white-smoke);
	font-family: var(--roboto-font);
    font-size: 20px;
    display: flex;
    align-items: center;
    width: 100%;
    max-width: 268px;
    gap: 20px;
    justify-content: center;
    padding: 12px 10px;
    border-radius: 50px;
}

.dentists-swiper .swiper__thumbnail:hover .swiper__btn {
    bottom: 20px;
    opacity: 1;
}

.dentists-swiper .swiper__thumbnail .swiper__btn:hover {
    color: var(--white-smoke);
    border-color: #2A201E;
    background-color: transparent;
    background-image: linear-gradient(180deg, #2A201E 0%, #2A201E 100%);
    transition: 0.3s all ease;
}

.dentists-swiper .swiper__position {
    font-family: var(--bon-vivant-font);
    color: var(--rose-taupe);
    margin-bottom: 5px;
    display: block;
    font-size: 16px;
}

.dentists-swiper .swiper__headline {
    font-family: var(--roboto-font);
    font-size: 30px;
}

.dentists-swiper .swiper__text {
    font-family: var(--roboto-font);
    font-size: 20px;
    line-height: 34px;
    display: block;
}

.dentists-swiper .swiper__btn {
    color: #8E6964;
    font-family: var(--roboto-font);
    display: flex;
    gap: 15px;
    font-size: 20px;
}

.dentists-swiper .swiper__content .swiper__btn img {
	filter: brightness(0) saturate(100%) invert(45%) sepia(13%) saturate(739%) hue-rotate(319deg) brightness(96%) contrast(101%);
}

/*==============================================
 *  Logo scrolling Marquee
================================================*/

.scrolling-image-container .elementor-shortcode {
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
}

.marquee-wrapper {
    overflow: hidden;
    width: 100%;
    position: relative;
}

.marquee {
    display: flex;
    width: fit-content;
	gap: 2rem;
}

.marquee__item {
    flex: 0 0 auto;
    padding: 20px 20px;
    display: flex;
    align-items: center;
}

.cbhs-ctner {
    display: flex;
    justify-content: center;
    margin: 35px auto 0;
    gap: 35px;
    padding: 0 30px;
    width: 100%;
    max-width: 865px;
	overflow: hidden;
}

.cbhs-ctner .cbhs-ctner__logo.nib {
    max-width: 30%;
	width: 100%;
}

.cbhs-ctner .cbhs-ctner__logo.cbhs {
   max-width: 63%;
   width: 100%;
}


.marquee:hover, .elementor-editor-active .marquee {
    animation-play-state: paused !important;
}

.marquee.marquee-top {
	animation: marquee-default 30s linear infinite;
}

.marquee.marquee-bottom {
	 animation: marquee-reverse 45s linear infinite;
}


@keyframes marquee-default {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

@keyframes marquee-reverse {
    0% {
        transform: translateX(-100%); 
    }

    100% {
        transform: translateX(0);
    }
}

/*==============================================
 *  Accordions - FAQ'S / Multiple acc
================================================*/

.accordin-dropdow .e-n-accordion-item-title,
.footer-accordion .e-n-accordion-item-title {
	display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
}

.accordin-dropdow .e-n-accordion-item-title .e-opened,
.footer-accordion .e-n-accordion-item-title .e-opened {
    display: none;
}

.e-n-accordion-item[open] .e-n-accordion-item-title .e-closed svg {
    transform: rotate(180deg);
}

.faq-accordion .e-n-accordion-item-title,
.faq-accordion .e-con-boxed {
	padding-left: 48px !important;
    padding-right: 48px !important;
}

.faq-accordion .e-n-accordion-item-title .e-n-accordion-item-title-icon svg,
.acc-timeline .e-n-accordion-item-title .e-n-accordion-item-title-icon svg {
    fill: none !important;
}

.acc-timeline .elementor-widget-container {
    position: relative;
    z-index: 99;
}
.acc-timeline > .elementor-widget-container:before {
    content: "";
    position: absolute;
	top: 22px;
    left: 30px;
    height: 90%;
    width: 0px;
    border-left: 2px dashed rgba(0, 0, 0, 0.29);
    z-index: -1;
	display: none;
}

.acc-timeline .e-n-accordion-item-title .e-n-accordion-item-title-icon svg {
	opacity: 0.5;
}

.acc-timeline .e-n-accordion-item[open] .e-n-accordion-item-title-icon svg {
	opacity: 1;
}

.acc-timeline .elementor-element .elementor-widget-text-editor {
    padding-left: 106px;
}

.acc-timeline .e-n-accordion-item[open] .number {
	background-color: #4D3A3D;
}

.acc-timeline .e-n-accordion-item-title-text {
    display: inline-block;
	padding: 10px 0 10px 105px;
}

.acc-timeline .e-n-accordion-item-title-text .number {
    background: #BDB4B6;
    width: 64px;
    height: 64px;
    font-family: var(--roboto-font);
    font-weight: 700;
    font-size: 39px;
    line-height: 100%;
    text-align: center;
    vertical-align: middle;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #F3F3F3;
    border-radius: 100%;
	margin-right: 30px;
    position: absolute;
    left: 0;
    top: 1px;
}

.acc-timeline .e-n-accordion-item:last-child .e-n-accordion-item-title {
    padding-bottom: 0;
}

.e-n-accordion-item[open] .e-n-accordion-item-title {
    border-radius: 20px 20px 0 0;
}


.payment-logo:hover img {
    filter: brightness(0) saturate(100%) invert(100%) sepia(2%) saturate(332%) hue-rotate(188deg) brightness(116%) contrast(91%);
}
.medicare-ctner {
    position: relative;
}

.payment-logo.medicare:hover img {
    opacity: 0;
}

/* Section - Why choose us  */

.accord-why-choose .e-n-accordion-item-title {
    padding-top: 0 !important;
}

.accord-why-choose .e-n-accordion-item[open] .e-n-accordion-item-title {
    padding-top: 20px !important;
}

.accord-why-choose .e-n-accordion-item-title-text {
    display: flex;
    gap: 20px;
    align-items: center;
}

.accord-why-choose .e-n-accordion-item-title-text img {
    width: 35px;
}

.plan-cards__item:hover .plan-cards__number .elementor-widget-container {
    background-color: var(--black) !important;
}

.plan-cards__item:hover .plan-cards__title .elementor-heading-title,
.plan-cards__item:hover .plan-cards__number .elementor-heading-title,
.plan-cards__item:hover .elementor-widget-text-editor .elementor-widget-container {
  color: var(--white-smoke) !important;
}

.plan-cards__number .elementor-widget-container {
    width: 80px;
    height: 80px !important;
    display: flex;
    justify-content: center;
    align-items: center;
}

.elementor-editor-active .faq-multiple .e-n-accordion,
.faq-multiple .e-n-accordion {
    align-self: stretch;
    display: flex;
    flex-wrap: wrap;
    column-gap: 30px;
}

.elementor-editor-active .faq-multiple .e-n-accordion-item,
.faq-multiple .e-n-accordion-item {
    width: calc(50% - 15px);
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.elementor-editor-active .faq-tabs .e-n-tabs, 
.faq-tabs .e-n-tabs {
    display: grid !important;
    grid-template-columns: 1fr 3fr;
    gap: 30px !important;
}

.elementor-editor-active .faq-tabs .e-n-tabs-heading,
.faq-tabs .e-n-tabs-heading {
    display: block !important;
    width: 100% !important;
    margin-top: 10px;
}

.elementor-editor-active .faq-tabs .e-n-tabs-heading button,
.faq-tabs .e-n-tabs-heading button {
    align-self: flex-start;
	width: 100% !important;
	text-align: left !important;
	justify-content: flex-start;
    margin-bottom: 10px;
}

.faq-tabs .e-n-tabs-heading .e-n-tab-title-text,
.elementor-editor-active .faq-tabs .e-n-tabs-heading .e-n-tab-title-text {
    text-align: left;
}



/*==============================================
 *  BLOG Posts Card
================================================*/

.post-items__inner-container {
	font-family: var(--roboto-font);
	color: var(--black);
}

.post-tags .post-tag {
    font-family: var(--bon-vivant-font);
    border-bottom: 2px solid currentColor;
    margin-left: 10px;
}

.latest-post-cards {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}

.post-items__content {
    padding: 20px 20px 30px;
}

.latest-post-cards .post-items {
    background-color: #fff;
    border-radius: 20px;
	overflow: hidden;
}

.post-items__post-meta {
	color: #fff;
    z-index: 999;
    position: absolute;
    padding: 20px;
    bottom: 0;
}

.post-items__post-meta,
.post-items__content .post-date,
.post-items__content .post-excerpt {
	font-size: 15px;
}

.post-items__content .post-title {
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 10px;
	font-family: var(--roboto-font);
}

.post-items__content .post-date {
    margin-bottom: 15px;
    display: block;
}

/*==============================================
 *  Appointment Page
================================================*/
.page-id-3540 .banner.banner--default {
	position: relative;	
}

.page-id-3540 .banner.banner--default:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #543f42;
    width: 100%;
    height: 20%;
    z-index: 99;
    -webkit-mask-image: linear-gradient(to bottom, rgb(0 0 0 / 0%) 0%, black 100%);
    mask-image: linear-gradient(to bottom, rgb(0 0 0 / 0%) 0%, black 100%);
}


/*==============================================
 *  TEAM Page
================================================*/
.team-image .elementor-widget-container {
    overflow: hidden;
    position: relative;
}

.team-achieved .team-achieved__img {
	position: relative;
    padding: 0 30px 20px;
}
.team-achieved .team-achieved__img:before,
.team-achieved .team-achieved__img:after {
	content: '';
    position: absolute;
    top: 0;
	width: 30px;
    height: 70px;
	background-size: contain !important;
}

.team-achieved .team-achieved__img:before {
    left: 0;
    background: url(/australsmiles/wp-content/uploads/2025/06/leaf-left.svg) no-repeat center;
}

.team-achieved .team-achieved__img:after {
    right: 0px;
    background: url(/australsmiles/wp-content/uploads/2025/06/leaf-right.svg) no-repeat center;
}


/*==============================================
 * Package Page
================================================*/

.package-box__price,
.elementor-editor-active .package-box__price {
    position: absolute !important;
    z-index: 9;
    top: -35px;
    right: -20px;
}

.package-box__price,
.elementor-editor-active .package-box__price,
.package-box__price .elementor-widget-container{
	width: 110px !important;
    height: 110px !important;
}

.package-box__price .elementor-widget-container {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100% !important;
}

.package-box__price .elementor-heading-title {
    font-family: var(--bon-vivant-font) !important;
}

.package-box__price span {
    font-size: 14px;
}

.package-box__box .elementor-image-box-img {
    position: relative;
	overflow: hidden;
}

.package-box__box .elementor-image-box-img:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background: url(/australsmiles/wp-content/uploads/2025/06/layer-package.svg) center;
    background-size: cover;
    width: 100%;
    height: 100%;
}


/*==============================================
 *  RESPONSIVE
================================================*/

@media screen and (max-width: 1290px) {
	.header-inner {
		grid-template-columns: 14% 70% 14%;
	}
	.header-inner__col.navigation .menu-items {
		gap:25px;
	}
	.header-inner-wrapper.desktop .menu-items a .dropdown-arrow {
		margin-left: 2px;
	}
	.header-buttons .btn .calendar, .header-buttons .btn span:before {
		display: none;
	}
	.header-buttons .btn span {
		padding-left: 0;
	}
	.custom-header.scrolled .header-buttons .btn.secondary-btn {
		padding: 13px 20px;
	}
	.custom-header.scrolled .header-buttons .btn {
		padding: 15px 20px;
	}
}

@media screen and (min-width: 1160px) {
    .dentists-swiper .swiper-wrapper {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 25px;
    }
    .dentists-swiper .swiper-slide {
        width: auto !important;
        flex-shrink: 0;
		margin-bottom: 0; 
    }
    .dentists-btn-ctrl {
        display: none !important;
    }
	.services-swiper--cards .swiper-wrapper {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
        column-gap: 35px;
        row-gap: 35px;
		padding: 20px;
	}
	.swiper-pagination.swiper-pagination-clickable, .services-swiper .swiper-pagination.swiper-pagination-clickable {
		display: none !important;
	}
	.services-swiper .swiper-slide {
		margin-bottom: 10px;
	}
	.cards-btn-ctrl.swiper-controls {
		display: none;
	}	
}


@media screen and (max-width: 1140px){
	.header-inner-wrapper.desktop {
		display: none;
	}
	.header-inner.mobile {
		display: grid;
		grid-template-columns: 30% 35% 30%;
	}
	.site-logo {
		text-align: center;
	}
	.header-buttons .btn.primary-btn {
		font-size: 16px;
        padding: 15px 20px 15px 25px;
        margin: 0;
	}
	.header-buttons .btn span:before,
	.header-buttons .btn .calendar {
		display: none;
	}
	.header-buttons .btn span {
		padding-left: 0;
	}
	.dental-clinic-video .elementor-custom-embed-image-overlay {
		border-radius: 200px 200px 0 0;
	}
	.services-swiper .swiper__headline {
		font-size: 26px;
	}
	.services-swiper .swiper__text {
		font-size: 18px;
		line-height: 30px;
	}
	.services-swiper .swiper__icon {
		width: 80px;
        height: 80px;
		bottom: -40px;
	}
	.services-swiper .swiper__icon img {
		width: 45px;
	}
	.services-swiper .swiper__content {
		padding: 50px 23px 40px;
	}
	.services-swiper {
		padding: 0 30px;
	}
	.button-next, .button-prev, .swiper-button-next, .swiper-button-prev {
		width: 55px;
		height: 55px;
	}
	.services-swiper {
        padding: 0 10px;
    }
	.package-box__price, .elementor-editor-active .package-box__price, 
	.package-box__price .elementor-widget-container {
		width: 100px !important;
		height: 100px !important;
	}
	.package-box__price, .elementor-editor-active .package-box__price {
		right: 0;
	}
	.services-swiper.services-swiper--slider {
		margin: 0px 20px;
	}
}

@media screen and (min-width:1024px){
	.custom-header {
		padding: 20px 30px;
	}
	.call-us-today.mobile {
		display: none;
	}
	.app-calendar-icons {
		display: none;
	}
	.header-buttons.desktop {
		display: flex !important;
	}
	.offcanvas-logo .custom-logo-link img {
		width: 280px;
	}
	.offcanvas-menu li {
	  font-size: 64px;
	}
	.submenu-toggle {
		padding: 10px;
	}
	.submenu-toggle svg {
		width: auto;
    	height: auto;
	}
	.banner__logos {
		position: absolute !important;
		bottom: 32px;
		left: 0;
		z-index: -1;
	}
	.bottom-appointment {
		display: none;
	}
	.services-swiper .swiper__btn {
		font-size: 24px;
		gap: 15px;
	}
	
	.latest-post-cards {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	  .latest-post-cards {
        grid-template-columns: 1fr 1fr 1fr;
    }
	.swiper-container--min .swiper-wrapper {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 30px;
		padding: 20px;
	}
	.swiper-container--min .cards-btn-ctrl.swiper-controls {
		display: none;
	}
}


@media screen and (max-width: 980px){
	.site-logo img {
		width: 160px;
	}
	.offcanvas-menu .menu-item > .sub-menu {
		margin-left: 0;
	}
	.mobile-mask-image {
		mask-image: linear-gradient(0deg, rgb(0 0 0 / 0%) 0%, rgb(255 255 255 / 100%) 25%);
		-webkit-mask-image: linear-gradient(0deg, rgb(0 0 0 / 0%) 0%, rgb(255 255 255 / 100%) 25%);
	}
	.dental-clinic-video .elementor-custom-embed-image-overlay {
		border-radius: 150px 150px 0 0;
	}
	.acc-timeline .e-n-accordion-item-title-text .number {
		width: 55px;
        height: 55px;
		font-size: 30px;
	}
	.acc-timeline .e-n-accordion-item-title-text {
		display: inline-block;
		padding: 10px 0 10px 65px;
	}
	.acc-timeline .elementor-element .elementor-widget-text-editor {
		padding-left: 65px;
	}
	.swiper-container .swiper-controls {
		top: 45%;
		transform: translate(-50%, -45%);
	}
	.dentists-btn-ctrl.swiper-controls {
		top: 30%;
		transform: translate(-50%, -30%);
	}
	.elementor-editor-active .faq-tabs .e-n-tabs, .faq-tabs .e-n-tabs {
		grid-template-columns: 2fr 3fr;
	}
	.package-box__price, .elementor-editor-active .package-box__price, .package-box__price .elementor-widget-container {
        width: 90px !important;
        height: 90px !important;
    }
	.plan-cards__number .elementor-widget-container {
		width: 60px;
		height: 60px !important;
	}
}


@media screen and (min-width: 600px) {
	.latest-post-cards {
        grid-template-columns: 1fr 1fr;
    }
	.swiper-container--two .swiper-wrapper {
		 grid-template-columns: repeat(2, minmax(0, 460px));
		 gap: 30px;
	}
}

@media screen and (max-width: 767px){
	.banner.banner--default {
		--justify-content: center !important;
	}
	.header-inner.mobile {
        grid-template-columns: 34% 27% 34%;
    }
	.header-buttons .btn.primary-btn, .custom-header.scrolled .header-buttons .btn {
		font-size: 13px;
        padding: 15px 20px;
	}
	.offcanvas-menu .sub-menu {
		padding: 15px 0 0 20px;
	}
	.offcanvas-logo .custom-logo-link img {
		width: 230px;
	}
	.cbhs-ctner {
		margin-bottom: 20px;
	}
	.section-call-to-action .cta-buttons {
		max-width: 415px;
	}
	.services-swiper .swiper__headline {
		margin-bottom: 15px;
	}
	.services-swiper .swiper__headline,
	.dentists-swiper .swiper__headline {
		font-size: 26px;
	}
	.category-swiper .thumbnail {
		border-radius: 20px;
	}
	.category-swiper .swiper__text,
	.dentists-swiper .swiper__text {
		font-size: 18px;
		line-height: 30px;
	}
	.mob-fullwidth-button .elementor-widget-button .elementor-button {
		width: 100%;
		max-width: 479px;
		margin: 0 auto;
	}
	.category-swiper {
		padding: 0 35px;
	}
	.tabs-slider .e-n-tabs-heading {
		gap: 15px !important;
	}
	.tabs-slider .e-n-tabs-heading .e-n-tab-title {
		padding: 10px 25px;
	}
	.tabs-slider .e-n-tabs-heading .e-n-tab-title-text {
		font-size: 16px;
	}
	.dentists-btn-ctrl.swiper-controls {
		top: 23%;
		transform: translate(-50%, -23%);
	}
	.swiper-container .swiper-controls {
        top: 40%;
        transform: translate(-50%, -40%);
    }
	.swiper-controls .button-prev {
		right: 15px;
	}
	.swiper-controls .button-next {
		left: 15px;
	}
	.elementor-editor-active .faq-multiple .e-n-accordion-item, .faq-multiple .e-n-accordion-item {
		width: 100%;
	}
	.elementor-editor-active .faq-tabs .e-n-tabs, .faq-tabs .e-n-tabs {
		grid-template-columns: 1fr;
	}
	.package-box__price, .elementor-editor-active .package-box__price {
		top: -15px;
	}
	.team-image .elementor-widget-container {
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}
	.marquee__item {
		padding: 10px 20px;
	}
	.services-swiper--cards .swiper-wrapper {
		grid-template-columns: repeat(2, 1fr);
	}
	.faq-tabs .e-n-tabs-heading {
		display: flex !important;
	}
	.faq-tabs .e-n-tabs-heading .e-n-tab-title {
		margin: 0 !important;
	}
	.faq-accordion .e-n-accordion-item-title, .faq-accordion .e-con-boxed {
		padding-left: 30px !important;
		padding-right: 30px !important;
	}
	.footer-legal .elementor-icon-list-items {
		justify-content: center;
	}
	.footer-accordion .e-n-accordion-item-title a, .footer-accordion .e-n-accordion-item-title-text {
		margin-top: 12px;
	}
}


@media screen and (max-width: 600px){
	.custom-header, .custom-header.scrolled {
		padding: 10px 16px;
	}
	.off-canvas-menu {
		padding: 2rem 16px;
	}
	.header-inner {
        grid-template-columns: 29% 35% 29%;
    }
	 .custom-header.scrolled .header-inner {
        grid-template-columns: 34% 32% 34%;
        gap: 0;
    }
    .call-us-today {
        max-width: 152px;
        padding: 10px 5px 10px 15px;
        font-size: 16px;
    }
	.banner.banner--default .banner__sub-text .elementor-widget-container {
		margin-bottom: 25px !important;
	}
	.banner.banner--default .banner__sub-text .elementor-heading-title {
		font-size: 12px !important;
		line-height: 15px;
	}
	.dental-clinic-video .elementor-custom-embed-image-overlay {
		border-radius: 100px 100px 0 0;
	}
	.services-swiper--cards .swiper-wrapper {
		grid-template-columns: 1fr;
	}
	.swiper-container--two .services-swiper--cards .swiper-wrapper {
		gap: 0;
	}
	.swiper-container--two .services-swiper .swiper-slide {
		margin-bottom: 35px;
	}
	.services-swiper .swiper__headline, 
	.dentists-swiper .swiper__headline {
        font-size: 24px;
    }
	.services-swiper .swiper__text {
        font-size: 16px;
        line-height: 26px;
    }
	.services-swiper .swiper__btn {
		font-size: 16px;
	}
	.services-swiper .swiper__icon {
		width: 60px;
        height: 60px;
        bottom: 0;
        top: 10px;
        left: 10px;
    }
	.services-swiper .swiper__content {
        padding: 20px 23px 40px;
    }
	.services-swiper .swiper__icon img {
        width: 36px;
    }
	.services-pagination.swiper-pagination {
		display: block !important;
		bottom: 0;
	}
	.services-swiper.services-swiper--slider {
        margin: 0px 0 35px;
    }
	.faq-accordion .e-n-accordion-item-title, .faq-accordion .e-con-boxed {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}
	.acc-timeline .e-n-accordion-item-title-text .number {
        width: 40px;
        height: 40px;
        font-size: 20px;
		top: 3px;
    }
	.acc-timeline .e-n-accordion-item-title-text {
		font-size: 24px !important;
	}
	.acc-timeline .e-n-accordion-item:not(:last-child) {
		margin-bottom: 15px !important;
	}
	.services-swiper .swiper__thumbnail, .post-items__thumbnail {
		position: relative;
		padding-top: 52%;
	}
}

@media screen and (max-width: 479px){
	.header-buttons .btn.primary-btn {
        font-size: 11px !important;
		padding: 12px 15px !important;
    }
	 .header-inner.mobile, .custom-header.scrolled .header-inner {
        grid-template-columns: 34% 26% 34%;
    }
	.category-swiper .swiper__text, .dentists-swiper .swiper__text {
        font-size: 16px;
    }
	.accord-why-choose .e-n-accordion-item-title-text {
		font-size: 18px !important;
	}
	.site-logo img {
        width: 145px;
    }
    .bottom-appointment a {
        font-size: 12px;
        padding: 10px 15px;
    }
	.offcanvas-menu li, .offcanvas-menu li ul.sub-menu li {
		margin-bottom: 10px;
		font-size: 23px;
	}
	.btn-secondary .elementor-button, .btn-primary .elementor-button {
	    width: 100% !important;
        max-width: 300px;
        margin: 0 auto;
	}
	.payment-logo-ctn {
		padding: 0 !important;
	}
	.button-next, .button-prev, .swiper-button-next, .swiper-button-prev {
        width: 45px;
        height: 45px;
		padding: 12px;
    }
	.section-call-to-action .cta-buttons {
		flex-direction: column !important;
	}
	.section-call-to-action .cta-buttons .elementor-button {
		max-width: 100%;
	}
	.dental-clinic-video .elementor-custom-embed-image-overlay {
		border-radius: 75px 75px 0 0;
	}
	.acc-timeline .e-n-accordion-item-title-text {
		font-size: 25px !important;
	}
	.dentists-btn-ctrl.swiper-controls {
		top: 30%;
		transform: translate(-50%, -30%);
	}
	.swiper-container .swiper-controls {
		top: 38%;
        transform: translate(-50%, -38%);
    }
	.services-swiper .swiper__btn {
		gap: 15px;
	}
	.services-swiper.services-swiper--slider {
		padding: 0;
	}
}



@media screen and (max-width: 415px) {
	.custom-header, .custom-header.scrolled {
        padding: 10px 10px;
    }
    .header-buttons .btn.primary-btn {
        font-size: 11px !important;
        padding: 12px 10px !important;
    }
}

@media screen and (max-width: 365px){
	.banner.banner--default .elementor-element {
		flex-direction: column !important;
	}
	.banner.banner--default .elementor-element .elementor-widget-button {
		width: 100% !important;
	}
}