/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/


.office-hr td {
    padding: 0 0 2px 0;
    border: 0;
}
table.office-hr {
    border: 0;
    display: flex;
}
.day-2 {
    min-width: 180px;
    font-weight: 400;
    display: inline-block;
}
table.office-hr tr {
    display: flex;
    align-items: flex-start;
}
@media screen and (max-width: 479px) {
    .day-2 {
        min-width: 135px;
    }
    table.office-hr {
    font-size: 19px;
}
}

.fill-image {
    object-fit: cover;
    object-position: 50% 55%;
    width: 100%;
   height: 100%;
    position: absolute;
    inset: 0%;
}
.fill-image.before-after {
    object-fit: contain;
}
.fill-image.difference, .fill-image.meet {
    object-position: 75% 0%;
}
.fill-image.invisalign {
	    object-position: 50% 0%;
}
.fill-image.reviews-1 {
	    object-position: 65% 50%;
} 
.fill-image.reviews-2 {
	   object-position: 50% 100%;
} 
.fill-image.reviews-3 {
	   object-position: 50% 50%;
} 
.fill-image.reviews-4 {
	   object-position: 53% 55%;
} 
.fill-image.medium {
    object-position: 50% 65%;
}
.fill-image.annual {
    object-position: 50% 85%;
}
.fill-image.difference-1 {
    object-position: 50% 50%;
    border-radius: 10px;
}
@media screen and (max-width: 991px) {
    .fill-image.difference-1 {
        object-position: 74% 50%;
    }
}
.bottom-div {
    z-index: -1;
    vertical-align: baseline;
    object-fit: cover;
    object-position: 50% 0%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
.slice-down {
    clip-path: polygon(0% 0%, 50% 9.5vw, 100% 0%, 100% 100%, 0% 100%);
}

@media screen and (max-width: 767px) {
    .fill-image.meet {
        object-position: 50% 50%;
    }
}
.slice-up {
    clip-path: polygon(0% 9.5vw, 50% 0, 100% 9.5vw, 100% 100%, 0% 100%);
}

@media (min-width: 766px) {
    .slice-up.slice-downs {
        clip-path: polygon(50% 0, 100% 9.5vw, 100% 36vw, 50% 100%, 0 36vw, 0 9.5vw);
    }
}
.bg-box {
	transition: 0.3s all;
}
.bg-box:has(.play-icon:hover) {
    background: rgba(0,0,0,0.3);
}
.slice-up.cust {
    clip-path: polygon(00% 0vw, 50% 9.5vw, 100% 0vw, 100% 100%, 0% 100%);
}

.fill-image.bigger-reverse {
	object-position: 50% 20%;
    height:auto;
}
/* invi */
.invisia-smile-story-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 30px;
    align-items: start;
}

.invisia-smile-story-grid > div {
    width: 100%;
    min-width: 0;
    height: auto;
    margin: 0 !important;
}
.parallax-section {
    position: relative;
}
/* Let CSS Grid auto-flow the items naturally without manual row tracking */
.invisia-smile-story-grid > div:nth-child(2) {
    grid-column: 2;
    grid-row: 1 / span 2; /* Keeps the tall second box spanning nicely next to 1 and 3 */
}
.parallax-section {
    position: relative;
}
/* Mobile layout */
@media (max-width: 767px) {
    .invisia-smile-story-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .invisia-smile-story-grid > div {
        grid-column: auto !important;
        grid-row: auto !important;
    }
}

