/**
 * LSKJ 电商页样式（商店/产品/购物车/结算/我的账户）。
 * 商店与产品详情按 hk.arlo.com/en collections/products 1:1；
 * 购物车/结算/我的账户为「视觉统一」（Arlo 令牌 + 卡片化，不动 WC 流程结构）。
 */

/* ---------- 页面标题条（购物车/结算/我的账户共用） ---------- */
.prd-hero {
	background: #f4f9fd;
	padding: 48px 20px;
	text-align: center;
	border-bottom: 1px solid var(--arlo-line);
}

.prd-hero__title {
	margin: 0;
	font-size: clamp(28px, 5vw, 40px);
	font-weight: 500;
	color: var(--arlo-ink);
	letter-spacing: -0.01em;
}

/* 商店 hero（横幅图 + 黑遮罩 + 白字） */
.prd-hero--shop {
	position: relative;
	overflow: hidden;
	background: #000;
	border-bottom: 0;
	padding: 0;
	aspect-ratio: 13 / 12;
}

.prd-hero--shop .prd-hero__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.prd-hero--shop .prd-hero__img--desktop { display: none; }

.prd-hero--shop .prd-hero__overlay {
	position: absolute;
	inset: 0;
	background: #000;
	opacity: 0.55;
}

.prd-hero--shop .prd-hero__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 100%;
	padding: 40px 30px;
	text-align: center;
	color: #fff;
}

.prd-hero--shop .prd-hero__title {
	color: #fff;
	font-size: 34px;
	line-height: 1.15;
}

.prd-hero--shop .prd-hero__sub {
	max-width: 560px;
	margin: 0;
	font-size: 16px;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.9);
}

/* ---------- 商店工具栏 ---------- */
.prd-shop {
	max-width: 1240px;
	margin: 0 auto;
	padding: 40px 30px 90px;
}

.prd-shop__toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 32px;
}

.prd-shop .woocommerce-result-count {
	margin: 0;
	color: var(--arlo-muted);
	font-size: 14px;
}

/* 排序下拉（Arlo 药丸样式） */
.prd-shop .woocommerce-ordering { margin: 0; }
.prd-shop .woocommerce-ordering select {
	appearance: none;
	-webkit-appearance: none;
	width: 200px;
	padding: 9px 34px 9px 18px;
	border: 1px solid #dbdbdb;
	border-radius: 999px;
	background: #fff;
	font-size: 14px;
	color: var(--arlo-navy);
	cursor: pointer;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 5"><path d="M1 .5 5 4.5 9 .5" fill="none" stroke="%2307293e" stroke-width="1.2"/></svg>');
	background-repeat: no-repeat;
	background-position: right 16px center;
}

/* ---------- 产品网格（对齐集合页：2/3/4 列，行距大） ---------- */
.prd-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 16px;
	list-style: none;
	margin: 0 0 40px;
	padding: 0;
}

.prd-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.prd-card__thumb {
	display: block;
	position: relative;
	aspect-ratio: 1 / 1;
	border-radius: 12px;
	overflow: hidden;
	background: rgba(216, 219, 224, 0.5);
}

.prd-card__thumb .prd-card__img,
.prd-card__noimg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	transition: transform 0.5s ease;
}

.prd-card__thumb:hover .prd-card__img {
	transform: scale(1.04);
}

.prd-card__body {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 16px 2px 0;
	flex: 1;
}

.prd-card__title {
	margin: 0;
	font-size: 15px;
	line-height: 1.4;
	font-weight: 500;
	letter-spacing: -0.01em;
}

.prd-card__title a {
	color: var(--arlo-ink);
	text-decoration: none;
	transition: color 0.2s;
}

.prd-card__title a:hover {
	color: var(--arlo-blue-bright);
	text-decoration: underline;
	text-underline-offset: 4px;
}

.prd-card__type {
	font-size: 12px;
	line-height: 1.4;
	color: var(--arlo-muted);
}

.prd-card__price {
	font-size: 15px;
	font-weight: 600;
	color: var(--arlo-navy);
}

.prd-card__price .amount { color: inherit; }
.prd-card__price del { color: var(--arlo-muted); font-weight: 400; }
.prd-card__price ins { text-decoration: none; }

.prd-card__desc {
	font-size: 13px;
	line-height: 1.5;
	color: var(--arlo-muted);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 3em; /* 两行高，保证同排卡片底边对齐 */
}

.prd-shop__empty {
	padding: 60px 20px;
	text-align: center;
	color: var(--arlo-muted);
}

