/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */

.home-slider .swiper-pagination-bullet {
	width:30px;
	border-radius:3px;
}
.home-slider .swiper-pagination  {
	bottom:70px !important;
}

.elementor-element-4ebe732.e-con-boxed {
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    /* 改用 padding-right，背景色会覆盖此区域 */
    padding-right: calc((100% - 1290px) / 2) !important;
    box-sizing: content-box !important;
}

.elementor-element-4ebe732 > .e-con-inner {
    max-width: unset !important;
    width: auto !important;
}

.elementor-element-6c53e80.e-grid {
    justify-content: flex-end !important;
}

/* hover 时暗色遮罩（背景图沉底感） */
.elementor-element-6c53e80 section {
    position: relative !important;
    overflow: hidden !important;
    transition: color 0.3s ease !important;
    width: 150px;
	height:150px;
}

.elementor-element-6c53e80 section::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.65);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 0;
}

.elementor-element-6c53e80 section:hover::before {
    opacity: 1;
}

/* 确保内容在遮罩之上 */
.elementor-element-6c53e80 section > * {
    position: relative;
    z-index: 1;
}
.elementor-element-6c53e80 section .cls-1 {
  fill: #ed7934 !important;
  opacity: 1 !important;
}

/* hover 时 SVG 变白 */
.elementor-element-6c53e80 section:hover svg path {
    fill: #ffffff !important;
    transition: fill 0.3s ease;
}
.elementor-element-6c53e80 section h6 {
    text-align: center;
}

/* hover 时标题文字变白 */
.elementor-element-6c53e80 section:hover h6 {
    color: #ffffff !important;
    transition: color 0.3s ease;
}
/* 数据网格左对齐 */
.elementor-element-94afd53.e-grid {
    justify-items: start !important;
    text-align: left !important;
}

