*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	padding: 0;
	font-family: var(--ora-font);
	font-size: 16px;
	line-height: var(--ora-lh-body);
	color: var(--ora-text);
	background: var(--ora-white);
	-webkit-font-smoothing: antialiased;
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

a {
	color: var(--ora-magenta);
	text-decoration: none;
}

a:hover {
	color: var(--ora-magenta-dark);
}

.ora-skip {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 100000;
	padding: 0.75rem 1rem;
	background: var(--ora-black);
	color: var(--ora-white);
}

.ora-skip:focus {
	left: 1rem;
	top: 1rem;
}

.ora-container {
	width: min(calc(100% - (2 * var(--ora-gutter))), var(--ora-container));
	max-width: var(--ora-container);
	margin-inline: auto;
}

.ora-container--wide {
	width: min(calc(100% - (2 * var(--ora-gutter))), var(--ora-container-wide));
	max-width: var(--ora-container-wide);
}

.ora-main {
	min-height: 40vh;
}

/* Desktop admin bar offset for sticky header (mobile handled in header.css) */
@media (min-width: 1024px) {
	.admin-bar .ora-header {
		top: 32px;
	}
}

/* WooCommerce notices — never use the broken icon-font glyph (blue box). */
.ora-wc-notice.woocommerce-info,
.ora-wc-notice.woocommerce-message,
.ora-wc-notice.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
	position: relative;
}

.ora-wc-notice.woocommerce-info::before,
.ora-wc-notice.woocommerce-info::after,
.ora-wc-notice.woocommerce-message::before,
.ora-wc-notice.woocommerce-message::after,
.ora-wc-notice.woocommerce-error::before,
.ora-wc-notice.woocommerce-error::after,
.woocommerce-info::before,
.woocommerce-info::after,
.woocommerce-message::before,
.woocommerce-message::after,
.woocommerce-error::before,
.woocommerce-error::after {
	content: none !important;
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	font-size: 0 !important;
	line-height: 0 !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	background: none !important;
	color: transparent !important;
	speak: never;
}