/* 分页（共用 main.css 药丸分页） */
.prd-shop .woocommerce-pagination { margin: 0; text-align: center; }
.prd-shop .woocommerce-pagination ul.page-numbers {
	display: flex;
	justify-content: center;
	gap: 8px;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	list-style: none;
}
.prd-shop .woocommerce-pagination ul.page-numbers li { border: 0; }
.prd-shop .woocommerce-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	height: 38px;
	padding: 0 12px;
	border: 1px solid var(--arlo-line);
	border-radius: 999px;
	color: var(--arlo-navy);
	font-size: 14px;
	text-decoration: none;
	transition: border-color 0.2s, background-color 0.2s;
}
.prd-shop .woocommerce-pagination .page-numbers:hover { border-color: var(--arlo-blue); }
.prd-shop .woocommerce-pagination .page-numbers.current {
	background: var(--arlo-blue);
	border-color: var(--arlo-blue);
	color: #fff;
}

/* ---------- 数量步进器 ---------- */
.prd-qty {
	display: inline-flex;
	align-items: center;
	border: 1px solid #dbdbdb;
	border-radius: 999px;
	background: #fff;
	overflow: hidden;
}

.prd-qty-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 44px;
	border: 0;
	background: transparent;
	color: var(--arlo-navy);
	cursor: pointer;
	transition: background-color 0.2s;
}

.prd-qty-btn:hover { background: rgba(9, 71, 140, 0.08); color: var(--arlo-blue); }

.prd-qty-input {
	width: 52px;
	height: 44px;
	border: 0;
	text-align: center;
	font-size: 15px;
	color: var(--arlo-navy);
	background: transparent;
	-moz-appearance: textfield;
	appearance: textfield;
}

.prd-qty-input::-webkit-outer-spin-button,
.prd-qty-input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* 加购按钮（Arlo 药丸：深蓝 #1b5a8f 圆角 27.5px） */
.prd-single .single_add_to_cart_button,
.prd-single button.single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 200px;
	height: 48px;
	padding: 0 28px;
	border: 0;
	border-radius: 27.5px;
	background: #1b5a8f;
	color: #fff;
	font-size: 16px;
	font-weight: 400;
	cursor: pointer;
	transition: background-color 0.3s;
}

.prd-single .single_add_to_cart_button:hover { background: #1b5a8f; color: #fff; }

/* ---------- 产品详情页（对齐目标站 PDP：58/42 主壳 + 图廊 + 购买区 + 营销区块） ---------- */
.prd-single {
	max-width: 1240px;
	margin: 0 auto;
	padding: 40px 30px 0;
}

.prd-single__main {
	display: grid;
	grid-template-columns: 1fr;
	gap: 32px;
	align-items: start;
}

/* ===== 图廊 ===== */
.ppd-gallery__main,
.ppd-gallery__swiper { width: 100%; max-width: 100%; }
.ppd-gallery__swiper .swiper-wrapper { min-width: 0; }
.ppd-gallery__swiper .swiper-slide { flex: 0 0 100%; width: 100%; max-width: 100%; min-width: 0; }
.prd-single__gallery,
.prd-single__main { min-width: 0; }

.ppd-gallery__main {
	position: relative;
	border-radius: 14px;
	overflow: hidden;
	background: #f5f6f7;
}

.ppd-gallery__slide {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: #f5f6f7;
}

.ppd-gallery__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ppd-gallery__zoom {
	position: absolute;
	right: 14px;
	bottom: 14px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.92);
	color: var(--arlo-navy);
	box-shadow: 0 1px 6px rgba(7, 41, 62, 0.18);
	cursor: zoom-in;
	transition: transform 0.2s, background 0.2s;
}

.ppd-gallery__zoom:hover { transform: scale(1.06); background: #fff; }

.ppd-gallery__slide--video video {
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: #000;
}

.ppd-gallery__play {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border: 0;
	border-radius: 50%;
	background: rgba(9, 71, 140, 0.85);
	cursor: pointer;
	transition: transform 0.2s, background 0.2s;
}

.ppd-gallery__play:hover { transform: translate(-50%, -50%) scale(1.08); background: var(--arlo-blue); }

.ppd-gallery__thumbs { margin-top: 12px; }
.ppd-gallery__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	margin-right: 10px;
	border-radius: 6px;
	overflow: hidden;
	background: #f1f2f3;
	cursor: pointer;
	opacity: 0.6;
	transition: opacity 0.2s, box-shadow 0.2s;
}

.ppd-gallery__thumb img { width: 100%; height: 100%; object-fit: cover; }
.ppd-gallery__thumb--video { color: var(--arlo-navy); }
.ppd-gallery__thumb.is-active { opacity: 1; box-shadow: 0 0 0 2px var(--arlo-blue); }

