
@layer base {
	html {
		color-scheme: light;
		-webkit-text-size-adjust: 100%;
		text-size-adjust: 100%;
	}

	html {
		scroll-behavior: smooth;
	}

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

	body {
		background-color: var(--color-paper);
		color: var(--color-ink);
		font-family: var(--wp--preset--font-family--schibsted-grotesk, 'Helvetica Neue', Arial, sans-serif);
		line-height: 1.6;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}

	:is(h1, h2, h3, h4, h5, h6, .mark, #menu-main-menu a, button, .wp-element-button, .wp-block-button__link, body > footer) {
		font-family: var(--font-sans);
	}

	:where(h1, h2, h3, h4, h5, h6):not([class]) {
		font-weight: 700;
		text-wrap: balance;
	}

	:where(h1):not([class]) {
		font-size: var(--text-display);
		line-height: var(--text-display--line-height);
		font-weight: 800;
		font-stretch: 75%;
		letter-spacing: -0.025em;
		text-transform: uppercase;
	}

	:where(h2):not([class]) {
		font-size: var(--text-heading);
		line-height: var(--text-heading--line-height);
		font-weight: 800;
		font-stretch: 75%;
		text-transform: uppercase;
	}

	:where(h3):not([class]) {
		font-size: 1.25rem;
		line-height: 1.2;
	}

	:where(h4, h5, h6):not([class]) {
		font-size: 1rem;
		line-height: 1.4;
	}

	p {
		text-wrap: pretty;
	}

	:focus-visible {
		outline: 2px solid;
		outline-offset: 3px;
	}

	::selection {
		background: var(--color-ink);
		color: var(--color-paper);
	}

	[id] {
		scroll-margin-top: 5rem;
	}
}

@layer components {

	:is(.content, .is-root-container) :where(p, ul, ol, figure, blockquote, table, pre) {
		margin-block: 0 1.25em;
	}

	:is(.content, .is-root-container) :where(h2) {
		margin-block: 2.5em 0.5em;
		font-size: var(--text-heading);
		line-height: var(--text-heading--line-height);
		font-weight: 800;
		font-stretch: 75%;
		text-transform: uppercase;
		text-wrap: balance;
	}

	:is(.content, .is-root-container) :where(h3, h4) {
		margin-block: 2em 0.5em;
		font-size: 1.25rem;
		line-height: 1.2;
		font-weight: 700;
	}

	:is(.content, .is-root-container) :where(a:not([class])) {
		text-decoration: none;
		background-image:
			linear-gradient(#a08868, #a08868),
			linear-gradient(var(--color-line), var(--color-line));
		background-repeat: no-repeat;
		background-size: 0% 1px, 100% 1px;
		background-position: 100% 100%, 0 100%;
		-webkit-box-decoration-break: clone;
		box-decoration-break: clone;
		transition: background-size 0.4s var(--ease-soft, cubic-bezier(0.2, 0.7, 0.2, 1));
	}

	:is(.content, .is-root-container) :where(a:not([class])):is(:hover, :focus-visible) {
		background-size: 100% 1px, 100% 1px;
		background-position: 0 100%, 0 100%;
	}

	:is(.content, .is-root-container) :where(ul) {
		padding-left: 1.2em;
		list-style: square;
	}

	:is(.content, .is-root-container) :where(ol) {
		padding-left: 1.4em;
		list-style: decimal;
	}

	:is(.content, .is-root-container) :where(blockquote) {
		font-size: var(--text-lead);
		line-height: 1.2;
		font-weight: 700;
		font-stretch: 85%;
	}

	:is(.content, .is-root-container) :where(cite, figcaption) {
		display: block;
		margin-top: 0.6rem;
		font-size: 0.875rem;
		font-style: normal;
		color: var(--color-grey);
	}

	:is(.content, .is-root-container) :where(hr) {
		border: 0;
		border-top: 1px solid var(--color-ink);
	}

	:is(.content, .is-root-container) :where(table) {
		width: 100%;
		border-collapse: collapse;
	}

	:is(.content, .is-root-container) :where(th, td) {
		padding: 0.5em;
		border-bottom: 1px solid var(--color-line);
		text-align: left;
	}

	:is(.content, .is-root-container) :where(pre) {
		overflow-x: auto;
	}

	:is(.content, .is-root-container) :where(img, video, iframe) {
		max-width: 100%;
		height: auto;
	}

	.content.is-constrained > * {
		max-width: var(--wp--style--global--content-size, 40rem);
	}

	.content > :first-child {
		margin-top: 0;
	}

	.content > .alignwide {
		max-width: 72rem;
	}

	.content > .alignfull {
		max-width: none;
		margin-inline: calc(-1 * var(--gutter));
	}

	.content > .alignleft {
		float: left;
		max-width: 45%;
		margin: 0.3em 2em 1em 0;
	}

	.content > .alignright {
		float: right;
		max-width: 45%;
		margin: 0.3em 0 1em 2em;
	}

.nav-links {
    display: flex;
    gap: 1.5rem;
    margin-top: 3rem;
    font-size: 0.875rem;
    font-weight: 700;
    text-transform: uppercase;
}

.slash {
    --slash-gap: max(calc(0.5em - 4px), calc(0.35em + 3px));
}

.slash::before,
.slash__label {
    display: inline-block;
}

.slash::before {
    content: "/";
    width: 0;
    font-weight: 300;
    color: color-mix(in srgb, currentColor 28%, transparent);
    transition: color 0.15s linear;
}

.slash:is(:hover, :focus-visible, [data-current], [aria-pressed="true"], .active)::before {
    color: #a08868;
}

.slash__label {
    transform: translateX(var(--slash-gap));
}

@media (prefers-reduced-motion: reduce) {
    html:not(.force-motion) .slash::before {
        transition: none;
    }
}

#menu-main-menu > li > ul {
    padding-left: 10px;
}

#menu-main-menu ul a.slash {
    font-size: calc(var(--wp--preset--font-size--base) * 0.9);
}

