/* ==========================================================================
   KIDLY.VN 
   --------------------------------------------------------------------------
   Mục lục:
    00. Design tokens
    01. Base & typography
    02. Buttons / pill
    03. Header
    04. Section heading (eyebrow + serif)
    05. Hero banner
    06. Press logos
    07. Tech cards (thẻ mở rộng khi hover)
    08. Category cards (Beyond outfits)
    09. Story block
    10. Blog cards (Field notes)
    11. Newsletter block
    12. Feature icons row
    13. Footer
    14. Product card (shop loop)
    15. Category / shop page
    16. Single product page
    17. Accordion mô tả sản phẩm
    18. Reviews section
    19. Sticky add-to-bag bar
    20. Floating badges
    21. Responsive
   ========================================================================== */

/* 00. DESIGN TOKENS ------------------------------------------------------ */
:root {
	--kidly-bg:          #FBF7F3; /* nền kem toàn trang */
	--kidly-surface:     #FFFFFF;
	--kidly-panel:       #F1EDE8; /* nền ảnh sản phẩm */
	--kidly-panel-2:     #EFE9E3;

	--kidly-ink:         #14110F; /* chữ chính */
	--kidly-ink-soft:    #4A4441;
	--kidly-muted:       #857D77; /* chữ phụ */
	--kidly-line:        #E7E0D8;

	--kidly-pink:        #F9C9D8; /* hồng pastel – nền pill/badge */
	--kidly-pink-soft:   #FDEAF0;
	--kidly-pink-ink:    #A8446A; /* chữ trên nền hồng */
	--kidly-coral:       #FF5A36; /* accent tiêu đề hero */

	--kidly-dark:        #1A1613; /* footer */
	--kidly-dark-soft:   #2A2421;
	--kidly-dark-line:   rgba(255, 255, 255, .12);

	--kidly-star:        #FF6F5E;

	--kidly-radius-sm:   10px;
	--kidly-radius:      18px;
	--kidly-radius-lg:   28px;
	--kidly-radius-pill: 999px;

	--kidly-font-head:   'Playfair Display', Georgia, 'Times New Roman', serif;
	--kidly-font-body:   'Be Vietnam Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

	--kidly-shadow:      0 2px 18px rgba(20, 17, 15, .06);
	--kidly-shadow-lg:   0 10px 40px rgba(20, 17, 15, .10);

	--kidly-container:   1340px;
	--kidly-ease:        cubic-bezier(.4, 0, .2, 1);
}

/* 01. BASE & TYPOGRAPHY -------------------------------------------------- */
body.kidly-theme {
	background-color: var(--kidly-bg);
	color: var(--kidly-ink);
	font-family: var(--kidly-font-body);
	font-size: 15px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}

/* Flatsome đặt #main nền trắng — bỏ đi để nền kem của body hiện ra.
   Nếu không có dòng này, toàn bộ trang sẽ trắng thay vì #FBF7F3. */
.kidly-theme #main,
.kidly-theme #content,
.kidly-theme .page-wrapper {
	background-color: transparent;
}

.kidly-theme h1,
.kidly-theme h2,
.kidly-theme h3,
.kidly-theme h4,
.kidly-theme h5,
.kidly-theme h6 {
	color: var(--kidly-ink);
	font-family: var(--kidly-font-head);
	font-weight: 400;
	letter-spacing: -.015em;
	line-height: 1.14;
	margin-bottom: .5em;
}

.kidly-theme h1 { font-size: clamp(34px, 4.4vw, 60px); }
.kidly-theme h2 { font-size: clamp(28px, 3.2vw, 44px); }
.kidly-theme h3 { font-size: clamp(20px, 2vw, 27px); }

/* Tiêu đề dùng font sans (label, tên sản phẩm, menu…) */
.kidly-theme .product-title,
.kidly-theme .widget-title,
.kidly-theme .nav > li > a,
.kidly-theme .button,
.kidly-theme label,
.kidly-theme .kidly-sans {
	font-family: var(--kidly-font-body);
	letter-spacing: 0;
}

.kidly-theme a { color: var(--kidly-ink); }
.kidly-theme a:hover { color: var(--kidly-coral); }

.kidly-theme .container,
.kidly-theme .row {
	max-width: var(--kidly-container);
}

/* Chữ nhỏ in hoa dùng cho eyebrow / nhãn */
.kidly-eyebrow {
	color: var(--kidly-muted);
	display: block;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: .18em;
	margin-bottom: 14px;
	text-transform: uppercase;
}
.kidly-eyebrow::before {
	background: var(--kidly-muted);
	content: '';
	display: inline-block;
	height: 1px;
	margin-right: 12px;
	vertical-align: middle;
	width: 22px;
}

/* 02. BUTTONS ------------------------------------------------------------ */
.kidly-theme .button,
.kidly-theme button,
.kidly-theme input[type="submit"],
.kidly-theme .button.primary {
	border-radius: var(--kidly-radius-pill);
	box-shadow: none;
	font-family: var(--kidly-font-body);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .01em;
	min-height: 48px;
	padding: 0 30px;
	text-transform: none;
	transition: transform .25s var(--kidly-ease), background-color .25s var(--kidly-ease), color .25s var(--kidly-ease);
}

.kidly-theme .button:hover,
.kidly-theme button:hover {
	box-shadow: none;
	transform: translateY(-1px);
}

/* Nút đen đặc – CTA chính */
.kidly-theme .button.kidly-btn-dark,
.kidly-theme .single_add_to_cart_button,
.kidly-theme .checkout-button {
	background-color: var(--kidly-ink) !important;
	border-color: var(--kidly-ink) !important;
	color: #fff !important;
}
.kidly-theme .button.kidly-btn-dark:hover,
.kidly-theme .single_add_to_cart_button:hover {
	background-color: #000 !important;
}

