/**
Theme Name: Astra Child
Author: Brainstorm Force
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: astra-child
Template: astra
*/

.ast-container {
  justify-content: center;
  align-items: center;
  width: 100%;
}

h1 span,
h2 span {
  color: var(--e-global-color-secondary);
  font-style: italic;
  font-weight: 700;
  font-size: 0.85em;
  letter-spacing: 0.018em;
}

.bg-sage {
  background-color: #d5c2a8;
  border-radius: 50px;
}

.white-label-features {
  list-style: none;
  padding-left: 1rem;
  /* Adjust as needed */
}

.white-label-features li {
  position: relative;
  padding-left: 1.5rem;
}

.white-label-features li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.45rem;
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 50%;
  background: var(--e-global-color-secondary);
}

/* Single post style start here  */
.blog-post {
  display: flex;
  flex: 1;
  flex-flow: row wrap;
  padding: 10px 0;
  gap: 25px;
  width: 100%;
  align-items: stretch;
  max-width: 1280px;
}

.single-content {
  display: flex;
  flex-direction: column;
}

.blog-post_head {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.blog-post__back {
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-size: 0.875rem;
  color: var(--e-global-color-secondary);
  text-decoration: underline;
  text-underline-offset: 3px;
  width: fit-content;
}

.post-category {
  display: inline-block;
  background: #f6e6cf;
  color: var(--e-global-color-secondary);
  font-size: 10px;
  font-weight: 600;
  display: inline-flex;
  width: fit-content;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  padding: 4px 8px;
  border-radius: 9999px;
}

.category-cum {
  background: #67de9b;
  color: #056f33;
}

.blog-post_head h1 {
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-size: clamp(2.25rem, 4.5vw, 3.5rem);
  line-height: 1.05;
  letter-spacing: 0.035rem;
  font-weight: 600;
}

.blog-post__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  font-size: 0.75rem;
  color: #6d6557;
}

.single-content {
  gap: 1.5rem;
}

.single-content p {
  font-size: 1rem;
  color: #3d372d;
  margin: 0;
}

.blog-post__foot {
  border-top: 1px solid #f0eae0;
  border-top-width: 1px;
  border-top-style: solid;
  padding-top: 1rem;
}

.blog-post__foot p {
  font-size: 0.75rem;
  color: #6d6557;
  line-height: 1.6;
}

/* Contact form 7 start here */

.wpcf7-form p {
  font-size: 10px;
}

.wpcf7-form {
  font-size: 10px;
}

.cf7-row {
  display: flex;
  gap: 10px;
  margin: 0px;
  padding: 0px;
}

.cf7-col {
  flex: 1 !important;
  margin: 0px;
  padding: 0px;
}

.cf7-full {
  margin-bottom: 30px;
}

.cf7-col label,
.cf7-full label {
  font-family: "Public Sans", Sans-serif;
  display: block;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 3px;
  margin-bottom: 10px;
  color: #222;
}

.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea {
  background-color: #f3efe9;
  width: 100%;
  border: 1px solid #ddd;
  border-radius: 30px;
  padding: 16px 20px;
  font-size: 10px;
  /* background:#fff; */
  outline: none;
  box-sizing: border-box;
}

.wpcf7 textarea {
  border-radius: 24px;
  height: 50px;
  min-height: 130px;
  resize: vertical;
}

.cf7-footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin-top: 30px;
}

.cf7-footer p {
  margin: 0;
  color: #666;
  font-size: 14px;
}

.wpcf7-submit {
  background: #c9a25b !important;
  color: #222 !important;
  border: none !important;
  padding: 18px 45px !important;
  border-radius: 35px !important;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  cursor: pointer;
  width: auto !important;
}

.wpcf7-submit:hover {
  background: #b88f45 !important;
}

@media (max-width: 768px) {
  .cf7-row {
    flex-direction: column;
    gap: 20px;
  }

  .cf7-footer {
    flex-direction: column;
    align-items: flex-start;
  }

  .wpcf7-submit {
    letter-spacing: 0px;
    padding: 10px !important;
  }
}

/* Contact form 7 End here */

/* Sticky container start Here  */

.parent-container {
  display: flex;
  align-items: flex-start;
  gap: 40px;
}

.left-content {
  flex: 1;
}

.right-sticky {
  position: sticky;
  top: 110px;
  align-self: flex-start;
}

