:where(*, *::before, *::after) {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	min-height: 100vh;
	overflow-x: clip;
	overflow-wrap: break-word;
	-webkit-font-smoothing: antialiased;
	/*
	 * Shared content inset (viewport-based so it stays correct
	 * inside half-width hero columns and alignfull wrappers).
	 */
	--rb-pad-inline: max(
		var(--wp--custom--gutter, clamp(28px, 5vw, 80px)),
		calc(
			(100vw - var(--wp--custom--container, 1320px)) / 2 +
				var(--wp--custom--gutter, clamp(28px, 5vw, 80px))
		)
	);
}

:where(img, picture, svg, video) {
	display: block;
	height: auto;
	max-width: 100%;
}

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

/* Shared eyebrow / etikett — beat :root :where(p) global paragraph color */
p.rb-hero__eyebrow,
p.rb-area-grid-section__eyebrow,
p.rb-people-grid-section__eyebrow,
p.rb-post-grid-section__eyebrow,
p.rb-page-cards-section__eyebrow,
p.rb-split__eyebrow,
p.rb-area-body__services-label,
p.rb-area-contacts__label,
p.rb-people-contacts__label,
p.rb-values-list__eyebrow,
p.rb-callout__eyebrow,
p.rb-contact-form__label {
	margin: 0;
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--label, 12px);
	font-weight: 400;
	letter-spacing: var(--wp--custom--eyebrow-tracking, 0.24em);
	text-transform: uppercase;
	color: var(--wp--preset--color--messing, #a67c3d);
	line-height: 1.3;
}