/* Nút coral – CTA hero */
.kidly-theme .button.kidly-btn-coral {
	background-color: var(--kidly-coral) !important;
	border-color: var(--kidly-coral) !important;
	color: #fff !important;
}

/* Nút hồng pastel */
.kidly-theme .button.kidly-btn-pink {
	background-color: var(--kidly-pink) !important;
	border-color: var(--kidly-pink) !important;
	color: var(--kidly-ink) !important;
}

/* Nút viền mảnh */
.kidly-theme .button.kidly-btn-outline {
	background: transparent !important;
	border: 1px solid var(--kidly-ink) !important;
	color: var(--kidly-ink) !important;
}
.kidly-theme .button.kidly-btn-outline:hover {
	background: var(--kidly-ink) !important;
	color: #fff !important;
}

/* Link có mũi tên "Discover More →" */
.kidly-link-arrow {
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius-pill);
	display: inline-block;
	font-size: 13px;
	padding: 9px 20px;
	transition: all .25s var(--kidly-ease);
}
.kidly-link-arrow:hover {
	background: var(--kidly-ink);
	border-color: var(--kidly-ink);
	color: #fff !important;
}
.kidly-link-arrow::after { content: ' \2192'; }

/* 03. HEADER ------------------------------------------------------------- */
.kidly-theme #header .header-main { min-height: 76px; }

.kidly-theme #header,
.kidly-theme .header-wrapper {
	background-color: var(--kidly-bg);
}

.kidly-theme .header-wrapper.stuck .header-main {
	background-color: rgba(251, 247, 243, .94);
	backdrop-filter: saturate(180%) blur(12px);
	box-shadow: 0 1px 0 var(--kidly-line);
}

.kidly-theme #header .nav > li > a {
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
}

.kidly-theme #header .nav > li > a:hover { color: var(--kidly-coral); }

/* Bỏ gạch chân mặc định của Flatsome, thay bằng chấm nhỏ */
.kidly-theme .nav-line-bottom > li > a:before,
.kidly-theme .nav-line-grow > li > a:before {
	background-color: var(--kidly-coral);
	bottom: 6px;
	height: 2px;
}

.kidly-theme #header .header-nav .icon-search,
.kidly-theme #header .header-nav .icon-user,
.kidly-theme #header .header-nav .icon-shopping-bag {
	font-size: 18px;
}

/* Logo */
.kidly-theme #logo img { max-height: 34px; }

/* Thanh thông báo trên cùng */
.kidly-theme #top-bar {
	background-color: var(--kidly-ink);
	color: #fff;
	font-size: 12.5px;
	letter-spacing: .04em;
	min-height: 38px;
}
.kidly-theme #top-bar a { color: #fff; }

/* Mega menu / dropdown bo tròn */
.kidly-theme .nav-dropdown {
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius);
	box-shadow: var(--kidly-shadow-lg);
	padding: 18px;
}

/* 03b. HEADER NỔI (TRONG SUỐT) ĐÈ LÊN HERO ------------------------------
   Bật bằng body class .kidly-transparent-header (xem inc/header.php).
   Mặc định trang chủ. Chữ giữ màu tối + có lớp gradient mờ phía sau để đọc
   được trên ảnh sáng màu; thêm .kidly-header-light nếu ảnh hero tối màu.
   ---------------------------------------------------------------------- */

.kidly-transparent-header #header {
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 30;
}

/* Trong suốt hoá mọi lớp nền của Flatsome khi chưa cuộn */
.kidly-transparent-header #header .header-wrapper:not(.stuck),
.kidly-transparent-header #header .header-wrapper:not(.stuck) .header-main,
.kidly-transparent-header #header .header-wrapper:not(.stuck) .header-bg-container,
.kidly-transparent-header #header .header-wrapper:not(.stuck) .header-bg-color,
.kidly-transparent-header #header .header-wrapper:not(.stuck) .header-bg-image {
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
}

/* Bỏ đường kẻ dưới header khi đang nổi */
.kidly-transparent-header #header .header-wrapper:not(.stuck) .top-divider,
.kidly-transparent-header #header .header-wrapper:not(.stuck) .header-bottom {
	display: none;
}

/* Lớp gradient mờ giúp logo và menu đọc được trên ảnh sáng */
.kidly-transparent-header #header::before {
	background: linear-gradient(to bottom, rgba(251, 247, 243, .88) 0%, rgba(251, 247, 243, 0) 100%);
	content: '';
	height: 160px;
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

/* Khi cuộn xuống: header dính, nền kem đặc trở lại */
.kidly-transparent-header .header-wrapper.stuck .header-main,
.kidly-transparent-header .header-wrapper.stuck .header-bg-color {
	background-color: rgba(251, 247, 243, .96) !important;
	backdrop-filter: saturate(180%) blur(12px);
	box-shadow: 0 1px 0 var(--kidly-line);
}

/* Hero phải chạm mép trên: bỏ khoảng đệm đầu trang của Flatsome */
.kidly-transparent-header #wrapper > #main,
.kidly-transparent-header #main > .page-wrapper,
.kidly-transparent-header #content {
	padding-top: 0 !important;
}
.kidly-transparent-header .page-wrapper > .section:first-child,
.kidly-transparent-header #content > .section:first-child {
	margin-top: 0 !important;
}

