/* GIREM Catalog — B2B product page (SmartShop-inspired structure) */

.girem-pdp { --pdp-accent: var(--brand-primary, #4933d1); --pdp-border: #e2e8f0; color: #0f172a; }
.girem-pdp__crumbs { margin-bottom: 1rem; font-size: 0.88rem; }

.girem-pdp__hero {
	display: grid;
	grid-template-columns: minmax(300px, 1.1fr) minmax(320px, 0.9fr);
	gap: 2rem;
	margin-bottom: 2rem;
	padding: 1.25rem;
	border: 1px solid var(--pdp-border);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 1px 3px rgba(15,23,42,.06);
}

.girem-pdp__gallery-main {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 420px;
	padding: 1.25rem;
	background: #fff;
	border: 1px solid var(--pdp-border);
	border-radius: 10px;
}
.girem-pdp__gallery-main img {
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}
.girem-pdp__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: 1.5rem;
	font-weight: 800;
	letter-spacing: 0.15em;
	color: #cbd5e1;
	border: 1px dashed var(--pdp-border);
	border-radius: 8px;
}
.girem-pdp__gallery-thumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.75rem;
}
.girem-pdp__thumb {
	padding: 0;
	border: 2px solid transparent;
	border-radius: 8px;
	background: #fff;
	cursor: pointer;
	overflow: hidden;
}
.girem-pdp__thumb.is-active { border-color: var(--pdp-accent); }
.girem-pdp__thumb img {
	width: 72px;
	height: 72px;
	object-fit: contain;
	background: #fff;
}

.girem-pdp__eyebrow { margin: 0 0 0.35rem; font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--pdp-accent); }
.girem-pdp__brandline { margin: 0 0 0.35rem; font-size: 0.82rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--pdp-accent); }
.girem-pdp__title { margin: 0 0 0.75rem; font-size: clamp(1.35rem, 2.5vw, 1.85rem); line-height: 1.25; }
.girem-pdp__series { margin: 0 0 0.5rem; font-size: 0.9rem; color: #475569; }
.girem-pdp__snapshot {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
	gap: 0.5rem 1rem;
	margin: 0 0 1rem;
	padding: 0.75rem 1rem;
	border: 1px solid var(--pdp-border);
	border-radius: 8px;
	background: #f8fafc;
}
.girem-pdp__snapshot-row { margin: 0; }
.girem-pdp__snapshot dt { margin: 0; font-size: 0.72rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.03em; color: #64748b; }
.girem-pdp__snapshot dd { margin: 0.15rem 0 0; font-size: 0.88rem; font-weight: 600; color: #0f172a; }
.girem-pdp__badges { display: flex; flex-wrap: wrap; gap: 0.4rem; margin: 0 0 0.75rem; }
.girem-pdp__badges span { padding: 0.2rem 0.6rem; border-radius: 999px; background: #ede9ff; font-size: 0.78rem; font-weight: 700; color: var(--pdp-accent); }
.girem-pdp__badge-top { background: var(--pdp-accent) !important; color: #fff !important; }
.girem-pdp__sku { margin: 0 0 1rem; font-size: 0.9rem; color: #64748b; }
.girem-pdp__price-row { margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid var(--pdp-border); }
.girem-b2b-price { font-size: 1.5rem; font-weight: 700; }
.girem-b2b-price__note { display: block; margin-top: 0.25rem; font-size: 0.78rem; font-weight: 500; color: #64748b; }
.girem-b2b-price--request { font-size: 1.15rem; color: #64748b; }
.girem-pdp__stock { margin: 0.5rem 0 0; font-size: 0.88rem; font-weight: 600; }
.girem-pdp__stock--yes { color: #15803d; }
.girem-pdp__stock--no { color: #b45309; }
.girem-pdp__trust { margin: 0 0 1.25rem; padding: 0; list-style: none; font-size: 0.85rem; color: #475569; }
.girem-pdp__trust li { margin-bottom: 0.35rem; padding-left: 1rem; position: relative; }
.girem-pdp__trust li::before { content: "✓"; position: absolute; left: 0; color: #15803d; font-weight: 700; }
.girem-pdp__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }

.girem-pdp__sections { display: grid; gap: 1.25rem; }
.girem-pdp__section {
	padding: 1.25rem 1.5rem;
	border: 1px solid var(--pdp-border);
	border-radius: 10px;
	background: #fff;
}
.girem-pdp__heading { margin: 0 0 1rem; font-size: 1.1rem; font-weight: 700; }
.girem-pdp__table-wrap { overflow-x: auto; }
.girem-pdp__table { width: 100%; border-collapse: collapse; font-size: 0.9rem; }
.girem-pdp__table th,
.girem-pdp__table td { padding: 0.55rem 0.75rem; border-bottom: 1px solid var(--pdp-border); text-align: left; vertical-align: top; }
.girem-pdp__table th { width: 38%; font-weight: 600; color: #475569; background: #f8fafc; }
.girem-pdp__prose p { margin: 0; color: #334155; line-height: 1.6; }
.girem-pdp__empty { margin: 0; color: #64748b; font-size: 0.92rem; }
.girem-pdp__link-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 0.65rem; }
.girem-pdp__link-card {
	display: block;
	padding: 0.75rem 1rem;
	border: 1px solid var(--pdp-border);
	border-radius: 8px;
	text-decoration: none;
	font-weight: 600;
	font-size: 0.88rem;
	color: var(--pdp-accent);
	transition: border-color .15s, background .15s;
}
.girem-pdp__link-card:hover { border-color: var(--pdp-accent); background: #ede9ff; }
.girem-pdp__mini-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 0.65rem; }
.girem-pdp__mini-card {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	padding: 0.85rem;
	border: 1px solid var(--pdp-border);
	border-radius: 8px;
	text-decoration: none;
	color: inherit;
}
.girem-pdp__mini-card:hover { border-color: var(--pdp-accent); }
.girem-pdp__mini-title { font-size: 0.88rem; font-weight: 600; line-height: 1.35; }
.girem-pdp__mini-price { font-size: 0.82rem; color: #64748b; }

.girem-pdp__cta {
	margin-top: 1.5rem;
	padding: 1.5rem;
	border-radius: 12px;
	background: linear-gradient(135deg, #ede9ff, #f8fafc);
	border: 1px solid var(--pdp-border);
	text-align: center;
}
.girem-pdp__cta h2 { margin: 0 0 0.5rem; font-size: 1.25rem; }
.girem-pdp__cta p { margin: 0 0 1rem; color: #475569; }
.girem-pdp__cta-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.65rem; }

@media (max-width: 900px) {
	.girem-pdp__hero { grid-template-columns: 1fr; }
	.girem-pdp__gallery-main { height: 320px; }
	.girem-pdp__actions { grid-template-columns: 1fr; }
}