/* Tablet and mobile */
@media (max-width: 1024px) {
  .right-sticky {
    position: static;
    top: auto;
    align-self: auto;
  }
}

/* Sticky container End Here  */

.ekit-btn-wraper {
  font-size: 0px;
}

.elementor .e-flexbox-base {
  font-size: 0px;
}

/* newsletter form Start Here  */
.newsletter-form {
  max-width: 440px;
  font-family: Arial, sans-serif;
}

.newsletter-label {
  display: block;
  margin-bottom: 14px;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 3px;
  color: #b8b8ac;
  text-transform: uppercase;
}

.newsletter-input-group {
  display: flex;
  width: 330px;
}

.newsletter-field {
  font-size: 11px;
}

.newsletter-input-group .wpcf7-form-control-wrap {
  flex: 1;
}

.newsletter-input-group input[type="email"] {
  width: 150px;
  height: 45px;
  border-top: 1px solid #555;
  border-right: 0px;
  border-bottom: 1px solid #555;
  border-left: 1px solid #555;
  background: transparent;
  color: #fff;
  padding: 0 20px;
  font-size: 12px;
  outline: none;
}

.newsletter-input-group input[type="email"]::placeholder {
  color: #8a8a8a;
}

.newsletter-input-group input[type="submit"] {
  border: none;
  background: #c8a15a;
  color: #2d2d2d;
  font-weight: 700;
  letter-spacing: 3px;
  text-transform: uppercase;
  padding: 0 0px;
  cursor: pointer;
  transition: 0.3s;
}

.newsletter-input-group input[type="submit"]:hover {
  background: #d7b16c;
  border-radius: 0px;
}

.newsletter-note {
  margin-top: 14px;
  font-size: 14px;
  color: #b1b1b1;
}

.newsletter-button {
  height: 50px;
  padding: 0px !important;
}

/* newsletter form End Here  */

/* Container */
.cf7-modern {
  max-width: 700px;
  margin: auto;
}

/* Labels */
.cf7-modern label {
  display: block;
  font-size: 13px;
  letter-spacing: 3px;
  text-transform: uppercase;
  font-weight: 600;
  color: #444;
  margin-bottom: 22px;
}

/* Inputs */
.cf7-modern input,
.cf7-modern select,
.cf7-modern textarea {
  width: 100%;
  margin-top: 12px;
  padding: 18px 24px;
  background: #faf8f5;
  border: 1px solid #d8d2ca;
  border-radius: 40px;
  font-size: 18px;
  color: #333;
  box-sizing: border-box;
  outline: none;
}

/* Textarea */
.cf7-modern textarea {
  border-radius: 25px;
  min-height: 160px;
  resize: vertical;
}

/* Focus */
.cf7-modern input:focus,
.cf7-modern select:focus,
.cf7-modern textarea:focus {
  border-color: #222;
}

/* Submit Button */
.cf7-modern input[type="submit"] {
  width: 100%;
  background: #2f2f2f;
  color: #fff;
  border: none;
  border-radius: 45px;
  padding: 20px;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 4px;
  text-transform: uppercase;
  cursor: pointer;
  transition: 0.3s;
}

.cf7-modern input[type="submit"]:hover {
  background: #111;
}

/* Note */
.cf7-note {
  margin-top: 28px;
  text-align: center;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #999;
}

a {
  color: inherit;
  text-decoration: none;
}

/*Custom Category Page style */
.custom-category-page {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  justify-content: center;
  margin-top: 100px;
  padding: 40px 20px;
  position: relative;
  z-index: 2;
}

/* Category Header */
.category-header {
  text-align: center;
  margin-bottom: 40px;
}

.category-header h1 {
  font-size: 42px;
  line-height: 1.2;
  margin-bottom: 15px;
}

.category-description {
  color: #666;
  max-width: 700px;
  margin: 0 auto;
  font-size: 16px;
}

.learn-more {
  font-family: "Public Sans", Sans-serif;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 1.7px;
  margin-top: 8px;
  padding: 10px;
  font-weight: 600;
  color: #c5a15d;
}

/* Responsive */
@media (max-width: 1024px) {
  .post-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .cf7-modern input[type="submit"] {
    letter-spacing: 0px;
  }

  .custom-category-page {
    padding: 30px 15px;
  }

  .post-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .category-header h1 {
    font-size: 32px;
  }
}

