/*
Theme Name: NOA Villas
Theme URI: https://book.noavillas.fi
Author: Roket Agency
Author URI: https://roket.lt
Description: Block theme for the NOA Villas booking site. Design tokens live in theme.json and are mirrored as short CSS variables below for the NOA Booking blocks.
Requires at least: 6.6
Requires PHP: 8.1
Version: 0.3.7
Text Domain: noavillas
*/

/* Short aliases used by NOA Booking blocks (match the design system names). */
:root {
	--bg: var(--wp--preset--color--bg);
	--paper: var(--wp--preset--color--paper);
	--muted: var(--wp--preset--color--muted);
	--surface: var(--wp--preset--color--surface);
	--card: var(--wp--preset--color--card);
	--field: var(--wp--preset--color--card);
	--ink: var(--wp--preset--color--ink);
	--ink-hover: var(--wp--preset--color--ink-hover);
	--ink-strong: rgba(37, 20, 15, 0.85);
	--ink-soft: rgba(37, 20, 15, 0.72);
	--ink-meta: rgba(37, 20, 15, 0.68);
	--line: rgba(37, 20, 15, 0.16);
	--line-control: rgba(37, 20, 15, 0.3);
	--line-control-strong: rgba(37, 20, 15, 0.5);
	--rating: var(--wp--preset--color--rating);
	--rating-on-dark: #3fbf7f;
	--success: var(--wp--preset--color--success);
	--selected-fill: #eaf3ec;
	--danger: var(--wp--preset--color--danger);
	--notice: #f6e8cc;
	--notice-line: #e0b46e;
	--notice-ink: #8a5a17;
	--radius-sm: 8px;
	--radius-md: 10px;
	--radius-lg: 14px;
	--radius-pill: 999px;
	--shadow-card: var(--wp--preset--shadow--card);
	--shadow-raised: var(--wp--preset--shadow--raised);
	--shadow-pop: var(--wp--preset--shadow--pop);
}

/* Links: plain selectors (low specificity) so block classes can recolour them. */
a {
	color: inherit;
	text-underline-offset: 3px;
}

.noa-site-header {
	padding-left: clamp(20px, 4vw, 48px) !important;
	padding-right: clamp(20px, 4vw, 48px) !important;
}

:focus-visible {
	outline: 2px solid var(--ink);
	outline-offset: 3px;
}

a,
button,
input,
select,
textarea {
	transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease;
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
	}
}

@media (max-width: 600px) {
	.noa-site-header .wp-block-buttons {
		display: none;
	}
}

/* Header: keep logo and navigation on one row on tablets. */
.noa-site-header {
	flex-wrap: nowrap !important;
	gap: 16px;
}
.noa-site-header > .wp-block-group {
	gap: clamp(12px, 2vw, 28px) !important;
}
@media (max-width: 960px) {
	.noa-site-header .wp-block-navigation__container {
		gap: 18px !important;
	}
}
@media (max-width: 780px) {
	.noa-site-header .wp-block-buttons {
		display: none;
	}
}

/* Checkout header: logo only, centred. */
.noa-site-header--checkout {
	justify-content: center !important;
}
