/**
 * GrowthMed Consent Gate — consent UI (two-step opt-out: banner + modal).
 * All selectors scoped to .gm-cc-* so nothing leaks into client themes.
 * Self-contained: no external fonts/images, pure CSS toggle.
 */

.gm-cc-banner,
.gm-cc-banner *,
.gm-cc-overlay,
.gm-cc-overlay *,
.gm-cc-dns-link {
	box-sizing: border-box;
}

/* ---------------------------------------------------------------- Banner */
.gm-cc-banner {
	position: fixed;
	left: 0;
	right: 0;
	top: var(--gm-cc-banner-top, auto);
	bottom: var(--gm-cc-banner-bottom, 0);
	/* Max z + kept last-in-DOM by consent-manager (same-z ties resolve by DOM
	   order, and chat/ADA widgets mount at max z after us). The banner is a slim
	   strip and dismissal is one tap, so briefly overlaying widget icons beats
	   marketing bubbles covering the legal notice. */
	z-index: 2147483647;
	display: none; /* shown by JS only when a decision is needed */
	background: #ffffff;
	border-top: 1px solid #d8d8d8;
	box-shadow: var(--gm-cc-banner-shadow, 0 -2px 12px rgba(0, 0, 0, 0.12));
	color: #1f1f1f;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.5;
}

.gm-cc-banner-inner {
	position: relative; /* anchor for the absolute dismiss X */
	padding: 18px 56px 18px 32px; /* right gutter keeps text/buttons clear of the corner X (32px + 10px inset + 14px) */
	display: flex;
	align-items: center;
	justify-content: center; /* desktop: text + buttons as ONE centred group (owner, 2026-10-21), not spread to both edges */
	gap: 32px;
	max-width: 1240px;
	margin: 0 auto;
}

.gm-cc-banner-text {
	margin: 0;
	flex: 0 1 760px; /* readable measure; shrinks on narrower screens */
}

/* Block mode: narrower text column so the centered button group lands center-right (not jammed at the edge). */
.gm-cc-mode-block .gm-cc-banner-text {
	flex: 0 1 620px;
}