/* Đẩy nội dung chữ trong hero xuống để không bị header che */
.kidly-transparent-header .kidly-hero .banner-layers,
.kidly-transparent-header .kidly-hero .text-box {
	padding-top: 40px;
}

/* --- Biến thể chữ sáng: dùng khi ảnh hero tối màu --- */
.kidly-header-light #header .header-wrapper:not(.stuck) .nav > li > a,
.kidly-header-light #header .header-wrapper:not(.stuck) .header-nav a,
.kidly-header-light #header .header-wrapper:not(.stuck) .cart-price,
.kidly-header-light #header .header-wrapper:not(.stuck) .icon-shopping-bag,
.kidly-header-light #header .header-wrapper:not(.stuck) .icon-search,
.kidly-header-light #header .header-wrapper:not(.stuck) .icon-user {
	color: #fff !important;
}
.kidly-header-light #header .header-wrapper:not(.stuck) .nav > li > a:hover {
	color: rgba(255, 255, 255, .75) !important;
}
.kidly-header-light #header .header-wrapper:not(.stuck) .cart-icon strong {
	border-color: #fff !important;
	color: #fff !important;
}
/* Đổi lớp gradient sang tối cho dễ đọc chữ trắng */
.kidly-header-light #header::before {
	background: linear-gradient(to bottom, rgba(0, 0, 0, .42) 0%, rgba(0, 0, 0, 0) 100%);
}

@media (max-width: 849px) {
	/* Trên mobile giảm chiều cao lớp gradient cho gọn */
	.kidly-transparent-header #header::before { height: 110px; }
	.kidly-transparent-header .kidly-hero .text-box { padding-top: 20px; }
}

/* 04. SECTION HEADING ---------------------------------------------------- */
.kidly-section-head {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	margin-bottom: 34px;
}
.kidly-section-head h2 { margin-bottom: 0; }
.kidly-section-head .kidly-link-arrow { flex: 0 0 auto; margin-left: 24px; }

/* Section padding chuẩn */
.kidly-theme .section.kidly-section { padding-bottom: 72px; padding-top: 72px; }

/* 05. HERO --------------------------------------------------------------- */
.kidly-hero .banner-inner { padding: 0 !important; }

.kidly-hero .kidly-hero-title {
	color: var(--kidly-coral);
	font-family: var(--kidly-font-head);
	font-size: clamp(38px, 5.2vw, 68px);
	font-style: italic;
	font-weight: 400;
	line-height: 1.05;
	margin-bottom: 12px;
}

.kidly-hero .kidly-hero-sub {
	color: var(--kidly-ink);
	font-size: 15px;
	margin-bottom: 22px;
}

/* Bo góc dưới của hero giống PatPat */
.kidly-hero.kidly-round-bottom {
	border-bottom-left-radius: var(--kidly-radius-lg);
	border-bottom-right-radius: var(--kidly-radius-lg);
	overflow: hidden;
}

/* 06. PRESS LOGOS -------------------------------------------------------- */
.kidly-press {
	align-items: center;
	background: var(--kidly-surface);
	border-radius: var(--kidly-radius);
	display: flex;
	flex-wrap: wrap;
	gap: 10px 48px;
	justify-content: space-between;
	padding: 26px 40px;
}
.kidly-press img {
	filter: grayscale(1);
	max-height: 26px;
	opacity: .62;
	transition: opacity .25s var(--kidly-ease), filter .25s var(--kidly-ease);
	width: auto;
}
.kidly-press img:hover { filter: grayscale(0); opacity: 1; }

/* 07. TECH CARDS --------------------------------------------------------- */
.kidly-tech {
	display: flex;
	gap: 10px;
	min-height: 420px;
}

.kidly-tech__item {
	border-radius: var(--kidly-radius);
	color: #fff;
	display: block;
	flex: 1 1 0;
	min-width: 0;
	overflow: hidden;
	position: relative;
	transition: flex-grow .55s var(--kidly-ease);
}

/* Thẻ đang mở */
.kidly-tech__item.is-active { flex-grow: 3.4; }

.kidly-tech__item img {
	height: 100%;
	left: 0;
	object-fit: cover;
	position: absolute;
	top: 0;
	transition: transform .8s var(--kidly-ease);
	width: 100%;
}
.kidly-tech__item:hover img { transform: scale(1.04); }

.kidly-tech__item::after {
	background: linear-gradient(to top, rgba(0, 0, 0, .48) 0%, rgba(0, 0, 0, 0) 46%);
	content: '';
	inset: 0;
	position: absolute;
}

.kidly-tech__label {
	color: rgba(255, 255, 255, .9);
	font-size: 10px;
	font-weight: 500;
	left: 20px;
	letter-spacing: .16em;
	position: absolute;
	text-transform: uppercase;
	top: 18px;
	z-index: 2;
}

.kidly-tech__title {
	bottom: 20px;
	color: #fff !important;
	font-family: var(--kidly-font-head);
	font-size: clamp(17px, 1.5vw, 26px);
	left: 20px;
	margin: 0;
	position: absolute;
	white-space: nowrap;
	z-index: 2;
}

.kidly-tech__arrow {
	align-items: center;
	background: rgba(255, 255, 255, .92);
	border-radius: 50%;
	bottom: 20px;
	color: var(--kidly-ink);
	display: flex;
	height: 36px;
	justify-content: center;
	opacity: 0;
	position: absolute;
	right: 20px;
	transition: opacity .4s var(--kidly-ease);
	width: 36px;
	z-index: 2;
}
.kidly-tech__item.is-active .kidly-tech__arrow { opacity: 1; }