/* Pagination support if added later */
.navigation.pagination {
  margin-top: 40px;
  text-align: center;
}

/*Custom post Category (Treatment) Page style Start Here */

.category-header {
  width: 100%;
  text-align: center;
  margin-bottom: 40px;
}

/* .post-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
} */

.treatment-image img {
  width: 100%;
  height: 250px;
  object-fit: cover;
}

.treatment-content {
  padding: 20px;
}

.treatment-card h2 {
  font-size: 22px;
  padding: 10px;
}

.treatment-card p {
  font-size: 14px;
  padding: 10px;
  color: #333;
}

@media (max-width: 768px) {
  .post-grid {
    grid-template-columns: 1fr;
  }
}

/*Custom post Category (Treatment) Page style End hear */

#fea1,
#fea2,
#fea3,
#fea4 {
  transition: all 0.3s ease;
}

#fea1:hover,
#fea2:hover,
#fea3:hover,
#fea4:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(199, 166, 106, 0.2);
  background-color: #f8f8f8;
  cursor: pointer;
}

.tech-card {
  transition: all 0.3s ease;
}

.tech-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(199, 166, 106, 0.2);
  border-radius: 25px;
  cursor: pointer;
}

.header {
  transition: all 0.3s ease;
}

.header:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(199, 166, 106, 0.2);
  background-color: transparent;
  cursor: pointer;
}

#pat1,
#pat2,
#pat3,
#pat4 {
  transition: all 0.3s ease;
}

#pat1:hover,
#pat2:hover,
#pat3:hover,
#pat4:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(199, 166, 106, 0.2);
  background-color: #f8f8f8;
  cursor: pointer;
}

#lea1,
#lea2,
#lea3 {
  transition: all 0.3s ease;
}

#lea1:hover,
#lea2:hover,
#lea3:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(199, 166, 106, 0.2);
  background-color: #f8f8f8;
  cursor: pointer;
}

#add {
  transition: all 0.3s ease;
}

#add:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(199, 166, 106, 0.2);
  background-color: #f8f8f8;
  cursor: pointer;
}

.font-size {
  font-size: 0;
}

.site-content .ast-container,
.ast-page-builder-template .site-content > .ast-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-direction: column;
  align-items: center;
}

.ast-single-post .entry-content a {
  text-decoration: none;
}

/* treatement card style start here  */

.treatment-card:hover {
  transform: translateY(-5px);
}

.treatment-card a {
  display: block;
  color: inherit;
  text-decoration: none;
}

.treatment-card a:hover {
  text-decoration: underline;
  color: #b88f45;
}

.treatment-card__image img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  display: block;
}

.treatment-card__content {
  background: #fff;
  padding: 1.5rem;
  border-bottom-left-radius: 24px;
  border-bottom-right-radius: 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 35px;
}

.treatment-card__category {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #999;
}

.category-icon {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #eef0e7;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #666;
  font-size: 14px;
}

.treatment-card__title {
  font-size: 2rem;
  font-family:
    "Public Sans", "Public Sans Fallback", ui-sans-serif, system-ui, sans-serif;
  font-weight: 400;
  /* margin: 0 0 20px; */
  color: #2d2d2d;
}

.treatment-card__excerpt p {
  color: #666;
  line-height: 1.8;
  margin: 0px;
}

.learn-more {
  display: inline-flex;
  align-items: center;
  padding: 0px;
  gap: 8px;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-size: 13px;
  font-weight: 600;
}

.learn-more span {
  transition: transform 0.3s;
}

.treatment-card:hover .learn-more span {
  transform: translateX(4px);
}

.treatment-card__subtitle {
  font-family: serif;
  font-style: italic;
  color: #b89052 !important;
  font-size: 1.1rem;
  margin-bottom: 0px;
}

.category-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  border-bottom: 1px solid #9d9790;
  padding: 10px 0;
  margin: 40px 0 20px;
  font-size: 2.25rem;
  font-family: "Cormorant Garamond", "Cormorant Fallback", Georgia, serif;
  letter-spacing: -0.015em;
  line-height: 1.1;
}

#treatment-ajax-posts .category-heading > span {
  color: #333;
  font-style: normal;
}

.category-heading > span {
  color: #333;
}

.category-heading small {
  font-family: "Public Sans", Sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.3em;
  white-space: nowrap;
  color: #c7a66a;
  text-transform: uppercase;
}

/* Treatment card style end here  */