@media (width < 64rem) {
    #menu-main-menu > li > a.slash {
        font-size: 1.75rem;
    }

    #menu-main-menu ul a.slash {
        font-size: 1.25rem;
    }
}

#menu-main-menu ul a.slash.active::before {
    opacity: 1;
    transform: none;
}

#menu-main-menu ul a.slash.active .slash__label {
    transform: translateX(var(--slash-gap));
}


	.mark-slot {
		--d: 3rem;
		--mt: 0px;
		--flow: cubic-bezier(0.4, 0, 0.2, 1);
		display: flex;
		align-items: center;
		height: var(--d);
		margin-top: var(--mt);
	}

	.mark {
		position: relative;
		display: inline-flex;
		align-items: center;
		height: var(--d);
	}

	.mark__pill,
	.mark__circle {
		display: flex;
		align-items: center;
		letter-spacing: -0.01em;
		transition: opacity 0.9s var(--flow), box-shadow 0.3s ease-out;
	}

	.mark:hover .mark__circle,
	.mark:focus-visible .mark__circle {
		box-shadow: inset 0 0 0 100vmax rgb(255 255 255 / 0.08);
	}

	.wp-element-button,
	.wp-block-button__link {
		font-stretch: 75%;
		line-height: 1.2;
		cursor: pointer;
		transition: background-color 0.3s ease-out;
	}

	.mark__pill {
		height: var(--d);
		font-size: 1.75rem;
		white-space: nowrap;
		color: var(--color-ink);
	}

	.mark__slash {
		margin-inline: 0.09em;
		font-weight: 240;
		color: #a08868;
		transform-origin: 50% 0;
		transform: translateY(-0.207em) scale(1.386);
	}

	.mark__circle {
		position: absolute;
		top: 0;
		left: 0;
		justify-content: center;
		width: var(--d);
		height: var(--d);
		padding-bottom: 0.11em;
		border-radius: 50%;
		font-size: 1.25rem;
		color: #fff;
		background: var(--color-ink);
		box-shadow: inset 0 0 0 100vmax rgb(255 255 255 / 0);
		opacity: 0;
		pointer-events: none;
	}

	@media (min-width: 64rem) {
		[data-scrolled] .mark__pill {
			opacity: 0;
		}

		[data-scrolled] .mark__circle {
			opacity: 1;
		}
	}

	.mark__g {
		display: inline-block;
		transition: color 0.3s ease-out;
	}

	.mark__pill .mark__g:not(.mark__slash) {
		transition: color 0.3s ease-out;
	}

	.mark:hover .mark__pill .mark__g:not(.mark__slash),
	.mark:focus-visible .mark__pill .mark__g:not(.mark__slash) {
		color: #4a4a4a;
	}

	.mark:hover .mark__circle .mark__g,
	.mark:focus-visible .mark__circle .mark__g {
		color: #e1d9cc;
		transition: color 0.25s ease-out calc(var(--g) * 0.022s);
	}

	@media (min-width: 64rem) {
		.mark-slot {
			--d: 3.5rem;
			--mt: calc(6rem - 30px - 2.5rem + var(--text-display) * 0.44 - var(--d) / 2);
		}

		.mark__pill {
			font-size: 2.25rem;
		}

		.mark__circle {
			font-size: 1.375rem;
		}

	}

	.slash:hover::before,
	.slash:focus-visible::before,
	.slash[data-current]::before,
	.slash[aria-pressed="true"]::before {
		opacity: 1;
		transform: none;
	}

	.slash:hover .slash__label,
	.slash:focus-visible .slash__label,
	.slash[data-current] .slash__label,
	.slash[aria-pressed="true"] .slash__label {
		transform: translateX(var(--slash-gap));
	}

	@supports (animation-timeline: view()) {
		.parallax {
			scale: 1.14;
			animation: drift linear both;
			animation-timeline: view();
		}

		.unveil {
			animation: unveil linear both;
			animation-timeline: view();
			animation-range: entry 0% entry 70%;
		}
	}

	@media (prefers-reduced-motion: reduce) {
		html:not(.force-motion) :is(.parallax, .unveil) {
			scale: none;
			animation: none;
		}
	}

	html.lightbox-open {
		overflow: hidden;
		padding-right: var(--scrollbar, 0px);
	}

	.is-lifted img {
		opacity: 0;
	}

	.lightbox {
		position: fixed;
		inset: 0;
		width: 100%;
		height: 100%;
		max-width: none;
		max-height: none;
		margin: 0;
		padding: 0;
		border: 0;
		overflow: hidden;
		background: transparent;
		color: var(--color-ink);
		font-family: var(--font-sans);
	}

	.lightbox::backdrop {
		background: transparent;
	}

	.lightbox__shade {
		position: absolute;
		inset: 0;
		background: var(--color-paper);
	}

	.lightbox__layout {
		position: relative;
		display: grid;
		grid-template-rows: auto minmax(0, 1fr) auto auto;
		gap: 0.75rem;
		height: 100%;
		padding: max(0.5rem, env(safe-area-inset-top)) max(1rem, env(safe-area-inset-right)) max(0.75rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
	}

	@media (min-width: 40rem) {
		.lightbox__layout {
			gap: 1rem;
			padding: 1rem 1.5rem 1.25rem;
		}
	}

	.lightbox__bar,
	.lightbox__foot {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 1.5rem;
		min-height: 2.75rem;
	}

	.lightbox__foot {
		align-items: flex-end;
	}

	.lightbox__count {
		margin: 0;
		font-size: 1.25rem;
		line-height: 1;
		font-weight: 800;
		font-stretch: 75%;
		font-variant-numeric: tabular-nums;
	}

	.lightbox__total {
		color: var(--color-grey);
	}

	.lightbox__actions,
	.lightbox__nav {
		display: flex;
		flex: none;
		gap: 1.5rem;
	}

	.lightbox__button {
		display: inline-flex;
		align-items: baseline;
		min-height: 2.75rem;
		padding: 0.875rem 0 0.625rem;
		border: 0;
		background: none;
		color: var(--color-grey);
		font: inherit;
		font-size: 0.875rem;
		line-height: 1;
		font-weight: 700;
		letter-spacing: 0.05em;
		text-transform: uppercase;
		cursor: pointer;
		transition: color 0.2s;
	}

	.lightbox__button:hover,
	.lightbox__button:focus-visible,
	.lightbox__button[aria-pressed="true"] {
		color: var(--color-ink);
	}

	.lightbox__button:focus-visible {
		outline: none;
	}

	.lightbox__button[hidden] {
		display: none;
	}

	.lightbox__caption {
		display: -webkit-box;
		max-width: 60ch;
		margin: 0;
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		line-clamp: 3;
		color: var(--color-grey);
		font-size: 0.875rem;
		line-height: 1.45;
	}

	.lightbox__stage {
		position: relative;
		display: grid;
		place-items: center;
		min-height: 0;
		overflow: hidden;
		touch-action: pinch-zoom;
		-webkit-user-select: none;
		user-select: none;
	}

	.lightbox.is-animating .lightbox__stage {
		overflow: visible;
	}

	.lightbox__frame {
		position: relative;
	}

	.lightbox.is-zoomable .lightbox__frame {
		cursor: zoom-in;
	}

	.lightbox.is-zoomed .lightbox__stage {
		cursor: grab;
	}

	.lightbox.is-zoomed .lightbox__stage.is-dragging {
		cursor: grabbing;
	}

	.lightbox__zoom {
		position: absolute;
		inset: 0;
		transition: transform 0.45s var(--ease-soft);
	}

	.lightbox__stage.is-dragging .lightbox__zoom {
		transition: none;
	}

	.lightbox__placeholder,
	.lightbox__image {
		position: absolute;
		inset: 0;
		width: 100%;
		height: 100%;
		max-width: none;
		object-fit: contain;
		-webkit-user-drag: none;
	}

	.lightbox__image {
		opacity: 0;
		transition: opacity 0.35s linear;
	}

	.lightbox__image.is-loaded {
		opacity: 1;
	}

	.lightbox__progress {
		position: absolute;
		inset: auto 0 0;
		height: 1px;
		overflow: hidden;
		opacity: 0;
		pointer-events: none;
	}

	.lightbox__progress::after {
		content: "";
		position: absolute;
		inset: 0;
		width: 30%;
		background: var(--color-grey);
		translate: -100% 0;
	}

	.lightbox__stage.is-loading .lightbox__progress {
		opacity: 1;
		transition: opacity 0.2s 0.3s;
	}

	.lightbox__stage.is-loading .lightbox__progress::after {
		animation: sweep 1.1s var(--ease-soft) infinite;
	}

	.lightbox__strip {
		display: flex;
		justify-content: safe center;
		gap: 0.375rem;
		padding-bottom: 0.375rem;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scrollbar-width: none;
	}

	.lightbox__strip::-webkit-scrollbar {
		display: none;
	}

	.lightbox__strip[hidden] {
		display: none;
	}

	.lightbox__thumb {
		position: relative;
		flex: none;
		width: 3rem;
		height: 3rem;
		padding: 0;
		border: 0;
		background: color-mix(in srgb, var(--color-ink) 8%, transparent);
		opacity: 0.4;
		cursor: pointer;
		transition: opacity 0.2s;
	}

	.lightbox__thumb img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		-webkit-user-drag: none;
	}

	.lightbox__thumb:hover,
	.lightbox__thumb:focus-visible {
		opacity: 0.8;
	}

	.lightbox__thumb[aria-current="true"] {
		opacity: 1;
	}

	.lightbox__thumb[aria-current="true"]::after {
		content: "";
		position: absolute;
		inset: auto 0 -0.375rem;
		height: 2px;
		background: var(--color-ink);
	}

	@media (max-height: 34rem) {
		.lightbox__strip {
			display: none;
		}
	}

	@media (prefers-reduced-motion: reduce) {
		html:not(.force-motion) .lightbox__stage.is-loading .lightbox__progress::after {
			width: 100%;
			animation: none;
			translate: 0 0;
			opacity: 0.5;
		}
	}

	.gallery-link {
		cursor: zoom-in;
	}
}