/* 08. CATEGORY CARDS ----------------------------------------------------- */
.kidly-cat-card {
	display: block;
	position: relative;
}
.kidly-cat-card__media {
	border-radius: var(--kidly-radius);
	overflow: hidden;
	position: relative;
}
.kidly-cat-card__media img {
	aspect-ratio: 4 / 3.4;
	object-fit: cover;
	transition: transform .7s var(--kidly-ease);
	width: 100%;
}
.kidly-cat-card:hover .kidly-cat-card__media img { transform: scale(1.045); }

.kidly-cat-card__title {
	font-family: var(--kidly-font-body);
	font-size: 17px;
	font-weight: 600;
	margin: 16px 0 4px;
}
.kidly-cat-card__title::after {
	content: ' \2192';
	display: inline-block;
	transition: transform .25s var(--kidly-ease);
}
.kidly-cat-card:hover .kidly-cat-card__title::after { transform: translateX(4px); }

.kidly-cat-card__desc {
	color: var(--kidly-muted);
	font-size: 13.5px;
	margin: 0;
}

/* 09. STORY BLOCK -------------------------------------------------------- */
.kidly-story {
	border-radius: var(--kidly-radius);
	overflow: hidden;
	position: relative;
}
.kidly-story__caption {
	left: 6%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.kidly-story__caption .kidly-story__year {
	color: #2F5D3A;
	font-family: var(--kidly-font-head);
	font-size: clamp(30px, 3.4vw, 46px);
	margin-bottom: 6px;
}
.kidly-story__caption p { color: var(--kidly-ink-soft); font-size: 15px; margin: 0; }

/* 10. BLOG CARDS --------------------------------------------------------- */
.kidly-theme .kidly-blog .post-item .box-image { border-radius: var(--kidly-radius); overflow: hidden; }
.kidly-theme .kidly-blog .post-item .box-text {
	padding: 18px 4px 0;
	text-align: left;
}
.kidly-theme .kidly-blog .post-item .post-title {
	font-family: var(--kidly-font-body);
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
	margin-bottom: 6px;
}
.kidly-theme .kidly-blog .post-item .from_the_blog_excerpt {
	color: var(--kidly-muted);
	font-size: 13.5px;
}
.kidly-theme .kidly-blog .post-item .post-meta { display: none; }

/* Nhãn chuyên mục nhỏ phía trên tiêu đề */
.kidly-blog__tag {
	color: var(--kidly-muted);
	display: block;
	font-size: 10.5px;
	letter-spacing: .14em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

/* 11. NEWSLETTER BLOCK --------------------------------------------------- */
.kidly-newsletter {
	background: var(--kidly-pink);
	border-radius: var(--kidly-radius-lg);
	overflow: hidden;
}
.kidly-newsletter h2 {
	font-size: clamp(26px, 2.8vw, 40px);
	margin-bottom: 10px;
}
.kidly-newsletter p { color: var(--kidly-ink-soft); font-size: 14px; }

.kidly-newsletter .kidly-form,
.kidly-inline-form {
	align-items: center;
	background: #fff;
	border-radius: var(--kidly-radius-pill);
	display: flex;
	max-width: 420px;
	overflow: hidden;
	padding: 5px 5px 5px 20px;
}
.kidly-newsletter .kidly-form input[type="email"],
.kidly-newsletter .kidly-form input[type="text"],
.kidly-inline-form input[type="email"],
.kidly-inline-form input[type="text"],
.kidly-inline-form input[type="tel"] {
	background: transparent;
	border: 0;
	box-shadow: none;
	flex: 1;
	font-size: 14px;
	height: 42px;
	margin: 0;
	padding: 0;
}
.kidly-newsletter .kidly-form input:focus,
.kidly-inline-form input:focus { box-shadow: none; outline: none; }

.kidly-newsletter .kidly-form button,
.kidly-inline-form button {
	background: var(--kidly-ink);
	border-radius: var(--kidly-radius-pill);
	color: #fff;
	flex: 0 0 auto;
	font-size: 13px;
	min-height: 42px;
	padding: 0 22px;
}

/* 12. FEATURE ICONS ROW -------------------------------------------------- */
.kidly-features {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(4, 1fr);
}
.kidly-feature {
	background: var(--kidly-surface);
	border-radius: var(--kidly-radius);
	padding: 26px 24px;
}
.kidly-feature__icon {
	display: block;
	height: 26px;
	margin-bottom: 16px;
	width: 26px;
}
.kidly-feature h4 {
	font-family: var(--kidly-font-body);
	font-size: 15px;
	font-weight: 600;
	margin-bottom: 4px;
}
.kidly-feature p { color: var(--kidly-muted); font-size: 13px; margin: 0; }

/* 13. FOOTER ------------------------------------------------------------- */
.kidly-theme #footer {
	background-color: var(--kidly-dark);
	border-top-left-radius: var(--kidly-radius-lg);
	border-top-right-radius: var(--kidly-radius-lg);
	color: rgba(255, 255, 255, .72);
	margin-top: 40px;
	overflow: hidden;
}
.kidly-theme #footer .footer-widgets { border-bottom: 0; padding: 56px 0 28px; }
.kidly-theme #footer a { color: rgba(255, 255, 255, .72); }
.kidly-theme #footer a:hover { color: #fff; }

.kidly-theme #footer .widget-title {
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .02em;
	margin-bottom: 16px;
	text-transform: none;
}
.kidly-theme #footer ul { list-style: none; margin: 0; }
.kidly-theme #footer ul li { border: 0 !important; padding: 0 0 9px; }
.kidly-theme #footer ul li a { font-size: 13px; }

