/*
Theme Name: Montessori Kindergarten
Theme URI: https://www.themescarts.com/products/free-kindergarten-wordpress-theme/
Author: Themes Carts
Author URI: https://www.themescarts.com/
Description: The Montessori Kindergarten WordPress Theme is a beautifully designed, modern, and playful Montessori WordPress theme created specifically for Montessori schools, preschools, daycare centers, childcare websites, early education institutions, kindergarten programs, kids’ activity centers, and learning-focused child development hubs, while also fitting seamlessly for babyshower planners, nanny services, and moms blog platforms focused on parenting and early childhood care. Perfect for pre-kindergarten programs, nursery schools, playgroups, toddler classrooms, early learning academies, and kids’ education centers, it helps build an engaging and professional online presence that reflects creativity, care, structured learning, and child-centric education. This preschool WordPress theme and childcare center WordPress theme also works perfectly for early learning websites, nursery school websites, kindergarten theme setups, toddler activity center websites, kids’ academy websites, and educational institute platforms. With full support for Full Site Editing (FSE), the theme allows effortless customization of layouts, colors, banners, icons, fonts, page templates, and typography styles, making it easy to match your school’s branding and visual identity. Its soft color palette, fun icons, animated elements, and imaginative layouts capture the joyful atmosphere of a classroom, while the responsive, mobile-friendly, and retina-ready design ensures smooth browsing on desktops, tablets, and mobile devices. This Preschool & Montessori Theme includes flexible sections to highlight curriculum programs such as STEM, phonics, math, crafts, music, sensory learning, motor skills development, and interactive play-based activities, along with class schedules, admission details, fee structures, and teacher profiles that help parents explore and understand the school better. It provides dedicated areas for showcasing events, field trips, parent–teacher meetings, and festive celebrations, as well as galleries and video support for classroom activities, artwork, storytelling sessions, and interactive lessons. Schools can also share newsletters, important announcements, parent resources, and testimonials to build trust, promote transparency, and keep families informed and connected. With its optimized, secure, lightweight, and SEO-friendly code, the theme delivers fast loading speed, high performance, and better visibility on search engines. It is also translation-ready and compatible with multilingual tools, making it suitable for international preschools and global learning platforms. Whether you’re creating a website for a Montessori school, daycare, nursery, toddler activity center, preschool chain, kids’ academy, or early learning institute, this theme offers a visually appealing, user-friendly, eLearning-compatible, and highly functional platform. It combines creativity with practicality to help educational institutions attract parents, engage students, and effectively showcase their programs, teaching approach, and nurturing learning environment.
Version: 2.2.5
License: GNU General Public License version 2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: montessori-kindergarten
Requires PHP: 5.6
Tested up to: 6.9
Tags: one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, block-patterns, block-styles, editor-style, wide-blocks, template-editing, style-variations, grid-layout, full-width-template, footer-widgets, featured-images, full-site-editing, featured-image-header, flexible-header, custom-background, custom-colors, custom-header, custom-menu, custom-logo, post-formats, sticky-post, threaded-comments, translation-ready, theme-options, rtl-language-support, education, photography, portfolio

Montessori Kindergarten WordPress Theme has been created by ThemesCarts(themescarts.com), 2025.
Montessori Kindergarten WordPress Theme is released under the terms of GNU GPL
*/

body {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-family: "Poppins", sans-serif !important;
}

/*
 * Text and navigation link styles.
 * Necessary until the following issue is resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/27075
 */

a {
	text-decoration-thickness: 1px;
	text-underline-offset: 0.25ch;
}

a:hover,
a:focus {
	text-decoration-style: dashed;
}

a:active {
	text-decoration: none;
}

.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}
.screen-reader-text:focus {
    background-color: #eee;
    clip: auto !important;
    clip-path: none;
    color: #444;
    display: block;
    font-size: 1em;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
}

/*
 * Search and File Block button styles.
 * Necessary until the following issues are resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/36444
 * https://github.com/WordPress/gutenberg/issues/27760
 */

.wp-block-search__button,
.wp-block-file .wp-block-file__button {
	background-color: var(--wp--preset--color--primary);
	border-radius: 0;
	border: none;
	color: var(--wp--preset--color--foreground);
	font-size: var(--wp--preset--font-size--medium);
	padding: calc(.667em + 2px) calc(1.333em + 2px);
}

body.home .wp-site-blocks > * + *{
	margin-block-start:0 !important;
}