@keyframes drift {
	from {
		translate: 0 -6%;
	}
	to {
		translate: 0 6%;
	}
}

@keyframes unveil {
	from {
		clip-path: inset(100% 0 0 0);
	}
}

@keyframes sweep {
	to {
		translate: 340% 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	html:not(.force-motion) *,
	html:not(.force-motion) ::before,
	html:not(.force-motion) ::after {
		animation-duration: 0.01ms !important;
		transition-duration: 0.01ms !important;
	}

	html:not(.force-motion) .animate-rise,
	html:not(.force-motion) .home .content > .wp-block-columns > .wp-block-column {
		animation: none;
	}
}

@media (min-width: 64rem) {
	.home #main {
		padding-top: calc(6rem - 30px + var(--text-display) * 0.44 - 0.875rem);
	}
}

.home .content > .wp-block-columns > .wp-block-column {
	animation: settle 1.1s var(--ease-soft, cubic-bezier(0.2, 0.7, 0.2, 1)) both;
	animation-delay: 0.15s;
}

.home .content > .wp-block-columns > .wp-block-column:nth-child(2) {
	animation-delay: 0.3s;
}

.home .content > .wp-block-columns > .wp-block-column:nth-child(3) {
	animation-delay: 0.45s;
}

@keyframes settle {
	from {
		opacity: 0;
		transform: translateY(0.75rem);
	}
}

