/* Release 2 chrome: the header panels and the footer's four columns.
   Header panels (guide R89, R91; boards 67E, 69A, 6B1 at 1440 and 6DV, 6EV, 6FP at 390), made compact
   with N14 ("Ingen bild, fast kort") and N15 ("Vid hover"): both panels share one grid, two columns of
   rows (icon, name, one line) and the demo card, at the same size and place, so nothing moves while the
   pointer moves. Markup: a core Navigation Submenu .guestro-mega, its links and the synced block in
   li.guestro-mega__extra (inc/mega-menu.php). Desktop: a card over the header frame. Open menu below
   75em: an accordion row per panel. */
.guestro-capability[id] { scroll-margin-block-start: var(--wp--custom--gu--articles--anchor-offset); }

/* Row icons: Tabler outline icons (MIT), drawn as masks in the row's icon colour. */
.guestro-icon-route { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 19a2 2 0 1 0 4 0a2 2 0 0 0 -4 0'/%3E%3Cpath d='M19 7a2 2 0 1 0 0 -4a2 2 0 0 0 0 4z'/%3E%3Cpath d='M11 19h5.5a3.5 3.5 0 0 0 0 -7h-8a3.5 3.5 0 0 1 0 -7h4.5'/%3E%3C/svg%3E"); }
.guestro-icon-menu { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 5h8'/%3E%3Cpath d='M13 9h5'/%3E%3Cpath d='M13 15h8'/%3E%3Cpath d='M13 19h5'/%3E%3Cpath d='M3 4m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z'/%3E%3Cpath d='M3 14m0 1a1 1 0 0 1 1 -1h4a1 1 0 0 1 1 1v4a1 1 0 0 1 -1 1h-4a1 1 0 0 1 -1 -1z'/%3E%3C/svg%3E"); }
.guestro-icon-google { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 11a3 3 0 1 0 6 0a3 3 0 0 0 -6 0'/%3E%3Cpath d='M17.657 16.657l-4.243 4.243a2 2 0 0 1 -2.827 0l-4.244 -4.243a8 8 0 1 1 11.314 0z'/%3E%3C/svg%3E"); }
.guestro-icon-regulars { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19.5 12.572l-7.5 7.428l-7.5 -7.428a5 5 0 1 1 7.5 -6.566a5 5 0 1 1 7.5 6.572'/%3E%3C/svg%3E"); }
.guestro-icon-messages { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v10a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-10z'/%3E%3Cpath d='M3 7l9 6l9 -6'/%3E%3C/svg%3E"); }
.guestro-icon-ratings { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 17.75l-6.172 3.245l1.179 -6.873l-5 -4.867l6.9 -1l3.086 -6.253l3.086 6.253l6.9 1l-5 4.867l1.179 6.873z'/%3E%3C/svg%3E"); }
.guestro-icon-ai { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 18a2 2 0 0 1 2 2a2 2 0 0 1 2 -2a2 2 0 0 1 -2 -2a2 2 0 0 1 -2 2zm0 -12a2 2 0 0 1 2 2a2 2 0 0 1 2 -2a2 2 0 0 1 -2 -2a2 2 0 0 1 -2 2zm-7 12a6 6 0 0 1 6 -6a6 6 0 0 1 -6 -6a6 6 0 0 1 -6 6a6 6 0 0 1 6 6z'/%3E%3C/svg%3E"); }
.guestro-icon-restaurant { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 3v12h-5c-.023 -3.681 .184 -7.406 5 -12zm0 12v6h-1v-3m-10 -14v17m-3 -17v3a3 3 0 1 0 6 0v-3'/%3E%3C/svg%3E"); }
.guestro-icon-cafe { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 14c.83 .642 2.077 1.017 3.5 1c1.423 .017 2.67 -.358 3.5 -1c.83 -.642 2.077 -1.017 3.5 -1c1.423 -.017 2.67 .358 3.5 1'/%3E%3Cpath d='M8 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2'/%3E%3Cpath d='M12 3a2.4 2.4 0 0 0 -1 2a2.4 2.4 0 0 0 1 2'/%3E%3Cpath d='M3 10h14v5a6 6 0 0 1 -6 6h-2a6 6 0 0 1 -6 -6v-5z'/%3E%3Cpath d='M16.746 16.726a3 3 0 1 0 .252 -5.555'/%3E%3C/svg%3E"); }
.guestro-icon-foodtruck { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0'/%3E%3Cpath d='M17 17m-2 0a2 2 0 1 0 4 0a2 2 0 1 0 -4 0'/%3E%3Cpath d='M5 17h-2v-11a1 1 0 0 1 1 -1h9v12m-4 0h6m4 0h2v-6h-8m0 -5h5l3 5'/%3E%3C/svg%3E"); }
.guestro-icon-chain { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21l18 0'/%3E%3Cpath d='M3 7v1a3 3 0 0 0 6 0v-1m0 1a3 3 0 0 0 6 0v-1m0 1a3 3 0 0 0 6 0v-1h-18l2 -4h14l2 4'/%3E%3Cpath d='M5 21l0 -10.15'/%3E%3Cpath d='M19 21l0 -10.15'/%3E%3Cpath d='M9 21v-4a2 2 0 0 1 2 -2h2a2 2 0 0 1 2 2v4'/%3E%3C/svg%3E"); }
.guestro-icon-hall { --guestro-mega-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 9l5 5v7h-5v-4m0 4h-5v-7l5 -5m1 1v-6a1 1 0 0 1 1 -1h10a1 1 0 0 1 1 1v17h-8'/%3E%3Cpath d='M13 7l0 .01'/%3E%3Cpath d='M17 7l0 .01'/%3E%3Cpath d='M17 11l0 .01'/%3E%3Cpath d='M17 15l0 .01'/%3E%3C/svg%3E"); }
.guestro-mega .wp-block-navigation-item__description { display: block; }
.guestro-mega .wp-block-navigation__submenu-icon svg {
	width: var(--wp--custom--gu--mega--chevron);
	height: var(--wp--custom--gu--mega--chevron);
}
.guestro-mega > [aria-expanded="true"] + .wp-block-navigation__submenu-icon svg { transform: rotate(180deg); }
.guestro-mega__extra { display: contents; }
.guestro-mega__extra > *, .guestro-mega__list, .guestro-mega__card > * { margin-block: 0; }
/* theme.json underlines a Navigation Link on hover through its li; the panel rows change tint instead. */
.guestro-mega .wp-block-navigation__submenu-container .wp-block-navigation-link:hover { text-decoration: none; }
/* A row: the icon beside its name and one line of text. Core makes the row a flex row at (0,5,0). */
.guestro-header .wp-block-navigation .guestro-mega .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content,
.guestro-header .wp-block-navigation .guestro-mega .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content:hover {
	display: grid;
	grid-template-columns: var(--wp--custom--gu--mega--icon) minmax(0, 1fr);
	flex-grow: 1;
	gap: var(--wp--preset--spacing--2) var(--wp--preset--spacing--12);
	align-items: start;
	text-decoration: none;
}
.guestro-mega .wp-block-navigation-item__content > :is(.wp-block-navigation-item__label, .wp-block-navigation-item__description) { grid-column: 2; }
.guestro-mega [class*="guestro-icon-"] > .wp-block-navigation-item__content::before {
	content: "";
	grid-row: 1 / span 2;
	width: var(--wp--custom--gu--mega--icon);
	height: var(--wp--custom--gu--mega--icon);
	margin-block-start: var(--wp--preset--spacing--2);
	background: var(--wp--preset--color--text-secondary);
	mask: var(--guestro-mega-icon) center / contain no-repeat;
}
.guestro-mega .guestro-mega__list { display: flex; flex-direction: column; padding: 0; list-style: none; }
.guestro-header .wp-block-navigation .guestro-mega__group { flex-direction: column; align-items: stretch; }
.guestro-mega__label { display: block; font-weight: var(--wp--custom--gu--mega--medium); }

@media (width >= 75em) {
	/* The panel spans the sticky header part, so nothing between them is positioned. */
	.guestro-header nav.guestro-header__nav,
	.guestro-header nav.guestro-header__nav :is(.wp-block-navigation__responsive-container, .wp-block-navigation__responsive-close, .wp-block-navigation__responsive-dialog, .wp-block-navigation__responsive-container-content, .wp-block-navigation__container, .guestro-mega):not(.is-menu-open) { position: static; }
	/* The card: the header frame's width, just under the band; four rows per column, then the next column,
	   the foot links under them and the demo column beside both. One row's height, from its type, sets
	   Din verksamhet's first row to the height of four rows, so both panels are the same size. */
	.guestro-header .wp-block-navigation .guestro-mega > .wp-block-navigation__submenu-container {
		--guestro-mega-row: calc(2 * var(--wp--preset--spacing--8) + var(--wp--custom--gu--mega--small) * var(--wp--custom--gu--mega--small-line) + var(--wp--preset--spacing--2) + var(--wp--preset--font-size--base) * var(--wp--custom--gu--mega--body-line));
		position: absolute;
		inset-inline: max(var(--wp--style--root--padding-left), calc((100% - var(--wp--custom--gu--chrome--frame)) / 2));
		top: calc(100% + var(--wp--preset--spacing--8));
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) var(--wp--custom--gu--mega--card);
		grid-template-rows: repeat(4, minmax(var(--guestro-mega-row), auto)) auto;
		grid-auto-flow: column;
		gap: 0 var(--wp--preset--spacing--24);
		align-items: start;
		width: auto;
		min-width: 0;
		height: auto;
		padding: var(--wp--preset--spacing--24);
		border: var(--wp--custom--gu--card--border-width) solid var(--wp--preset--color--border-subtle);
		border-radius: var(--wp--custom--gu--radius--xl);
		background: var(--wp--preset--color--canvas);
		color: var(--wp--preset--color--text);
		box-shadow: var(--wp--preset--shadow--xl);
		cursor: auto;
	}
	.guestro-header .wp-block-navigation .guestro-mega > .wp-block-navigation__submenu-container { display: none; }
	.guestro-header .wp-block-navigation .guestro-mega > .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container {
		display: grid;
		opacity: 1;
		translate: 0 0;
		transition: opacity var(--wp--custom--gu--mega--fade) ease-out, translate var(--wp--custom--gu--mega--fade) ease-out;
	}
	@starting-style {
		.guestro-header .wp-block-navigation .guestro-mega > .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container {
			opacity: 0;
			translate: 0 calc(-1 * var(--wp--preset--spacing--4));
		}
	}
	/* An open panel sets the page back with a flat navy wash under the band; the band's hairline goes. */
	.wp-site-blocks > header.wp-block-template-part:has(.guestro-mega > [aria-expanded="true"])::after {
		content: "";
		position: fixed;
		inset: 0;
		z-index: -1;
		background: color-mix(in srgb, var(--wp--preset--color--site-blue) 32%, transparent);
		pointer-events: none;
		transition: opacity var(--wp--custom--gu--mega--fade) ease-out;
	}
	@starting-style {
		.wp-site-blocks > header.wp-block-template-part:has(.guestro-mega > [aria-expanded="true"])::after { opacity: 0; }
	}
	.guestro-header .guestro-header__bar:has(.guestro-mega > [aria-expanded="true"]) { border-bottom-color: transparent; }
	/* One panel replacing another shows at once: both sit in the same place. */
	.guestro-header .wp-block-navigation .guestro-mega.is-instant > .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container { transition: none; }
	/* The toggle reads like the links beside it; open or holding the current page, it is underlined (Lägen board). */
	.guestro-header nav.guestro-header__nav .guestro-mega > .wp-block-navigation-submenu__toggle {
		position: relative;
		padding-inline: var(--wp--preset--spacing--8);
	}
	/* A bridge under an open toggle keeps the pointer over the item on its way down to the card. */
	.guestro-header nav.guestro-header__nav .guestro-mega > .wp-block-navigation-submenu__toggle[aria-expanded="true"]::after {
		content: "";
		position: absolute;
		inset-inline: calc(-1 * var(--wp--preset--spacing--16));
		top: 100%;
		height: var(--wp--custom--gu--mega--bridge);
	}
	.guestro-header nav.guestro-header__nav .guestro-mega > .wp-block-navigation__submenu-icon {
		width: var(--wp--custom--gu--mega--chevron);
		height: var(--wp--custom--gu--mega--chevron);
		margin-inline-start: calc(var(--wp--preset--spacing--4) + var(--wp--preset--spacing--2));
	}
	.guestro-mega:is(.current-menu-ancestor, :has(> [aria-expanded="true"])) > .wp-block-navigation-submenu__toggle .wp-block-navigation-item__label {
		text-decoration: underline;
		text-decoration-thickness: 2px;
		text-underline-offset: var(--wp--custom--gu--chrome--underline-offset);
	}
	.guestro-header .guestro-mega > .wp-block-navigation__submenu-container > .wp-block-navigation-item { min-width: 0; margin: 0; }
	.guestro-header .wp-block-navigation .guestro-mega .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content {
		padding: var(--wp--preset--spacing--8) var(--wp--preset--spacing--12);
		border-radius: var(--wp--custom--gu--radius--md);
		color: var(--wp--preset--color--text);
	}
	/* Hover and focus change only the tint, never the size; the header's white focus ring turns blue on the white card. */
	.guestro-header .guestro-mega > .wp-block-navigation__submenu-container :focus-visible { outline-color: var(--wp--preset--color--focus); }
	.guestro-header .guestro-mega .wp-block-navigation-item:is(:hover, :has(> .wp-block-navigation-item__content:focus-visible)) > .wp-block-navigation-item__content { background: var(--wp--preset--color--brand-subtle); }
	.guestro-header .guestro-mega .wp-block-navigation-item:is(:hover, :has(> .wp-block-navigation-item__content:focus-visible)) > .wp-block-navigation-item__content::before { background: var(--wp--preset--color--brand-text); }
	.guestro-header .guestro-mega .wp-block-navigation__submenu-container .wp-block-navigation-item__label {
		font-size: var(--wp--custom--gu--mega--small);
		font-weight: var(--wp--custom--gu--mega--medium);
		line-height: var(--wp--custom--gu--mega--small-line);
	}
	.guestro-header .guestro-mega .wp-block-navigation-item__description {
		color: var(--wp--preset--color--text-secondary);
		font-size: var(--wp--preset--font-size--base);
		line-height: var(--wp--custom--gu--mega--body-line);
	}
	/* The demo column beside rows and foot, set off by one hairline, its title level with the first row's name. */
	.guestro-mega__card {
		display: flex;
		flex-direction: column;
		gap: var(--wp--preset--spacing--12);
		grid-column: 3;
		grid-row: 1 / -1;
		align-self: stretch;
		padding: var(--wp--preset--spacing--8) 0 0 var(--wp--preset--spacing--24);
		border-inline-start: var(--wp--custom--gu--card--border-width) solid var(--wp--preset--color--border-subtle);
		color: var(--wp--preset--color--text-secondary);
		font-size: var(--wp--preset--font-size--base);
		line-height: var(--wp--custom--gu--mega--body-line);
	}
	.guestro-mega__card .guestro-mega__card-title {
		color: var(--wp--preset--color--text);
		font-size: var(--wp--preset--font-size--h-4);
		font-weight: var(--wp--custom--gu--mega--medium);
		line-height: var(--wp--custom--gu--mega--card-line);
	}
	.guestro-mega__card .wp-block-buttons { margin-block-start: var(--wp--preset--spacing--8); }
	.guestro-mega__foot {
		grid-column: 1 / 3;
		grid-row: 5;
		gap: var(--wp--preset--spacing--32);
		margin-block-start: var(--wp--preset--spacing--12) !important;
		padding: var(--wp--preset--spacing--12) var(--wp--preset--spacing--12) 0;
		border-block-start: var(--wp--custom--gu--card--border-width) solid var(--wp--preset--color--border-subtle);
		font-size: var(--wp--preset--font-size--base);
		font-weight: var(--wp--custom--gu--mega--medium);
		line-height: var(--wp--custom--gu--mega--label-line);
	}
	.guestro-mega__foot > * { margin: 0; }
	.guestro-mega__foot:not(:has(a)) { display: none; }

	/* Din verksamhet: the same grid, one labelled group per column (6B1). */
	.guestro-header .wp-block-navigation .guestro-mega--groups > .wp-block-navigation__submenu-container {
		grid-template-rows: minmax(calc(4 * var(--guestro-mega-row)), auto) auto;
		grid-auto-flow: row;
	}
	.guestro-header .guestro-mega--groups > .wp-block-navigation__submenu-container > .guestro-mega__group { grid-row: 1; }
	.guestro-mega--groups .guestro-mega__card { padding-block-start: 0; }
	.guestro-mega--groups .guestro-mega__foot { grid-row: 2; }
	/* Group names a step below the rows' own lines, so they read as headings, not as stray lines. */
	.guestro-mega__label {
		padding: 0 var(--wp--preset--spacing--12) var(--wp--preset--spacing--8);
		color: var(--wp--preset--color--text-secondary);
		font-size: var(--wp--preset--font-size--small);
		line-height: var(--wp--custom--gu--mega--label-line);
	}
}

@media (width >= 75em) and (prefers-reduced-motion: reduce) {
	.guestro-header .wp-block-navigation .guestro-mega > .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container,
	.wp-site-blocks > header.wp-block-template-part:has(.guestro-mega > [aria-expanded="true"])::after { transition: none; }
}

@media (width < 75em) {
	.guestro-header nav.guestro-header__nav .is-menu-open li.guestro-mega { display: grid; grid-template-columns: 1fr var(--wp--custom--gu--button--touch); align-items: center; }
	.guestro-header .is-menu-open .guestro-mega > .wp-block-navigation-submenu__toggle { grid-area: 1 / 1 / 2 / 3; width: 100%; text-align: start; }
	.guestro-header .is-menu-open .guestro-mega > .wp-block-navigation__submenu-icon {
		display: flex;
		grid-area: 1 / 2;
		align-self: center;
		justify-self: center;
		margin: 0;
		pointer-events: none;
	}
	.guestro-header .is-menu-open .guestro-mega > .wp-block-navigation__submenu-icon svg {
		width: var(--wp--custom--gu--mega--chevron-small);
		height: var(--wp--custom--gu--mega--chevron-small);
	}
	.guestro-header .is-menu-open .guestro-mega > .wp-block-navigation__submenu-container { display: none; }
	.guestro-header .wp-block-navigation .is-menu-open .guestro-mega > .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container {
		display: flex;
		grid-column: 1 / -1;
		flex-direction: column;
		padding: var(--wp--preset--spacing--4) 0 var(--wp--preset--spacing--16);
	}
	.guestro-header .is-menu-open .guestro-mega .wp-block-navigation__submenu-container .wp-block-navigation-item {
		border: 0;
		font-size: var(--wp--preset--font-size--body);
		line-height: var(--wp--custom--gu--mega--title-line);
	}
	.guestro-header .wp-block-navigation.items-justified-center .is-menu-open .guestro-mega .wp-block-navigation__submenu-container .wp-block-navigation-item__content { padding: var(--wp--preset--spacing--8) 0; }
	.guestro-header .is-menu-open .guestro-mega [class*="guestro-icon-"] > .wp-block-navigation-item__content::before { background: var(--wp--preset--color--on-blue-soft); }
	.guestro-header .is-menu-open .guestro-mega :is(.wp-block-navigation-item__description, .guestro-mega__label) {
		color: var(--wp--preset--color--on-blue-soft);
		font-size: var(--wp--preset--font-size--base);
		line-height: var(--wp--custom--gu--mega--body-line);
	}
	.guestro-header .is-menu-open .guestro-mega__label { padding-block: var(--wp--preset--spacing--4); }
	.guestro-header .is-menu-open .guestro-mega__group + .guestro-mega__group .guestro-mega__label { padding-block-start: var(--wp--preset--spacing--16); }
	.guestro-header .is-menu-open :is(.guestro-mega__card, .guestro-mega__wide) { display: none; }
	.guestro-header .is-menu-open .guestro-mega__foot { margin: 0; padding-block-start: var(--wp--preset--spacing--8); }
	.guestro-header .is-menu-open .guestro-mega__foot a {
		display: flex;
		align-items: center;
		min-height: var(--wp--custom--gu--button--touch);
		color: var(--wp--preset--color--on-brand);
		font-size: var(--wp--custom--gu--mega--small);
		font-weight: var(--wp--custom--gu--mega--medium);
		text-decoration: underline;
		text-decoration-thickness: 1px;
	}
	.guestro-header .is-menu-open .guestro-mega__foot a::after { content: none; }
}

/* Footer: Guestro, Din verksamhet, Priser and Kontakt side by side; two by two below 48em with
   Kontakt beside Guestro (boards 7NI, 9J9). */
@media (width < 48em) {
	.guestro-footer .guestro-footer__columns {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: var(--wp--preset--spacing--32) var(--wp--preset--spacing--24);
	}
	.guestro-footer__columns > * { order: 2; }
	.guestro-footer__columns > :first-child { order: 0; }
	.guestro-footer__columns > :last-child { order: 1; }
}
@media (width >= 75em) {
	.guestro-footer .guestro-footer__columns { gap: var(--wp--preset--spacing--32); }
	.guestro-footer .guestro-footer-col { flex-basis: var(--wp--custom--gu--chrome--footer-col-last); }
}

/* Paper v1.3: the platform columns share the existing disclosure store. */
.guestro-mega__section-label { display: none; }
.guestro-header .wp-block-navigation .guestro-mega__section { display: flex; flex-direction: column; align-items: stretch; }
.guestro-mega__section > .wp-block-navigation__submenu-icon { display: none; }
.guestro-mega__section-list { display: flex; flex-direction: column; gap: var(--wp--preset--spacing--8); margin: 0; padding: 0; list-style: none; }
.guestro-header .wp-block-navigation.guestro-paper-navigation .guestro-mega--platform .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content {
	grid-template-columns: minmax(0, 1fr);
	gap: var(--wp--preset--spacing--2);
	margin: 0;
	width: 100%;
	box-sizing: border-box;
	padding: var(--wp--preset--spacing--12);
	color: var(--wp--preset--color--text);
}
.guestro-mega--platform .wp-block-navigation-item__content > :is(.wp-block-navigation-item__label, .wp-block-navigation-item__description) { grid-column: 1; }
.guestro-header .guestro-mega--platform .wp-block-navigation__submenu-container .wp-block-navigation-item__label { font-size: var(--wp--preset--font-size--body); font-weight: var(--wp--custom--gu--mega--medium); line-height: var(--wp--custom--gu--mega--title-line); }
.guestro-header .guestro-mega--platform .wp-block-navigation-item__description { font-size: var(--wp--preset--font-size--base); font-weight: 400; line-height: var(--wp--custom--gu--mega--body-line); color: var(--wp--preset--color--text-secondary); }
.guestro-header .wp-block-navigation.guestro-paper-navigation .guestro-mega--platform .wp-block-navigation__submenu-container .guestro-mega__packages .wp-block-navigation-item .wp-block-navigation-item__content { grid-template-columns: minmax(0, 1fr) var(--wp--custom--gu--mega--icon); column-gap: var(--wp--preset--spacing--12); }
.guestro-mega__packages .wp-block-navigation-item__content::after { content: "→"; grid-column: 2; grid-row: 1 / span 2; align-self: center; color: var(--wp--preset--color--brand-text); font-size: var(--wp--preset--font-size--h-4); }
.guestro-header .guestro-mega--platform .guestro-mega__foot a { color: var(--wp--preset--color--brand-text); text-decoration: none; }
.guestro-header .guestro-mega--platform .guestro-mega__foot a::after { content: " →"; }
.guestro-paper-navigation .guestro-mega--platform a:focus-visible,
.guestro-paper-navigation .guestro-mega--platform button:focus-visible { outline: 2px solid var(--wp--preset--color--focus); outline-offset: 2px; }

@media (width >= 75em) {
	.guestro-header .wp-block-navigation .guestro-mega--platform > .wp-block-navigation__submenu-container {
		grid-template-columns: 330px minmax(0, 1fr) 248px;
		grid-template-rows: auto auto;
		grid-auto-flow: row;
		gap: var(--wp--preset--spacing--20) var(--wp--preset--spacing--24);
	}
	.guestro-header .guestro-mega--platform > .wp-block-navigation__submenu-container > .guestro-mega__section { grid-row: 1; }
	.guestro-header .wp-block-navigation.guestro-paper-navigation .guestro-mega--platform .wp-block-navigation__submenu-container .guestro-mega__section > .guestro-mega__section-toggle { display: none; }
	.guestro-mega__section-label { display: block; padding: 0 var(--wp--preset--spacing--12) var(--wp--preset--spacing--16); color: var(--wp--preset--color--text-secondary); font-size: var(--wp--custom--gu--mega--caption); font-weight: var(--wp--custom--gu--mega--medium); line-height: var(--wp--custom--gu--mega--caption-line); letter-spacing: 0.06em; text-transform: uppercase; }
	.guestro-header .wp-block-navigation.guestro-paper-navigation .guestro-mega--platform .wp-block-navigation__submenu-container .guestro-mega__capabilities .wp-block-navigation-item .wp-block-navigation-item__content { padding-block: calc(var(--wp--preset--spacing--4) + var(--wp--preset--spacing--2)); }
	.guestro-mega--platform .guestro-mega__card { grid-row: 1; gap: var(--wp--preset--spacing--12); padding-block-start: var(--wp--preset--spacing--4); }
	.guestro-mega--platform .guestro-mega__card .guestro-mega__card-title { font-weight: 400; font-size: var(--wp--preset--font-size--h-3); }
	.guestro-mega--platform .guestro-mega__card .wp-block-buttons { margin-block-start: var(--wp--preset--spacing--4); }
	.guestro-mega--platform .guestro-mega__card .wp-block-button__link { min-height: var(--wp--preset--spacing--48); padding: var(--wp--preset--spacing--12) var(--wp--preset--spacing--20); }
	.guestro-mega--platform .guestro-mega__foot { grid-column: 1 / -1; grid-row: 2; margin-block-start: 0 !important; padding-block-start: var(--wp--preset--spacing--16); }
	.guestro-mega--platform .guestro-mega__foot a { display: inline-flex; align-items: center; gap: var(--wp--preset--spacing--4); }
}

@media (width < 75em) {
	/* Core retains scroll locking, focus trapping and focus restoration. Only its middle scrolls. */
	.guestro-paper-navigation .wp-block-navigation__responsive-container.is-menu-open {
		--guestro-overlay-header: 72px;
		--guestro-overlay-footer: max(89px, calc(3em + 40px));
		--guestro-overlay-admin: 0px;
		padding: 0;
		height: 100dvh;
		overflow: hidden;
		background: var(--wp--preset--color--canvas) !important;
		color: var(--wp--preset--color--text) !important;
	}
	.admin-bar .guestro-paper-navigation .wp-block-navigation__responsive-container.is-menu-open { --guestro-overlay-admin: var(--wp-admin--admin-bar--height, 32px); }
	.guestro-paper-navigation .is-menu-open :is(.wp-block-navigation__responsive-close, .wp-block-navigation__responsive-dialog) { position: static; width: 100%; height: 100%; margin: 0; }
	.guestro-header .wp-block-navigation.guestro-paper-navigation .is-menu-open .wp-block-navigation__responsive-container-content {
		position: absolute;
		inset: calc(var(--guestro-overlay-header) + var(--guestro-overlay-admin) + env(safe-area-inset-top)) 0 calc(var(--guestro-overlay-footer) + env(safe-area-inset-bottom));
		display: block;
		width: auto;
		padding: var(--wp--preset--spacing--16) var(--wp--preset--spacing--20) var(--wp--preset--spacing--24);
		overflow-y: auto;
		overscroll-behavior: contain;
		scroll-padding-block: var(--wp--preset--spacing--16);
	}
	.guestro-paper-navigation .is-menu-open .wp-block-navigation__responsive-dialog::after {
		content: "";
		position: fixed;
		inset: auto 0 0;
		height: calc(var(--guestro-overlay-footer) + env(safe-area-inset-bottom));
		z-index: 1;
		border-block-start: var(--wp--custom--gu--card--border-width) solid var(--wp--preset--color--border-subtle);
		background: var(--wp--preset--color--canvas);
	}
	.guestro-header .wp-block-navigation.guestro-paper-navigation .is-menu-open li:has(> .guestro-nav-logo) {
		position: fixed;
		inset: 0 0 auto;
		z-index: 2;
		box-sizing: border-box;
		justify-content: flex-start;
		flex-direction: row;
		align-items: center;
		height: calc(var(--guestro-overlay-header) + var(--guestro-overlay-admin) + env(safe-area-inset-top));
		padding: calc(var(--guestro-overlay-admin) + env(safe-area-inset-top)) var(--wp--preset--spacing--20) 0;
		background: var(--wp--preset--color--site-blue) !important;
	}
	.guestro-paper-navigation .is-menu-open .guestro-nav-logo a { display: inline-flex; align-items: center; min-height: var(--wp--custom--gu--button--touch); }
	.guestro-header .guestro-paper-navigation .is-menu-open .wp-block-navigation__responsive-container-close {
		position: fixed;
		inset: calc(var(--wp--custom--gu--chrome--header-pad-small) + var(--guestro-overlay-admin) + env(safe-area-inset-top)) var(--wp--preset--spacing--20) auto auto;
		z-index: 3;
		color: var(--wp--preset--color--on-brand);
	}
	.guestro-header .guestro-paper-navigation .is-menu-open li:has(> .guestro-nav-logo) + .wp-block-navigation-item { margin-block-start: 0; }
	.guestro-header .guestro-paper-navigation .is-menu-open .wp-block-navigation-item:not(.guestro-nav-login, .guestro-nav-cta):not(:has(> .guestro-nav-logo)) {
		border-color: var(--wp--preset--color--border-subtle);
		font-size: var(--wp--preset--font-size--body);
		font-weight: 400;
	}
	.guestro-header .wp-block-navigation.guestro-paper-navigation .is-menu-open .wp-block-navigation-item__content { padding-block: var(--wp--preset--spacing--12); color: var(--wp--preset--color--text); }
	.guestro-paper-navigation .is-menu-open :focus-visible { outline: 2px solid var(--wp--preset--color--focus); outline-offset: 2px; }
	.guestro-paper-navigation .is-menu-open :is(.guestro-nav-logo a, .wp-block-navigation__responsive-container-close):focus-visible { outline-color: var(--wp--preset--color--on-brand); }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega > .wp-block-navigation-submenu__toggle { min-height: var(--wp--preset--spacing--48); }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega > .wp-block-navigation__submenu-icon { display: none; }
	.guestro-paper-navigation .is-menu-open .guestro-mega > .wp-block-navigation-submenu__toggle::after,
	.guestro-paper-navigation .is-menu-open .guestro-mega__section-toggle::after { content: "+"; float: right; font-weight: 400; }
	.guestro-paper-navigation .is-menu-open .guestro-mega > .wp-block-navigation-submenu__toggle[aria-expanded="true"]::after,
	.guestro-paper-navigation .is-menu-open .guestro-mega__section-toggle[aria-expanded="true"]::after { content: "−"; }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega--platform > .wp-block-navigation-submenu__toggle { padding-block: 0 var(--wp--preset--spacing--8); font-size: var(--wp--preset--font-size--h-2); font-weight: 400; line-height: 1.25; }
	.guestro-header .wp-block-navigation.guestro-paper-navigation .is-menu-open .guestro-mega--platform > .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container { padding: 0; gap: 0; }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega--platform .guestro-mega__section { width: 100%; border: 0; }
	.guestro-header .wp-block-navigation.guestro-paper-navigation .is-menu-open .guestro-mega__section > .guestro-mega__section-toggle { display: block; width: 100%; min-height: var(--wp--preset--spacing--48); padding: var(--wp--preset--spacing--12) 0; border-block-start: var(--wp--custom--gu--card--border-width) solid var(--wp--preset--color--border-subtle); background: transparent; color: var(--wp--preset--color--brand-text); font-size: var(--wp--preset--font-size--base); font-weight: var(--wp--custom--gu--mega--medium); line-height: var(--wp--custom--gu--mega--card-line); text-align: start; }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega__section-list { display: none; width: 100%; gap: var(--wp--preset--spacing--2); }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega__section-toggle[aria-expanded="true"] ~ .guestro-mega__section-list { display: flex; }
	.guestro-header .wp-block-navigation.guestro-paper-navigation .is-menu-open .guestro-mega--platform .wp-block-navigation__submenu-container .wp-block-navigation-item .wp-block-navigation-item__content { padding: calc(var(--wp--preset--spacing--8) + var(--wp--preset--spacing--2)) var(--wp--preset--spacing--12); border-radius: var(--wp--custom--gu--radius--md); }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega .wp-block-navigation-item__description,
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega__label { color: var(--wp--preset--color--text-secondary); }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega [class*="guestro-icon-"] > .wp-block-navigation-item__content::before { background: var(--wp--preset--color--text-secondary); }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega--platform .guestro-mega__foot { display: flex; flex-direction: column; align-items: stretch; width: 100%; gap: 0; padding: var(--wp--preset--spacing--8) 0 var(--wp--preset--spacing--12); border-block-start: var(--wp--custom--gu--card--border-width) solid var(--wp--preset--color--border-subtle); }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega__foot > * { margin: 0; }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega__foot a { color: var(--wp--preset--color--brand-text); font-size: var(--wp--preset--font-size--base); font-weight: 400; }
	.guestro-header .wp-block-navigation.guestro-paper-navigation .is-menu-open .guestro-nav-login {
		position: fixed;
		inset: auto auto calc(var(--wp--preset--spacing--24) + env(safe-area-inset-bottom)) var(--wp--preset--spacing--20);
		z-index: 2;
		width: var(--wp--preset--spacing--96);
		margin: 0;
		font-size: var(--wp--preset--font-size--body);
	}
	.guestro-header .wp-block-navigation.guestro-paper-navigation .is-menu-open .guestro-nav-login .wp-block-navigation-item__content { width: 100%; min-height: var(--wp--preset--spacing--48); box-sizing: border-box; padding: var(--wp--preset--spacing--12) 0; color: var(--wp--preset--color--brand-text); text-align: center; }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-nav-cta {
		position: fixed;
		inset: auto var(--wp--preset--spacing--20) calc(var(--wp--preset--spacing--24) + env(safe-area-inset-bottom)) calc(var(--wp--preset--spacing--20) + var(--wp--preset--spacing--96) + var(--wp--preset--spacing--16));
		z-index: 2;
		width: auto;
	}
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-nav-cta .wp-block-button__link { min-height: var(--wp--preset--spacing--48); padding: var(--wp--preset--spacing--12) var(--wp--preset--spacing--16); font-size: var(--wp--preset--font-size--body); line-height: var(--wp--custom--gu--mega--body-line); background: var(--wp--preset--color--brand-solid); color: var(--wp--preset--color--on-brand); }
}

.guestro-header .guestro-mega--platform .guestro-mega__section-list .wp-block-navigation-item { text-decoration: none; }
.guestro-header .guestro-mega--platform .guestro-mega__section-toggle .wp-block-navigation-item__label { font-size: inherit; font-weight: inherit; line-height: inherit; }
@media (width < 75em) {
	.guestro-header .wp-block-navigation.guestro-paper-navigation .is-menu-open .guestro-mega--platform .wp-block-navigation__submenu-container .guestro-mega__section > button.guestro-mega__section-toggle { padding: var(--wp--preset--spacing--12) 0; border-radius: 0; }
	.guestro-header .guestro-paper-navigation .is-menu-open .guestro-mega__foot a { gap: var(--wp--preset--spacing--4); }
}