.text-underline-no a {
    text-decoration: none !important;
}
/* Slide Down */
.slide-down {
    opacity: 0;
    transform: translateY(-40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.slide-down.show {
    opacity: 1;
    transform: translateY(0);
}

/* Slide up */
.slide-up {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.slide-up.show {
    opacity: 1;
    transform: translateY(0);
}
/* Zoom Out */
.zoom-out {
    opacity: 0;
    transform: scale(1.15);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.zoom-out.show {
    opacity: 1;
    transform: scale(1);
}

/* Zoom Up */
.zoom-up {
    opacity: 0;
    transform: scale(0.85);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.zoom-up.show {
    opacity: 1;
    transform: scale(1);
}

.list-check {
    color: #fbb54f;
    text-align: left;
    align-items: center;
    margin-bottom: .5vw;
    font-size: .9em;
    display: flex;
}
.fill-image.implant-1 {
    object-position: 63% 50%;
}

.px-image-small {
    position: absolute;
    inset: -2vw 0;
}
.px-image-small.fill-image {
    height: auto;
}
.full-line {
	position: relative;
}
.full-line:after {
	position: absolute;
	border-left: 3px solid #e4d8ca;
	top: 0;
	bottom: 0;
	left: 60%;
	margin-left: -3.5px;
	content: "";
}
html {
    scroll-behavior: smooth;
    scroll-padding-top: 170px; /* Adjust for sticky header */
}
.fill-image.dr-dhoon {
    object-position: 50% 20%;
}
.fill-image.emergency {
    object-position: 100% 0%;
}
.fill-image.home-image-02{
	object-position: 45% 50%;
}
.fill-image.home-image-01{
	object-position: 72% 50%;
}
.fill-image.home-image-03{
	object-position: 55% 50%;
}
.ctm-navbar{
	transition: transform 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
    transform: translateY(0);
}
.ctm-navbar.nav-hidden {
  transform: translateY(-100%); /* Hides full height upward */
}
@media screen and (max-width: 991px) {
    .fill-image.emergency {
        object-position: 83% 0%;
    }
}
@media screen and (max-width: 479px) {
    .fill-image.emergency {
        object-position: 80% 0%;
    }
}
.ctm-footer a {
	text-decoration: none;
	color: #e4d8ca;
}
.ctm-footer a:hover {
	text-decoration: underline;
}

.rank-math-html-sitemap {
    max-width: 1300px;
    width: 90%;
    margin: auto;
    padding: 50px 0px;
}
h2.rank-math-html-sitemap__title {
    margin-top: 0px;
}

@media (min-width: 1025px) and (max-width: 1299px) {
	.video-box video{
		width:116% !important;
	}
}
@media (min-width: 768px) and (max-width: 1024px) {
	.video-box video{
		width:125% !important;
	}
}
@media (max-width: 767px){
.video-box video {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
}


.fill-image.difference-2 {
    object-position: 50% 50%;
}

/* Start Blog Loop css */
.theme_blog_posts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 64px 40px;
}
.theme_blog_posts .blog_single {
	border-radius: 7px;
	overflow: hidden;
	box-shadow: 1px 1px 7px 0 #0000000f;
	background-color: #ffffff;
	transition: 0.3s all;
}
.theme_blog_posts .blog_single:hover {
	background-color: #E4D8CA;
}
.blog_title {
  margin: 0;
  width: 100%;
	text-align: center;
	padding: 10px;
}
.blog_title h4 {
  margin: 0;
  font-weight: normal;
  line-height: 1.1;
}
.blog_title h4 a {
  color: var(--heading-color);
  font-size: 16px;
  line-height: 1.1;
  font-weight: 400;
  text-decoration: none;
}

.blog_title h4 a:hover,
.blog_single:hover .blog_title h4 a {
  color: var(--ctm-link);
}

.blog_single .blog_date {
  margin: 10px 0 0 0;
  font-size: 16px;
	display: none;
}

.blog_author {
  letter-spacing: 0.08em;
  padding-top: 15px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 500;
  text-transform: capitalize;
  color: var(--body-color);
	display: none;
}

.blog_thumb a {
  display: block;
  position: relative;
  padding-bottom: 102%;
    overflow: hidden;
}

.blog_thumb a img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 978px) {
  .blog_title {
    max-width: 100%;
  }

  .blog_thumb a {
    padding-bottom: 65%;
  }
}

@media (min-width: 767px) and (max-width: 991px) {
  .blog_title h4 a {
    font-size: 28px;
  }
  .theme_blog_posts {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 34px 24px;
  }
}

@media (max-width: 766px) {
  .blog_title {
    padding-top: 12px;
  }
  .blog_title h4 a {
    padding-top: 12px;
    font-size: 28px;
  }
  .theme_blog_posts {
    grid-template-columns: 1fr;
    grid-gap: 34px 24px;
  }
}

.blog_single .blog_thumb {
  overflow: hidden;
	height: 160px;
}
.blog_single .blog_thumb img {
  transform: scale(1);
  transition: 0.2s;
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.blog_single:hover .blog_thumb img {
  transform: scale(1.1);
  transition: 0.2s;
}

/* End Blog Loop css */

.blog .grid-container, .wp-singular .grid-container, .archive .grid-container{
	width:100%;
    max-width: none;
}
.wp-singular .grid-container .site-main {
	margin: 0;
}
.blog-content .dynamic-entry-content{
  font-family: inherit !important;
  font-size: 1em;
}

.blog-content p{
	font-size: 18px;
  margin:1em 0;
}
.blog-content .wp-block-list {
	font-size: 18px;
}
/* .blog-content .dynamic-entry-content>p:first-of-type:first-letter{
  float:left;
  font-family: inherit !important;

  color: var(--body-color);
  line-height:0.8;
  padding-top:8px;
  padding-right:8px;
} */
/* .blog-content .dynamic-entry-content :is(h1, h2, h3, h4, h5, h6){
 	color: var(--heading-color);

}
.blog-content .dynamic-entry-content :is(h1, h2, h3, h4, h5, h6) strong{
  font-weight: 500;
}
.blog-content .dynamic-entry-content h2{
  font-size: 45px;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
.blog-content .dynamic-entry-content h3{
  font-size: 38px;
  margin-top: 0em;
  margin-bottom: 0em;
}
.blog-content .dynamic-entry-content h4{
  font-size: 32px;
  margin-top: 1em;
  margin-bottom: 1em;
}
 */
.blog-content .dynamic-entry-content h3{
  font-size: 38px;
  margin-top: 0em;
  margin-bottom: 0em;
 font-weight: 700;
}
.blog-content a{
  color:inherit;
  text-decoration: underline;
}

.blog-content a:hover{
  color: var(--ctm-link);
  text-decoration: none;
}

@media (max-width:1200px){
  .blog-content .dynamic-entry-content h2{
    font-size: 45px;
  }
  .blog-content .dynamic-entry-content h3{
    font-size: 35px;
  }
  .blog-content .dynamic-entry-content h4{
    font-size: 30px;
  }
}
@media (max-width:978px){
  .blog-content .dynamic-entry-content h2{
    font-size: 40px;
  }
  .blog-content .dynamic-entry-content h3{
    font-size: 32px;
  }
  .blog-content .dynamic-entry-content h4{
    font-size: 26px;
  }
  .blog-content .dynamic-entry-content {
    font-size: 1em;
	}
}
@media (max-width:767px){
  .blog-content .dynamic-entry-content h2{
    font-size: 32px;
  }
  .blog-content .dynamic-entry-content h3{
    font-size: 24px;
  }
  .blog-content .dynamic-entry-content h4{
    font-size: 22px;
  }
}

.fill-image.flex {
    width: 45%;
    position: relative;
}
@media (max-width: 991px) {
    .fill-image.flex {
        width: 100%;
        height: 40vw;
    }
}

@media (max-width: 479px) {
    .fill-image.flex {
        height: 65vw;
    }
}
body.blog {
	background-color: #f3f3f5;
}
.blog .generate-columns-container  {
	max-width: 990px;
	margin: 0 auto;
	padding-bottom: 40px;
}
.blog .generate-columns-container  .generate-columns {
	padding: 20px;
	margin-bottom: 0;
}
.blog .generate-columns-container  .generate-columns .inside-article {
	padding: 0px;
	border-radius: 7px;
	box-shadow: 1px 1px 7px 0 #0000000f;
	overflow: hidden;
	background-color: #ffffff;
	text-align: center;
	position: relative;
	transition: 0.3s all;
}
.blog .generate-columns-container  .generate-columns .inside-article .post-image {
	margin: 0;
	height: 160px;
	overflow: hidden;
}
.blog .generate-columns-container  .generate-columns .inside-article h2 {
    margin-top: 0;
    margin-bottom: 0;
    font-size: 16px;
    font-weight: 500;
    line-height: 22px;
	font-family: Helvetica;
}
.blog .generate-columns-container  .generate-columns .inside-article .entry-header {
	display: flex;
	justify-content: center;
	padding: 10px;
	height: 114px;
	flex-direction: column;
}
.blog .generate-columns-container  .generate-columns .inside-article .entry-summary {
	display: none;
}
.blog .generate-columns-container  .generate-columns .inside-article .entry-header .entry-meta {
	margin-top: 0;
	margin-bottom: 10px;
	font-size: 14px;
	line-height: 1.2em;
	order: -1;
}
.blog .generate-columns-container  .generate-columns .inside-article .post-image a {
	display: block;
	height: 100%;
} 
.blog .generate-columns-container  .generate-columns .inside-article .post-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 0.3s all;
}
.blog .generate-columns-container  .generate-columns .inside-article .post-image a:after {
	position: absolute;
	width: 100%;
	height: 100%;
	content:"";
	left: 0;
	top: 0;
} 
.blog .generate-columns-container  .generate-columns .inside-article:hover {
	background-color: #E4D8CA;
}

.blog .generate-columns-container .generate-columns .inside-article:hover .post-image img {
	transform: scale(1.05);
}
.masonry-load-more  {
	text-align:center;
	margin-bottom: 50px !important;
}
.blog .masonry-load-more .button {
	background-color: #4a5c48;
	color: #ffffff;
	text-transform: uppercase;
	font-weight: 600;
	transition: 0.3s all;
}
.blog .masonry-load-more .button:hover {
	background-color: #e4d8ca;
	color: #4a5c48;
}



/*single Blog*/
.blog-content p {
    font-size: .96em;
    color: #4a5c48;
    font-weight: 400;
    line-height: 1.5em;
}
.blog-content ul {
     font-size: .96em  !i;
    color: #4a5c48;
    font-weight: 400;
    line-height: 1.5em;
    margin-top: 0;
    margin-bottom: 10px;
    padding-left: 40px;
    margin-left: 0;
}
.blog-content h2, .blog-contenth4, .blog-content h3 {
    margin-top: 30px;
    margin-bottom: 5px;
    line-height: 1.3em;
    font-weight: 700;
}

.blog-conten th2 {
    font-family: gravesend-sans, sans-serif;
    font-size: 1.9em;
}

.blog-conten h3 {
    margin-top: 0;
    margin-bottom: 20px;
    font-family: gravesend-sans, sans-serif;
    font-size: 1.5em;
}
.blog-conten h4 {
    font-family: gravesend-sans, sans-serif;
    font-size: 1.3em;
}

@media (min-width: 480px) and (max-width: 991px) {
    .blog-conten h2 {
        font-size: 1.7em;
    }
}
@media (max-width: 479px) {
   .blog-conten h2  h2 {
        font-size: 1.5em;
    }
}

.animation-effect {
	transform: scale(1.2);
	opacity: 0;
	transition: 0.4s all;
	transition-delay: 0.3s;
}
.menu-container.active .animation-effect {
	transform: scale(1);
	opacity: 1;
}