.cv-section {
	display: grid;
	gap: 1.5rem;
	margin-top: 4rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--color-ink);
	scroll-margin-top: calc(var(--wp-admin--admin-bar--height, 0px) + 6rem);
}

.cv-section__title {
	font-size: var(--wp--preset--font-size--heading);
	line-height: 0.95;
	font-weight: 800;
	font-stretch: 75%;
	letter-spacing: -0.01em;
	text-transform: uppercase;
}

.cv-section__body > :first-child {
	margin-top: 0;
}

@media (min-width: 48rem) {
	.cv-section {
		grid-template-columns: repeat(12, minmax(0, 1fr));
		column-gap: 2rem;
		margin-top: 6rem;
	}

	.cv-section__title {
		grid-column: span 4;
	}

	.cv-section__body {
		grid-column: span 8;
	}
}

@media (min-width: 64rem) {
	.cv-section {
		scroll-margin-top: calc(var(--wp-admin--admin-bar--height, 0px) + 2.5rem);
	}
}

.cv-entries {
	display: grid;
	gap: 2rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.cv-section__body > .cv-f + .cv-f,
.cv-section__body > .content + .cv-f {
	margin-top: 1.5rem;
}

.cv-entry {
	display: flow-root;
	line-height: 1.45;
}

.cv-entry > .date {
	display: inline-block;
	color: var(--color-grey);
	font-variant-numeric: tabular-nums;
}

.cv-entry > .date + .date {
	margin-left: 0.35em;
}

.cv-entry > .main > :first-child {
	margin-top: 0;
}

.cv-entry > .main > :last-child {
	margin-bottom: 0;
}

.cv-entry > .to::before {
	content: "\2013\00a0";
}

@media (min-width: 40rem) {
	.cv-entry > .date {
		float: left;
	}

	.cv-entry > .main {
		margin-left: calc(8.5em + 2rem);
	}
}

.strong {
	font-weight: 700;
}

.muted {
	color: var(--color-grey);
}

.italic {
	font-style: italic;
}

.cv-img {
	max-width: 100%;
	height: auto;
}

.wp-block-table.contact-table table {
	border-collapse: collapse;
}

.wp-block-table.contact-table td {
	padding: 0.35rem 0;
	border: 0;
	vertical-align: top;
	line-height: 1.45;
}

.wp-block-table.contact-table td:first-child {
	color: var(--color-grey);
}

@media (min-width: 40rem) {
	.wp-block-table.contact-table td:first-child {
		width: 1%;
		padding-right: 2rem;
		white-space: nowrap;
	}
}

@media (width < 40rem) {
	.wp-block-table.contact-table td {
		display: block;
	}

	.wp-block-table.contact-table td:first-child {
		padding-bottom: 0;
	}
}

.wp-block-columns.pub-section {
	gap: 1rem 2rem;
	margin: 4rem 0 0;
	padding-top: 1.5rem;
	border-top: 1px solid var(--color-ink);
}

.wp-block-columns.pub-section:first-child {
	margin-top: 0;
}

@media (min-width: 48rem) {
	.wp-block-columns.pub-section {
		margin-top: 6rem;
	}
}

.wp-block-columns.pub-section :is(h2, h3) {
	margin: 0;
}

.wp-block-columns.pub-section p {
	margin-block: 0 2rem;
	line-height: 1.45;
}

.wp-block-columns.pub-section p:has(+ .pub-links) {
	margin-bottom: 0.5rem;
}

.wp-block-columns.pub-section p:last-child {
	margin-bottom: 0;
}

.wp-block-columns.pub-section p.pub-links {
	font-weight: 600;
}

.pub-links a::after {
	content: "\00a0\2192";
	display: inline-block;
	transition: transform 0.3s ease;
}

.pub-links a:is(:hover, :focus-visible)::after {
	transform: translateX(3px);
}

@media (min-width: 64rem) {
	body:not(.home) #main {
		padding-top: calc(6rem - 30px);
	}

	[data-rail] nav {
		margin-top: 2rem;
	}

	#menu-main-menu {
		gap: 0.875rem;
	}

	#menu-main-menu > li > ul {
		gap: 0;
		margin-top: 0.25rem;
	}

	#menu-main-menu ul a.slash {
		padding-block: 0.125rem;
	}
}