/*
 * Button hover styles.
 * Necessary until the following issue is resolved in Gutenberg:
 * https://github.com/WordPress/gutenberg/issues/27075
 */

.wp-block-search__button:hover,
.wp-block-file .wp-block-file__button:hover,
.wp-block-button__link:hover {
	opacity: 0.90;
}

/*
 * Alignment styles.
 * These rules are temporary, and should not be relied on or
 * modified too heavily by themes or plugins that build on
 * Twenty Twenty-Two. These are meant to be a precursor to
 * a global solution provided by the Block Editor.
 *
 * Relevant issues:
 * https://github.com/WordPress/gutenberg/issues/35607
 * https://github.com/WordPress/gutenberg/issues/35884
 */

.wp-site-blocks,
body > .is-root-container,
.edit-post-visual-editor__post-title-wrapper,
.wp-block-group.alignfull,
.wp-block-group.has-background,
.wp-block-cover.alignfull,
.is-root-container .wp-block[data-align="full"] > .wp-block-group,
.is-root-container .wp-block[data-align="full"] > .wp-block-cover {
	padding-left: var(--wp--custom--spacing--outer);
	padding-right: var(--wp--custom--spacing--outer);
}

.wp-site-blocks .alignfull,
.wp-site-blocks > .wp-block-group.has-background,
.wp-site-blocks > .wp-block-cover,
.wp-site-blocks > .wp-block-template-part > .wp-block-group.has-background,
.wp-site-blocks > .wp-block-template-part > .wp-block-cover,
body > .is-root-container > .wp-block-cover,
body > .is-root-container > .wp-block-template-part > .wp-block-group.has-background,
body > .is-root-container > .wp-block-template-part > .wp-block-cover,
.is-root-container .wp-block[data-align="full"] {
	margin-left: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	margin-right: calc(-1 * var(--wp--custom--spacing--outer)) !important;
	width: unset;
}

body.home .wp-block-cover{ margin-block-start:0 !important; }
nav.Hdr-menu.wp-block-navigation ul{ font-weight:600 !important;}


/* Blocks inside columns don't have negative margins. */
.wp-site-blocks .wp-block-columns .wp-block-column .alignfull,
.is-root-container .wp-block-columns .wp-block-column .wp-block[data-align="full"],
/* We also want to avoid stacking negative margins. */
.wp-site-blocks .alignfull:not(.wp-block-group) .alignfull,
.is-root-container .wp-block[data-align="full"] > *:not(.wp-block-group) .wp-block[data-align="full"] {
	margin-left: auto !important;
	margin-right: auto !important;
	width: inherit;
}
.headright-part{ text-align:right;}
body.home header.wp-block-template-part{ position: relative; width:100%; z-index:999;}
/*
 * Responsive menu container padding.
 * This ensures the responsive container inherits the same
 * spacing defined above. This behavior may be built into
 * the Block Editor in the future.
 */

.wp-block-navigation__responsive-container.is-menu-open {
	padding-top: var(--wp--custom--spacing--outer);
	padding-bottom: var(--wp--custom--spacing--large);
	padding-right: var(--wp--custom--spacing--outer);
	padding-left: var(--wp--custom--spacing--outer);
}
.wp-block-navigation ul li.current-menu-item > a,
.wp-block-navigation ul li a:hover{ color:var(--wp--preset--color--extra-quadro) !important;}

/* Scroll To Top */
.return-to-top-btn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background-color: var(--wp--preset--color--primary);
    color: #ffffff;
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 5px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease, transform 0.5s ease;
    z-index: 9999;
}
.return-to-top-btn .dashicons {
    width: 20px;
    height: 20px;
    font-size: 20px;
}
.return-to-top-btn.show {
    opacity: 1;
    visibility: visible;
}
.return-to-top-btn:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.2);
}
.return-to-top-btn:active {
    transform: translateY(-1px);
}
.return-to-top-btn span {
    pointer-events: none;
}