@media (max-width: 767px) {
  .responsive-table {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }

  .responsive-table .table-row {
    display: flex;
    flex-wrap: nowrap;
    min-width: 900px;
    width: max-content;
  }

  .responsive-table .table-row > .elementor-element {
    flex: 0 0 300px;
    min-width: 300px;
    box-sizing: border-box;
  }
}

html {
    scroll-padding-top: 120px;
}

/* =========================================
   The Summit Aesthetics - 404 Page
   ========================================= */

.summit-404 {
	--summit-cream: #f6f3ed;
	--summit-sage: #7c8572;
	--summit-dark: #30352f;
	--summit-border: rgba(48, 53, 47, 0.25);

	background: var(--summit-cream);
	min-height: calc(100vh - 80px);
	display: flex;
	align-items: center;
	overflow: hidden;
	position: relative;
  z-index: 2;
}

.summit-404__hero {
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	min-height: 720px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	padding: 100px 40px;
}

.summit-404__content {
	max-width: 720px;
	text-align: center;
	position: relative;
	z-index: 2;
}

.summit-404__number {
	display: block;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(100px, 15vw, 190px);
	line-height: .8;
	font-weight: 400;
	letter-spacing: -.06em;
	color: rgba(124, 133, 114, .22);
	margin-bottom: 35px;
}

.summit-404__divider {
	width: 45px;
	height: 1px;
	background: var(--summit-sage);
	margin: 0 auto 30px;
}

.summit-404 h1 {
	margin: 0 0 20px;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(38px, 5vw, 64px);
	font-weight: 400;
	line-height: 1.08;
	letter-spacing: -.025em;
	color: var(--summit-dark);
}

.summit-404__intro {
	margin: 0 0 14px;
	font-size: 17px;
	font-weight: 500;
	color: var(--summit-dark);
}

.summit-404__description {
	max-width: 570px;
	margin: 0 auto 35px;
	font-size: 16px;
	line-height: 1.8;
	color: rgba(48, 53, 47, .72);
}

.summit-404__buttons {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	flex-wrap: wrap;
	margin-bottom: 45px;
}

.summit-404__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0 28px;
	text-decoration: none !important;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .08em;
	text-transform: uppercase;
	transition: all .3s ease;
}

.summit-404__button--primary {
	background: var(--summit-dark);
	color: #fff !important;
	border: 1px solid var(--summit-dark);
}

.summit-404__button--primary:hover {
	background: var(--summit-sage);
	border-color: var(--summit-sage);
}

.summit-404__button--secondary {
	background: transparent;
	color: var(--summit-dark) !important;
	border: 1px solid var(--summit-border);
}

.summit-404__button--secondary:hover {
	background: rgba(124, 133, 114, .08);
	border-color: var(--summit-sage);
}

.summit-404__tagline {
	max-width: 480px;
	margin: 0 auto;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 14px;
	font-style: italic;
	line-height: 1.7;
	color: var(--summit-sage);
}

/* Botanical artwork */

.summit-404__botanical {
	position: absolute;
	right: -20px;
	bottom: -80px;
	width: 390px;
	height: 500px;
	color: var(--summit-sage);
	opacity: .25;
	transform: rotate(4deg);
}

.summit-404__botanical svg {
	width: 100%;
	height: 100%;
}

/* Left decorative element */

.summit-404__hero::before {
	content: "";
	position: absolute;
	left: 6%;
	top: 15%;
	width: 1px;
	height: 150px;
	background: linear-gradient(
		to bottom,
		transparent,
		var(--summit-sage),
		transparent
	);
	opacity: .35;
}

/* Mobile */

@media (max-width: 767px) {

	.summit-404 {
		min-height: calc(100vh - 70px);
	}

	.summit-404__hero {
		min-height: 650px;
		padding: 80px 24px;
	}

	.summit-404__number {
		font-size: 110px;
		margin-bottom: 28px;
	}

	.summit-404 h1 {
		font-size: 38px;
	}

	.summit-404__description {
		font-size: 15px;
		line-height: 1.7;
	}

	.summit-404__buttons {
		flex-direction: column;
		width: 100%;
	}

	.summit-404__button {
		width: 100%;
		max-width: 280px;
	}

	.summit-404__botanical {
		right: -150px;
		bottom: -100px;
		opacity: .14;
	}

	.summit-404__hero::before {
		display: none;
	}
}