/**
 * Front-end styles — BuildsByLuke Product Guarantee Notice for WooCommerce.
 *
 * The notice is the official Commission artwork (always displayed whole, in
 * colour — Annex I online rule). The .bblgg-garan rules style the EU
 * durability-label output of the separate Pro build; they are inert here.
 * Annex II note (6) sets the label typeface to Inter, bundled locally
 * (SIL OFL 1.1 — see assets/fonts/OFL.txt). No external requests of any kind.
 */

@font-face {
	font-family: "Inter";
	src: url("../fonts/inter-regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Inter";
	src: url("../fonts/inter-semibold.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Inter";
	src: url("../fonts/inter-extrabold.woff2") format("woff2");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}

/* The official label SVGs reference Inter-Regular / Inter-ExtraBold family names. */
@font-face {
	font-family: "Inter-Regular";
	src: url("../fonts/inter-regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Inter-SemiBold";
	src: url("../fonts/inter-semibold.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Inter-ExtraBold";
	src: url("../fonts/inter-extrabold.woff2") format("woff2");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}

/* ------------------------------------------------------------------
 * Harmonised notice.
 * ---------------------------------------------------------------- */

.bblgg-notice {
	margin: 1.25em 0;
	max-width: 560px;
}

.bblgg-notice img {
	display: block;
	width: 100%;
	height: auto;
	border: 0;
}

.bblgg-notice-caption {
	margin-top: 0.4em;
	font-size: 0.85em;
	text-align: center;
}

.bblgg-notice-caption a {
	color: #003399;
	text-decoration: underline;
}

/* ------------------------------------------------------------------
 * GARAN label (Pro).
 * ---------------------------------------------------------------- */

.bblgg-garan {
	margin: 1.25em 0;
	max-width: 340px;
}

.bblgg-garan svg {
	display: block;
	width: 100%;
	height: auto;
}

.bblgg-garan-nested > summary {
	list-style: none;
	cursor: pointer;
	max-width: 340px;
}

.bblgg-garan-nested > summary::-webkit-details-marker {
	display: none;
}

.bblgg-garan-nested > summary:focus-visible {
	outline: 2px solid #003399;
	outline-offset: 2px;
}

/* Annex II nested rule: the label appears in its entirety on the first
 * interaction — the expanded label replaces the strip. */
.bblgg-garan-nested[open] > summary {
	display: none;
}

.bblgg-checkout-garan {
	margin: 0 0 1em;
	padding: 0.75em 1em;
	border: 1px solid #003399;
	border-radius: 3px;
	background: #f5f8ff;
	font-size: 0.9em;
}

.bblgg-checkout-garan ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.bblgg-checkout-garan li + li {
	margin-top: 0.35em;
}

/* ------------------------------------------------------------------
 * GPSR block.
 * ---------------------------------------------------------------- */

.bblgg-gpsr {
	margin: 1.5em 0;
}

.bblgg-gpsr-title {
	font-size: 1.1em;
	margin-bottom: 0.5em;
}

.bblgg-gpsr-table {
	width: 100%;
	border-collapse: collapse;
}

.bblgg-gpsr-table th,
.bblgg-gpsr-table td {
	text-align: left;
	vertical-align: top;
	padding: 0.5em 0.75em;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.bblgg-gpsr-table th {
	width: 34%;
	font-weight: 600;
}

/* ------------------------------------------------------------------
 * Print: notices and labels print whole and in colour where supported.
 * ---------------------------------------------------------------- */

@media print {
	.bblgg-garan-nested > summary {
		display: none;
	}

	.bblgg-garan-nested .bblgg-garan-expanded {
		display: block !important;
	}
}