/* zoom 灯箱 */
.ppd-zoom {
	position: fixed;
	inset: 0;
	z-index: 500;
	background: rgba(7, 41, 62, 0.92);
	display: flex;
	align-items: center;
	justify-content: center;
}

.ppd-zoom[hidden] { display: none; }

.ppd-zoom__close {
	position: absolute;
	top: 18px;
	right: 24px;
	width: 44px;
	height: 44px;
	border: 1px solid rgba(255, 255, 255, 0.4);
	border-radius: 50%;
	background: transparent;
	color: #fff;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

.ppd-zoom__stage { max-width: min(1200px, 92vw); }
.ppd-zoom__stage img { display: block; max-width: 100%; max-height: 88vh; object-fit: contain; }

/* ===== 购买区 ===== */
.prd-single__summary { display: flex; flex-direction: column; align-items: stretch; }

.ppd-info { display: flex; flex-direction: column; gap: 12px; }

.ppd-breadcrumb { font-size: 13px; color: var(--arlo-muted); }
.ppd-breadcrumb a { color: var(--arlo-muted); text-decoration: none; }
.ppd-breadcrumb a:hover { color: var(--arlo-blue); }

.ppd-info__title {
	margin: 0;
	font-size: clamp(26px, 4vw, 34px);
	line-height: 1.2;
	font-weight: 500;
	color: var(--arlo-ink);
	letter-spacing: -0.01em;
}

.ppd-info__type { margin: 0; font-size: 15px; color: var(--arlo-muted); }
.ppd-info__sku { margin: 0; font-size: 13px; color: var(--arlo-muted); }

.ppd-price { display: flex; flex-direction: column; gap: 2px; margin-top: 4px; }
.ppd-price__label { font-size: 12px; color: var(--arlo-muted); }
.ppd-price__value { font-size: 26px; font-weight: 600; color: var(--arlo-blue); }
.ppd-price__value del { color: var(--arlo-muted); font-weight: 400; margin-right: 8px; }
.ppd-price__value ins { text-decoration: none; }

.ppd-overview { margin-top: 6px; }
.ppd-overview__lead { margin: 0 0 10px; font-size: 16px; line-height: 1.7; color: #2b2f33; }

.ppd-overview__bullets {
	display: grid;
	grid-template-columns: 1fr;
	gap: 8px;
	margin: 0 0 6px;
	padding: 0;
	list-style: none;
	overflow: hidden;
	max-height: 0;
	opacity: 0;
	transition: max-height 0.35s ease, opacity 0.3s ease;
}

.ppd-overview.is-open .ppd-overview__bullets { max-height: 220px; opacity: 1; }

.ppd-overview__bullets li {
	position: relative;
	padding-left: 22px;
	font-size: 14px;
	line-height: 1.6;
	color: var(--arlo-navy);
}

.ppd-overview__bullets li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: 8px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--arlo-blue-bright);
}

.ppd-overview__more {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 0;
	background: none;
	padding: 4px 0;
	font-size: 14px;
	font-weight: 600;
	color: var(--arlo-blue);
	cursor: pointer;
}

.ppd-overview__more svg { transition: transform 0.2s; }
.ppd-overview.is-open .ppd-overview__more svg { transform: rotate(180deg); }

.ppd-links { display: flex; gap: 18px; align-items: center; margin-top: 4px; flex-wrap: wrap; }
.ppd-links__watch {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 0;
	background: none;
	padding: 0;
	font-size: 14px;
	font-weight: 600;
	color: var(--arlo-blue);
	cursor: pointer;
}
.ppd-links__compare {
	font-size: 14px;
	font-weight: 600;
	color: var(--arlo-navy);
	text-decoration: underline;
	text-underline-offset: 3px;
}
.ppd-links__compare:hover { color: var(--arlo-blue); }

/* 变体选择器（Colour swatch + Quantity 价格卡） */
.ppd-var { border: 0; margin: 8px 0 0; padding: 0; }
.ppd-var__legend {
	display: flex;
	align-items: baseline;
	gap: 8px;
	padding: 0;
	margin-bottom: 10px;
	font-size: 16px;
	font-weight: 500;
	color: var(--arlo-navy);
}
.ppd-var__legend em { font-style: normal; font-size: 13px; color: var(--arlo-muted); font-weight: 400; }
.ppd-var__opts { display: flex; flex-wrap: wrap; gap: 10px; }

