/*!
Theme Name: Oborina Child
Theme URI: http://det-sad-spasenye.test/test-wordpress
Description: Дочерняя тема для локальной кастомизации тестового контура на базе Kadence.
Author: Den Oborin
Template: kadence
Version: 1.1.0
Text Domain: oborina-child
*/

/*
 * Локальные кастомизации для миграции и адаптации макетов добавляем здесь.
 */

:root {
	/* Shared landing-page foundation: calm, official and content-first. */
	--oborina-blue: var(--global-palette1, #5b9be3);
	--oborina-blue-dark: var(--global-palette1, #5b9be3);
	--oborina-green: var(--global-palette2, #82b957);
	--oborina-green-dark: var(--global-palette2, #82b957);
	--oborina-sun: var(--global-palette10, #ffd35a);
	--oborina-orange: var(--global-palette14, #f29a43);
	--oborina-ink: var(--global-palette3, #32425a);
	--oborina-soft-ink: var(--global-palette4, #5f6875);
	--oborina-accent: var(--oborina-blue);
	--oborina-accent-dark: var(--oborina-blue-dark);
	--oborina-sand: #ffffff;
	--oborina-sky: #ffffff;
	--oborina-surface: #ffffff;
	--oborina-border: #dfe6eb;
	--oborina-shadow: 0 12px 28px rgba(38, 55, 70, 0.07);
	--oborina-radius: 16px;
	--oborina-content-width: 1180px;
	--oborina-content-gutter: clamp(1rem, 3vw, 2rem);
	--oborina-section-space: clamp(3rem, 4vw, 4.5rem);
}

/* Shared site shell: keep the official identity visible on every landing page. */
.site-header .site-header-row-container-inner {
	width: min(calc(100% - (var(--oborina-content-gutter) * 2)), var(--oborina-content-width));
	max-width: var(--oborina-content-width);
	margin-inline: auto;
	padding-inline: 0;
}

/* Keep every desktop header row on the same 1180px content grid. */
.site-top-header-wrap .site-container,
.site-bottom-header-wrap .site-container {
	padding-inline: 0;
}

.site-header .site-branding,
.site-header .brand {
	width: min(360px, 100%) !important;
	max-width: 360px !important;
}

.site-header .custom-logo {
	display: block;
	width: 100%;
	max-width: 360px !important;
	height: auto;
}

.site-header .site-header-item.site-header-item-main-navigation {
	width: 100%;
	max-width: none;
}

.entry-content .ob-hero {
	padding: clamp(1.5rem, 3vw, 2.75rem);
	border: 1px solid var(--oborina-border);
	border-radius: 20px;
	background: #ffffff;
	box-shadow: var(--oborina-shadow);
}

.entry-content .ob-eyebrow {
	display: inline-block;
	margin-bottom: 1rem;
	padding: 0.35rem 0.65rem;
	border: 1px solid #c9dce8;
	border-radius: 7px;
	background: #f5f9fb;
	color: var(--oborina-accent-dark);
	font-size: 0.9rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.entry-content .ob-lead {
	max-width: 54rem;
	color: var(--oborina-soft-ink);
}

.entry-content .ob-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.9rem;
	margin-top: 1.75rem;
}

.entry-content .ob-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.9rem 1.35rem;
	border-radius: 10px;
	background: var(--oborina-accent);
	color: #fff;
	font-weight: 700;
	text-decoration: none;
	box-shadow: 0 8px 16px rgba(36, 86, 117, 0.16);
	transition: transform 0.2s ease, background 0.2s ease;
}

.entry-content .ob-button:hover {
	background: var(--oborina-accent-dark);
	color: #fff;
	transform: translateY(-2px);
}

.entry-content .ob-button.is-secondary {
	background: #ffffff;
	border: 1px solid #b9cbd6;
	color: var(--oborina-accent-dark);
	box-shadow: none;
}

.entry-content .ob-grid {
	display: grid;
	gap: 1.25rem;
	margin: 2rem 0;
}

.entry-content .ob-grid--3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.entry-content .ob-grid--2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.entry-content .ob-card {
	height: 100%;
	padding: 1.5rem;
	border: 1px solid var(--oborina-border);
	border-radius: var(--oborina-radius);
	background: var(--oborina-surface);
	box-shadow: var(--oborina-shadow);
}

.entry-content .ob-card--soft {
	background: #ffffff;
}

.entry-content .ob-card--sand {
	background: #ffffff;
}

.entry-content .ob-card p,
.entry-content .ob-list {
	color: var(--oborina-soft-ink);
}

.entry-content .ob-section {
	margin-top: 3rem;
}

.entry-content .ob-list,
.entry-content .ob-links {
	margin: 0;
	padding-left: 1.2rem;
}

.entry-content .ob-links li,
.entry-content .ob-list li {
	margin-bottom: 0.6rem;
}

.entry-content .ob-links a {
	font-weight: 600;
	text-decoration: none;
}

.entry-content .ob-note {
	padding: 1rem 1.2rem;
	border-left: 4px solid var(--oborina-green);
	border-radius: 0 16px 16px 0;
	background: #f7fafb;
	color: var(--oborina-ink);
}

@media (max-width: 1024px) {
	.entry-content .ob-grid--3,
	.entry-content .ob-grid--2 {
		grid-template-columns: 1fr;
	}

	.entry-content .ob-hero {
		padding: 2rem;
	}
}

.entry-content .home-hero-note {
	padding: 1.25rem 1.25rem;
	border-radius: 16px;
	background: #f7fafb;
	border: 1px solid var(--oborina-border);
}

.entry-content .home-hero-note h3 {
	margin-top: 0;
}

/* Homepage media: keep editorial blocks compact while preserving lightbox images. */
.entry-content .ob-home .wp-block-image {
	margin-top: 0;
	margin-bottom: 1.25rem;
}

.entry-content .ob-home [class*="kadence-columnhome-hero-image"] .wp-block-image {
	display: block;
	flex: 1 1 auto;
	width: 100%;
	height: 100%;
	margin: 0;
	overflow: hidden;
	border-radius: 18px;
	background: #e9eef1;
	box-shadow: 0 14px 30px rgba(38, 55, 70, 0.12);
}

.entry-content .ob-home [class*="kadence-columnhome-hero-image"] img {
	display: block;
	width: 100%;
	height: 100% !important;
	max-width: none;
	max-height: none;
	border-radius: inherit;
	object-fit: cover;
	object-position: center;
}

.entry-content .ob-home .home-material-image {
	margin-bottom: 1rem;
	border-radius: 20px;
	background: #fff;
}

.entry-content .ob-home .home-material-image img {
	width: 100%;
	height: auto;
	border-radius: 16px;
	object-fit: contain;
}

.entry-content .ob-home .home-rental-image img,
.entry-content .ob-home .home-fact-image img,
.entry-content .ob-home .home-qr-image img,
.entry-content .ob-home .home-resource-emblem img {
	width: auto;
	max-width: 100%;
	max-height: 420px;
	border-radius: 18px;
	object-fit: contain;
}

/* The rental poster is a portrait original: never crop the preview. */
.entry-content .ob-home .kb-row-layout-idhome-rental {
	align-items: stretch;
}

.entry-content .ob-home .kb-row-layout-idhome-rental .wp-block-kadence-column {
	display: flex;
}

.entry-content .ob-home .kb-row-layout-idhome-rental .kt-inside-inner-col {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
}

.entry-content .ob-home [class*="kadence-columnhome-rental-poster"] {
	align-items: center;
	justify-content: center;
}

.entry-content .ob-home .home-rental-image {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
	width: 100%;
	height: 100%;
	margin: 0;
	text-align: center;
}

.entry-content .ob-home .home-rental-image img {
	display: block;
	align-self: center;
	flex: 0 0 auto;
	width: auto;
	height: auto !important;
	max-width: min(100%, 520px);
	max-height: 520px;
	object-fit: contain;
}

.entry-content .ob-home [class*="kadence-columnhome-rental-copy"] .ob-card {
	height: 100%;
}

/* Gutenberg's lightbox adds an inline cover rule; preserve the full poster. */
body .wp-lightbox-overlay .lightbox-image img,
body .wp-lightbox-overlay figure.wp-block-image img {
	width: auto !important;
	height: auto !important;
	max-width: calc(100vw - 4rem) !important;
	max-height: calc(100vh - 5rem) !important;
	object-fit: contain !important;
}

@media (max-width: 767px) {
	.site-header .site-branding,
	.site-header .brand,
	.site-header .custom-logo {
		width: min(280px, 100%) !important;
		max-width: 280px !important;
	}

	.entry-content .ob-home [class*="kadence-columnhome-hero-image"] .wp-block-image {
		flex: 0 0 auto;
		height: auto;
	}

	.entry-content .ob-home [class*="kadence-columnhome-hero-image"] img {
		height: auto !important;
		max-width: 100%;
		max-height: 360px;
		object-fit: contain;
	}

	.entry-content .ob-home .ob-notice-image img {
		max-height: 220px;
	}
}

.entry-content .home-card {
	height: 100%;
	padding: 1.25rem 1.25rem;
	border-radius: 16px;
	background: #ffffff;
	border: 1px solid var(--oborina-border);
	box-shadow: 0 8px 18px rgba(38, 55, 70, 0.055);
}

.entry-content .home-card h3 {
	margin-top: 0;
}

/* Homepage layout system: constrain every section on the full-width template. */
.entry-content .ob-home > .wp-block-group__inner-container {
	width: min(calc(100% - (var(--oborina-content-gutter) * 2)), var(--oborina-content-width));
	max-width: var(--oborina-content-width);
	margin-inline: auto;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	row-gap: var(--oborina-section-space);
}

/* One page shell: every Gutenberg/Kadence section shares the same measure and rhythm. */
.entry-content .ob-home > .wp-block-group__inner-container > * {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	flex: 0 0 auto;
	margin: 0 !important;
}

/* The only intentional exception to the shared rhythm is the header breathing room. */
.entry-content .ob-home > .wp-block-group__inner-container > .ob-hero {
	margin-top: clamp(1.5rem, 3vw, 2.5rem) !important;
}

.entry-content .ob-home > .wp-block-group__inner-container > .wp-block-group > .wp-block-group__inner-container,
.entry-content .ob-home > .wp-block-group__inner-container > .wp-block-group .wp-block-group__inner-container {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.entry-content .ob-home .kb-row-layout-wrap {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box;
}

.entry-content .ob-home .ob-hero {
	padding: clamp(1.5rem, 3vw, 2.75rem);
}

.entry-content .ob-home .ob-hero .kt-row-column-wrap {
	align-items: stretch;
	padding-block: 0 !important;
}

.entry-content .ob-home .ob-hero .wp-block-kadence-column {
	display: flex;
	align-items: center;
}

.entry-content .ob-home .ob-hero .kt-inside-inner-col {
	width: 100%;
}

.entry-content .ob-home [class*="kadence-columnhome-hero-image"] {
	justify-content: stretch;
	align-items: stretch;
}

.entry-content .ob-home [class*="kadence-columnhome-hero-image"] .kt-inside-inner-col {
	display: flex;
	width: 100%;
	height: 100%;
}

.entry-content .ob-home [class*="kadence-columnhome-hero-image"] .wp-block-image {
	width: 100%;
	height: 100%;
	margin-inline: 0;
	text-align: left;
}

.entry-content .ob-home .ob-card {
	padding: clamp(1.25rem, 2.5vw, 2rem);
}

.entry-content .ob-home .ob-card,
.entry-content .ob-home .ob-note {
	box-sizing: border-box;
}

.entry-content .ob-home .ob-card {
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height: 100%;
}

.entry-content .ob-home .kb-row-layout-idhome-cards .wp-block-kadence-column,
.entry-content .ob-home .kb-row-layout-idhome-support .wp-block-kadence-column,
.entry-content .ob-home .kb-row-layout-idhome-factcheck .wp-block-kadence-column {
	display: flex;
}

.entry-content .ob-home .kb-row-layout-idhome-cards .kt-inside-inner-col,
.entry-content .ob-home .kb-row-layout-idhome-support .kt-inside-inner-col,
.entry-content .ob-home .kb-row-layout-idhome-factcheck .kt-inside-inner-col {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
}

.entry-content .ob-home .kb-row-layout-idhome-cards .ob-card,
.entry-content .ob-home .kb-row-layout-idhome-support .ob-card,
.entry-content .ob-home .kb-row-layout-idhome-factcheck .ob-card {
	width: 100%;
	height: 100%;
	flex: 1 1 auto;
}

.entry-content .ob-home .kb-row-layout-idhome-cards .ob-card h3,
.entry-content .ob-home .kb-row-layout-idhome-support .ob-card h3 {
	min-height: 2.35em;
}

.entry-content .ob-home .kb-row-layout-idhome-cards .ob-card p,
.entry-content .ob-home .kb-row-layout-idhome-support .ob-card p {
	min-height: 4.2em;
}

.entry-content .ob-home .kb-row-layout-idhome-cards .ob-card .wp-block-button,
.entry-content .ob-home .kb-row-layout-idhome-support .ob-card .wp-block-button {
	margin-top: auto;
}

.entry-content .ob-home .ob-section {
	margin-top: 0;
}

.entry-content .ob-home .ob-section > .wp-block-heading {
	max-width: 22ch;
}

.entry-content .ob-home .ob-section > .wp-block-paragraph {
	max-width: 70ch;
	color: var(--oborina-soft-ink);
}

.entry-content .ob-home > .wp-block-group__inner-container > .ob-section,
.entry-content .ob-home > .wp-block-group__inner-container > .ob-note {
	margin-inline: 0;
}

/* Parent materials are a real gallery: no crop, clear captions, native lightbox. */
.entry-content .ob-home .ob-gallery-section {
	padding: clamp(1.5rem, 3vw, 2.5rem);
	border: 1px solid var(--oborina-border);
	border-radius: 20px;
	background: #ffffff;
	box-shadow: var(--oborina-shadow);
}

.entry-content .ob-home .home-gallery {
	display: grid !important;
	align-items: start;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.75rem);
	margin: 2rem 0 0;
	padding: 0;
}

.entry-content .ob-home .home-gallery > .wp-block-image {
	display: block !important;
	height: auto !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0.75rem;
	border: 1px solid rgba(50, 66, 90, 0.1);
	border-radius: 16px;
	background: #fff;
	box-shadow: none;
	transition: border-color 0.2s ease, background-color 0.2s ease;
}

.entry-content .ob-home .home-gallery > .wp-block-image:hover {
	border-color: #b9cbd6;
	background: #fbfcfd;
}

.entry-content .ob-home .home-gallery > .wp-block-image:focus-within {
	outline: 3px solid rgba(47, 111, 159, 0.22);
	outline-offset: 3px;
}

.entry-content .ob-home .home-gallery .wp-block-image img {
	display: block;
	width: 100%;
	height: auto !important;
	max-height: none !important;
	border-radius: 14px;
	object-fit: contain;
}

.entry-content .ob-home .home-gallery figure.wp-block-image .wp-element-caption {
	position: static !important;
	display: block;
	max-height: none !important;
	overflow: visible !important;
	box-sizing: border-box;
	margin: 0.75rem 0.25rem 0.1rem;
	padding: 0 !important;
	background: none !important;
	color: var(--oborina-ink);
	font-size: 0.92rem;
	font-weight: 600;
	line-height: 1.35;
	min-height: 2.7em;
	text-align: left;
}

.entry-content .ob-home .kb-row-layout-idhome-factcheck .ob-card {
	padding: clamp(0.75rem, 1.5vw, 1rem);
}

.entry-content .ob-home .kb-row-layout-idhome-factcheck .home-fact-image {
	margin-bottom: 0.75rem;
}

.entry-content .ob-home .kb-row-layout-idhome-factcheck .home-fact-image img {
	width: 100%;
	max-height: 360px;
	border-radius: 12px;
	object-fit: contain;
}

.entry-content .ob-home .kb-row-layout-idhome-factcheck h3 {
	margin: auto 0 0;
	font-size: clamp(1.05rem, 1.7vw, 1.3rem);
}

.entry-content .ob-home .kb-row-layout-idhome-resources .home-qr-image {
	display: flex;
	justify-content: center;
	margin-bottom: 1.25rem;
}

.entry-content .ob-home .kb-row-layout-idhome-resources .home-qr-image img {
	width: auto;
	max-width: 210px;
	max-height: 216px;
	border: 8px solid #ffffff;
	border-radius: 12px;
	box-shadow: 0 8px 20px rgba(38, 55, 70, 0.08);
	image-rendering: auto;
}

.entry-content .ob-home .kb-row-layout-idhome-resources .home-resource-emblem img {
	width: auto;
	max-width: 72px;
	max-height: 78px;
}

.entry-content .ob-home .ob-cta {
	display: block;
	margin-top: 0;
	padding: clamp(1.5rem, 3vw, 2.25rem);
	border: 1px solid #cbdbe5;
	border-left: 5px solid var(--oborina-accent);
	border-radius: var(--oborina-radius);
	background: #ffffff;
	box-shadow: var(--oborina-shadow);
}

.entry-content .ob-home .ob-cta p {
	color: var(--oborina-soft-ink);
}

.entry-content .ob-home .ob-cta .wp-block-buttons {
	display: flex;
	flex-wrap: wrap;
}

.entry-content .ob-home .ob-cta .wp-block-button {
	display: flex;
}

.site-header .primary-menu-container .menu {
	flex-wrap: nowrap;
	justify-content: flex-end;
	gap: clamp(0.5rem, 1.4vw, 1.25rem);
}

.site-header .primary-menu-container .menu > .menu-item {
	flex: 0 0 auto;
}

/* Header HTML component: operational information left, service links right. */
.site-top-header-wrap .site-header-top-section-left {
	width: 100%;
	min-width: 0;
}

.site-top-header-wrap .site-top-header-inner-wrap.site-header-row-no-center {
	grid-template-columns: minmax(0, 1fr);
}

.site-top-header-wrap .site-header-item {
	width: 100%;
}

.site-top-header-wrap .header-html,
.site-top-header-wrap .header-html-inner {
	width: 100%;
}

.site-top-header-wrap .ob-header-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 2rem;
	width: 100%;
	color: var(--oborina-soft-ink);
	font-size: 0.82rem;
	line-height: 1.35;
}

.site-top-header-wrap .ob-header-meta__identity,
.site-top-header-wrap .ob-header-meta__services {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.3rem 0.75rem;
}

.site-top-header-wrap .ob-header-meta__identity > span::before {
	content: '·';
	margin-right: 0.75rem;
	color: #9aaab5;
}

.site-top-header-wrap .ob-header-meta__identity strong {
	color: var(--oborina-ink);
	font-weight: 650;
}

.site-top-header-wrap .ob-header-meta__services a {
	color: var(--global-palette1, #5b9be3);
	font-weight: 600;
	text-decoration: none;
	text-underline-offset: 0.18em;
}

.site-top-header-wrap .ob-header-meta__services a:hover,
.site-top-header-wrap .ob-header-meta__services a:focus-visible {
	color: var(--global-palette2, #82b957);
	text-decoration: underline;
}

.site-bottom-header-wrap .site-header-item:has(.header-button) {
	margin-left: auto;
}

/* Header accessibility action: stable SVG icon instead of a browser-dependent emoji. */
.site-bottom-header-wrap a.header-button[href='#accessibility-mode'] {
	display: inline-flex;
	align-items: center;
	gap: 0.55em;
}

.site-bottom-header-wrap a.header-button[href='#accessibility-mode']::before {
	width: 1.05em;
	height: 1.05em;
	flex: 0 0 1.05em;
	content: '';
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 5C6.9 5 2.73 8.11 1 12.5 2.73 16.89 6.9 20 12 20s9.27-3.11 11-7.5C21.27 8.11 17.1 5 12 5Zm0 12.5a5 5 0 1 1 0-10 5 5 0 0 1 0 10Zm0-2a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 5C6.9 5 2.73 8.11 1 12.5 2.73 16.89 6.9 20 12 20s9.27-3.11 11-7.5C21.27 8.11 17.1 5 12 5Zm0 12.5a5 5 0 1 1 0-10 5 5 0 0 1 0 10Zm0-2a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Institutional footer: compact, readable and independent from Kadence credits. */
.oborina-site-footer {
	margin-top: clamp(3rem, 6vw, 5rem);
	border-top: 1px solid var(--oborina-border);
	background: #eef3f6;
	color: var(--oborina-ink);
}

.oborina-footer-inner {
	width: min(calc(100% - (var(--oborina-content-gutter) * 2)), var(--oborina-content-width));
	max-width: var(--oborina-content-width);
	margin-inline: auto;
	padding-block: clamp(2.5rem, 5vw, 4rem) 1.25rem;
}

.oborina-footer-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) repeat(2, minmax(0, 1fr));
	gap: clamp(2rem, 5vw, 5rem);
}

.oborina-footer-kicker,
.oborina-footer-heading {
	margin: 0 0 0.8rem;
	color: var(--oborina-accent);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	line-height: 1.3;
	text-transform: uppercase;
}

.oborina-footer-title {
	max-width: none;
	margin: 0 0 1rem;
	color: var(--oborina-heading);
	font-size: clamp(1.3rem, 1.8vw, 1.55rem);
	line-height: 1.2;
	text-wrap: balance;
}

.oborina-footer-meta {
	margin: 0 0 0.75rem;
	color: var(--oborina-soft-ink);
	font-size: 0.95rem;
	line-height: 1.65;
}

.oborina-footer-list {
	display: grid;
	gap: 0.65rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.oborina-footer-list a,
.oborina-footer-bottom a {
	color: var(--oborina-soft-ink);
	text-decoration: none;
	text-underline-offset: 0.15em;
}

.oborina-footer-list a:hover,
.oborina-footer-list a:focus-visible,
.oborina-footer-bottom a:hover,
.oborina-footer-bottom a:focus-visible {
	color: var(--oborina-accent);
	text-decoration: underline;
}

.oborina-footer-bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 0.5rem 1.5rem;
	margin-top: clamp(2rem, 4vw, 3rem);
	padding-top: 1rem;
	border-top: 1px solid rgba(65, 85, 104, 0.16);
	color: var(--oborina-soft-ink);
	font-size: 0.86rem;
	line-height: 1.5;
}

.oborina-footer-bottom p {
	margin: 0;
}

/*
 * Vacancies: legacy imported table.
 * Keep the source content editable while giving the data a clear, accessible grid.
 */
.page-id-64 .entry-content table.kollektiv {
	width: 100% !important;
	margin: 1.5rem 0 2rem;
	border: 1px solid var(--oborina-border);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 12px;
	background: var(--oborina-surface);
	color: var(--oborina-ink);
	font-size: 0.93rem;
	line-height: 1.5;
	table-layout: fixed;
	overflow: hidden;
}

.page-id-64 .entry-content table.kollektiv td {
	padding: 0.85rem 0.75rem;
	border: 0;
	border-right: 1px solid var(--oborina-border);
	border-bottom: 1px solid var(--oborina-border);
	vertical-align: top;
	word-break: normal;
	overflow-wrap: normal;
	hyphens: auto;
}

.page-id-64 .entry-content table.kollektiv tr:first-child td {
	background: var(--global-palette7, #eaf5fd);
	color: var(--oborina-ink);
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.4;
}

.page-id-64 .entry-content table.kollektiv tr:last-child td {
	border-bottom: 0;
}

.page-id-64 .entry-content table.kollektiv td:last-child {
	border-right: 0;
}

.page-id-64 .entry-content table.kollektiv td:nth-child(1) {
	width: 30%;
}

.page-id-64 .entry-content table.kollektiv td:nth-child(2) {
	width: 13%;
}

.page-id-64 .entry-content table.kollektiv td:nth-child(3) {
	width: 20%;
}

.page-id-64 .entry-content table.kollektiv td:nth-child(4) {
	width: 13%;
}

.page-id-64 .entry-content table.kollektiv td:nth-child(5) {
	width: 24%;
}

.page-id-64 .entry-content table.kollektiv p,
.page-id-64 .entry-content table.kollektiv span {
	margin: 0;
	color: inherit !important;
	font: inherit !important;
}

@media (max-width: 900px) {
	.page-id-64 .entry-content table.kollektiv {
		display: block;
		max-width: 100%;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-color: var(--global-palette1, #5b9be3) var(--global-palette8, #f7fbff);
		scrollbar-width: thin;
	}

	.page-id-64 .entry-content table.kollektiv tbody {
		display: table;
		width: 820px;
		table-layout: fixed;
	}
}

/*
 * Contacts: semantic Gutenberg table.
 * The narrow content column needs a compact grid with a safe mobile scroll area.
 */
.page-id-1247 .entry-content .ob-contact-table {
	max-width: 100%;
	margin: 1.5rem 0 2rem;
	overflow-x: auto;
	border: 1px solid var(--oborina-border);
	border-radius: 12px;
	background: var(--oborina-surface);
	-webkit-overflow-scrolling: touch;
}

.page-id-1247 .entry-content .ob-contact-table table {
	width: 100%;
	min-width: 680px;
	margin: 0;
	border: 0;
	border-collapse: separate;
	border-spacing: 0;
	table-layout: fixed;
	color: var(--oborina-ink);
	font-size: 0.9rem;
	line-height: 1.5;
}

.page-id-1247 .entry-content .ob-contact-table th,
.page-id-1247 .entry-content .ob-contact-table td {
	padding: 0.9rem 0.85rem;
	border: 0;
	border-right: 1px solid var(--oborina-border);
	border-bottom: 1px solid var(--oborina-border);
	text-align: left;
	vertical-align: top;
	overflow-wrap: anywhere;
}

.page-id-1247 .entry-content .ob-contact-table th {
	background: var(--global-palette7, #eaf5fd);
	color: var(--oborina-ink);
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.35;
}

.page-id-1247 .entry-content .ob-contact-table th:last-child,
.page-id-1247 .entry-content .ob-contact-table td:last-child {
	border-right: 0;
}

.page-id-1247 .entry-content .ob-contact-table tbody tr:last-child td {
	border-bottom: 0;
}

.page-id-1247 .entry-content .ob-contact-table th:nth-child(1),
.page-id-1247 .entry-content .ob-contact-table td:nth-child(1) {
	width: 23%;
}

.page-id-1247 .entry-content .ob-contact-table th:nth-child(2),
.page-id-1247 .entry-content .ob-contact-table td:nth-child(2) {
	width: 24%;
}

.page-id-1247 .entry-content .ob-contact-table th:nth-child(3),
.page-id-1247 .entry-content .ob-contact-table td:nth-child(3) {
	width: 18%;
}

.page-id-1247 .entry-content .ob-contact-table th:nth-child(4),
.page-id-1247 .entry-content .ob-contact-table td:nth-child(4) {
	width: 35%;
}

.page-id-1247 .entry-content .ob-contact-table a {
	font-weight: 600;
	text-underline-offset: 0.16em;
}

@media (hover: hover) {
	.page-id-1247 .entry-content .ob-contact-table tbody tr:hover td {
		background: color-mix(in srgb, var(--global-palette7, #eaf5fd) 42%, white);
	}
}

@media (max-width: 767px) {
	.page-id-1247 .entry-content .ob-contact-table {
		margin-inline: calc(-1 * min(0.5rem, var(--oborina-content-gutter, 1rem)));
		border-radius: 10px;
		scrollbar-color: var(--global-palette1, #5b9be3) var(--global-palette8, #f7fbff);
		scrollbar-width: thin;
	}
}

@media (max-width: 1024px) {
	.entry-content .ob-home .home-gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.site-top-header-wrap .site-container,
	.site-bottom-header-wrap .site-container {
		padding-inline: var(--oborina-content-gutter);
	}

	.site-top-header-wrap .ob-header-meta {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.3rem;
	}

	.site-top-header-wrap .ob-header-meta__services {
		gap: 0.3rem 0.65rem;
	}

	.entry-content .ob-home > .wp-block-group__inner-container {
		width: calc(100% - 2rem);
	}

	.entry-content .ob-home .ob-gallery-section {
		padding: 1.25rem;
		border-radius: 22px;
	}

	.entry-content .ob-home .ob-cta {
		display: block;
	}

	.oborina-footer-inner {
		width: calc(100% - 2rem);
	}

	.oborina-footer-grid {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.oborina-footer-bottom {
		display: grid;
		gap: 0.4rem;
	}
}

@media (max-width: 540px) {
	.entry-content .ob-home .home-gallery {
		grid-template-columns: 1fr;
	}
}
