/*
Theme Name: Celestium Pro
Theme URI: https://effethemes.com/themes/celestium-wordpress-theme/
Author: Effe Themes
Author URI: https://effethemes.com/
Description: Celestium is a cutting-edge multipurpose corporate WordPress theme designed for modern businesses seeking a sleek and professional online presence. Whether you're a corporate entity, freelancer, digital agency, or eCommerce platform, Celestium offers a versatile and clean design that highlights your services, portfolio, and team with elegance and sophistication. Crafted with a focus on intuitiveness and modern aesthetics, Celestium is packed with features that cater to all market niches. Its responsive design ensures a seamless experience across all devices, enhancing user engagement and satisfaction. Celestium stands out with its user-friendly interface, making it accessible for users of all levels, from seasoned professionals to complete beginners. The theme includes 15+ block patterns, 6 FSE Templates, and 10 Template Parts, allowing you to build a stunning corporate site just the way you want. Key block patterns include Hero Sections, Featured Services, Team Showcases, Portfolio Galleries, Testimonials, Blog Highlights, Call to Action sections, Pricing Tables, Contact Forms, and more. Each element is fully responsive, ensuring your site looks perfect on any device.
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 5.7
Version: 1.2.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: celestium-pro
Tags: block-patterns, custom-logo, full-site-editing, full-width-template, e-commerce, portfolio, blog, grid-layout, one-column, two-columns, translation-ready, custom-header
*/

/* ================= > General Styles < ================= */

html,body {
  overflow-x: hidden;
}

html {
  scroll-behavior: smooth;
}

body {
  background: var(--wp--preset--color--custom-background-primary);
}

a {
  /* text-decoration: none; */
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

a:hover {
  color: var(--wp--preset--color--custom-primary);
}

ul {
  list-style: none;
  padding: 0;
}

mark {
  padding: 0 10px;
  border-radius: 50px;
  background-color: transparent !important;
}

.full-width-image,
.full-width-image > img {
  width: 100% !important;
}

.hero-fluent-bg {
  position: absolute;
  top: 20px;
}

:where(.wp-site-blocks) > * {
  -webkit-margin-before: 0;
          margin-block-start: 0;
}

/* ================= > Scroll Bar < ================= */

::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-thumb {
  background: var(--wp--preset--color--custom-primary);
}

::-webkit-scrollbar-thumb:hover {
  background: #555;
}

/* ================= > Loading < ================= */

.loading-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100vh;
  width: 100vw;
  min-width: 100vw;
  min-height: 100vh;
  z-index: 999;
  opacity: 1;
  -webkit-transition: opacity 1.5s ease;
  -o-transition: opacity 1.5s ease;
  transition: opacity 1.5s ease;
  position: fixed;
  background: var(--wp--preset--color--custom-background-secondary);
}

.loading-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  margin: 0;
  padding: 0;
  color: transparent;
  -webkit-transition: opacity 1s ease;
  -o-transition: opacity 1s ease;
  transition: opacity 1s ease;
}

.loading-text:before {
  content: attr(data-text);
  position: absolute;
  width: 100%;
  height: 100%;
  color: var(--wp--preset--color--custom-primary);
  overflow: hidden;
  -webkit-animation: loading-animate 5s ease-in-out infinite;
          animation: loading-animate 5s ease-in-out infinite;
  border-right: 3px solid var(--wp--preset--color--custom-primary);
}

/* ================= > Cursor < ================= */

#adaptive-cursor {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 5px;
  pointer-events: none;
  position: fixed;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: color 0.5s ease;
  -o-transition: color 0.5s ease;
  transition: color 0.5s ease;
  width: 0;
  z-index: 1000;
}

/* ================= > Header < ================= */

.wp-block-site-title > a {
  text-decoration: none;
}

.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
  border: 0 !important;
  padding: 0 !Important;
  border-top: 2px solid var(--wp--preset--color--custom-primary) !important;
}

.wp-block-navigation-item:hover {
  color: var(--wp--preset--color--custom-primary) !important;
}

.header-search-icon > div > button {
  background: transparent;
  padding: 0;
}

/* ================= > Blog < ================= */

.wp-block-button__link {
  background: var(--wp--preset--color--custom-primary);
}

input,
textarea {
  background: var(--wp--preset--color--custom-background-secondary) !important;
  color: #fff !important;
  padding: 10px;
  border: 0;
  border-radius: 6px;
}

.wp-block-comment-content {
  background: #1f2025 !important;
}

/* ================= > Rolling Text < ================= */

.rolling-text-rail {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	white-space: nowrap;
  overflow: hidden;
}

.rolling-text-rail > h1,
.rolling-text-rail > h2,
.rolling-text-rail > h3,
.rolling-text-rail > h4,
.rolling-text-rail > h5,
.rolling-text-rail > h6,
.rolling-text-rail > p,
.rolling-text-rail > img {
  display: inline-block;
  margin: 0;
}

.rail {
	min-width: -webkit-fit-content;
	min-width: -moz-fit-content;
	min-width: fit-content;
}

@-webkit-keyframes loading-animate{
	0%{
		width: 0;
	}
	50%{
		width: 100%;
	}
	100%{
		width: 0;
	}
}

@keyframes loading-animate{
	0%{
		width: 0;
	}
	50%{
		width: 100%;
	}
	100%{
		width: 0;
	}
}

/* ================= > Our Philosophy < ================= */

.our-philosophy {
  scale: 0.8;
}

/* ================= > Pricing < ================= */