:where(a, button, input, select, textarea):focus-visible {
	outline: var(--wp--custom--focus-ring, 2px solid #7b6535);
	outline-offset: var(--wp--custom--focus-offset, 2px);
}

::selection {
	background: var(--wp--preset--color--blekk);
	color: var(--wp--preset--color--kremhvit);
}

.wp-site-blocks {
	display: flex;
	min-height: 100vh;
	flex-direction: column;
	gap: 0;
}

.wp-site-blocks > main {
	flex: 1;
	margin-top: 0;
	padding-top: 0;
	overflow-x: clip;
}

.wp-site-blocks > header,
.wp-site-blocks > .wp-block-template-part:first-child {
	position: sticky;
	top: 0;
	z-index: 30;
	margin-bottom: 0;
	background: var(--wp--custom--header-bg, rgba(253, 252, 250, 0.94));
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.nav {
	background: transparent;
	border-bottom: var(--wp--custom--border--hairline, 1px solid rgba(46, 43, 39, 0.1));
}

.wp-block-post-content > .rb-hero:first-child,
.wp-block-post-content > .wp-block-rb-hero:first-child {
	margin-block-start: 0;
}

.wp-block-post-content > .rb-area-grid-section,
.wp-block-post-content > .wp-block-rb-area-grid {
	margin-block: 0;
}

.wp-block-post-content > .rb-post-grid-section,
.wp-block-post-content > .wp-block-rb-post-grid {
	margin-block: 0;
}

.wp-block-post-content > .rb-split,
.wp-block-post-content > .wp-block-rb-split-feature {
	margin-block: 0;
}

.wp-block-post-content > .rb-people-grid-section,
.wp-block-post-content > .wp-block-rb-people-grid {
	margin-block: 0;
}

.wp-block-post-content > .rb-cta-band,
.wp-block-post-content > .wp-block-rb-cta-band {
	margin-block: 0;
}

.wp-block-post-content > .rb-person-header,
.wp-block-post-content > .wp-block-rb-person-header {
	margin-block: 0;
}

.wp-block-post-content > .rb-person-detail,
.wp-block-post-content > .wp-block-rb-person-detail {
	margin-block: 0;
}

.wp-block-post-content > .rb-contact-form,
.wp-block-post-content > .wp-block-rb-contact-form {
	margin-block: 0;
}

.wp-block-post-content > .rb-values-list,
.wp-block-post-content > .wp-block-rb-values-list {
	margin-block: 0;
}

.wp-block-post-content > .rb-breadcrumb,
.wp-block-post-content > .wp-block-rb-breadcrumb {
	margin-block: 0;
}

.wp-block-post-content > .rb-article-header,
.wp-block-post-content > .wp-block-rb-article-header {
	margin-block: 0;
}

/* Single post article shell + prose measure. */
.rb-article {
	background: var(--wp--preset--color--kremhvit, #fbf8f2);
	color: var(--wp--preset--color--blekk, #2e2b27);
}

.rb-article__prose {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: clamp(24px, 3vw, 40px) var(--rb-pad-inline, var(--wp--custom--gutter, clamp(28px, 5vw, 80px))) clamp(56px, 7vw, 96px);
	box-sizing: border-box;
}

.rb-article__prose > .wp-block-post-content,
.rb-article__prose .entry-content,
.rb-article .rb-article__prose > * {
	display: block;
	width: 100%;
	max-width: var(--wp--custom--container-prose, 62ch);
	margin-inline: auto;
	box-sizing: border-box;
}

.rb-article__prose .wp-block-post-content > *,
.rb-article__prose > .wp-block-post-content > * {
	max-width: 100%;
}

.rb-article__prose p {
	margin: 0 0 1.35em;
	font-family: var(--wp--preset--font-family--body);
	font-size: clamp(16px, 1.15vw, 17px);
	line-height: 1.8;
	color: var(--wp--preset--color--text-muted, #4a443c);
	text-wrap: pretty;
}

.rb-article__prose p:last-child {
	margin-bottom: 0;
}

.rb-article__prose > .wp-block-post-content > p:first-of-type {
	font-size: clamp(17px, 1.3vw, 19px);
	line-height: 1.7;
	color: var(--wp--preset--color--blekk, #2e2b27);
}

.rb-article__prose h2,
.rb-article__prose h3 {
	margin: 2.1em 0 0.65em;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 500;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--blekk, #2e2b27);
	text-wrap: pretty;
}

.rb-article__prose h2 {
	font-size: clamp(26px, 2.8vw, 32px);
	line-height: 1.2;
}

.rb-article__prose h3 {
	font-size: clamp(22px, 2.2vw, 26px);
	line-height: 1.25;
}

.rb-article__prose h2:first-child,
.rb-article__prose h3:first-child {
	margin-top: 0.4em;
}

.rb-article__prose ul,
.rb-article__prose ol {
	margin: 0 0 1.35em;
	padding-left: 1.25em;
	font-family: var(--wp--preset--font-family--body);
	font-size: clamp(16px, 1.15vw, 17px);
	line-height: 1.75;
	color: var(--wp--preset--color--text-muted, #4a443c);
}

.rb-article__prose li {
	margin: 0 0 0.45em;
}

.rb-article__prose li:last-child {
	margin-bottom: 0;
}

.rb-article__prose a {
	color: var(--wp--preset--color--blekk, #2e2b27);
	text-decoration: underline;
	text-decoration-color: rgba(46, 43, 39, 0.28);
	text-underline-offset: 0.18em;
	transition: color var(--wp--custom--transition, 0.25s), text-decoration-color var(--wp--custom--transition, 0.25s);
}

.rb-article__prose a:hover,
.rb-article__prose a:focus-visible {
	color: var(--wp--preset--color--messing, #7b6535);
	text-decoration-color: var(--wp--preset--color--messing, #7b6535);
}

.rb-article__prose strong,
.rb-article__prose b {
	font-weight: 600;
	color: var(--wp--preset--color--blekk, #2e2b27);
}

.rb-article__prose .rb-callout,
.rb-article__prose .rb-article-contact {
	margin-block: clamp(28px, 4vw, 40px);
}

.wp-block-group.rb-area-split {
	width: 100%;
	max-width: none;
	margin-block: 0;
	box-sizing: border-box;
	background: var(--wp--preset--color--kremhvit, #fbf8f2);
	padding-block: clamp(40px, 5vw, 72px);
	padding-inline: var(--rb-pad-inline);
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(40px, 6vw, 72px);
	align-items: start;
}

@media (min-width: 900px) {
	.wp-block-group.rb-area-split {
		grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.85fr);
		column-gap: clamp(48px, 7vw, 96px);
	}
}

/* Om oss: filosofi + Slik jobber vi (Group/Columns wrapping values-list). */
.wp-block-group.rb-about-split,
.wp-block-post-content > .wp-block-group:has(.rb-values-list),
.wp-block-post-content > .wp-block-columns:has(.rb-values-list) {
	width: 100%;
	max-width: none;
	margin-block: 0;
	box-sizing: border-box;
	background: var(--wp--preset--color--kremhvit, #fbf8f2);
	padding-block: clamp(48px, 6vw, 92px);
	padding-inline: var(--rb-pad-inline);
}

.wp-block-group.rb-about-split > .wp-block-columns,
.wp-block-post-content > .wp-block-group:has(.rb-values-list) > .wp-block-columns,
.wp-block-post-content > .wp-block-columns:has(.rb-values-list) {
	margin: 0;
	gap: clamp(32px, 5vw, 72px) !important;
	align-items: start;
}

.wp-block-group.rb-about-split .wp-block-column,
.wp-block-post-content > .wp-block-group:has(.rb-values-list) .wp-block-column,
.wp-block-post-content > .wp-block-columns:has(.rb-values-list) > .wp-block-column {
	margin: 0;
}

.wp-block-group.rb-about-split .wp-block-column:first-child,
.wp-block-post-content > .wp-block-group:has(.rb-values-list) .wp-block-column:first-child,
.wp-block-post-content > .wp-block-columns:has(.rb-values-list) > .wp-block-column:first-child {
	display: grid;
	gap: 24px;
	align-content: start;
}

.wp-block-group.rb-about-split .wp-block-column:first-child > *,
.wp-block-post-content > .wp-block-group:has(.rb-values-list) .wp-block-column:first-child > *,
.wp-block-post-content > .wp-block-columns:has(.rb-values-list) > .wp-block-column:first-child > * {
	margin: 0;
}

.wp-block-group.rb-about-split .wp-block-column:first-child h2,
.wp-block-post-content > .wp-block-group:has(.rb-values-list) .wp-block-column:first-child h2,
.wp-block-post-content > .wp-block-columns:has(.rb-values-list) > .wp-block-column:first-child h2 {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(24px, 2.6vw, 32px);
	font-weight: 500;
	line-height: 1.3;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--blekk, #2e2b27);
	text-wrap: pretty;
}

.wp-block-group.rb-about-split .wp-block-column:first-child p,
.wp-block-post-content > .wp-block-group:has(.rb-values-list) .wp-block-column:first-child p,
.wp-block-post-content > .wp-block-columns:has(.rb-values-list) > .wp-block-column:first-child p {
	font-family: var(--wp--preset--font-family--body);
	font-size: 16px;
	line-height: 1.8;
	color: var(--wp--preset--color--text-muted, #4a443c);
	text-wrap: pretty;
}

.wp-block-group.rb-about-split .wp-block-column:last-child,
.wp-block-post-content > .wp-block-group:has(.rb-values-list) .wp-block-column:last-child,
.wp-block-post-content > .wp-block-columns:has(.rb-values-list) > .wp-block-column:last-child {
	display: grid;
	gap: 28px;
	align-content: start;
}

.wp-block-group.rb-about-split .rb-values-list,
.wp-block-post-content > .wp-block-group:has(.rb-values-list) .rb-values-list,
.wp-block-post-content > .wp-block-columns:has(.rb-values-list) .rb-values-list {
	width: 100%;
}

/* Drop manual spacer above Om oss-seksjonen — luft kommer fra padding. */
.wp-block-post-content > .wp-block-spacer:has(+ .wp-block-group:has(.rb-values-list)),
.wp-block-post-content > .wp-block-spacer:has(+ .wp-block-columns:has(.rb-values-list)) {
	display: none;
}


.nav > .nav__inner,
.nav .nav__inner.wp-block-group,
.nav .nav__inner.is-layout-flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
	column-gap: var(--wp--custom--nav-gap, 30px);
	max-width: none;
	width: 100%;
	margin-inline: 0;
	padding-inline: var(--rb-pad-inline);
	padding-block: var(--wp--custom--header-pad-y, 18px);
	flex-wrap: nowrap;
	box-sizing: border-box;
}

.nav__inner > .wp-block-site-logo,
.nav__inner > .nav__logo {
	display: flex;
	align-items: center;
	margin: 0;
	line-height: 0;
	flex: 0 0 auto;
}

.nav__inner > .wp-block-site-logo img,
.nav__inner > .nav__logo img {
	height: auto;
	width: 205px;
	max-width: 100%;
}

.nav__inner > .wp-block-navigation,
.nav__inner > .wp-block-rb-classic-navigation {
	flex: 1 1 auto;
	min-width: 0;
	justify-content: flex-end;
}

.nav .wp-block-navigation,
.nav .wp-block-navigation__container,
.nav .wp-block-navigation__responsive-container-content {
	gap: var(--wp--custom--nav-gap, 30px);
}

.nav .wp-block-navigation .wp-block-navigation-item {
	margin: 0;
}

.nav__inner > .wp-block-buttons,
.nav__inner > .nav__cta {
	flex: 0 0 auto;
	margin: 0;
}

.nav__cta .wp-block-button__link {
	padding: 14px 26px;
	border: 1px solid var(--wp--preset--color--kullgra, #26282c);
	border-radius: 0;
	background: var(--wp--preset--color--kullgra, #26282c);
	color: var(--wp--preset--color--kremhvit, #fdfcfa);
	font-family: var(--wp--preset--font-family--body);
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	line-height: 1.2;
	text-decoration: none;
	transition:
		background var(--wp--custom--transition, 0.25s),
		color var(--wp--custom--transition, 0.25s),
		border-color var(--wp--custom--transition, 0.25s);
}

.nav__cta .wp-block-button__link:hover,
.nav__cta .wp-block-button__link:focus-visible {
	background: var(--wp--preset--color--messing, #a67c3d);
	border-color: var(--wp--preset--color--messing, #a67c3d);
	color: var(--wp--preset--color--kremhvit, #fdfcfa);
}

@media (max-width: 899px) {
	.nav > .nav__inner,
	.nav .nav__inner.wp-block-group,
	.nav .nav__inner.is-layout-flex {
		column-gap: 16px;
		padding-block: 14px;
	}

	.nav__inner > .wp-block-site-logo,
	.nav__inner > .nav__logo {
		max-width: min(58vw, 180px);
	}

	.nav__inner > .wp-block-site-logo img,
	.nav__inner > .nav__logo img {
		height: 28px;
		max-width: 100%;
		width: auto;
	}

	.nav__inner > .wp-block-buttons,
	.nav__inner > .nav__cta {
		display: none;
	}

	.nav__inner > .wp-block-navigation,
	.nav__inner > .wp-block-rb-classic-navigation {
		flex: 0 0 auto;
	}
}

.site-footer {
	background: var(--wp--preset--color--kullgra, #27282c);
	color: var(--wp--preset--color--kremhvit, #fbf8f2);
}

.site-footer a {
	color: inherit;
}

.site-footer .wp-block-heading,
.site-footer .wp-block-site-title,
.site-footer .wp-block-paragraph {
	color: var(--wp--preset--color--kremhvit, #fbf8f2);
}

.site-footer__inner {
	max-width: none;
	width: 100%;
	margin-inline: 0;
	padding-inline: var(--rb-pad-inline, var(--wp--custom--gutter, clamp(28px, 5vw, 80px)));
	padding-block: clamp(18px, 2.3vw, 30px) 0;
	box-sizing: border-box;
}

.site-footer__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp(36px, 5vw, 56px);
	align-items: start;
	max-width: var(--wp--custom--container, 1320px);
	margin: 0 auto;
	padding-bottom: clamp(40px, 5vw, 64px);
	box-sizing: border-box;
}

@media (min-width: 720px) {
	.site-footer__grid {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr) auto;
		column-gap: clamp(40px, 6vw, 80px);
	}

	.site-footer__col--social {
		justify-self: end;
	}
}

@media (min-width: 1000px) {
	.site-footer__grid {
		grid-template-columns: minmax(0, 1.1fr) minmax(380px, 1.5fr) auto;
		column-gap: clamp(56px, 8vw, 120px);
	}
}

.site-footer__col {
	display: grid;
	gap: 18px;
	min-width: 0;
}

.site-footer__col--brand {
	max-width: 360px;
}

.site-footer__heading {
	margin: 0 !important;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 12px !important;
	font-weight: 400 !important;
	letter-spacing: 0.22em !important;
	text-transform: uppercase !important;
	line-height: 1.3 !important;
	color: rgba(251, 248, 242, 0.62) !important;
}

.site-footer .wp-block-group.site-footer__bar,
.site-footer__bar {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px 28px;
	max-width: var(--wp--custom--container, 1320px);
	margin: 0 auto !important;
	padding: 22px 0 28px;
	border-top: 1px solid rgba(251, 248, 242, 0.16);
	box-sizing: border-box;
}

.site-footer__copy,
.site-footer__credit {
	margin: 0 !important;
	font-family: var(--wp--preset--font-family--body);
	font-size: 13px;
	line-height: 1.4;
	color: rgba(251, 248, 242, 0.55) !important;
}

.site-footer__credit a {
	color: inherit;
	text-decoration: none;
	transition: color var(--wp--custom--transition, 0.25s);
}

.site-footer__credit a:hover,
.site-footer__credit a:focus-visible {
	color: var(--wp--preset--color--messing, #a67c3d);
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

.wp-block-post-content > .rb-photo-credit {
	display: none;
}
