/* RA Greece Tools — matches the royalalloy.com look (yellow #F7B500, charcoal, Ubuntu). */
.ratt-dealers, .ratt-enquiry {
	--ratt-yellow: #F7B500;
	--ratt-ink: #1A1A1A;
	--ratt-text: #2E3D47;
	--ratt-muted: #677885;
	--ratt-line: #EDF2F5;
	--ratt-bg: #F7F9FA;
	font-family: Ubuntu, system-ui, sans-serif;
	color: var(--ratt-text);
}

.ratt-label { display: block; font-size: 14px; font-weight: 500; margin-bottom: 6px; color: var(--ratt-ink); }
.ratt-dealers select, .ratt-dealers input, .ratt-enquiry select, .ratt-enquiry input, .ratt-enquiry textarea {
	width: 100%; box-sizing: border-box; font: inherit; font-size: 16px; color: var(--ratt-ink);
	padding: 11px 14px; border: 2px solid #D8E0E5; border-radius: 10px; background: #fff;
}
.ratt-dealers select:focus, .ratt-dealers input:focus, .ratt-enquiry select:focus, .ratt-enquiry input:focus, .ratt-enquiry textarea:focus {
	outline: none; border-color: var(--ratt-ink); box-shadow: 0 0 0 3px rgba(247, 181, 0, .45);
}
.ratt-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	font: inherit; font-weight: 700; font-size: 15px; cursor: pointer;
	padding: 12px 22px; border-radius: 999px; border: 2px solid var(--ratt-ink);
	background: var(--ratt-ink); color: #fff; white-space: nowrap;
}
.ratt-btn:hover { background: #000; }
.ratt-btn:focus-visible { outline: 3px solid var(--ratt-yellow); outline-offset: 2px; }
.ratt-btn[disabled] { opacity: .6; cursor: wait; }

/* Dealer map */
.ratt-controls { display: flex; gap: 12px; align-items: flex-end; flex-wrap: wrap; margin-bottom: 8px; }
.ratt-controls .ratt-field { min-width: 200px; }
.ratt-controls .ratt-grow { flex: 1 1 260px; }
.ratt-status { margin: 4px 0 12px; font-size: 14px; color: var(--ratt-muted); min-height: 1.4em; }
.ratt-layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 16px; }
.ratt-map { border-radius: 12px; overflow: hidden; border: 1px solid var(--ratt-line); z-index: 0; }
.ratt-list { list-style: none; margin: 0; padding: 0; overflow-y: auto; display: flex; flex-direction: column; gap: 10px; }
.ratt-item {
	display: block; width: 100%; text-align: left; font: inherit; color: inherit; cursor: pointer;
	background: #fff; border: 1px solid #D8E0E5; border-radius: 12px; padding: 14px 16px;
}
.ratt-item:hover, .ratt-item:focus-visible { border-color: var(--ratt-ink); outline: none; box-shadow: inset 4px 0 0 var(--ratt-yellow); }
.ratt-card { display: flex; flex-direction: column; gap: 4px; font-size: 14px; line-height: 1.45; }
.ratt-name { font-size: 16px; color: var(--ratt-ink); }
.ratt-prov { color: var(--ratt-muted); font-size: 13px; }
.ratt-addr { color: var(--ratt-text); }
.ratt-links { display: flex; flex-wrap: wrap; gap: 4px 14px; margin-top: 4px; }
.ratt-links a { color: var(--ratt-ink); font-weight: 700; text-decoration: none; border-bottom: 2px solid var(--ratt-yellow); }
.ratt-pin span {
	display: block; width: 28px; height: 28px; border-radius: 50% 50% 50% 0; transform: rotate(-45deg);
	background: var(--ratt-yellow); border: 3px solid var(--ratt-ink); box-sizing: border-box;
}
.ratt-dealers .leaflet-popup-content { margin: 12px 14px; }
.ratt-dealers .leaflet-popup-content .ratt-card { font-family: inherit; }

@media (max-width: 800px) {
	.ratt-layout { grid-template-columns: 1fr; }
	.ratt-map { height: 380px !important; }
	.ratt-list { max-height: none !important; }
	.ratt-controls .ratt-field, .ratt-near { width: 100%; }
}

/* Enquiry form */
.ratt-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.ratt-span { grid-column: 1 / -1; }
.ratt-note { font-size: 13px; color: var(--ratt-muted); margin: 12px 0 16px; }
.ratt-result { margin-top: 12px; font-weight: 500; }
.ratt-result a { color: var(--ratt-ink); font-weight: 700; }
.ratt-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 640px) { .ratt-grid { grid-template-columns: 1fr; } .ratt-btn-send { width: 100%; } }
/* Greece additions: click-to-load map, service tags, consent checkboxes */
.ratt-map { position: relative; background: var(--ratt-bg); border-radius: 14px; }
.ratt-map-gate { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 24px; text-align: center; font-size: 14px; color: var(--ratt-muted); }
.ratt-map-gate p { max-width: 420px; margin: 0; }
.ratt-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 6px 0 2px; }
.ratt-tag { font-size: 12px; font-weight: 500; padding: 2px 9px; border-radius: 999px; background: var(--ratt-line); color: var(--ratt-ink); }
.ratt-check { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; margin: 8px 0; cursor: pointer; }
.ratt-enquiry .ratt-check input { width: 20px; height: 20px; flex: none; margin: 1px 0 0; padding: 0; accent-color: var(--ratt-ink); }
.ratt-note a { color: inherit; text-decoration: underline; }