.kidly-theme #footer .absolute-footer {
	border-top: 1px solid var(--kidly-dark-line);
	color: rgba(255, 255, 255, .45);
	font-size: 12px;
	padding: 18px 0;
}

/* Cột mô tả thương hiệu ở footer */
.kidly-footer-brand p {
	color: rgba(255, 255, 255, .68);
	font-size: 13px;
	max-width: 280px;
}
.kidly-footer-pills { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.kidly-footer-pills span {
	background: var(--kidly-pink);
	border-radius: var(--kidly-radius-pill);
	color: var(--kidly-ink);
	font-size: 12px;
	font-weight: 500;
	padding: 7px 16px;
}

/* Hàng icon thanh toán */
.kidly-payments { display: flex; flex-wrap: wrap; gap: 6px; }
.kidly-payments img {
	background: #fff;
	border-radius: 5px;
	height: 24px;
	padding: 2px 4px;
	width: auto;
}

/* Icon mạng xã hội */
.kidly-theme #footer .social-icons .button.icon {
	border-color: var(--kidly-dark-line);
	color: #fff;
}

/* 14. PRODUCT CARD (SHOP LOOP) ------------------------------------------ */
.kidly-theme .product-small .box-image {
	background: var(--kidly-panel);
	border-radius: var(--kidly-radius);
	overflow: hidden;
}
.kidly-theme .product-small .box-image img {
	mix-blend-mode: multiply; /* ảnh nền trắng hoà vào nền be */
	transition: transform .7s var(--kidly-ease);
}
.kidly-theme .product-small:hover .box-image img { transform: scale(1.04); }

.kidly-theme .product-small .box-text {
	padding: 14px 2px 0;
	text-align: left;
}

/* Nhãn danh mục nhỏ phía trên tên sản phẩm */
.kidly-theme .kidly-loop-cat {
	color: var(--kidly-muted);
	display: block;
	font-size: 10.5px;
	letter-spacing: .12em;
	margin-bottom: 6px;
	text-transform: uppercase;
}

.kidly-theme .product-small .product-title {
	font-size: 14.5px;
	font-weight: 500;
	line-height: 1.42;
	margin-bottom: 4px;
}
.kidly-theme .product-small .product-title a { color: var(--kidly-ink); }

.kidly-theme .product-small .price {
	color: var(--kidly-ink-soft);
	font-size: 13.5px;
	font-weight: 500;
}
.kidly-theme .product-small .price del { color: var(--kidly-muted); font-weight: 400; margin-right: 6px; }
.kidly-theme .product-small .price ins { text-decoration: none; }

/* "Từ …" trước giá của sản phẩm biến thể */
.kidly-theme .kidly-price-from { color: var(--kidly-muted); font-weight: 400; }

/* Sao đánh giá */
.kidly-theme .star-rating span:before,
.kidly-theme .star-rating:before { color: var(--kidly-star); }
.kidly-theme .product-small .star-rating { font-size: 12px; margin-top: 6px; }

/* Badge Bán chạy / Mới */
.kidly-theme .product-small .badge-container { margin: 12px 0 0 12px; }
.kidly-theme .product-small .badge {
	height: auto;
	width: auto;
}
.kidly-theme .product-small .badge-inner {
	background: var(--kidly-pink-soft) !important;
	border-radius: var(--kidly-radius-pill);
	color: var(--kidly-pink-ink) !important;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: .08em;
	line-height: 1;
	padding: 7px 12px;
	text-transform: uppercase;
}
.kidly-theme .product-small .badge.on-sale .badge-inner {
	background: var(--kidly-coral) !important;
	color: #fff !important;
}

/* Ẩn nút "Thêm vào giỏ" trong lưới cho gọn (bật lại nếu cần) */
.kidly-theme .product-small .add-to-cart-button { display: none; }

/* 15. CATEGORY / SHOP PAGE ---------------------------------------------- */

/* Banner đầu trang danh mục */
.kidly-cat-hero {
	border-radius: var(--kidly-radius);
	margin-bottom: 26px;
	overflow: hidden;
	position: relative;
}
.kidly-cat-hero__inner {
	left: 6%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.kidly-cat-hero h1 {
	font-size: clamp(30px, 3.6vw, 50px);
	margin-bottom: 6px;
}
.kidly-cat-hero p { color: var(--kidly-ink-soft); font-size: 14px; margin: 0; }

/* Breadcrumb */
.kidly-theme .shop-page-title .is-larger,
.kidly-theme .woocommerce-breadcrumb {
	color: var(--kidly-muted);
	font-size: 12px;
	letter-spacing: .04em;
}

/* Hàng chip lọc nhanh */
.kidly-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 26px;
}
.kidly-chips a {
	background: transparent;
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius-pill);
	color: var(--kidly-ink-soft);
	display: inline-block;
	font-size: 13px;
	padding: 8px 18px;
	transition: all .22s var(--kidly-ease);
	white-space: nowrap;
}
.kidly-chips a:hover { border-color: var(--kidly-ink); color: var(--kidly-ink); }
.kidly-chips a.is-active {
	background: var(--kidly-ink);
	border-color: var(--kidly-ink);
	color: #fff;
}

/* Sidebar lọc */
.kidly-theme .shop-sidebar .widget { border: 0; margin-bottom: 26px; padding-bottom: 0; }
.kidly-theme .shop-sidebar .widget-title {
	color: var(--kidly-ink);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0;
	text-transform: none;
}
.kidly-theme .shop-sidebar ul li { border: 0; font-size: 13.5px; padding: 4px 0; }
.kidly-theme .shop-sidebar ul li a { color: var(--kidly-ink-soft); }

