/* ──────────────────────────────────────────────────────────────
   gbz-site — Bricks defaults neutralised on inner pages.
   Loaded BEFORE the v1 stylesheet (it is a dependency of the
   gbz-site-v1 handle), so every v1 class rule wins over these
   resets by cascade order — the same mechanism as gbz-home's
   reset.css on the front page. Only enqueued outside the front
   page and outside the Bricks builder.
   ────────────────────────────────────────────────────────────── */

/* Bricks sets html { font-size: 62.5% }; every v1 rem assumes 16px */
html {
	font-size: 100%;
}

/* Bricks body colour (body { color:#363636 }) is not overridden by main.css */
body {
	color: var(--ink);
}

/* Bricks: .brx-body { display:flex; flex-direction:column; margin:0 auto; width:100% }.
   v1 body is a normal block box (margin collapsing matters for section spacing). */
body.brx-body {
	display: block;
	flex-direction: row;
	margin: 0;
	width: auto;
}

/* Bricks: h1 { line-height:1.4 } … v1 headings inherit the body line-height
   (1.55); .display and the gbz-* classes set their own sizes. */
h1, h2, h3, h4, h5, h6 {
	line-height: inherit;
}

/* Bricks: :where(p) { margin-block: 0 1.2em } / p:last-of-type margin 0.
   v1 relies on the browser default 1em top/bottom; imported long-form
   content (.gbz-prose) needs it too. */
p {
	margin: 1em 0;
}

/* Bricks: .brxe-text-link { display:inline-flex; align-items:center; gap:5px }.
   v1 links are plain inline anchors; .btn / .link-arrow set their own flex
   display and win over these resets by cascade order. */
.brxe-text-link {
	display: inline;
	gap: normal;
	align-items: normal;
}

.brxe-text-link span {
	display: inline;
	align-items: normal;
	justify-content: normal;
}

/* Bricks layout element defaults (display:flex / column / align-items:center /
   width:100% / auto margins). v1 sections and the gbz-* template classes set
   their own layout and win over these resets by cascade order. */
.brxe-section {
	display: block;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: normal;
	justify-content: normal;
	width: auto;
	margin-left: 0;
	margin-right: 0;
}

.brxe-container {
	display: block;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: normal;
	width: auto;
	margin-left: 0;
	margin-right: 0;
}

.brxe-block {
	display: block;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: normal;
}

/* Bricks: label { display:block; margin-bottom:5px; color:var(--bricks-text-light) } */
label {
	display: block;
	margin-bottom: 0;
	font-weight: 400;
	color: inherit;
}

/* Bricks: textarea { min-height:90px } */
textarea {
	min-height: 0;
}

/* Bricks: body.bricks-is-frontend :focus-visible { outline:auto } */
body.bricks-is-frontend :focus-visible {
	outline: 2px solid var(--green);
	outline-offset: 4px;
	border-radius: 6px;
}

/* site-assets/base.css keeps the Bricks header wrapper sticky; v1's .header is
   position:fixed and the <header id="brx-header"> wrapper must stay neutral
   (no stacking context, no reserved height). */
#brx-header {
	position: static;
	z-index: auto;
	top: auto;
}

/* v1: main, .footer { position:relative; z-index:2 } — the content wrapper must
   sit above the background no matter which tag Bricks renders it as. */
#brx-content {
	position: relative;
	z-index: 2;
}

/* v1 separates the footer address lines with <br>. The import splits them into
   block elements, so the two links need their own line as well. */
.footer address a {
	display: block;
}