.check-icon {
  list-style: none;
  padding: 0;
}

.check-icon li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
}

.check-icon li::before {
  content: "\f00c";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 0;
  color: var(--wp--preset--color--custom-primary);
  font-size: 18px;
}

/* ================= > Gallery < ================= */

.gallery-image > div > figure {
	overflow: hidden;
}

.gallery-image > div > figure > img {
	-o-object-fit: cover;
	   object-fit: cover;
	-webkit-transition: -webkit-transform 400ms ease-out;
	transition: -webkit-transform 400ms ease-out;
	-o-transition: transform 400ms ease-out;
	transition: transform 400ms ease-out;
	transition: transform 400ms ease-out, -webkit-transform 400ms ease-out;
}

.gallery-image > div > figure > img:hover {
	-webkit-transform: scale(1.15);
	    -ms-transform: scale(1.15);
	        transform: scale(1.15);
}

/* ================= > Contact < ================= */

.wpcf7-form-control {
  width: -webkit-fill-available;
}

.wpcf7-submit {
  cursor: pointer;
  width: 100%;
  border-radius: 50px !important;
  background: var(--wp--preset--color--custom-primary) !important;
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.wpcf7-submit:hover {
  background: -webkit-gradient(linear,right top, left top,from(transparent),color-stop(40%, var(--wp--preset--color--custom-primary))) !important;
  background: -o-linear-gradient(right,transparent 0%,var(--wp--preset--color--custom-primary) 40%) !important;
  background: linear-gradient(to left,transparent 0%,var(--wp--preset--color--custom-primary) 40%) !important;
}

/* ================= > Newsletter < ================= */

.tnp-submit {
  cursor: pointer;
  background: var(--wp--preset--color--custom-primary) !important;
  -webkit-transition: all 0.25s ease-in-out;
  -o-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
  border-radius: 50px !important;
  width: 100% !important;
}

.tnp-submit:hover {
  color: #fff !important;
  background: -webkit-gradient(linear,right top, left top,from(transparent),color-stop(40%, var(--wp--preset--color--custom-primary))) !important;
  background: -o-linear-gradient(right,transparent 0%,var(--wp--preset--color--custom-primary) 40%) !important;
  background: linear-gradient(to left,transparent 0%,var(--wp--preset--color--custom-primary) 40%) !important;
}

/* ================= > Portfolio < ================= */

.main-horizontal-sliders {
  overflow-x: hidden;
}

.portfolio-horizontal-slider-projects {
	width: 300vh;
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

/* ================= > Testimonial < ================= */

.testimonial-container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  min-height: 300px;
}

.testimonial {
  position: absolute;
  left: 0;
  right: 0;
  text-align: center;
  opacity: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.testimonial.active {
  left: 0;
  opacity: 1;
}

/* ================= > WooCommerce < ================= */

.orderby {
  padding: 20px;
  border-radius: 10px;
}

.wp-block-query-pagination-numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
}

.woocommerce-product-gallery__image,
.attachment-woocommerce_thumbnail,
.size-woocommerce_thumbnail,
.wc-block-grid__product-image > a > img {
  border-radius: 10px;
}

.woocommerce-product-gallery__image:hover,
.attachment-woocommerce_thumbnail:hover,
.size-woocommerce_thumbnail:hover,
.wc-block-grid__product-image > a > img:hover,
.wc-block-cart-item__image > a > img:hover,
.wp-block-cart-cross-sells-product__product-image > a > img:hover {
  opacity: 0.8;
}

.single_add_to_cart_button,
.add_to_cart_button,
.product_type_external,
.ajax_add_to_cart,
.wp-block-woocommerce-mini-cart-checkout-button-block,
.wc-block-components-product-button__button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wc-block-components-totals-coupon__button {
  border-radius: 25px;
  background: var(--wp--preset--color--custom-primary);
}

.wp-block-woocommerce-mini-cart-cart-button-block {
  border-radius: 25px;
}

.wp-block-woocommerce-mini-cart-shopping-button-block {
  background: var(--wp--preset--color--custom-primary);
}

.components-form-token-field__suggestion:hover {
  background: var(--wp--preset--color--custom-primary) !important;
}

.single_add_to_cart_button:hover,
.add_to_cart_button:hover,
.product_type_external:hover,
.ajax_add_to_cart:hover,
.wp-block-woocommerce-mini-cart-checkout-button-block:hover,
.wp-block-woocommerce-mini-cart-shopping-button-block:hover,
.wc-block-components-product-button__button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-totals-coupon__button:hover {
  opacity: 0.9;
}

.qty {
  border-radius: 10px;
}

.wc-block-components-form .wc-block-components-text-input label, .wc-block-components-text-input label {
  color: #ffffff8a !important
}

.wc-block-components-checkbox .wc-block-components-checkbox__mark {
  background: #fff !important;
}

/* ================= > Footer < ================= */

.footer-links > li > a {
  text-decoration: none;
}

/* ================= > Media Queries < ================= */

@media (max-width: 1024px) {
  .wp-block-columns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close,
  .wp-block-navigation__responsive-container-open:not(.always-shown),
  .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: none;
  }

  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .wp-block-navigation__container {
    --navigation-layout-justification-setting: flex-start !important;
    --navigation-layout-justify: flex-start !important;
  }

  #adaptive-cursor {
    display: none;
  }
}

@media (max-width: 768px) {
  .hero-buttons,
  .footer-columns {
    place-items: flex-start !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }

  .wpcf7-form-control {
    width: 100% !important;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}