.ppd-sw { position: relative; display: inline-flex; align-items: center; gap: 8px; cursor: pointer; }
.ppd-sw input { position: absolute; opacity: 0; pointer-events: none; }
.ppd-sw__dot {
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: var(--sw, #fff);
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.12);
	transition: box-shadow 0.2s;
}
.ppd-sw input:checked + .ppd-sw__dot { box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--arlo-blue); }
.ppd-sw__label { font-size: 14px; color: var(--arlo-navy); }

.ppd-qty { position: relative; display: flex; flex-direction: column; gap: 2px; padding: 12px 16px; border: 2px solid var(--arlo-line); border-radius: 10px; cursor: pointer; transition: border-color 0.2s, background 0.2s; }
.ppd-qty input { position: absolute; opacity: 0; pointer-events: none; }
.ppd-qty.is-active,
.ppd-qty input:checked ~ * { border-color: var(--arlo-blue); background: var(--arlo-card); }
.ppd-qty__label { font-size: 15px; font-weight: 500; color: var(--arlo-navy); }
.ppd-qty__price { font-size: 14px; font-weight: 600; color: var(--arlo-blue); }

.lskj-add {
	align-self: flex-start;
	min-width: 220px;
	min-height: 48px;
	border: 0;
	border-radius: 27.5px;
	padding: 12px 30px;
	font-size: 16px;
	font-weight: 400;
	cursor: pointer;
	background: #1b5a8f;
	color: #fff;
	transition: background-color 0.3s;
	margin-top: 16px;
}

.lskj-add:hover { background: #1b5a8f; color: #fff; }

/* 简单商品加购（门铃/配件） */
.prd-single .single_add_to_cart_button,
.prd-single button.single_add_to_cart_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 200px;
	height: 48px;
	padding: 0 28px;
	border: 0;
	border-radius: 27.5px;
	background: #1b5a8f;
	color: #fff;
	font-size: 16px;
	font-weight: 400;
	cursor: pointer;
	transition: background-color 0.3s;
}

.prd-single .single_add_to_cart_button:hover { background: #1b5a8f; color: #fff; }

.ppd-simple form.cart {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
	margin-top: 8px;
}

/* ===== 通用手风琴（规格/盒内/FAQ） ===== */
.acc { border-top: 1px solid var(--arlo-line); }
.acc:last-child { border-bottom: 1px solid var(--arlo-line); }
.acc[open] .acc__icon::after { transform: rotate(45deg); }
.acc__head {
	position: relative;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 18px 40px 18px 4px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--arlo-navy);
	cursor: pointer;
}
.acc__head::-webkit-details-marker { display: none; }
.acc__icon {
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%);
	width: 22px;
	height: 22px;
}
.acc__icon::before,
.acc__icon::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background: var(--arlo-blue);
	transition: transform 0.2s;
}
.acc__icon::before { width: 14px; height: 2px; }
.acc__icon::after { width: 2px; height: 14px; }
.acc__body { padding: 0 4px 24px; }

/* ===== 卖点 3 卡 ===== */
.ppd-feat { padding: 70px 0 40px; }
.ppd-feat__heading { margin: 0 0 34px; font-size: clamp(24px, 3vw, 30px); font-weight: 500; text-align: center; color: var(--arlo-navy); }
.ppd-feat__grid { display: grid; grid-template-columns: 1fr; gap: 26px; }
.ppd-feat__card { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 26px 20px; }
.ppd-feat__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	border-radius: 18px;
	background: var(--arlo-card);
	color: var(--arlo-blue);
	margin-bottom: 16px;
}
.ppd-feat__title { margin: 0 0 8px; font-size: 17px; font-weight: 500; color: var(--arlo-ink); }
.ppd-feat__text { margin: 0; max-width: 300px; font-size: 14px; line-height: 1.7; color: var(--arlo-muted); }

