/**
 * NMO brand buttons — Brand Book §05 + html/styles.css
 * Inter 600, .95rem, .04em uppercase, border-radius 3px, 2px border.
 * Variants: .btn-gold, .btn-navy, .btn-outline-white, .btn-outline-navy
 *
 * Scoped to Elementor canvas (front + editor preview).
 */

body.elementor-page .btn,
body.elementor-editor-active .btn,
.elementor-preview .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.85rem 2.25rem;
	font-family: var(--font-sans, Inter, system-ui, sans-serif);
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none;
	border-radius: 3px;
	cursor: pointer;
	transition: color var(--transition, 280ms cubic-bezier(0.4, 0, 0.2, 1)),
		background var(--transition, 280ms cubic-bezier(0.4, 0, 0.2, 1)),
		border-color var(--transition, 280ms cubic-bezier(0.4, 0, 0.2, 1));
	border: 2px solid transparent;
	box-sizing: border-box;
	line-height: 1.2;
}

body.elementor-page .btn:focus-visible,
body.elementor-editor-active .btn:focus-visible {
	outline: 2px solid var(--gold, #c8922a);
	outline-offset: 2px;
}

body.elementor-page .btn-gold,
body.elementor-editor-active .btn-gold {
	background: var(--gold, #c8922a);
	color: var(--white, #fff);
	border-color: var(--gold, #c8922a);
}

body.elementor-page .btn-gold:hover,
body.elementor-editor-active .btn-gold:hover {
	background: transparent;
	color: var(--gold, #c8922a);
}

body.elementor-page .btn-navy,
body.elementor-editor-active .btn-navy {
	background: var(--navy, #0b1d3a);
	color: var(--white, #fff);
	border-color: var(--navy, #0b1d3a);
}

body.elementor-page .btn-navy:hover,
body.elementor-editor-active .btn-navy:hover {
	background: transparent;
	color: var(--navy, #0b1d3a);
}

body.elementor-page .btn-outline-white,
body.elementor-editor-active .btn-outline-white {
	background: transparent;
	color: var(--white, #fff);
	border-color: rgba(255, 255, 255, 0.6);
}

body.elementor-page .btn-outline-white:hover,
body.elementor-editor-active .btn-outline-white:hover {
	background: var(--white, #fff);
	color: var(--navy, #0b1d3a);
	border-color: var(--white, #fff);
}

body.elementor-page .btn-outline-navy,
body.elementor-editor-active .btn-outline-navy {
	background: transparent;
	color: var(--navy, #0b1d3a);
	border-color: var(--navy, #0b1d3a);
}

body.elementor-page .btn-outline-navy:hover,
body.elementor-editor-active .btn-outline-navy:hover {
	background: var(--navy, #0b1d3a);
	color: var(--white, #fff);
}

/* Larger primary CTA (e.g. booking section) — no inline styles */
body.elementor-page .btn.nmo-btn--lg,
body.elementor-editor-active .btn.nmo-btn--lg {
	padding: 1rem 3rem;
	font-size: 1.1rem;
}

/**
 * Download / secondary links — sentence case, not full CTA uppercase.
 * Border radius 3px to match Brand Book §05.
 */
body.elementor-page a.nmo-dl-btn,
body.elementor-editor-active a.nmo-dl-btn,
.elementor-preview a.nmo-dl-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.75rem 1.5rem;
	font-family: var(--font-sans, Inter, system-ui, sans-serif);
	font-size: 0.87rem;
	font-weight: 600;
	color: var(--navy, #0b1d3a);
	text-decoration: none;
	border: 1.5px solid var(--border, #e8e4df);
	border-radius: 3px;
	transition: border-color 0.35s ease, color 0.35s ease;
	box-sizing: border-box;
	line-height: 1.2;
}

body.elementor-page a.nmo-dl-btn:hover,
body.elementor-editor-active a.nmo-dl-btn:hover {
	border-color: var(--gold, #c8922a);
	color: var(--gold, #c8922a);
}

body.elementor-page a.nmo-dl-btn:focus-visible,
body.elementor-editor-active a.nmo-dl-btn:focus-visible {
	outline: 2px solid var(--gold, #c8922a);
	outline-offset: 2px;
}