.footer-note {
	margin-top: 0.35rem;
	font-size: 0.75rem;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	color: var(--color-grey);
}

.footer-end {
	margin-left: auto;
	text-align: right;
}

.footer-contact {
	display: grid;
	gap: 0;
	font-size: 0.75rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.19;
	text-transform: none;
	color: var(--color-ink);
}

.footer-contact a {
	color: inherit;
	text-decoration: none;
}

.footer-contact a:hover {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

:is(.content, .thesis-text) :is(p:has(+ p), p + p):not([class]) {
	text-align: justify;
	hyphens: auto;
	text-wrap: pretty;
}

html[data-text="-1"] { font-size: 90%; }
html[data-text="1"] { font-size: 112.5%; }
html[data-text="2"] { font-size: 125%; }
html[data-text="3"] { font-size: 140%; }

:root:not([data-theme="light"]) {
	--wp--preset--color--paper: #151413;
	--wp--preset--color--ink: #ece8e1;
	--wp--preset--color--grey: #a9a39b;
	--wp--preset--color--line: #3a3733;
	--wp--preset--color--mute: #7d776f;
	color-scheme: dark;
}

:root:not([data-theme="light"]) .mark__circle {
	color: var(--color-paper);
}

:root:not([data-theme="light"]) .mark:hover .mark__circle .mark__g,
:root:not([data-theme="light"]) .mark:focus-visible .mark__circle .mark__g {
	color: #7a6648;
}

:root:not([data-theme="light"]) .mark:hover .mark__pill .mark__g:not(.mark__slash),
:root:not([data-theme="light"]) .mark:focus-visible .mark__pill .mark__g:not(.mark__slash) {
	color: #c9c3ba;
}



.a11y {
	display: flex;
	gap: 0.375rem;
	font-family: var(--font-sans);
}

.a11y__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.25rem;
	height: 2.25rem;
	padding: 0 0.5rem;
	border: 1px solid color-mix(in srgb, currentColor 35%, transparent);
	border-radius: 0.25rem;
	background: transparent;
	color: inherit;
	font: 700 0.875rem/1 var(--font-sans);
	letter-spacing: 0;
	cursor: pointer;
	transition: background-color 0.3s ease-out, border-color 0.3s ease-out;
}