/* ===== 50/50 图文块 ===== */
.ppd-splits { background: #fff; }
.ppd-split { padding: 46px 0; }
.ppd-split:nth-child(even) { background: #f6f9fc; }
.ppd-split__inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
	align-items: center;
}
.ppd-split__media { border-radius: 16px; overflow: hidden; background: #f1f3f5; }
.ppd-split__media img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.ppd-split__title { margin: 0 0 12px; font-size: 26px; font-weight: 500; line-height: 1.3; color: var(--arlo-ink); }
.ppd-split__text { margin: 0; font-size: 16px; line-height: 1.8; color: var(--arlo-muted); }

/* ===== Works with ===== */
.ppd-works { padding: 56px 0 66px; }
.ppd-works__title { margin: 0 0 24px; font-size: clamp(22px, 3vw, 28px); font-weight: 500; text-align: center; color: var(--arlo-navy); }
.ppd-works__chips { display: flex; justify-content: center; flex-wrap: wrap; gap: 14px; }
.ppd-works__chip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 14px 30px;
	border: 1px solid var(--arlo-line);
	border-radius: 14px;
	background: #fff;
	font-size: 16px;
	font-weight: 500;
	color: var(--arlo-navy);
}

/* ===== Add Accessories 横幅 ===== */
.ppd-acc {
	position: relative;
	overflow: hidden;
	text-align: center;
	background: #0c4a73;
}
.ppd-acc__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ppd-acc__overlay { position: absolute; inset: 0; background: rgba(7, 41, 62, 0.55); }
.ppd-acc__content {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 14px;
	padding: 80px 20px;
	color: #fff;
}
.ppd-acc__title { margin: 0; font-size: clamp(26px, 4vw, 34px); font-weight: 500; }
.ppd-acc__text { margin: 0; max-width: 520px; font-size: 15px; line-height: 1.7; color: rgba(255, 255, 255, 0.92); }
.ppd-acc__btn { margin-top: 8px; }

/* ===== 规格 / 盒内清单 ===== */
.ppd-specs,
.ppd-box { padding: 64px 0 30px; }
.ppd-specs__title,
.ppd-box__title { margin: 0 0 24px; font-size: clamp(24px, 3vw, 30px); font-weight: 500; text-align: center; color: var(--arlo-navy); }
.ppd-specs__grid { display: grid; grid-template-columns: 1fr; gap: 18px 28px; margin: 0; }
.ppd-specs__item dt { font-size: 13px; font-weight: 600; color: var(--arlo-muted); margin-bottom: 4px; }
.ppd-specs__item dd { margin: 0; font-size: 15px; line-height: 1.6; color: var(--arlo-navy); }
.ppd-box__list { display: grid; grid-template-columns: 1fr; gap: 10px; margin: 0; padding: 0; list-style: none; }
.ppd-box__list li { position: relative; padding-left: 22px; font-size: 15px; color: var(--arlo-navy); }
.ppd-box__list li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: 8px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--arlo-blue-bright);
}

/* ===== FAQ ===== */
.ppd-faq { padding: 30px 0 70px; }
.ppd-faq__title { margin: 0 0 26px; font-size: clamp(24px, 3vw, 30px); font-weight: 500; text-align: center; color: var(--arlo-navy); }
.ppd-faq__list { max-width: 920px; margin-inline: auto; }
.ppd-faq__item .acc__body p { margin: 0; font-size: 15px; line-height: 1.8; color: var(--arlo-muted); }

/* ===== sticky 购买条 ===== */
.ppd-sticky {
	position: fixed;
	left: 0;
	right: 0;
	z-index: 300;
	background: #d1e3f9;
	box-shadow: 0 -2px 12px rgba(7, 41, 62, 0.12);
	transition: transform 0.3s ease, opacity 0.3s ease;
}
.ppd-sticky[hidden] { display: block; opacity: 0; transform: translateY(100%); pointer-events: none; }
.ppd-sticky.is-visible { opacity: 1; transform: translateY(0); }
.ppd-sticky__inner { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding-block: 12px; }
.ppd-sticky__title { font-size: 15px; font-weight: 500; color: var(--arlo-navy); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ppd-sticky__price { font-size: 16px; font-weight: 600; color: var(--arlo-blue); white-space: nowrap; }
.ppd-sticky__add { min-width: 170px; height: 42px; padding: 0 22px; }

/* 锚点滚动偏移（sticky 条遮挡） */
.ppd-specs,
.ppd-box,
.ppd-faq { scroll-margin-top: 90px; }

/* 最近浏览（详情页复用集合页样式） */
.prd-single .prd-recent { padding-top: 30px; }

/* ---------- 响应式 ---------- */
@media (min-width: 768px) {
	.prd-single__main { grid-template-columns: 1fr; gap: 40px; }
	.ppd-gallery__slide { aspect-ratio: 828 / 620; }
	.ppd-overview__bullets { grid-template-columns: 1fr 1fr; }
	.ppd-feat__grid { grid-template-columns: repeat(3, 1fr); }
	.ppd-split__inner { grid-template-columns: 1fr 1fr; gap: 48px; }
	.ppd-split--flip .ppd-split__inner .ppd-split__media { order: 2; }
	.ppd-specs__grid { grid-template-columns: repeat(3, 1fr); }
	.ppd-box__list { grid-template-columns: 1fr 1fr; }
}

@media (min-width: 1024px) {
	.prd-single__main { grid-template-columns: 58% 42%; gap: 48px; }
	.ppd-single-gallery { position: sticky; top: 0; }
}

/* ---------- 通用通知/按钮（购物车/结算共用） ---------- */
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error {
	border-radius: 14px !important;
	background-color: #f4f9fd !important;
	border-top: 0 !important;
	border: 1px solid var(--arlo-line);
	font-size: 14px;
	line-height: 1.6;
	padding: 16px 20px 16px 52px !important;
}

.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before,
.woocommerce .woocommerce-error::before { color: var(--arlo-blue); }

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
	background: var(--arlo-blue) !important;
	color: #fff !important;
	border-radius: 999px !important;
	font-weight: 400;
	padding: 12px 26px !important;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
	background: var(--arlo-blue-deep) !important;
	color: #fff !important;
}