/* Thanh công cụ (số sản phẩm + sắp xếp) */
.kidly-shop-toolbar {
	align-items: center;
	border-bottom: 1px solid var(--kidly-line);
	display: flex;
	justify-content: space-between;
	margin-bottom: 24px;
	padding-bottom: 14px;
}
.kidly-shop-toolbar .woocommerce-result-count {
	color: var(--kidly-muted);
	font-size: 13px;
	margin: 0;
}
.kidly-theme .woocommerce-ordering select {
	background-color: transparent;
	border: 0;
	box-shadow: none;
	font-size: 13px;
	height: auto;
	padding-right: 20px;
}

/* Phân trang dạng tròn */
.kidly-theme .page-numbers li > a,
.kidly-theme .page-numbers li > span {
	border: 1px solid var(--kidly-line);
	border-radius: 50%;
	font-size: 13px;
	height: 38px;
	line-height: 36px;
	min-width: 38px;
	padding: 0;
	width: 38px;
}
.kidly-theme .page-numbers li > .current {
	background: var(--kidly-ink);
	border-color: var(--kidly-ink);
	color: #fff;
}

/* 16. SINGLE PRODUCT PAGE ----------------------------------------------- */
.kidly-single-product .product-main { padding: 34px 0 50px; }

/* Ảnh sản phẩm nền be, bo góc */
.kidly-single-product .product-gallery .woocommerce-product-gallery__image,
.kidly-single-product .product-images {
	background: var(--kidly-panel);
	border-radius: var(--kidly-radius);
	overflow: hidden;
}
.kidly-single-product .product-images img { mix-blend-mode: multiply; }

/* Thumbnail dọc bên trái */
.kidly-single-product .product-thumbnails a {
	border: 1px solid transparent;
	border-radius: var(--kidly-radius-sm);
	overflow: hidden;
}
.kidly-single-product .product-thumbnails .is-nav-selected a { border-color: var(--kidly-ink); }

/* Cột thông tin */
.kidly-single-product .product-info { padding-left: 30px; }

.kidly-single-product .product-title {
	font-family: var(--kidly-font-head);
	font-size: clamp(24px, 2.4vw, 34px);
	font-weight: 400;
	letter-spacing: -.015em;
	margin-bottom: 10px;
}

/* Nhãn thương hiệu (Mideer…) */
.kidly-brand-pill {
	background: var(--kidly-pink-soft);
	border-radius: var(--kidly-radius-pill);
	color: var(--kidly-pink-ink);
	display: inline-block;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
	margin-bottom: 12px;
	padding: 6px 14px;
	text-transform: uppercase;
}

/* Dòng đánh giá */
.kidly-single-product .woocommerce-product-rating {
	align-items: center;
	display: flex;
	gap: 10px;
	margin-bottom: 16px;
}
.kidly-single-product .woocommerce-product-rating .woocommerce-review-link {
	color: var(--kidly-muted);
	font-size: 13px;
}

.kidly-single-product .product-info .price {
	color: var(--kidly-ink);
	font-size: 22px;
	font-weight: 500;
	margin-bottom: 22px;
}
.kidly-single-product .product-info .price del { color: var(--kidly-muted); font-size: 16px; }

/* Nhóm biến thể dạng nút pill */
.kidly-single-product .variations { border: 0; margin-bottom: 8px; }
.kidly-single-product .variations td,
.kidly-single-product .variations th { border: 0; display: block; padding: 0; width: 100%; }
.kidly-single-product .variations .label {
	color: var(--kidly-muted);
	font-size: 12px;
	letter-spacing: .04em;
	margin-bottom: 8px;
	text-transform: none;
}
.kidly-single-product .variations .label label {
	color: var(--kidly-muted);
	font-weight: 500;
}
.kidly-single-product .variations .value { margin-bottom: 18px; }

/* Swatch của Flatsome */
.kidly-single-product .ux-swatches { gap: 8px; }
.kidly-single-product .ux-swatch {
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius-pill);
	font-size: 13px;
	min-height: 44px;
	min-width: 74px;
	padding: 0 18px;
	transition: all .2s var(--kidly-ease);
}
.kidly-single-product .ux-swatch:hover { border-color: var(--kidly-ink); }
.kidly-single-product .ux-swatch.selected,
.kidly-single-product .ux-swatch--selected {
	border-color: var(--kidly-ink);
	border-width: 1.5px;
	box-shadow: none;
}
.kidly-single-product .ux-swatch--image { border-radius: var(--kidly-radius-sm); min-width: 0; padding: 0; }

/* Fallback khi dùng dropdown mặc định */
.kidly-single-product .variations select {
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius-pill);
	box-shadow: none;
	height: 46px;
	padding: 0 18px;
}

/* Link bảng size */
.kidly-size-guide {
	color: var(--kidly-muted);
	float: right;
	font-size: 11px;
	letter-spacing: .08em;
	text-decoration: underline;
	text-transform: uppercase;
}

/* Hàng số lượng + nút thêm vào giỏ */
.kidly-single-product .cart {
	align-items: center;
	display: flex;
	gap: 12px;
	margin-bottom: 18px;
}
.kidly-single-product .quantity {
	align-items: center;
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius-pill);
	display: flex;
	flex: 0 0 auto;
	height: 54px;
	overflow: hidden;
	padding: 0 6px;
	width: 118px;
}
.kidly-single-product .quantity .minus,
.kidly-single-product .quantity .plus {
	background: transparent !important;
	border: 0 !important;
	color: var(--kidly-ink) !important;
	font-size: 17px;
	height: 40px;
	min-height: 40px;
	padding: 0;
	width: 34px;
}
.kidly-single-product .quantity input.qty {
	background: transparent;
	border: 0;
	box-shadow: none;
	font-size: 15px;
	height: 40px;
	text-align: center;
	width: 40px;
}