/* = Contact Form 7 CSS
----------------------------------------------- */
.wpcf7{ 
	margin:30px 0 0;
	padding:0;
}
.wpcf7 input[type="text"], 
.wpcf7 input[type="tel"], 
.wpcf7 input[type="email"]{ 
	width:40%;
	border:1px solid #cccccc;
	box-shadow:inset 1px 1px 2px #ccc;
	color:#797979;
	margin-bottom:0;
	height:40px;
	padding:0 15px;
}
.wpcf7 textarea{	
	border:1px solid #cccccc;
	box-shadow:inset 1px 1px 2px #ccc;
	color:#797979;
	margin-bottom:25px;
	padding:10px;
	width:60%;
	height:160px;
	font-size:12px;
}
.wpcf7 input[type="submit"]{
	background-color:#efc62c;
	padding:20px 40px;
	border-radius:40px;
	font-weight:600;
	font-size:16px;
	cursor:pointer;
	color:#ffffff;	
	width:auto;
	border:none;
	text-transform:uppercase;
}
.wpcf7 input[type="submit"]:hover{
	background-color:#101010;
}
.about-LeftBX{ position:relative !important;}
.about-BlueBX{ position: absolute !important; bottom:0%; right:18%; 
	-webkit-border-top-left-radius: 40px;
	-webkit-border-bottom-right-radius: 40px;
	-moz-border-radius-topleft: 40px;
	-moz-border-radius-bottomright: 40px;
	border-top-left-radius: 40px;
	border-bottom-right-radius: 40px;
}
.yellow-CircleBx{ width:80px !important; height:80px !important; text-align:center;}

