/*
 Theme Name:   Mindthera Child
 Theme URI:    https://themewant.com/products/wordpress/mindthera
 Description:  Mindthera Child
 Author:       ReacThemes
 Author URI:   http://reactheme.com
 Template:     mindthera
 Version:      1.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
 */

@font-face {
  font-family: "GillSans";
  src: url("/_fonts/GillSans.otf") format("opentype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GillSans";
  src: url("/_fonts/GillSansMedium.otf") format("opentype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GillSans";
  src: url("/_fonts/GillSansHeavy.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "CochinBold";
  src: url("_fonts/CochinBold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --dark-blue: #00405B;
}

:root {
  --medium-blue: #4C79BE;
}

:root {
  --aqua: #3EB9BC;
}

h1, h2, h3, h4
{
	font-family: "CochinBold", Cochin, "Hoefler Text", "Times New Roman", serif !important;
	color: var(--medium-blue) !important;
	font-weight: 700 !important;
}

h3 { font-size: 28px !important; }
body 
{ 
font-family: "GillSans", sans-serif !important; 
color: var(--dark-blue) !important;
}

.description
{
color: var(--dark-blue) !important;
}
#reactheme-header { position: relative; }

#reactheme-header::after
{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: -12px;
	/* height of bar */
	width: 98%;
	height: 20px;
	background: linear-gradient( 90deg, #6b7fb9, #4fa3b8, #6bb58a );
	pointer-events: none;
}

.elementor-element-b226fdd .title
{
	color: var(--dark-blue) !important;
	font-size: 62px !important;
}

.elementor-element-b226fdd .description
{
	color: var(--dark-blue) !important;
	font-size: 20px;
	line-height: 24px;
}

.elementor-element-b226fdd p
{
	font-size: 20px !important;
	line-height: 24px !important;
}

.HeroText { margin-top: 100px; }
#page { padding: 0 1%; }







/******************* HOME HERO ******************************/


.hero {
    position: relative;
    width: 100%;
    height: 700px; /* control exact hero height */

    background-image: url('_img/hero-home.jpg');
    background-size: cover;
    background-position: center top;
    
    display: flex;
align-items: flex-start;
    padding-top: 60px; 
    justify-content: center;

    text-align: center;
    margin-top: 97px;
}

.hero-inner {
    max-width: 740px;
    padding: 0px;
     height: 100%;
    display: flex;
    flex-direction: column;
}

/* HEADLINE */
.hero h1 {
    font-size: 56px;
    line-height: 1.1;
    margin-bottom: 20px;

    color: var(--dark-blue) !important;
}

/* BODY */
.hero .body {
    font-size: 23px;
    line-height: 1.3;
    margin-bottom: 40px;
color: var(--dark-blue) !important;
}

/* BUTTON WRAPPER */
.hero-buttons {
    display: flex;
    justify-content: center;
    gap: 40px; /* spacing between buttons */
}

.hero-buttons {
    margin-top: auto;      /* pushes to bottom */
    margin-bottom: 100px;   /* ← control distance from bottom */
}

/* BASE BUTTON */
.hero .btn {
    padding: 7px 28px;
    border-radius: 30px;
    text-decoration: none;
    font-weight: 600;
    display: inline-block;
}

/* LEFT BUTTON */
.btn-left {
    background: var(--medium-blue) !important;
    color: #fff !important;
}

/* RIGHT BUTTON */
.btn-right {
    background: var(--aqua) !important;
    color: #fff !important;
}






/******************* CUSTOM FOOTER *********************/
.footer-bottom { margin: 0 1% 1% 1%; }

.BannerImg
{
}

.BannerImg img
{
width: 100%;
height: auto;
}

.custom-footer
{
	background-color: #556c97;
	color: #fff;
	width: 100%;
}

.custom-footer a { color: #fff; }

.custom-footer b
{
	color: #d1e4b8;
	font-weight: 600;
}

.footer-table
{
	display: table;
	padding: 20px 40px;
	width: 100%;
}

.ft1 { width: 52%; }
.ft2 { width: 26%; }
.ft3 { width: 20%; }
.ft4 { width: 26%; }

.ft1 p
{
margin-top: 20px;
}

.ft
{
	display: inline-block;
	vertical-align: top;
}

.ft ul { list-style: none; }
.ft ul li a { color: #fff; }
.ft1 img { width: 350px; }
.sub-footer { font-size: 13px; }

@media (max-width: 900px)
{
	.footer-table
{
	display: block;
	padding: 20px 40px;
	width: 100%;
}

.ft
{
	display: block;
	width: 100%;
}

.ft1, .ft2, .ft3, .ft4{ width: 100%; }

.footer-nav
{
padding: 0 !important;
margin-left: 0 !important;
}
}

/******************* ABOUT ME *********************/
.reactheme-breadcrumbs { display: none; }

.about-blocks
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
	margin-top: 40px;
}

.about-block h4 { margin-bottom: 8px; }

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

/* Grid */
.services-grid
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 32px;
	margin-top: 10px;
	margin-bottom: 40px;
}

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

/* Card */
.service-card
{
	background: #ffffff;
	border: 2px solid #5b79b6;
	/* soft blue outline */
	border-radius: 20px;
	padding: 32px 28px;
	text-align: center !important;
}

/* Heading */
.service-card h3
{
	font-family: "CochinBold", serif;
	font-size: 22px;
	color: #2d3460;
	margin-bottom: 14px;
}

/* Body text */
.service-card p
{
	font-size: 16px;
	line-height: 1.6;
	color: #2f2f2f;
	margin-bottom: 24px;
}

/* Button */
.service-btn
{
	display: inline-block;
	padding: 5px 28px;
	background: var(--aqua);
	color: #ffffff !important;
	font-weight: 600;
	border-radius: 999px;
	text-decoration: none;
	transition: background 0.2s ease;
	margin-bottom: 20px;
}


/******************* BOOK ONLINE *********************/
.book-online { text-align: center; }

.consultation-block
{
	background: #4c79be;
	border-radius: 20px;
	color: #fff;
	padding: 32px 18px;
	text-align: center !important;
	margin: 0 auto 30px auto;
	max-width: 700px;
}

.padded-par
{
	margin: 0 auto;
	max-width: 572px;
}

/******************* SPECIALTIES *********************/
.specialties { text-align: center; }
.specialties h1 { color: var(--medium-blue) !important; margin-bottom: 40px;}

.specialties-grid
{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 32px;
	margin-top: 20px;
	margin-bottom: 40px;
}

@media (max-width: 768px)
{
	.specialties-grid { grid-template-columns: 1fr; margin: 0 5% 30px 5%;}
}

/* Card */
.specialties-card
{
	background: #ffffff;
	border: 2px solid #5b79b6;
	/* soft blue outline */
	border-radius: 20px;
	padding: 32px 28px;
	text-align: center !important;
	opacity: .9;
}

.specialties-card h3
{
color: var(--dark-blue) !important;
}

/******************* BLOG *********************/
.blog .main-contain, .wp-singular .main-contain { background: #dce7e7 !important; }

.blog-item
{
	display: grid !important;
	grid-template-columns: 420px 1fr !important;
	gap: 80px !important;
	align-items: top !important;
	padding: 80px 0 !important;
	border-bottom: 1px solid rgba(0,0,0,.15) !important;
}

.blog-img img
{
	width: 100%;
	height: auto;
	border-radius: 28px;
	display: block;
}

.blog-title
{
	font-family: "CochinBold", Cochin, "Hoefler Text", "Times New Roman", serif !important;
	color: var(--medium-blue) !important;
	font-weight: 700 !important;
}

.blog-title a { color: var(--medium-blue) !important; }

.blog-desc
{
	font-size: 18px;
	line-height: 1.7;
	color: #2f2f2f;
	max-width: 560px;
	margin-bottom: 32px;
}

@media (max-width: 900px)
{
	.blog-item
	{
		grid-template-columns: 1fr !important;
		gap: 40px !important;
	}
	
	.blog-title { font-size: 32px !important; }
}

.author-block, #comments { display: none !important; }
.wp-singular .col-lg-8 { width: 100%; }
.reactheme-breadcrumbs { }
.blog-full-content { margin-top: 20px; }

.blog-full-content img
{
	max-width: 100%;
	height: auto;
}

.blog-item.is-open .blog-desc { display: none; }
.blog-full-content { display: none; }
.blog-item.is-open .blog-full-content { display: block !important; }



.elementor-element-22097a2 p
{
font-weight: 500;
}

.elementor-element-9f8b728
{
padding: 0 !important;
margin: 0 !important;
}

.elementor-element-9f8b728 .e-con-inner
{
width: 100% !important;
max-width: 100% !important;
padding: 0 !important;
margin: 0 !important;
}


.reactheme-blog .blog-item, .blog .reactheme-blog .blog-item .full-blog-content
{
margin: 0 !important;
padding: 20px 0 !important;
}

.home-about-btn
{
margin-right: 15px;
}

/************* MOBILE ***********************************/

@media (max-width: 900px)
{
.elementor-element-251da39, .elementor-1337 .elementor-element.elementor-element-470dc70
{
padding: 0;
}
}

.services-gridAbout
{
	display: block;
	background: #ffffff;
	border: 2px solid #5b79b6;
	border-radius: 20px;
	padding: 32px 28px;
	text-align: center;
	font-family: "CochinBold", serif;
	font-size: 28px;
	line-height: 36px;
	color: var(--medium-blue);
}

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


.service-cardAbout:hover {
	background: #f4f7ff;
}

.services-gridAbout .btn
{
background: var(--medium-blue) !important;
  color: #fff !important;
  font-family: Jost !important;
  font-weight: 600;
  margin-top: 20px;
  padding: 7px 28px;
  border-radius: 30px;
  }
  
  
.accordion-button 
{
color: var(--dark-blue) !important;
text-transform: none !important;
}

.accordion-body
{
color: #000 !important;
}

.BannerImg
{

 width: 100%;
    height: 400px; /* controls how much gets cropped */

    background-image: url('_img/footer-banner3.jpg');
    background-size: cover;       
    background-position: center 70%;
    background-repeat: no-repeat;
}

.about-me-copy
{
color: #000 !important;
font-size: 18px !important;
line-height: 22px !important;
}

.about-me-copy h3
{
color: var(--dark-blue) !important;
}

.book-online h3
{
color: var(--dark-blue) !important;
}

.page-title
{
width: 100%;
text-align: center;
padding-top: 60px;
border-bottom: 1px solid rgba(0,0,0,.15);
}

.blog-title, .blog-title a
{
color: var(--dark-blue) !important;
}

a.button-blog
{
background-color: var(--medium-blue) !important;
font-weight: 600 !important;
  margin-top: 20px !important;
  padding: 3px 28px !important;
  border-radius: 30px !important;
}

/******* FORM POPUP ****************/

/* overlay */
.cf-modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.5);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.cf-modal.cf-active {
  display: flex;
}

/* modal box */
.cf-modal-inner {
  width: 520px;
  max-width: 90%;
  border-radius: 50px;
  padding: 50px 40px;
  position: relative;
  overflow: hidden;
  background-color: #9dd0e3 !important;
  /*background: url('_img/bground-popup.jpg') center/100% no-repeat;*/
  box-shadow: 0 20px 40px rgba(0,0,0,.3);
}

/* soft overlay */
.cf-modal-inner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.15);
  pointer-events: none;
}

/* title */
.cf-title {
  text-align: center;
  font-size: 18px;
  color: var(--dark-blue);
  margin-bottom: 20px;
}

.cf-field-group
{
max-width: 60%;
  margin: 0 auto;
}

/* fields */
.cf-field {
  margin-bottom: 10px;
}

.cf-field label {
  display: block;
  font-weight: 600;
  margin-bottom: 0px;
  color: var(--dark-blue);
  font-size: 15px;
}

/* CF7 wrapper fix */
.cf-wrap .wpcf7-form-control-wrap {
  display: block;
}

/* inputs */
.cf-field input {
  width: 100%;
  border-radius: 7px;
  border: none;
  background: #e6e6e6;
}

/* buttons row */
.cf-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 30px;
  opacity: .75;
}

/* buttons */
.cf-btn,
.cf-wrap .wpcf7-submit {
  border: none;
  padding: 7px 28px;
    border-radius: 30px;
    text-decoration: none;
    font-weight: 600;
  cursor: pointer;
  min-width: 140px;
}

/* cancel */
.cf-cancel {
  background: var(--medium-blue);
  color: #fff;
  margin-right: 20px;
}

/* submit */
.cf-wrap .wpcf7-submit {
  background: var(--medium-blue);
  color: #fff;
  
  margin-left: 20px;
}


.wpcf7-spinner
{
display: none !important;
}

.cf-actions p
{
margin: 0;
text-align: center;
width: 100%
}

.cf-field p
{
margin: 0 !important;
padding: 0 !important;
}


.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #dc3232 !important;
}



@media (max-width: 768px)
{
	.elementor-1419 .elementor-element.elementor-element-65025d2
	{
	margin: 0;
	}
	
	.elementor-element-65025d2
	{
	margin-top: 100px !important;
	}
	
	.hero {

  width: 100%;
  height: 1000px;
  }
  
  .hero-buttons {
  display: block;
}

  .hero-buttons .btn-left,   .hero-buttons .btn-right
  {
  display: block;
  width: 60%;
  margin: 0 auto 30px auto;
  }
  
  /* Target accordion button text */
.accordion-button {
  white-space: normal !important;
  line-height: 1.3;
  padding-right: 40px !important; /* space for icon */
}

/* Make sure long words don’t overflow */
.accordion-button span,
.accordion-button {
  word-break: break-word;
}


.cf-field-group
{
max-width: 90%;
}

.cf-cancel
{
margin-right: 0;
margin-bottom: 20px;
}

.cf-wrap .wpcf7-submit
{
margin-left: 0;
}

}



/* hide by default */
.wpcf7 form .cf7-loading-message {
	display: none;
	margin-top: 16px;
	font-size: 18px;
	font-weight: 600;
}

/* show while submitting */
.wpcf7 form.submitting .cf7-loading-message {
	display: block;
}

.wpcf7 form .wpcf7-response-output
{
border: none !important;
}