.gm-cc-banner-text a {
	color: var(--gm-cc-accent, #0b63c4);
	text-decoration: underline;
}

.gm-cc-banner-actions {
	flex: 0 0 auto; /* sits right beside the text inside the centred group */
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	white-space: nowrap;
}

/* Tablet (641-1023px): not enough room for text and buttons side by side, so
   the text takes the full width and the buttons centre on their own row. */
@media (min-width: 641px) and (max-width: 1023px) {
	.gm-cc-banner-inner {
		flex-wrap: wrap;
		gap: 14px;
	}

	.gm-cc-banner-text {
		flex: 1 1 100%;
	}

	.gm-cc-banner-actions {
		flex: 1 1 100%;
		justify-content: center;
	}
}

/* ---------------------------------------------------------------- Buttons */
.gm-cc-btn {
	display: inline-block;
	background: #1a1a1a;
	color: #ffffff;
	border: 0;
	border-radius: 4px;
	padding: 11px 22px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	cursor: pointer;
	text-align: center;
}

.gm-cc-btn:hover {
	background: #000000;
}

/* Banner "Cookie settings" — subtle/outlined (Redfin-style) so it doesn't pull
   the eye away from the easy dismiss (X). The modal's red "Save Preferences"
   keeps .gm-cc-btn's prominent fill. */
.gm-cc-settings {
	background: transparent;
	color: #1f1f1f;
	border: 1px solid #b5b5b5;
}

.gm-cc-settings:hover {
	background: #f1f1f1;
}

.gm-cc-x,
.gm-cc-modal-x {
	background: transparent;
	border: 0;
	color: #6b6b6b;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
	padding: 0 4px;
}

.gm-cc-x:hover,
.gm-cc-modal-x:hover {
	color: #1f1f1f;
}

/* Banner dismiss (X): a small, fixed-size corner control, identical on every site.
   Pinned in the top-right corner of .gm-cc-banner-inner (the banner's real
   centre-of-attention is the text + Cookie settings; the X is a quiet escape).
   All geometry is also pinned with !important further down (theme `button {}`
   rules otherwise inflate it to a big grey circle with an off-centre glyph).
   32px is above the WCAG 2.2 AA 24px minimum target. */
.gm-cc-x {
	position: absolute;
	top: 12px; /* centre on the first text line (18px padding + half a 21px line - 16px) */
	right: 12px;
	width: 32px;
	height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	margin: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: inherit;
	font-size: 22px;
	font-weight: 400;
	line-height: 1;
	cursor: pointer;
	transition: background-color 0.15s ease;
}

.gm-cc-x:hover,
.gm-cc-x:focus-visible {
	background: #ececec;
	color: #1f1f1f;
}

.gm-cc-x:focus-visible {
	outline: 2px solid var(--gm-cc-accent, #0b63c4);
	outline-offset: 2px;
}

/* ---------------------------------------------------------------- Modal */
.gm-cc-overlay {
	position: fixed;
	inset: 0;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2147483647; /* modal tops everything while open */
	display: none; /* flex when open (set inline by JS) */
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, var(--gm-cc-overlay, 0.5));
	padding: 20px;
}

.gm-cc-modal {
	position: relative;
	display: flex;
	flex-direction: column;
	background: #ffffff;
	color: #1f1f1f;
	width: 100%;
	max-width: 600px;
	max-height: 90vh;
	overflow: hidden;
	border-radius: 6px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.55;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
}

/* Fixed header — stays put while the body scrolls */
.gm-cc-modal-header {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 24px;
	background: #ffffff;
	border-bottom: 1px solid #e4e4e4;
}

/* Scrollable body */
.gm-cc-modal-body {
	flex: 1 1 auto;
	min-height: 0; /* lets the body shrink and scroll so the actions row below it always stays inside the card */
	overflow-y: auto;
	padding: 20px 24px 24px;
}

.gm-cc-modal-x {
	flex: 0 0 auto;
}

.gm-cc-modal h2 {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
}

.gm-cc-modal h3 {
	margin: 22px 0 6px;
	font-size: 16px;
	font-weight: 700;
}

.gm-cc-modal p {
	margin: 0 0 14px;
}

.gm-cc-modal a {
	color: var(--gm-cc-accent, #0b63c4);
	text-decoration: underline;
}

/* Theme isolation: client themes style bare h2/h3/p/a/button/label/input/span
   (fonts, sizes, caps, colours). Re-assert the plugin's own typography on every
   element inside the banner and popup, so the text, size and colours are the
   same on every site. Specificity .gm-cc-overlay .gm-cc-modal X (0,2,1) +
   !important on the properties themes commonly force. */
.gm-cc-banner,
.gm-cc-banner *,
.gm-cc-overlay .gm-cc-modal,
.gm-cc-overlay .gm-cc-modal * {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	text-shadow: none !important;
	font-style: normal !important;
}

.gm-cc-banner,
.gm-cc-overlay .gm-cc-modal,
.gm-cc-overlay .gm-cc-modal h2,
.gm-cc-overlay .gm-cc-modal h3,
.gm-cc-overlay .gm-cc-modal p {
	text-align: left !important; /* themes centre h3/p; legal text reads left-aligned */
}

.gm-cc-overlay .gm-cc-modal .gm-cc-modal-actions {
	text-align: right !important;
}

.gm-cc-overlay .gm-cc-modal h2 {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #1f1f1f !important;
	background: none !important;
	border: 0 !important;
}

.gm-cc-overlay .gm-cc-modal h3 {
	margin: 22px 0 6px !important;
	padding: 0 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.3 !important;
	color: #1f1f1f !important;
	background: none !important;
	border: 0 !important;
}

.gm-cc-overlay .gm-cc-modal p {
	font-weight: 400 !important;
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-size: 14px !important;
	line-height: 1.55 !important;
	color: #1f1f1f !important;
}

.gm-cc-overlay .gm-cc-modal p.gm-cc-row-desc {
	font-weight: 400 !important;
	margin: 6px 0 0 !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
	color: #555555 !important;
}

.gm-cc-overlay .gm-cc-modal a {
	color: var(--gm-cc-accent, #0b63c4) !important;
	font-size: inherit !important;
	font-weight: 400 !important;
	text-decoration: underline !important;
	background: none !important;
}

.gm-cc-overlay .gm-cc-modal .gm-cc-row-label {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #1f1f1f !important;
}

.gm-cc-overlay .gm-cc-modal .gm-cc-always {
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--gm-cc-accent, #0b63c4) !important;
}

.gm-cc-banner .gm-cc-banner-text {
	font-weight: 400 !important;
	font-size: var(--gm-cc-banner-fs, 14px) !important;
	line-height: 1.5 !important;
	color: #1f1f1f !important;
}

.gm-cc-banner .gm-cc-banner-text a {
	color: var(--gm-cc-accent, #0b63c4) !important;
	text-decoration: underline !important;
}

/* Buttons: themes recolour/resize every <button>; keep the plugin's own. */
.gm-cc-banner .gm-cc-btn,
.gm-cc-overlay .gm-cc-modal .gm-cc-btn {
	display: inline-block !important;
	width: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 11px 22px !important;
	border-radius: 4px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	box-shadow: none !important;
	background: #1a1a1a !important;
	color: #ffffff !important;
	border: 0 !important;
}

.gm-cc-banner .gm-cc-btn:hover,
.gm-cc-overlay .gm-cc-modal .gm-cc-btn:hover {
	background: #000000 !important;
}

.gm-cc-banner .gm-cc-settings {
	background: transparent !important;
	color: #1f1f1f !important;
	border: 1px solid #b5b5b5 !important;
}

.gm-cc-banner .gm-cc-settings:hover {
	background: #f1f1f1 !important;
}

.gm-cc-banner .gm-cc-x,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x {
	box-sizing: border-box !important;
	-webkit-appearance: none !important;
	appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 32px !important;
	height: 32px !important;
	min-width: 0 !important;
	min-height: 0 !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	background: transparent !important;
	box-shadow: none !important;
	text-shadow: none !important;
	text-align: center !important;
	text-indent: 0 !important;
	text-decoration: none !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	letter-spacing: normal !important;
	color: #1f1f1f !important;
	cursor: pointer !important;
}

.gm-cc-banner .gm-cc-x {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	left: auto !important;
	bottom: auto !important;
	float: none !important;
}

.gm-cc-banner .gm-cc-x:hover,
.gm-cc-banner .gm-cc-x:focus,
.gm-cc-banner .gm-cc-x:focus-visible,
.gm-cc-banner .gm-cc-x:active,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x:hover,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x:focus,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x:focus-visible,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x:active {
	/* Every state keeps the control's own 32px box: themes add transforms, shadows,
	   padding or pseudo-element halos on button:hover that would otherwise grow the grey
	   hover disc past the button and off the glyph. */
	width: 32px !important;
	height: 32px !important;
	min-width: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	box-shadow: none !important;
	transform: none !important;
	translate: none !important;
	scale: none !important;
	filter: none !important;
	opacity: 1 !important;
	background: #ececec !important;
	color: #1f1f1f !important;
	outline: 0 !important;
}

.gm-cc-banner .gm-cc-x:not(:hover):not(:active):not(:focus-visible):focus,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x:not(:hover):not(:active):not(:focus-visible):focus {
	background: transparent !important;
}

.gm-cc-banner .gm-cc-x:focus-visible,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x:focus-visible {
	outline: 2px solid var(--gm-cc-accent, #0b63c4) !important;
	outline-offset: 0 !important;
}

/* Banner X: the grey disc is always shown, not only on hover, so the X stands out
   and gets clicked right away; hover/press darkens it a little. The popup's X is unchanged. */
.gm-cc-banner .gm-cc-x,
.gm-cc-banner .gm-cc-x:not(:hover):not(:active):not(:focus-visible):focus {
	background: #ececec !important;
}

.gm-cc-banner .gm-cc-x:hover,
.gm-cc-banner .gm-cc-x:active {
	background: #dcdcdc !important;
}

.gm-cc-banner .gm-cc-x::before,
.gm-cc-banner .gm-cc-x::after,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x::before,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x::after {
	content: none !important;
	display: none !important;
}

/* Close glyph: an inline SVG (two strokes), not the "×" character. A text glyph
   centres its LAYOUT box, but the ink of "×" sits low/left inside that box and
   varies by font, so the icon looked off-centre in the hover disc on some
   themes/browsers. Geometry is font-independent; the button's flex centring
   puts the 14px icon dead centre of the 32px disc. */
.gm-cc-banner .gm-cc-x svg,
.gm-cc-overlay .gm-cc-modal .gm-cc-modal-x svg {
	display: block !important;
	width: 14px !important;
	height: 14px !important;
	margin: 0 !important;
	padding: 0 !important;
	fill: none !important;
	stroke: currentColor !important;
	stroke-width: 2 !important;
	stroke-linecap: round !important;
	pointer-events: none !important;
	flex: 0 0 auto !important;
}

/* Toggle: themes style input[type=checkbox] and label; neutralise both. */
.gm-cc-overlay .gm-cc-switch {
	display: inline-block !important;
	margin: 0 !important;
	padding: 0 !important;
}

.gm-cc-overlay .gm-cc-switch input {
	position: absolute !important;
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
}

/* ---------------------------------------------------------------- Preference rows */
.gm-cc-row {
	padding: 16px 0;
	border-top: 1px solid #e4e4e4;
}

.gm-cc-row:last-of-type {
	border-bottom: 1px solid #e4e4e4;
}

.gm-cc-row-main {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.gm-cc-row-label {
	font-weight: 600;
}

.gm-cc-row-desc {
	margin: 6px 0 0;
	font-size: 13px;
	line-height: 1.45;
	color: #555555;
}

.gm-cc-always {
	color: var(--gm-cc-accent, #0b63c4);
	font-weight: 600;
	white-space: nowrap;
}

.gm-cc-modal-actions {
	flex: 0 0 auto; /* Save Preferences is always visible: the card never grows past the viewport, the body scrolls */
	margin-top: 0;
	padding: 12px 24px 16px;
	background: #ffffff;
	border-top: 1px solid #e4e4e4;
	text-align: right;
}

/* ---------------------------------------------------------------- Toggle switch */
.gm-cc-switch {
	position: relative;
	display: inline-block;
	width: 50px;
	height: 28px;
	flex: 0 0 auto;
}

.gm-cc-switch input {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
}

.gm-cc-slider {
	position: absolute;
	cursor: pointer;
	inset: 0;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: #c4c4c4;
	border-radius: 28px;
	transition: background 0.2s;
}

.gm-cc-slider::before {
	content: "";
	position: absolute;
	height: 22px;
	width: 22px;
	left: 3px;
	bottom: 3px;
	background: #ffffff;
	border-radius: 50%;
	transition: transform 0.2s;
}

.gm-cc-switch input:checked + .gm-cc-slider {
	background: #1a8754;
}

.gm-cc-switch input:checked + .gm-cc-slider::before {
	transform: translateX(22px);
}

.gm-cc-switch input:focus-visible + .gm-cc-slider {
	outline: 2px solid var(--gm-cc-accent, #0b63c4);
	outline-offset: 2px;
}

/* ---------------------------------------------------------------- Do Not Sell link (lives inside the site footer) */
/* Quiet by default: small, no background of its own (it inherits the footer's
   look), no underline until hover. Placement is a class set by the JS from the
   per-site "Footer link position" setting: gm-cc-dns-pos-left|center|right
   (network default: left). Precedence: per-site rule in site-overrides.css >
   measured alignment of the row the link follows (data-gm-copy-align, below) >
   position class. */
.gm-cc-dns-bar {
	box-sizing: border-box;
	display: block;
	width: 100%;
	margin: 0;
	padding: 10px 0; /* horizontal spacing comes from the theme container (or JS fallback) */
	text-align: left; /* default = left; see the pos classes and the measured alignment below */
	font-family: inherit;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: normal;
	text-transform: none;
	/* No background, border or colour here: it inherits the footer's own styling
	   so it blends into whatever theme it lands in. */
}

.gm-cc-dns-bar.gm-cc-dns-pos-left {
	text-align: left;
}

.gm-cc-dns-bar.gm-cc-dns-pos-center {
	text-align: center;
}

.gm-cc-dns-bar.gm-cc-dns-pos-right {
	text-align: right;
}

/* The link follows the alignment the script measured on the copyright / last footer row,
   at every width (rohamplasticsurgery at 2000px: a left copyright with the link hung right by
   the position class). Same specificity as the position classes, later in the source, so it
   beats them; the per-site html.gm-cc-site-<key> rules (0,2,1) still beat it. */
.gm-cc-dns-bar[data-gm-copy-align="left"] {
	text-align: left;
}

.gm-cc-dns-bar[data-gm-copy-align="right"] {
	text-align: right;
}

.gm-cc-dns-bar .gm-cc-dns-link,
.gm-cc-dns-bar .gm-cc-dns-link:hover,
.gm-cc-dns-bar .gm-cc-dns-link:focus,
.gm-cc-dns-bar .gm-cc-dns-link:active {
	display: inline;
	margin: 0;
	padding: 0;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	font: inherit !important;
	letter-spacing: inherit !important;
	text-transform: none !important;
	color: inherit !important; /* beat the theme's own a:hover so it never goes dark-on-dark */
	text-decoration: none;
	cursor: pointer;
}

/* Quieter than the footer's own text (owner, 2026-10-21): 0.6 opacity over the copied row colour, full on
   hover / focus. !important so a theme's own `a { opacity }` cannot win. The script adds .gm-cc-dns-op75 where
   0.6 would drop the blended contrast under 3:1 (an already dim copyright colour). */
.gm-cc-dns-bar .gm-cc-dns-link {
	opacity: 0.6 !important;
}

.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-op75 {
	opacity: 0.75 !important;
}

.gm-cc-dns-bar .gm-cc-dns-link:hover,
.gm-cc-dns-bar .gm-cc-dns-link:focus,
.gm-cc-dns-bar .gm-cc-dns-link:focus-visible {
	opacity: 1 !important;
}

.gm-cc-dns-bar .gm-cc-dns-link:hover,
.gm-cc-dns-bar .gm-cc-dns-link:focus-visible {
	text-decoration: underline; /* hover feedback = underline, never a colour change */
}

.gm-cc-dns-bar .gm-cc-dns-link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

/* Contrast rescue (set by consent-manager when inherited color fails WCAG AA
   against the real footer background — e.g. black-on-black when a theme colors
   text via child selectors only). Must be AFTER the inherit rules: same
   importance, higher specificity, later source order. */
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-link--light,
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-link--light:hover,
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-link--light:focus,
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-link--light:active {
	color: #ffffff !important;
}

.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-link--dark,
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-link--dark:hover,
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-link--dark:focus,
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-link--dark:active {
	color: #1f1f1f !important;
}

/* ---------------------------------------------------------------- Responsive */
@media (max-width: 640px) {
	/* Footer link on phones: follow the copyright line's own alignment (detected in
	   the JS and exposed as data-gm-copy-align), centre included: stacked phone footers
	   are centred. On desktop a measured centre is NOT mapped (owner, 2026-10-21:
	   the link is left unless a per-site rule centres it; newlifergv). Beats the
	   position classes and, by source order, nothing in site-overrides.css applies
	   below 641px. */
	.gm-cc-dns-bar.gm-cc-dns-bar[data-gm-copy-align="left"] {
		text-align: left;
	}

	.gm-cc-dns-bar.gm-cc-dns-bar[data-gm-copy-align="center"] {
		text-align: center;
	}

	.gm-cc-dns-bar.gm-cc-dns-bar[data-gm-copy-align="right"] {
		text-align: right;
	}

	.gm-cc-banner-inner {
		position: relative; /* anchor for the absolute X */
		flex-wrap: wrap;
		gap: 12px;
		padding: 14px 16px;
		padding-right: 52px; /* keep text clear of the corner X (32px + 10px inset + 10px gutter) */
	}

	.gm-cc-banner .gm-cc-x {
		top: 7px !important; /* centre on the first 13px/1.4 text line (14px padding) */
		right: 10px !important;
	}

	.gm-cc-banner-text {
		flex: 1 1 100%; /* full-width line; buttons wrap to the next line */
		/* Compact on small screens: the bottom edge is contested real estate
		   (UserWay bottom-left + chat widgets bottom-right at max z-index). The
		   FULL notice stays present and readable by scrolling — no wording change,
		   no notice_version bump — but the banner claims ~half the height, so the
		   corner widgets overlap far less of it. */
		font-size: 13px;
		line-height: 1.4;
		max-height: 8.5em;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	.gm-cc-settings {
		flex: 1 1 auto;
	}

	/* block-mode 3-button group fills the width and wraps */
	.gm-cc-banner-actions {
		flex: 1 1 100%;
		flex-wrap: wrap;
	}

	.gm-cc-banner-actions .gm-cc-btn {
		flex: 1 1 auto;
	}
}

/* ------------------------------------------------- Footer link: underline setting (assets/consent-manager.js adds the class) */
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-ul-always,
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-ul-always:hover {
	text-decoration: underline;
}
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-ul-none,
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-ul-none:hover,
.gm-cc-dns-bar .gm-cc-dns-link.gm-cc-dns-ul-none:focus-visible {
	text-decoration: none;
}