.kidly-single-product .single_add_to_cart_button {
	border-radius: var(--kidly-radius-pill);
	flex: 1 1 auto;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .02em;
	min-height: 54px;
	text-transform: uppercase;
	width: auto;
}

/* Dòng trả góp */
.kidly-installment {
	color: var(--kidly-muted);
	font-size: 12.5px;
	margin-bottom: 24px;
}

/* Lưới 6 icon đặc điểm */
.kidly-usp {
	display: grid;
	gap: 16px 20px;
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 22px;
}
.kidly-usp__item {
	align-items: flex-start;
	display: flex;
	font-size: 12px;
	gap: 9px;
	line-height: 1.35;
}
.kidly-usp__item img,
.kidly-usp__item svg { flex: 0 0 auto; height: 20px; width: 20px; }

/* Hộp 3 cam kết */
.kidly-trust {
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius);
	display: grid;
	gap: 0;
	grid-template-columns: repeat(3, 1fr);
	margin-bottom: 26px;
	overflow: hidden;
}
.kidly-trust__item {
	align-items: center;
	border-right: 1px solid var(--kidly-line);
	display: flex;
	font-size: 11.5px;
	gap: 9px;
	line-height: 1.35;
	padding: 16px 14px;
}
.kidly-trust__item:last-child { border-right: 0; }
.kidly-trust__item img,
.kidly-trust__item svg { flex: 0 0 auto; height: 20px; width: 20px; }

/* 17. ACCORDION MÔ TẢ ---------------------------------------------------- */
.kidly-acc { border-top: 1px solid var(--kidly-line); }
.kidly-acc__item { border-bottom: 1px solid var(--kidly-line); }

.kidly-acc__head {
	align-items: center;
	background: none;
	border: 0;
	cursor: pointer;
	display: flex;
	font-family: var(--kidly-font-body);
	font-size: 14px;
	font-weight: 600;
	justify-content: space-between;
	min-height: 0;
	padding: 18px 0;
	text-align: left;
	width: 100%;
}
.kidly-acc__head:hover { background: none; transform: none; }

.kidly-acc__icon {
	flex: 0 0 auto;
	height: 12px;
	position: relative;
	width: 12px;
}
.kidly-acc__icon::before,
.kidly-acc__icon::after {
	background: var(--kidly-ink);
	content: '';
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: transform .3s var(--kidly-ease), opacity .3s var(--kidly-ease);
}
.kidly-acc__icon::before { height: 1.5px; width: 12px; }
.kidly-acc__icon::after  { height: 12px; width: 1.5px; }
.kidly-acc__item.is-open .kidly-acc__icon::after { opacity: 0; transform: translate(-50%, -50%) rotate(90deg); }

.kidly-acc__body {
	color: var(--kidly-ink-soft);
	display: none;
	font-size: 13.5px;
	line-height: 1.75;
	padding: 0 0 20px;
}
.kidly-acc__item.is-open .kidly-acc__body { display: block; }
.kidly-acc__body ul { list-style: none; margin: 0; }
.kidly-acc__body ul li { padding-left: 14px; position: relative; }
.kidly-acc__body ul li::before {
	content: '\2022';
	left: 0;
	position: absolute;
}
.kidly-acc__body h4 {
	font-family: var(--kidly-font-body);
	font-size: 13px;
	font-weight: 600;
	margin: 14px 0 4px;
}

/* 18. REVIEWS SECTION ---------------------------------------------------- */
.kidly-reviews { background: var(--kidly-bg); padding: 60px 0; }

.kidly-reviews__summary {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.kidly-reviews__score {
	font-family: var(--kidly-font-head);
	font-size: 54px;
	line-height: 1;
}
.kidly-reviews__count { color: var(--kidly-muted); font-size: 12px; }
.kidly-reviews__recommend { color: var(--kidly-ink-soft); font-size: 13px; }

.kidly-review-card {
	background: var(--kidly-surface);
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius);
	font-size: 13px;
	height: 100%;
	padding: 18px;
}
.kidly-review-card__top {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 12px;
}
.kidly-review-card__author { font-size: 13px; font-weight: 600; }
.kidly-review-card__verified { color: var(--kidly-muted); font-size: 11px; }
.kidly-review-card__product {
	align-items: center;
	display: flex;
	gap: 10px;
	margin-bottom: 12px;
}
.kidly-review-card__product img {
	background: var(--kidly-panel);
	border-radius: 8px;
	height: 40px;
	object-fit: cover;
	width: 40px;
}
.kidly-review-card__product span { color: var(--kidly-muted); font-size: 11px; }
.kidly-review-card__title { font-size: 13.5px; font-weight: 600; margin: 8px 0 5px; }
.kidly-review-card__text { color: var(--kidly-ink-soft); font-size: 12.5px; line-height: 1.6; }
.kidly-review-card__more { font-size: 12px; text-decoration: underline; }
.kidly-review-card__date { color: var(--kidly-muted); font-size: 11px; }