/* ---------- 购物车页 ---------- */
.woocommerce table.shop_table {
	border: 1px solid var(--arlo-line);
	border-radius: 16px;
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	background: #fff;
}

.woocommerce table.shop_table th {
	background: #f4f9fd;
	font-size: 13px;
	letter-spacing: 0.02em;
	color: var(--arlo-navy);
	padding: 14px 16px;
}

.woocommerce table.shop_table td {
	padding: 16px;
	border-top: 1px solid var(--arlo-line);
}

.woocommerce table.shop_table td.product-thumbnail img {
	width: 72px !important;
	height: 72px;
	object-fit: contain;
	border-radius: 10px;
	background: rgba(216, 219, 224, 0.5);
}

.woocommerce table.shop_table td.product-name a { color: var(--arlo-ink); font-weight: 500; text-decoration: none; }
.woocommerce table.shop_table td.product-name a:hover { color: var(--arlo-blue-bright); }

.woocommerce a.remove {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 22px !important;
	height: 22px !important;
	border-radius: 50% !important;
	font-size: 15px !important;
	line-height: 1 !important;
	color: var(--arlo-navy) !important;
	background: #f1f2f3 !important;
	margin: 0 auto;
}

.woocommerce a.remove:hover { background: #d7dbe0 !important; color: var(--arlo-ink) !important; }

.woocommerce-cart .woocommerce-cart-form { margin-bottom: 24px; }

.woocommerce-cart .cart-collaterals .cart_totals {
	border: 1px solid var(--arlo-line);
	border-radius: 16px;
	background: #fff;
	padding: 24px;
	float: none;
	width: auto;
}

.woocommerce-cart .cart-collaterals .cart_totals h2,
.woocommerce-cart .woocommerce-shipping-calculator h2 {
	font-size: 18px;
	font-weight: 500;
	color: var(--arlo-ink);
}

.woocommerce-cart .cart-collaterals .cart_totals table.shop_table { border: 0; }
.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td,
.woocommerce-cart .cart-collaterals .cart_totals table.shop_table th { border-top: 1px solid var(--arlo-line); }

.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a.checkout-button {
	display: block;
	text-align: center;
	background: #1b5a8f !important;
	color: #fff !important;
	border-radius: 27.5px !important;
	font-size: 16px;
	padding: 14px 20px !important;
}

.woocommerce-cart .cart-collaterals .wc-proceed-to-checkout a.checkout-button:hover { color: #fff !important; }

/* ---------- 结算页 ---------- */
.woocommerce-checkout .woocommerce {
	max-width: 1000px;
	margin: 0 auto;
}

.woocommerce-checkout .woocommerce form.checkout {
	border: 1px solid var(--arlo-line);
	border-radius: 16px;
	background: #fff;
	padding: 28px;
}

.woocommerce-checkout .woocommerce form .form-row input.input-text,
.woocommerce-checkout .woocommerce form .form-row select,
.woocommerce-checkout .woocommerce form .form-row textarea,
.woocommerce form .form-row .select2-container .select2-selection {
	border: 1px solid #dbdbdb;
	border-radius: 10px;
	padding: 12px 14px;
	font-size: 14px;
	background: #fff;
	color: var(--arlo-navy);
}

.woocommerce-checkout .woocommerce form .form-row input.input-text:focus,
.woocommerce-checkout .woocommerce form .form-row select:focus,
.woocommerce-checkout .woocommerce form .form-row textarea:focus {
	border-color: var(--arlo-blue);
	box-shadow: 0 0 0 3px rgba(9, 71, 140, 0.1);
	outline: 0;
}

.woocommerce-checkout h3#order_review_heading,
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3 {
	font-size: 18px;
	font-weight: 500;
	color: var(--arlo-ink);
}

.woocommerce-checkout #payment {
	border-radius: 14px;
	background: #f4f9fd;
}

.woocommerce-checkout #payment ul.payment_methods {
	border-bottom: 1px solid var(--arlo-line);
	padding: 18px;
}