.a11y__btn--big {
	font-size: 1.0625rem;
}

.a11y__btn span {
	margin-left: 1px;
	font-weight: 500;
}

.a11y__btn:hover,
.a11y__btn:focus-visible {
	border-color: currentColor;
	background: color-mix(in srgb, currentColor 8%, transparent);
}

.a11y__btn[aria-pressed="true"] {
	border-color: currentColor;
	background: color-mix(in srgb, currentColor 16%, transparent);
}

.a11y__btn:disabled {
	opacity: 0.35;
	cursor: default;
	background: transparent;
}

@media (pointer: coarse) {
	.a11y__btn {
		min-width: 2.75rem;
		height: 2.75rem;
	}
}

.a11y--rail {
	margin-top: 2.5rem;
}

.wp-block-gallery.has-nested-images {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	gap: 1rem;
}

.wp-block-gallery.has-nested-images .gallery-row {
	display: flex;
	gap: 1rem;
	width: 100%;
}

.wp-block-gallery.has-nested-images .gallery-row figure.wp-block-image {
	display: block !important;
	flex: var(--ratio, 1.33) 1 0 !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
}

.wp-block-gallery.has-nested-images figure.wp-block-image :is(a, img) {
	display: block !important;
	flex: none !important;
	width: 100% !important;
	height: auto !important;
	object-fit: initial !important;
}