/* Form viết đánh giá (ẩn/hiện bằng nút) */
.kidly-review-form {
	background: var(--kidly-surface);
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius);
	display: none;
	margin-top: 24px;
	max-width: 620px;
	padding: 26px;
}
.kidly-review-form.is-open { display: block; }
.kidly-review-form .comment-reply-title {
	display: block;
	font-family: var(--kidly-font-head);
	font-size: 22px;
	margin-bottom: 14px;
}
.kidly-review-form textarea,
.kidly-review-form input[type="text"],
.kidly-review-form input[type="email"] {
	background: var(--kidly-bg);
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius-sm);
	box-shadow: none;
	font-size: 14px;
}
.kidly-review-form .comment-form-rating select {
	border: 1px solid var(--kidly-line);
	border-radius: var(--kidly-radius-pill);
	box-shadow: none;
	height: 44px;
	max-width: 220px;
	padding: 0 16px;
}
.kidly-review-form .form-submit input[type="submit"] {
	background: var(--kidly-ink);
	color: #fff;
}

/* 19. STICKY ADD-TO-BAG BAR --------------------------------------------- */
.kidly-sticky-bar {
	background: rgba(255, 255, 255, .96);
	backdrop-filter: saturate(180%) blur(12px);
	border-top: 1px solid var(--kidly-line);
	bottom: 0;
	left: 0;
	opacity: 0;
	padding: 10px 0;
	pointer-events: none;
	position: fixed;
	right: 0;
	transform: translateY(100%);
	transition: transform .35s var(--kidly-ease), opacity .35s var(--kidly-ease);
	z-index: 999;
}
.kidly-sticky-bar.is-visible {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}
.kidly-sticky-bar__inner {
	align-items: center;
	display: flex;
	gap: 24px;
	justify-content: space-between;
	margin: 0 auto;
	max-width: var(--kidly-container);
	padding: 0 20px;
}
.kidly-sticky-bar__nav { display: flex; gap: 26px; }
.kidly-sticky-bar__nav a {
	color: var(--kidly-ink-soft);
	font-size: 13px;
	padding-bottom: 2px;
}
.kidly-sticky-bar__nav a.is-active {
	border-bottom: 1.5px solid var(--kidly-ink);
	color: var(--kidly-ink);
}
.kidly-sticky-bar__price { color: var(--kidly-ink-soft); font-size: 13px; margin-left: auto; }
.kidly-sticky-bar__price strong { color: var(--kidly-ink); font-weight: 600; }
.kidly-sticky-bar__btn {
	background: var(--kidly-ink);
	border-radius: var(--kidly-radius-pill);
	color: #fff !important;
	font-size: 13px;
	font-weight: 500;
	min-height: 46px;
	padding: 0 30px;
}

/* 20. FLOATING BADGES ---------------------------------------------------- */
.kidly-float-badge {
	background: #fff;
	border-radius: 10px;
	bottom: 78px;
	box-shadow: var(--kidly-shadow-lg);
	font-size: 11px;
	left: 18px;
	padding: 10px 14px;
	position: fixed;
	text-align: center;
	z-index: 90;
}
.kidly-float-badge strong { display: block; font-size: 15px; font-weight: 600; }
.kidly-float-badge .kidly-float-badge__stars { color: var(--kidly-star); font-size: 11px; }

.kidly-float-cta {
	background: var(--kidly-pink);
	border-radius: var(--kidly-radius-pill);
	bottom: 22px;
	box-shadow: var(--kidly-shadow-lg);
	color: var(--kidly-ink) !important;
	font-size: 12.5px;
	font-weight: 500;
	left: 18px;
	padding: 10px 20px;
	position: fixed;
	z-index: 90;
}

/* 21. RESPONSIVE --------------------------------------------------------- */
@media (max-width: 1024px) {
	.kidly-features { grid-template-columns: repeat(2, 1fr); }
	.kidly-single-product .product-info { padding-left: 0; padding-top: 26px; }
	.kidly-tech { min-height: 340px; }
}

@media (max-width: 849px) {
	.kidly-theme .section.kidly-section { padding-bottom: 48px; padding-top: 48px; }

	.kidly-section-head { align-items: flex-start; flex-direction: column; gap: 14px; }
	.kidly-section-head .kidly-link-arrow { margin-left: 0; }

	/* Thẻ công nghệ xếp dọc trên mobile */
	.kidly-tech { flex-direction: column; min-height: 0; }
	.kidly-tech__item { flex: none; height: 200px; }
	.kidly-tech__item.is-active { flex: none; }

	.kidly-press { gap: 16px 24px; justify-content: center; padding: 20px; }
	.kidly-press img { max-height: 20px; }

	.kidly-usp { grid-template-columns: repeat(2, 1fr); }
	.kidly-trust { grid-template-columns: 1fr; }
	.kidly-trust__item { border-bottom: 1px solid var(--kidly-line); border-right: 0; }
	.kidly-trust__item:last-child { border-bottom: 0; }

	.kidly-reviews__summary { flex-direction: column; gap: 12px; }

	.kidly-story__caption { left: 20px; right: 20px; }

	/* Thanh sticky trên mobile: bỏ menu, giữ giá + nút */
	.kidly-sticky-bar__nav { display: none; }
	.kidly-sticky-bar__inner { gap: 12px; padding: 0 14px; }
	.kidly-sticky-bar__price { font-size: 12px; }
	.kidly-sticky-bar__btn { padding: 0 20px; }

	.kidly-float-badge { display: none; }
	.kidly-float-cta { bottom: 84px; }

	.kidly-cat-hero h1 { font-size: 28px; }
	.kidly-features { grid-template-columns: 1fr; }
}

@media (max-width: 549px) {
	.kidly-theme .product-small .box-text { padding-top: 10px; }
	.kidly-theme .product-small .product-title { font-size: 13.5px; }
	.kidly-newsletter .kidly-form { max-width: 100%; }
}