/* Self-hosted fonts (SIL Open Font License) — Latin subset, WOFF2. font-display: swap shows
   text at once in a fallback that is size-matched to Barlow (below), so the swap doesn't
   shift the layout. */
@font-face { font-family: "Barlow"; font-style: normal; font-weight: 400; font-display: swap; src: url("fonts/barlow-400-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Barlow"; font-style: normal; font-weight: 600; font-display: swap; src: url("fonts/barlow-600-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Barlow Condensed"; font-style: normal; font-weight: 700; font-display: swap; src: url("fonts/barlow-condensed-700-latin.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
/* Fallbacks: Arial scaled to Barlow's width and height, used until the files arrive. Measured 2026-10-15 in Chrome: body against running text, headings against 12 real listing names and prices (Barlow ascent 1000 / descent 200 per 1000 units). */
@font-face { font-family: "Barlow Fallback"; src: local("Arial"), local("ArialMT"), local("Helvetica"), local("Roboto"); size-adjust: 93.22%; ascent-override: 107.27%; descent-override: 21.45%; line-gap-override: 0%; }
@font-face { font-family: "Barlow Condensed Fallback"; src: local("Arial"), local("ArialMT"), local("Helvetica"), local("Roboto"); font-weight: 700; size-adjust: 78.54%; ascent-override: 127.32%; descent-override: 25.46%; line-gap-override: 0%; }

/* Parking.com.my — direction D. Tokens first: PCMY Core's page CSS reads these. */
:root {
	--pcmy-navy: #0F1E3D;
	--pcmy-navy-2: #1A2C52;
	--pcmy-navy-text: #D5DCEA;    /* body text on navy */
	--pcmy-navy-muted: #B9C4DA;   /* small text on navy */
	--pcmy-accent: #1D5FD6;       /* sign blue: buttons, totals */
	--pcmy-accent-ink: #1D4FB8;   /* links on white (AA) */
	--pcmy-yellow: #FFC72C;       /* verified badge, prices on navy */
	--pcmy-ground: #F2F4F8;
	--pcmy-card: #FFFFFF;
	--pcmy-line: #E6EAF2;
	--pcmy-line-strong: #C9D2E3;
	--pcmy-ink: #0F1E3D;
	--pcmy-muted: #55607A;
	--pcmy-radius: 12px;
	--pcmy-font: Barlow, "Barlow Fallback", system-ui, -apple-system, "Segoe UI", sans-serif;
	--pcmy-display: "Barlow Condensed", "Barlow Condensed Fallback", Barlow, system-ui, sans-serif;
	--pcmy-max: 1180px;
}

body { background: var(--pcmy-ground); color: var(--pcmy-ink); font-family: var(--pcmy-font); font-size: 17px; line-height: 1.5; }
h1, h2, h3, h4 { font-family: var(--pcmy-display); font-weight: 700; color: var(--pcmy-ink); line-height: 1.1; }
h1 { font-size: 2.5rem; } h2 { font-size: 1.6rem; } h3 { font-size: 1.2rem; }
a { color: var(--pcmy-accent-ink); }
a:hover, a:focus { color: var(--pcmy-navy); }
:focus-visible { outline: 3px solid var(--pcmy-yellow); outline-offset: 2px; }
button, input, select, textarea { font-family: inherit; }

.pcmy-wrap { max-width: var(--pcmy-max); margin: 0 auto; padding: 0 20px; }

/* Header */
.pcmy-site-header { background: var(--pcmy-navy); color: #fff; }
.pcmy-header-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; padding-top: 12px; padding-bottom: 12px; }
.pcmy-brand { display: inline-flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; }
.pcmy-brand:hover, .pcmy-brand:focus { color: #fff; }
.pcmy-brand-logo { display: block; height: 56px; width: auto; }
.pcmy-site-footer .pcmy-brand-logo { height: 46px; }
.pcmy-search { flex: 1 1 280px; display: flex; align-items: center; gap: 8px; background: #fff; border-radius: 8px; padding: 0 12px; min-height: 44px; color: var(--pcmy-muted); }
.pcmy-search input[type=search] { flex: 1; border: 0; outline: 0; background: transparent; font-size: 16px; min-height: 42px; padding: 0; color: var(--pcmy-ink); }
.pcmy-menu-toggle { display: none; width: 44px; height: 44px; border: 0; background: transparent; color: #fff; align-items: center; justify-content: center; padding: 0; }
.pcmy-nav { margin-left: auto; display: flex; align-items: center; gap: 20px; } /* menu always flush right, with or without the search box */
.pcmy-nav-cta { display: inline-flex; align-items: center; min-height: 38px; padding: 0 14px; border: 2px solid var(--pcmy-yellow); border-radius: 8px; color: var(--pcmy-yellow); font-weight: 600; text-decoration: none; white-space: nowrap; }
.pcmy-nav-cta:hover, .pcmy-nav-cta:focus { background: var(--pcmy-yellow); color: var(--pcmy-navy); }
.pcmy-nav-list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 4px 20px; }
.pcmy-nav-list a { color: #fff; text-decoration: none; font-weight: 600; display: inline-flex; min-height: 44px; align-items: center; }
.pcmy-nav-list a:hover { color: var(--pcmy-yellow); }

@media (max-width: 1000px) { /* below this the menu no longer fits beside the search box */
	.pcmy-header-row { gap: 10px; }
	.pcmy-brand { flex: 1; }
	.pcmy-brand-logo { height: 46px; }
	.pcmy-menu-toggle { display: inline-flex; }
	.pcmy-search { order: 3; flex-basis: 100%; }
	.pcmy-nav { display: none; order: 4; flex-basis: 100%; margin-left: 0; }
	.pcmy-nav.is-open { display: block; }
	.pcmy-nav-cta { margin: 12px 0 16px; }
	.pcmy-nav-list { flex-direction: column; justify-content: flex-start; gap: 0; }
	.pcmy-nav-list a { width: 100%; border-top: 1px solid var(--pcmy-navy-2); }
}

/* Footer */
.pcmy-site-footer { background: var(--pcmy-navy); color: var(--pcmy-navy-text); margin-top: 48px; }
.pcmy-footer-grid { display: grid; grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 1fr)); gap: 28px 32px; padding-top: 36px; padding-bottom: 24px; }
.pcmy-footer-h { color: #fff; font: 700 1.15rem/1.2 var(--pcmy-display); margin: 4px 0 10px; letter-spacing: .3px; }
.pcmy-footer-note { margin: 12px 0 0; max-width: 38ch; font-size: 15px; }
.pcmy-footer-cta { margin: 14px 0 0; }
.pcmy-footer-cta a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 14px; border-radius: 8px; border: 2px solid var(--pcmy-yellow); color: var(--pcmy-yellow); font-weight: 600; text-decoration: none; }
.pcmy-footer-cta a:hover { background: var(--pcmy-yellow); color: var(--pcmy-navy); }
.pcmy-footer-links { list-style: none; margin: 0; padding: 0; }
.pcmy-footer-links li { padding: 4px 0; }
.pcmy-footer-links a { color: #fff; text-decoration: none; }
.pcmy-footer-links a:hover { color: var(--pcmy-yellow); text-decoration: underline; }
.pcmy-footer-count { color: var(--pcmy-navy-muted); font-size: 13px; margin-left: 4px; }
.pcmy-footer-legal { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; padding-top: 14px; padding-bottom: 24px; border-top: 1px solid var(--pcmy-navy-2); font-size: 14px; color: var(--pcmy-navy-muted); }
.pcmy-footer-legal p { margin: 0; }
.pcmy-footer-legal a { color: var(--pcmy-navy-text); }
@media (max-width: 1000px) { .pcmy-footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .pcmy-footer-about { grid-column: 1 / -1; } }
@media (max-width: 480px) { .pcmy-footer-grid { grid-template-columns: minmax(0, 1fr); } }

/* Pages built by PCMY Core manage their own width and backgrounds: take
   GeneratePress's boxed container and article padding out of the way. */
.pcmy-page .site.grid-container { max-width: none; padding: 0; }
.pcmy-page .site-content { display: block; padding: 0; }
.pcmy-page .content-area, .pcmy-page .site-main { width: 100%; margin: 0; float: none; }
.pcmy-page.separate-containers .inside-article, .pcmy-page .inside-article { background: transparent; padding: 0; }
.pcmy-page.separate-containers .site-main > * { margin-bottom: 0; }

/* Homepage has its own big search in the hero — drop the header copy there. */
body.home .pcmy-site-header .pcmy-search { display: none; }

/* Search suggestions dropdown (pcmy-core assets/js/suggest.js) */
.pcmy-search, .pcmy-home-search { position: relative; }
.pcmy-home-search .pcmy-ac { top: calc(100% + 6px); text-align: left; }
.pcmy-ac { position: absolute; left: 0; right: 0; top: calc(100% + 4px); z-index: 1000; margin: 0; padding: 4px 0; list-style: none; background: #fff; border: 1px solid var(--pcmy-line-strong, #C9D2E3); border-radius: 10px; box-shadow: 0 10px 28px rgba(15, 30, 61, .18); max-height: min(70vh, 380px); overflow-y: auto; }
.pcmy-ac[hidden] { display: none; }
.pcmy-ac a { display: flex; flex-direction: column; gap: 1px; padding: 9px 14px; color: var(--pcmy-ink, #0F1E3D); text-decoration: none; line-height: 1.3; }
.pcmy-ac .pcmy-ac-t { font-weight: 600; }
.pcmy-ac .pcmy-ac-p { font-size: 13px; color: var(--pcmy-muted, #55607A); }
.pcmy-ac li.is-active a, .pcmy-ac a:hover { background: #EEF3FC; }