.woocommerce-checkout #payment div.payment_box { background: #fff; }

.woocommerce-checkout #place_order {
	background: #1b5a8f !important;
	border-radius: 27.5px !important;
	font-size: 16px;
	padding: 14px 30px !important;
}

/* ---------- 我的账户 ---------- */
.prd-account {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
	max-width: 1100px;
	margin: 0 auto;
	padding: 40px 30px 90px;
}

.prd-account .woocommerce-MyAccount-navigation {
	float: none;
	width: auto;
}

.prd-account .woocommerce-MyAccount-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.prd-account .woocommerce-MyAccount-navigation ul li {
	margin: 0;
}

.prd-account .woocommerce-MyAccount-navigation ul li a {
	display: inline-block;
	padding: 9px 18px;
	border: 1px solid var(--arlo-line);
	border-radius: 999px;
	font-size: 14px;
	color: var(--arlo-navy);
	text-decoration: none;
	background: #fff;
	transition: border-color 0.2s, background-color 0.2s;
}

.prd-account .woocommerce-MyAccount-navigation ul li.is-active a {
	background: var(--arlo-blue);
	border-color: var(--arlo-blue);
	color: #fff;
}

.prd-account .woocommerce-MyAccount-content {
	float: none;
	width: auto;
}

.prd-account .woocommerce-MyAccount-content > * {
	border: 1px solid var(--arlo-line);
	border-radius: 16px;
	background: #fff;
	padding: 24px;
	margin: 0 0 16px;
}

.prd-account .woocommerce-MyAccount-content h2,
.prd-account .woocommerce-MyAccount-content h3 {
	font-size: 18px;
	font-weight: 500;
	color: var(--arlo-ink);
}

.prd-account .woocommerce-form__label-for-checkbox { font-size: 14px; }

/* ---------- 响应式 ---------- */
@media (min-width: 768px) {
	.prd-hero { padding: 56px 20px; }

	.prd-hero--shop {
		aspect-ratio: auto;
		min-height: 340px;
	}

	.prd-hero--shop .prd-hero__img--desktop { display: block; }
	.prd-hero--shop .prd-hero__img--mobile { display: none; }
	.prd-hero--shop .prd-hero__title { font-size: 52px; }

	.prd-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 20px; }

	.prd-single__main { grid-template-columns: 1.05fr 1fr; gap: 48px; }

	.prd-single .related.products ul.products,
	.prd-single .upsells.products ul.products { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }

	.prd-account { grid-template-columns: 240px 1fr; align-items: start; }
	.prd-account .woocommerce-MyAccount-navigation ul { flex-direction: column; }
}

@media (min-width: 1024px) {
	.prd-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px 24px; }

	/* 购物车两栏：表单 + 总额侧栏 */
	.woocommerce-cart .woocommerce-cart-form { float: none; width: auto; }

	.woocommerce-cart .cart-collaterals { width: auto; float: none; display: flow-root; }
}

/* ---------- 集合页（hero 面包屑 / 导语 / 系列阵容 / 系列区块 / 最近浏览 / SEO） ---------- */

/* hero 白色面包屑（桌面显示，左上角） */
.prd-hero--shop .woocommerce-breadcrumb {
	position: absolute;
	top: 24px;
	left: 30px;
	z-index: 3;
	display: none;
	margin: 0;
	font-size: 13px;
	color: #fff;
}
.prd-hero--shop .woocommerce-breadcrumb a { color: #fff; text-decoration: none; }
.prd-hero--shop .woocommerce-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 3px; }

/* 导语 */
.prd-intro {
	background: #fff;
	padding: 27px 0 21px;
}
.prd-intro__text {
	margin: 0;
	max-width: 80rem;
	margin-inline: auto;
	font-size: 14px;
	line-height: 1.3;
	text-align: center;
	color: #121212;
}

/* 系列阵容 */
.prd-lineup {
	padding: 30px 0 60px;
}
.prd-lineup__title {
	margin: 0 0 20px;
	font-size: clamp(22px, 3vw, 28px);
	font-weight: 500;
	line-height: 1.3;
	text-align: center;
	color: var(--arlo-navy);
}
.prd-lineup__track {
	display: flex;
	gap: 20px;
	overflow-x: auto;
	padding-bottom: 8px;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
}
.prd-lineup__track::-webkit-scrollbar { display: none; }
.prd-lineup__card {
	flex: 0 0 144px;
	width: 144px;
	display: flex;
	flex-direction: column;
	align-items: center;
	scroll-snap-align: center;
	color: inherit;
	text-decoration: none;
}
.prd-lineup__thumb {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 1 / 1;
	margin-bottom: 10px;
	border-radius: 6px;
	overflow: hidden;
	background: #f7f7f7;
	transition: transform 0.3s;
}
.prd-lineup__card:hover .prd-lineup__thumb { transform: translateY(-3px); }
.prd-lineup__thumb img { width: 100%; height: 100%; object-fit: contain; }
.prd-lineup__thumb--compare { color: #9aa1a8; }
.prd-lineup__name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.35;
	text-align: center;
	color: #121212;
}
.prd-lineup__desc {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-top: 2px;
	font-size: 12px;
	line-height: 1.3;
	text-align: center;
	color: var(--arlo-muted);
}
.prd-lineup__price {
	margin-top: 4px;
	font-size: 12px;
	text-align: center;
	color: var(--arlo-muted);
}