.elementor-element-94afd53 > .e-con-inner {
    justify-content: flex-start !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* 标题下方：左圆点 + 白色渐隐横线 */
.elementor-element-4679da2 {
    position: relative !important;
    width:100%
}
.elementor-element-4679da2::after {
    content: '';
    display: block;
    height: 12px;
    background:
        radial-gradient(circle, #ffffff 5px, transparent 5px) 0 50% / 12px 12px no-repeat,
        linear-gradient(#ffffff, #ffffff) 0 50% / 100% 1px no-repeat;
}

.home-carousel .elementor-swiper-button.elementor-swiper-button-prev {
	top: calc(100% - 100px) !important;
	left: calc(100% - 150px) !important;
	border: 1px solid #fff;
	border-radius: 50%;
	padding: 5px 5px;
}
.home-carousel .elementor-swiper-button.elementor-swiper-button-next{
	top: calc(100% - 100px) !important;
	right: 100px !important;
	border: 1px solid #fff;
	border-radius: 50%;
	padding: 5px 5px;
}
.home-carousel .elementor-swiper-button:hover{
	background-color:#F77C2F;
	border-color:#F77C2F !important;
	color:#fff;
}


@media (max-width: 1290px) {
    .elementor-element-4ebe732.e-con-boxed {
        padding-right: 0 !important;
    }
}

/* WooCommerce 区块「产品分类」折叠手风琴 */
.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list-item {
    margin: 0;
    padding: 0;
    list-style: none;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-row {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    width: 100%;
    min-height: 2rem;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-toggle {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    margin-top: 2px;
    padding: 0;
    border: none;
    border-radius: 6px;
    background: #eef1f4;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-toggle:hover {
    background: #e2e6ea;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-toggle::before {
    content: '';
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 6px solid #939393;
    transition: transform 0.2s ease;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-open > .wc-cat-row .wc-cat-toggle::before {
    transform: rotate(90deg);
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-meta {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
    flex-wrap: wrap;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-meta a, .wc-block-product-categories-list--depth-0 wc-block-product-categories-list-item  span {
    text-decoration: none;
    color: #1d2327;
    font-size: 14px;
    line-height: 1.45;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-meta a:hover {
    color: var(--theme-link-hover-color);
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list-item-count {
    font-size: 12px;
    color: #646970;
    background: rgba(0, 0, 0, 0.06);
    padding: 2px 8px;
    border-radius: 999px;
    float: right;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-has-children:not(.wc-cat-open) > ul {
    display: none !important;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list--depth-1,
.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list--depth-2 {
    margin: 6px 0 8px;
    padding-left: 3rem;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list--depth-0 > li:not(.wc-cat-has-children) {
    padding: 8px 0 8px 26px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list:not(.wc-block-product-categories-list--depth-0) > li:not(.wc-cat-has-children) {
    padding: 6px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-cat-has-children > .wc-cat-row {
    padding: 8px 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list--depth-0 > li:not(.wc-cat-has-children) > a {
    margin-right: 6px;
    text-decoration: none;
    color: #1d2327;
    font-size: 14px;
    line-height: 1.45;
}

.certifica .elementor-image-box-img img {
  width: 100%;
  padding: 25px;
  border: 1px solid #e6e6e6;
  border-radius: 50%;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list:not(.wc-block-product-categories-list--depth-0) > li:not(.wc-cat-has-children) > a {
    text-decoration: none;
    color: #1d2327;
    font-size: 14px;
}

.wc-block-product-categories.wc-cat-accordion-ready .wc-block-product-categories-list:not(.wc-block-product-categories-list--depth-0) > li:not(.wc-cat-has-children) > a:hover,.wc-block-product-categories-list-item span:hover {
    color: var(--theme-link-hover-color);
}
/* Basic Posts：悬停卡片上移 + 轻微放大；Read More 默认隐藏，悬停时从下滑入 */
.hfe-post-card {
  transition: transform 0.25s ease;
}

.hfe-post-card:hover,
.hfe-post-card:focus-within {
  transform: translateY(-10px) scale(1.03);
}

.hfe-post-card .hfe-read-more {
  display: inline-block;
  opacity: 0;
  visibility: hidden;
  transform: translateY(0.75rem);
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
  pointer-events: none;
}

.hfe-post-card:hover .hfe-read-more,
.hfe-post-card:focus-within .hfe-read-more {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

button.ts-video-play-btn.ts-video-blay-btn-youtube{
	background: #00000082;
}
.entry-card .entry-title {
  /* 1. 保证最低2行高度 */
  line-height: 1.5em;         /* 设置行高为1.5倍字体大小 */
  min-height: 3em;            /* 2行高度 = line-height × 2 = 1.5em × 2 = 3em */
  
  /* 2. 超出2行隐藏并显示省略号 */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  
  /* 3. 可选：防止长英文单词撑破布局 */
  word-break: break-all;
}

.home-slider .elementor-background-overlay {
  background-color: #0000004D; /* 原始背景色 */
  height: 20%;
  background: linear-gradient(to bottom, 
    rgba(0,0,0,0.8) 0%, 
    rgba(0,0,0,0) 100%);
}
.end-service .elementor-image-box-img{
	align-items: center;
  justify-items: center;
  display: grid;
}

.timely-image-boxs .elementor-image-box-title{
	background-color:#ddd;
}
.timely-image-boxs .elementor-image-box-description{
	padding:10px 5% 0 5%;
}
.tip-text .elementor-widget-container {
  display: inline-block;
  transform: skewX(-18deg);
  background: #333;
  padding: 0.5em 2em;
}

.tip-text .elementor-widget-container p {
  margin: 0;
  transform: skewX(18deg);
  color: #fff;
  font-family: system-ui, -apple-system, sans-serif;
  text-align: center;
}

@media (min-width: 1120px) {
	.cer-grid .e-div-block-base:not(:last-child) {
  		border-right: 1px solid #bbb;
	}
}

@media (max-width: 767px) {
	.elementor-element-02f9048 img{
		max-width:85% !important;
	}
}
@media (prefers-reduced-motion: reduce) {
  .hfe-post-card {
    transition: none;
  }

  .hfe-post-card:hover,
  .hfe-post-card:focus-within {
    transform: none;
  }

  .hfe-post-card .hfe-read-more {
    opacity: 1;
    visibility: visible;
    transform: none;
    transition: none;
    pointer-events: auto;
  }
}
.archive.tax-product_cat  .wp-block-cover-is-layout-constrained{
  padding: 150px 0 50px 0;
}
.archive.tax-product_cat  .wp-block-cover-is-layout-constrained{
  padding: 150px 0 50px 0;
}
/*
 * PC 三级菜单被裁切：Blocksy dropdown-animation 在部分状态下给 .sub-menu 设
 * overflow:hidden + max-height；父级 ul 无 .menu 类时旧的 nav > ul.menu 根本不命中。
 */
@media (min-width: 992px) {

	#main-container {
		overflow: visible !important;
	}

	/*
	 * Header 先于 main，但若 main 内 Elementor 区块带 z-index/transform，
	 * 仍会盖住「伸出 header 盒子」的下拉。把整个 main 压在低于 #header 的叠层。
	 */
	#main-container > main#main {
		position: relative;
		z-index: 1 !important;
	}

	/*
	 * 首页 post-7749：文案区 elementor-element-a6644b0 盖住三级下拉（RayTalk）
	 */
	.elementor-7749 .elementor-element-a6644b0,
	article#post-7749 .elementor-element-a6644b0 {
		position: relative !important;
		z-index: 0 !important;
		isolation: auto !important;
	}

	#header,
	#header [data-row],
	#header [data-column],
	#header [data-items],
	#header [data-device='desktop'],
	#header .ct-container {
		overflow: visible !important;
	}

	/* 盖住 animated-submenu > .sub-menu 的规则（不必依赖 ct-active） */
	#header [class*='animated-submenu'] > .sub-menu,
	#header [class*='animated-submenu'] > .ub-menu {
		overflow: visible !important;
		max-height: none !important;
		height: auto !important;
	}

	/* 所有层级的下拉 ul（不写 ul.menu，避免选择器落空） */
	#header nav .sub-menu,
	#header nav .ub-menu {
		overflow: visible !important;
		max-height: none !important;
		height: auto !important;
	}

	#header nav ul[id^='menu-'] > li.menu-item-has-children > .sub-menu,
	#header nav ul[id^='menu-'] > li.menu-item-has-children > .ub-menu,
	#header nav > ul > li.menu-item-has-children > .sub-menu,
	#header nav > ul > li.menu-item-has-children > .ub-menu {
		overflow: visible !important;
		max-height: none !important;
	}

	/* 避免侧向三层被压住 */
	#header nav li.menu-item-has-children .sub-menu,
	#header nav li.menu-item-has-children .ub-menu {
		z-index: 100000 !important;
	}

	/* Blocksy：collapse menu 关闭时 nav 带 data-responsive="no"，容器默认 overflow:hidden */
	#header nav[data-responsive='no'] {
		overflow: visible !important;
	}

	/* 下拉盖住下方 Elementor Hero/Swiper：抬高整块 header 叠层（勿改 position，以免破坏 sticky） */
	#header {
		z-index: 999999 !important;
		isolation: isolate;
	}
}