.top-fourbx{box-shadow: 0 0px 20px 0 rgb(0 0 0 / 10%); border-radius:10px; margin:0 1% !important; border:1px solid transparent;}
.top-fourbx:hover{border:1px solid #007cf9;}
.fourbx-thumb{ width:100px; height:100px; line-height:80px; overflow:hidden; text-align:center; margin:0 auto; background-color:#f4f6f9; border-radius:100%; padding:10px;}

.special-programs-main-box h3 a {
    text-decoration: none;
}
.post-page-area .wp-block-post{
	padding: 30px;
	box-shadow: 12px 12px 50px rgba(0, 0, 0, 0.4);
	margin-bottom: 30px;
}
.sidebar-area-wrap .taxonomy-post_tag a {
    background: var(--wp--preset--color--extra-primary);
    padding: 5px !important;
    border-radius: 6px;
    display: inline-block;
    margin-bottom: 10px;
    color: #fff !important;
    margin-right: 10px;
}
.sidebar-area-wrap .taxonomy-post_tag span{
	display: none;
}
.read-more-btn a.wp-block-post-excerpt__more-link {
    background: var(--wp--preset--color--extra-primary);
    border-color: currentColor;
    color: var(--wp--preset--color--white);
    font-weight: 700;
    padding-top: 15px;
    padding-right: 30px;
    padding-bottom: 15px;
    padding-left: 30px;
}
@media (max-width: 1100px) {
	.post-page-area .wp-block-columns.is-layout-flex.wp-block-columns-is-layout-flex {
		max-width: 100% !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
}
@media (max-width: 990px) {
	.post-page-area .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		padding-right: 0 !important;
	}
}
.woocommerce-account .wp-block-post-title, .woocommerce-account main .woocommerce, .woocommerce-cart .wp-block-post-title, .woocommerce-cart main .woocommerce, .woocommerce-checkout .wp-block-post-title, .woocommerce-checkout main .woocommerce {
    max-width: 100%;
}
pre {
    background: #eee;
    max-width: 100%;
    overflow: auto;
    padding: 1.6em;
}

/*comment*/
.wp-block-comments{
    padding: 20px;
    border: 1px solid #dfdfdf;
}
.wp-block-comment-template li .wp-block-columns{
    border: 1px solid #dfdfdf;
    padding: 20px;
}
.wp-block-avatar img{
    border: 1px solid #dfdfdf;
    padding: 2px;
}
.wp-block-post-comments-form textarea{
    background: #f8f8f8;
}
.entry-content {
    overflow-wrap: anywhere;
    overflow: hidden;
    padding: 30px 0;
}

/* NEW SECTION CSS */
.core-values-button {
    position: relative;
}
.pencil-img {
    position: absolute;
    left: 150px;
    top: 0;
}
.values-main-div{
	position: relative;
}
.values-main-div::after {
    content: "";
    background-image: url(assets/images/core_value_section_bg.png);
    background-repeat: no-repeat;
    position: absolute;
    background-size: 100% 100%;
    width: 800px;
    height: 700px;
    top: 0;
    right: -50px;
    z-index: -5;
}
.values-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 10px;
	padding: 0;
	counter-reset: list-counter;
	list-style: none;
	padding-left: 2.5em;
}
.values-list-items {
	counter-increment: list-counter;
	position: relative;
	margin-bottom: 1em;
}
.values-list-items::before {
	content: counter(list-counter);
	position: absolute;
	left: -2em;
	top: 0;
	width: 1.8em;
	height: 1.8em;
	color: #ffffff;
	background: #000000;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
}
.values-list-items:nth-child(1)::before {
	background: var(--wp--preset--color--extra-primary);
}
.values-list-items:nth-child(2)::before {
	background: var(--wp--preset--color--extra-quadro);
}
.values-list-items:nth-child(3)::before {
	background: var(--wp--preset--color--extra-tertiary);
}
.values-list-items:nth-child(4)::before {
	background: var(--wp--preset--color--extra-fivedro);
}

/* HOVER EFFECTS */
.special-programs-main-box:hover {
    background: #000 !important;
    transition: all 0.5s;
	border-radius: 10px !important;
}
.programs-row:hover a.wp-block-button__link,.core-values-button a.wp-block-button__link:hover {
    background: transparent linear-gradient(180deg, #ffffff 0%, var(--wp--preset--color--extra-secondary) 100%, #000000 100%) 0% 0% no-repeat padding-box;
    color: #ffffff !important;
	border: 2px solid var(--wp--preset--color--extra-secondary);
}
.post-main-area {
  transition: all 0.3s ease;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}
.post-main-area:hover {
  background-color: #fff5e6;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
  transform: translateY(-4px);
  border-color: #ffcf91;
}
.post-main-area h2 a {
  transition: color 0.3s ease;
}
.post-main-area:hover h2 a {
  color: var(--wp--preset--color--extra-secondary);
  text-decoration: underline;
}
@media screen and (max-width:767px) {
	.programs-row, .programs-row h3,.programs-row .wp-block-button {
		display: block !important;
		text-align: center;
		margin: 0 auto;
	}
}

/*Woocommerce Account Page CSS*/
nav.woocommerce-MyAccount-navigation li {
  border: 1px solid var(--wp--preset--color--primary) !important;
  margin-bottom: 10px;
  padding: 10px !important;
  background-color: var(--wp--preset--color--primary) !important;
}
nav.woocommerce-MyAccount-navigation li a{
  color: #fff;
  padding: 10px 0 !important;
  text-decoration: none !important;
}
nav.woocommerce-MyAccount-navigation li:hover {
    background-color: transparent !important;
    border-color: #000 !important;
}
nav.woocommerce-MyAccount-navigation li:hover a{
  color:var(--wp--preset--color--primary);
}
.wc-block-components-notice-banner {
	margin: 0;
}
.buy-now-button{
	padding: 5px 10px !important;
	color: #fff !important;
	border-radius: 7px !important;
	background: var(--wp--preset--color--extra-primary) !important;
}
.buy-now-button:hover{
	color: #fff !important;
	background: var(--wp--preset--color--extra-secondary) !important;
}
.wp-block-navigation-item.buy-now-button a:hover{
	color: #fff !important;
}

/* Header */
.header-wrap .header-info {
  position: fixed;
  top: 0;
  right: 0;
  width: 380px;
  height: 100vh;
  background: var(--wp--preset--color--primary);
  display: none;
  transition: transform 0.7s ease, opacity 0.7s ease;
  z-index: 10000;
  overflow-y: auto;
  box-shadow: -2px 0px 5px 1px #666666;
}
.header-wrap .header-info.block-editor-block-list__block.wp-block{
	display: block;
	position: unset;
	width: 100%;
}
.header-wrap .header-info.active {
  display: block;
}
.header-wrap .header-right-box .header-open-btn img{
	height: 26px;
	width: auto;
}
.header-wrap .header-right-box .header-search button.wp-block-search__button{
	padding: 5px;
	aspect-ratio: 1;
	border-style: dashed;
	border-radius: 50%;
}
.header-wrap .header-right-box .header-search{
	position: relative;
}
.header-wrap .header-right-box .header-search input.wp-block-search__input{
	position: absolute;
	bottom: -45px;
	right: 0;
}
.header-wrap .topbar .top-social-box ul.wp-block-social-links a{
	background-color: var(--wp--preset--color--foreground);
	border: 1px dashed #D18109;
	font-size: 18px;
	padding: 6px;
	border-radius: 50%;
}
.header-wrap .topbar .top-social-box ul.wp-block-social-links a:hover{
	background-color: var(--wp--preset--color--extra-primary);
	color: var(--wp--preset--color--foreground);
	border-color: #ffffff;
}
.header-wrap .topbar .top-phone-box a, .header-info .side-phone-box .phone-content .phone-num a, .header-info .side-mail-box .mail-content .mail-link a{
	text-decoration: none;
}
.header-wrap .topbar .top-phone-box img{
	height: 20px;
    width: auto !important;
    margin-right: 10px;
}
.header-wrap .topbar .top-phone-box p{
	display: flex;
    align-items: center;
}

/* Slider */
.slider-section .slider-inner-box{
	width: 100%;
}
.slider-section .banner-wrap .slider-bg .slider-content{
	background-size: 100% 100% !important;
	display: flex;
    align-items: center;
}
.slider-section, .slider-section .banner-wrap{
	position: relative;
}
.slider-section .slider-top-design, .slider-section .slider-btm-design{
	position: absolute;
	left: 0;
	width: 100%;
	z-index: 1;
}
.slider-section .slider-top-design{
	top: 0;
	display: flex;
} 
.slider-section .slider-btm-design{
	bottom: 0;
}
.slider-section .slider-top-design img, .slider-section .slider-btm-design img{
	width: 100% !important;
}
.slider-section .banner-wrap .owl-nav{
	position: absolute;
	top: 50%;
	right: 5%;
	transform: translateY(-50%);
	margin-top: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.slider-section .banner-wrap .owl-nav button{
	background-color: var(--wp--preset--color--foreground) !important;
	color: var(--wp--preset--color--background) !important;
	border-radius: 50%;
	aspect-ratio: 1;
	padding: 10px !important;
	display: flex;
}
.slider-section .banner-wrap .owl-nav button:hover{
	background-color: var(--wp--preset--color--extra-primary) !important;
	color: var(--wp--preset--color--foreground) !important;
}
.slider-section .banner-wrap .slider-top-box svg{
	height: 22px;
	width: 22px;
}

/* Services Section */
.services-section .service-bg{
	position: relative;
}
.services-section .service-bg:after{
	content: '';
	position: absolute;
	height: 99.2%;
	width: 99.2%;
	background-color: transparent;
	border: 2px dashed #ffffff;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 20px;
	z-index: 1;
}
.services-section .service-bg .service-content{
	z-index: 2;
    position: relative;
}
.services-section .service-bg .service-content .service-icon img{
	height: 42px;
	width: auto;
}
.services-section .service-bg .service-content .service-btn a{
	border-style: dashed;
	aspect-ratio: 1;
}
.services-section .service-bg .wp-block-cover__image-background{
	border-radius: 20px;
}
.services-section .service-bg{
	overflow: visible;
}
.services-section .service-card:hover .service-bg:before{
	content: '';
	position: absolute;
	height: 100%;
	width: 100%;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background-color: var(--wp--preset--color--overlay-light);
	z-index: 1;
	border-radius: 20px;
}

a.added_to_cart.wc-forward {
    background-color: #32373c;
    color: #fff;
    padding-top: calc(0.667em + 2px);
    padding-right: calc(1.333em + 2px);
    padding-bottom: calc(0.667em + 2px);
    padding-left: calc(1.333em + 2px);
}

/*  Account Page CSS */
.woocommerce-account h2 {
	font-weight: 500;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li,.woocommerce-account .addresses .title .edit {
	background: var(--wp--preset--color--extra-primary);
	margin-bottom: 10px;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
	background-color: transparent !important;
}
.woocommerce-MyAccount-navigation ul li a,.woocommerce-account .addresses .title .edit {
	padding: 8px 12px !important;
	font-size: 16px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 0 !important;
}
.woocommerce-account .addresses .title .edit{
	color: #fff !important;
	text-decoration: none;
}
nav.woocommerce-MyAccount-navigation ul li a {
	color: #fff;
	text-decoration: none;
	font-weight: 600;
}
.woocommerce-account .addresses .title .edit {
    float: left;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	list-style: none;
	border-bottom: 1px solid #eaeaea;
	position: relative;
	padding: 0;
}
.woocommerce-MyAccount-navigation ul li a {
	padding: 15px 0;
	display: block;
	text-decoration: none;
}
.woocommerce-MyAccount-navigation ul li:last-child {
	border: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
	margin: 2rem;
	padding: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
	text-decoration: none;
}
.meta-category a{
	color: #fff !important;
	text-decoration: none !important;
}
.post-navigation-link-previous a,
.post-navigation-link-next a {
	color: #fff !important;
	text-decoration: none;
}
.post-navigation-link-previous ,
.post-navigation-link-next {
  background: var(--wp--preset--color--extra-primary);
  color: var(--wp--preset--color--secondary);
  padding: 7px 20px;
  border-radius: 5px;
}
.post-pgntion{
	margin-top: 40px;
}