/* 系列说明区块（深蓝底白字，锚点） */
.prd-series {
	background: #0c4a73;
	color: #fff;
	padding: 30px 0;
	text-align: center;
	scroll-margin-top: 110px;
}
.prd-series__title {
	margin: 0 0 18px;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.3;
	color: #fff;
}
.prd-series__text {
	margin: 0 auto;
	max-width: 900px;
	font-size: 12px;
	line-height: 1.3;
	color: rgba(255, 255, 255, 0.95);
}

/* 系列产品网格（深蓝说明区块正下方，白底） */
.prd-special {
	background: #fff;
	padding: 32px 0;
}
.prd-special__inner {
	max-width: 1240px;
	margin-inline: auto;
	padding: 0 30px;
}
.prd-special .prd-grid { margin-bottom: 0; }

/* FAQ（details/summary 原生手风琴） */
.prd-faq {
	background: #fff;
	padding: 60px 0;
}
.prd-faq__title {
	margin: 0 0 34px;
	font-size: clamp(22px, 3vw, 28px);
	font-weight: 500;
	text-align: center;
	color: var(--arlo-navy);
}
.prd-faq__list {
	max-width: 920px;
	margin-inline: auto;
	border-top: 1px solid var(--arlo-line);
}
.prd-faq__item {
	border-bottom: 1px solid var(--arlo-line);
}
.prd-faq__item[open] .prd-faq__q::after { transform: rotate(45deg); }
.prd-faq__q {
	position: relative;
	list-style: none;
	padding: 20px 40px 20px 4px;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.5;
	color: var(--arlo-navy);
	cursor: pointer;
}
.prd-faq__q::-webkit-details-marker { display: none; }
.prd-faq__q::after {
	content: "+";
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 26px;
	font-weight: 400;
	line-height: 1;
	color: var(--arlo-blue);
	transition: transform 0.2s;
}
.prd-faq__a {
	margin: 0;
	padding: 0 0 22px 4px;
	max-width: 820px;
	font-size: 15px;
	line-height: 1.8;
	color: var(--arlo-muted);
}

/* 最近浏览 */
.prd-recent {
	padding: 40px 0 60px;
}
.prd-recent__title {
	margin: 0 0 20px;
	font-size: 24px;
	font-weight: 500;
	text-align: center;
	color: var(--arlo-navy);
}
.prd-recent__track {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	padding-bottom: 8px;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
}
.prd-recent__track::-webkit-scrollbar { display: none; }
.prd-recent__card {
	flex: 0 0 160px;
	width: 160px;
	scroll-snap-align: start;
	color: inherit;
	text-decoration: none;
}
.prd-recent__card img {
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 10px;
	background: rgba(216, 219, 224, 0.5);
	object-fit: contain;
}
.prd-recent__card__title {
	display: block;
	margin-top: 8px;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.35;
	color: var(--arlo-ink);
}
.prd-recent__card__price {
	display: block;
	margin-top: 2px;
	font-size: 12px;
	color: var(--arlo-muted);
}

/* SEO 文本 */
.prd-seo {
	background: #fff;
	padding: 36px 0 28px;
}
.prd-seo .pg-container {
	max-width: 80rem;
}
.prd-seo p {
	margin: 0 0 12px;
	font-size: 14px;
	line-height: 1.5;
	text-align: center;
	color: #121212;
}
.prd-seo p:last-child { margin-bottom: 0; }

@media (min-width: 768px) {
	.prd-hero--shop .woocommerce-breadcrumb { display: block; }

	.prd-intro { padding: 36px 0 28px; }
	.prd-intro__text { font-size: 14px; }

	.prd-series { padding: 40px 0; }
	.prd-series__title { font-size: 30px; }
	.prd-series__text { font-size: 14px; }
}

@media (min-width: 1024px) {
	.prd-lineup__track { justify-content: center; }
}