:root {
	--slash-on: #8a6a42;
	--wash: color-mix(in srgb, var(--slash-on) 12%, transparent);
	--wash-strong: color-mix(in srgb, var(--slash-on) 24%, transparent);
}

:root:not([data-theme="light"]) {
	--slash-on: #d2ad7c;
}

#menu-main-menu a.slash,
#menu-main-menu a.slash:hover {
	color: inherit;
}

.slash:is(:hover, :focus-visible, [data-current], [aria-pressed="true"], .active)::before {
	color: var(--slash-on);
	font-weight: 500;
}

:root :is(.wp-element-button, .wp-block-button__link) {
	transition: background-color 0.15s linear, border-color 0.15s linear, color 0.15s linear;
}

:root :is(.wp-element-button, .wp-block-button__link):is(:hover, :focus-visible),
:root details[open] > summary.wp-element-button {
	border-color: var(--color-ink);
	background-color: var(--color-ink);
	color: var(--color-paper);
}

:root :is(.wp-element-button, .wp-block-button__link):active {
	background-color: color-mix(in srgb, var(--color-ink) 82%, var(--color-paper));
}

.a11y__btn {
	transition: background-color 0.15s linear, border-color 0.15s linear;
}

.a11y__btn:not(:disabled):is(:hover, :focus-visible),
.a11y__btn[aria-pressed="true"] {
	border-color: currentColor;
	background: var(--color-ink);
	color: var(--color-paper);
}

.a11y__btn:not(:disabled):active {
	background: color-mix(in srgb, var(--color-ink) 82%, var(--color-paper));
}

:is(.thesis-bar, .thesis-menu) .thesis-bar__button {
	transition: background-color 0.15s linear, border-color 0.15s linear, color 0.15s linear;
}

:is(.thesis-bar, .thesis-menu) .thesis-bar__button:is(:hover, :focus-visible),
:is(.thesis-bar, .thesis-menu) .thesis-bar__button[aria-expanded="true"] {
	border-color: var(--color-ink);
	background: var(--color-ink);
	color: var(--color-paper);
}

:is(.thesis-bar, .thesis-menu) .thesis-bar__button:active {
	background: color-mix(in srgb, var(--color-ink) 82%, var(--color-paper));
}

body .thesis-back:is(:hover, :focus-visible) {
	border-color: var(--color-ink);
	background: var(--color-ink);
	color: var(--color-paper);
}

body .thesis-back:is(:hover, :focus-visible)::before {
	color: inherit;
}

body :is(.thesis-cite__copy, .thesis-pop__go):is(:hover, :focus-visible) {
	text-decoration: underline 1px;
	text-underline-offset: 0.25em;
}

button[aria-controls="rail-panel"] [data-label] {
	text-decoration: underline 1px transparent;
	text-underline-offset: 0.3em;
	transition: text-decoration-color 0.15s linear;
}

button[aria-controls="rail-panel"]:is(:hover, :focus-visible, [aria-expanded="true"]) [data-label] {
	text-decoration-color: var(--slash-on);
}

:root :is(.wp-element-button, .wp-block-button__link, .lightbox__button, .thesis-bar__button, .thesis-back, button[aria-controls="rail-panel"]) {
	font-weight: 800;
	font-stretch: 75%;
	letter-spacing: -0.01em;
	text-transform: lowercase;
}

:root :is(.lightbox__button, .thesis-bar__button, button[aria-controls="rail-panel"]) {
	font-size: 1rem;
}
