/* =========================================================
   Pearl Care Dental — site layout (one file, replaces all earlier patches)
   One container, one gutter, one type scale.
   ========================================================= */
:root {
	--pcd-w: 1120px;                       /* content width */
	--pcd-read: 720px;                     /* reading width */
	--pcd-g: clamp(20px, 5vw, 40px);       /* side gutter */
	--pcd-edge: max(var(--pcd-g), calc((100% - var(--pcd-w)) / 2));
}

/* ---------- Type scale ---------- */
body { font-size: clamp(1rem, .96rem + .2vw, 1.0625rem); line-height: 1.65; font-weight: 400; letter-spacing: 0; }
h1, h2, h3, h4 { text-wrap: balance; }
h1 { font-size: clamp(2.1rem, 1.5rem + 2.6vw, 3.25rem); line-height: 1.12; }
h2 { font-size: clamp(1.55rem, 1.25rem + 1.3vw, 2.15rem); line-height: 1.2; }
h3 { font-size: clamp(1.15rem, 1.08rem + .3vw, 1.3rem); line-height: 1.3; }
p, li { text-wrap: pretty; }
a { text-underline-offset: 3px; }

/* ---------- Header: aligned to the content edge ---------- */
.pcd-header { position: sticky; top: 0; z-index: 50; gap: 1.5rem; border-bottom: 1px solid var(--wp--preset--color--accent-6); padding: .6rem var(--pcd-edge) !important; }
.admin-bar .pcd-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .pcd-header { top: 46px; } }
.pcd-header .wp-block-site-logo { flex: none; }
.pcd-header .wp-block-site-logo img { width: 84px !important; height: auto; }
.pcd-header-right { flex: 1 1 auto; justify-content: flex-end; align-items: center; flex-wrap: nowrap !important; gap: 1.25rem !important; min-width: 0; }
.pcd-nav { font: 700 .95rem/1.2 var(--wp--preset--font-family--arimo); }
.pcd-nav, .pcd-nav .wp-block-navigation__container { flex-wrap: nowrap !important; white-space: nowrap; gap: 1.5rem; }
.pcd-nav a { text-decoration: none; color: var(--wp--preset--color--contrast); }
.pcd-nav a:hover { color: var(--wp--preset--color--gold-text); }
.pcd-nav .current-menu-item > a, .pcd-nav a[aria-current="page"] { box-shadow: inset 0 -2px 0 var(--wp--preset--color--accent-1); }
.pcd-nav .wp-block-navigation__container > .wp-block-navigation-item:last-child > a { border: 1.5px solid var(--wp--preset--color--accent-1); border-radius: 999px; padding: .55rem 1.2rem; box-shadow: none; }
.pcd-nav .wp-block-navigation__container > .wp-block-navigation-item:last-child > a:hover { background: var(--wp--preset--color--contrast); border-color: var(--wp--preset--color--contrast); color: #fff; }
.pcd-lang { flex: none !important; width: auto !important; margin: 0 !important; }
.pcd-lang ul, ul.pcd-lang { display: inline-flex !important; width: auto !important; gap: .1rem; margin: 0; padding: 3px; list-style: none; border: 1px solid var(--wp--preset--color--accent-6); border-radius: 999px; background: #fff; }
.pcd-lang li { margin: 0; }
.pcd-lang a { display: block; padding: .32rem .62rem; border-radius: 999px; font: 700 .78rem/1.2 var(--wp--preset--font-family--arimo); text-decoration: none; text-transform: uppercase; color: var(--wp--preset--color--accent-4); }
.pcd-lang .current-lang a, .pcd-lang a[aria-current] { background: var(--wp--preset--color--contrast); color: #fff; }
@media (max-width: 1100px) { .pcd-nav, .pcd-nav .wp-block-navigation__container { gap: 1rem; } .pcd-nav { font-size: .9rem; } }
/* Phone menu */
.pcd-nav .wp-block-navigation__responsive-container-open svg { width: 28px; height: 28px; }
.pcd-nav .wp-block-navigation__responsive-container.is-menu-open { background: var(--wp--preset--color--base) !important; padding: 1.5rem var(--pcd-g); }
.pcd-nav .is-menu-open .wp-block-navigation__container { gap: 1.1rem; }
.pcd-nav .is-menu-open .wp-block-navigation-item { font: 500 1.5rem/1.3 var(--wp--preset--font-family--gelasio); }
.pcd-nav .is-menu-open .wp-block-navigation-item:last-child > a { font: 700 1.05rem/1.2 var(--wp--preset--font-family--arimo); margin-top: .5rem; }
@media (max-width: 600px) { .pcd-header .wp-block-site-logo img { width: 68px !important; } .pcd-header-right { gap: .6rem !important; } .pcd-lang a { padding: .3rem .5rem; } }

/* ---------- Page sections: full-bleed background, content on one grid ---------- */
.pcd-main { margin-top: 0 !important; }
.pcd-main > .entry-content { margin-top: 0; }
.pcd-main > .entry-content > * { margin-block: 0 !important; }
.pcd-section { padding: clamp(56px, 7vw, 96px) var(--pcd-g) !important; margin-block: 0 !important; max-width: none !important; }
.pcd-section > * { width: 100%; max-width: var(--pcd-w) !important; margin-left: auto !important; margin-right: auto !important; margin-block: 0; box-sizing: border-box; }
.pcd-section > * + * { margin-top: 1.25rem; }
/* Reading-width sections keep the same left edge as everything else */
.pcd-section.is-narrow > * { max-width: var(--pcd-read) !important; margin-left: max(0px, calc((100% - var(--pcd-w)) / 2)) !important; margin-right: auto !important; }
.pcd-alt { background: #fff; border-block: 1px solid var(--wp--preset--color--accent-6); }
.pcd-alt + .pcd-alt { border-top: 0; }

/* Section rhythm */
.pcd-section h2 { margin: 0 0 1.25rem; }
.pcd-section h2:not(:first-child) { margin-top: 2.75rem; }
.pcd-section h3 { margin: 0 0 .4rem; }
.pcd-section p { margin: 0 0 1rem; }
.pcd-section p:last-child { margin-bottom: 0; }
.pcd-section ul, .pcd-section ol { margin: 0 0 1rem; }
.pcd-kicker { font: 700 .75rem/1.4 var(--wp--preset--font-family--arimo) !important; letter-spacing: .14em; text-transform: uppercase; color: var(--wp--preset--color--gold-text) !important; margin-block: 0 .75rem !important; }
.pcd-lead2 { color: var(--wp--preset--color--accent-4); max-width: 42rem; }
.pcd-more { margin-top: 1.25rem !important; }
.pcd-more a { font-weight: 700; text-decoration-color: var(--wp--preset--color--accent-1); text-underline-offset: 5px; }

/* ---------- Hero ---------- */
.pcd-hero { background: radial-gradient(110% 90% at 100% 0%, rgba(229,195,116,.16), transparent 60%), var(--wp--preset--color--base); border-bottom: 1px solid var(--wp--preset--color--accent-6); padding-block: clamp(48px, 6vw, 80px) !important; }
.pcd-hero h1 { max-width: 20ch; margin: 0 0 1rem; }
.pcd-hero .pcd-intro { font-size: clamp(1.05rem, 1rem + .3vw, 1.2rem); line-height: 1.6; color: var(--wp--preset--color--accent-4); max-width: 40rem; }
.pcd-hero .pcd-actions { margin: 1.75rem 0 0; }
.pcd-hero > .pcd-address { margin-top: 1.25rem; }

/* Home hero: text left, clinic card right */
.pcd-hero-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 4.5rem); align-items: center; }
.pcd-hero-grid > * { margin: 0 !important; }
.pcd-visit-card { background: #fff; border: 1px solid var(--wp--preset--color--accent-6); border-radius: 18px; padding: 1.6rem 1.6rem 1.4rem; box-shadow: 0 1px 2px rgba(15,30,54,.04), 0 24px 48px -32px rgba(15,30,54,.35); }
.pcd-visit-card > * { margin: 0 0 1rem !important; }
.pcd-visit-card > *:last-child { margin-bottom: 0 !important; }
.pcd-visit-card .pcd-hours { font-size: .92rem; }
.pcd-visit-card .pcd-facts { list-style: none; padding: 0; display: grid; gap: .35rem; font-size: .92rem; color: var(--wp--preset--color--accent-4); border-top: 1px solid var(--wp--preset--color--accent-6); padding-top: 1rem; }
.pcd-visit-card .pcd-facts li { position: relative; padding-left: 1.2rem; }
.pcd-visit-card .pcd-facts li::before { content: ""; position: absolute; left: .1rem; top: .6em; width: 6px; height: 6px; transform: rotate(45deg); background: var(--wp--preset--color--accent-1); }
@media (max-width: 860px) { .pcd-hero-grid { grid-template-columns: 1fr; } }

/* ---------- Buttons ---------- */
.pcd-actions { display: flex; flex-wrap: wrap; gap: .6rem; margin: 1.5rem 0 0; }
.pcd-btn, .pcd-copy, .pcd-status, .pcd-switch button, .pcd-choices label { box-sizing: border-box; }
.pcd-btn { min-height: 48px; padding: .7rem 1.3rem; font-size: .95rem; line-height: 1.2; }
.pcd-btn .pcd-ico { width: 1.15em; height: 1.15em; }
@media (max-width: 600px) {
	.pcd-section .pcd-actions .pcd-btn { flex: 1 1 calc(50% - .3rem); }
	.pcd-section .pcd-actions .pcd-btn.is-primary { flex-basis: 100%; }
}

/* ---------- Grids and cards ---------- */
.pcd-cards { display: grid !important; gap: 1rem !important; grid-template-columns: repeat(auto-fill, minmax(min(17rem, 100%), 1fr)) !important; }
.pcd-cards > * { margin: 0 !important; }
.pcd-cards:has(> .pcd-pillar) { grid-template-columns: repeat(auto-fit, minmax(min(15rem, 100%), 1fr)) !important; gap: 2rem !important; }
.pcd-two { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(min(22rem, 100%), 1fr)) !important; gap: clamp(2rem, 5vw, 4.5rem) !important; align-items: start; }
.pcd-two > * { margin: 0 !important; min-width: 0; }
.pcd-col > * { margin: 0 0 1rem; }
.pcd-col > *:last-child { margin-bottom: 0; }
.pcd-card { background: #fff; border: 1px solid var(--wp--preset--color--accent-6); border-radius: 14px; padding: 1.25rem 1.35rem; position: relative; box-shadow: 0 1px 2px rgba(15,30,54,.04); transition: border-color .2s, box-shadow .2s; }
.pcd-alt .pcd-card { background: var(--wp--preset--color--base); }
.pcd-card:hover { border-color: var(--wp--preset--color--accent-1); box-shadow: 0 12px 28px -20px rgba(15,30,54,.35); }
.pcd-card > * { margin: 0 0 .35rem !important; }
.pcd-card > *:last-child { margin-bottom: 0 !important; }
.pcd-card h3 { font-size: 1.15rem; }
.pcd-card p { color: var(--wp--preset--color--accent-4); font-size: .95rem; line-height: 1.55; }
.pcd-card h3 a { text-decoration: none; }
.pcd-card h3 a::after { content: ""; position: absolute; inset: 0; border-radius: inherit; } /* whole card clickable */
.pcd-card h3 a::before { content: "→"; float: right; margin-left: .5rem; color: var(--wp--preset--color--accent-1); transition: transform .2s; }
.pcd-card:hover h3 a::before { transform: translateX(3px); }
.pcd-pillar { background: none; border: 0; border-top: 2px solid var(--wp--preset--color--accent-1); border-radius: 0; padding: 1.1rem 0 0; box-shadow: none; }
.pcd-pillar:hover { box-shadow: none; }
.pcd-pillar h3 { font-size: 1.25rem; margin-bottom: .5rem !important; }
.pcd-pillar p { font-size: 1rem; }
.pcd-group-title { margin-block: 2.25rem .9rem !important; }
.pcd-section > .pcd-group-title:first-child, .pcd-section h2 + .pcd-group-title { margin-top: 0 !important; }
.pcd-section h2 + .pcd-group-title { margin-top: .5rem !important; }

/* ---------- Lists ---------- */
ol.pcd-steps { list-style: none; counter-reset: s; padding: 0; display: grid; gap: 1rem; }
ol.pcd-steps > li { counter-increment: s; position: relative; padding: .3rem 0 0 3rem; min-height: 2.1rem; }
ol.pcd-steps > li::before { content: counter(s); position: absolute; left: 0; top: 0; width: 2.1rem; height: 2.1rem; border-radius: 50%; display: grid; place-items: center; font: 600 .95rem/1 var(--wp--preset--font-family--gelasio); color: var(--wp--preset--color--contrast); background: var(--wp--preset--color--accent-3); border: 1px solid var(--wp--preset--color--accent-2); }
ul.pcd-ticks { list-style: none; padding: 0; display: grid; gap: .6rem; }
ul.pcd-ticks > li { position: relative; padding-left: 1.6rem; }
ul.pcd-ticks > li::before { content: ""; position: absolute; left: .2rem; top: .62em; width: 7px; height: 7px; transform: rotate(45deg); background: var(--wp--preset--color--accent-1); }

/* ---------- Notes ---------- */
.pcd-callout { background: var(--wp--preset--color--accent-3); border-left: 3px solid var(--wp--preset--color--accent-1); border-radius: 0 10px 10px 0; padding: 1rem 1.2rem !important; }
.pcd-callout > * { margin: 0 !important; }
.pcd-callout + .pcd-callout { margin-top: .75rem; }
.pcd-alert { background: #FBEDEC; border-left: 3px solid #A4262C; border-radius: 0 10px 10px 0; padding: 1rem 1.2rem !important; color: #5C1418; }
.pcd-alert > * { margin: 0 !important; }

/* ---------- FAQ ---------- */
.pcd-faq { border-top: 1px solid var(--wp--preset--color--accent-6); }
.pcd-faq .wp-block-details { border-bottom: 1px solid var(--wp--preset--color--accent-6); padding: 1.05rem 0; margin: 0 !important; }
.pcd-faq .wp-block-details summary { font-weight: 700; cursor: pointer; list-style: none; position: relative; padding-right: 2.25rem; }
.pcd-faq .wp-block-details summary::-webkit-details-marker { display: none; }
.pcd-faq .wp-block-details summary::after { content: "+"; position: absolute; right: .25rem; top: 50%; transform: translateY(-50%); font: 400 1.5rem/1 var(--wp--preset--font-family--gelasio); color: var(--wp--preset--color--gold-text); }
.pcd-faq .wp-block-details[open] summary::after { content: "–"; }
.pcd-faq .wp-block-details p { margin: .7rem 0 0; color: var(--wp--preset--color--accent-4); }

/* ---------- Tables ---------- */
.pcd-table { margin: 0; overflow-x: auto; }
.pcd-table table { border-collapse: collapse; width: 100%; font-size: .95rem; background: #fff; }
.pcd-table th { text-align: left; background: var(--wp--preset--color--accent-3); }
.pcd-table th, .pcd-table td { border: 1px solid var(--wp--preset--color--accent-6); padding: .75rem .85rem; vertical-align: top; }
.pcd-table td:first-child { font-weight: 700; }
@media (max-width: 700px) {
	.pcd-table thead { display: none; }
	.pcd-table table, .pcd-table tbody, .pcd-table tr, .pcd-table td { display: block; width: 100%; box-sizing: border-box; }
	.pcd-table tr { border: 1px solid var(--wp--preset--color--accent-6); border-radius: 12px; margin-bottom: .75rem; overflow: hidden; }
	.pcd-table td { border: 0; padding: .6rem .9rem; }
	.pcd-table td:first-child { background: var(--wp--preset--color--accent-3); }
	.pcd-table td:nth-child(2)::before { content: "What to do now"; }
	.pcd-table td:nth-child(3)::before { content: "When to see a dentist"; }
	:lang(zh) .pcd-table td:nth-child(2)::before { content: "现在该怎么做"; }
	:lang(zh) .pcd-table td:nth-child(3)::before { content: "何时看牙医"; }
	:lang(ms) .pcd-table td:nth-child(2)::before, :lang(bm) .pcd-table td:nth-child(2)::before { content: "Apa perlu dibuat"; }
	:lang(ms) .pcd-table td:nth-child(3)::before, :lang(bm) .pcd-table td:nth-child(3)::before { content: "Bila jumpa doktor gigi"; }
	.pcd-table td:nth-child(n+2)::before { display: block; font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--wp--preset--color--gold-text); margin-bottom: .2rem; }
}

/* ---------- Closing band ---------- */
.pcd-band { background: var(--wp--preset--color--contrast); color: #fff; border: 0; }
.pcd-band h2, .pcd-band p { color: #fff !important; }
.pcd-band p { opacity: .85; }
.pcd-band .pcd-btn { background: transparent; color: #fff; border-color: rgba(255,255,255,.35); }
.pcd-band .pcd-btn.is-primary { background: var(--wp--preset--color--accent-2); color: var(--wp--preset--color--contrast); border-color: var(--wp--preset--color--accent-2); }
.pcd-band .pcd-btn:hover { border-color: var(--wp--preset--color--accent-2); color: #fff; }
.pcd-band .pcd-btn.is-primary:hover { background: #fff; border-color: #fff; color: var(--wp--preset--color--contrast); }

/* ---------- Clinic components inside pages ---------- */
.pcd-panel { background: #fff; border: 1px solid var(--wp--preset--color--accent-6); border-radius: 14px; padding: 1.4rem !important; }
.pcd-address p { font-weight: 700; }
.pcd-map { max-height: 360px; }

/* ---------- Footer ---------- */
.pcd-footer { padding: clamp(48px, 6vw, 72px) var(--pcd-edge) 1.5rem !important; font-size: .95rem; }
.pcd-footer > * { max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; }
.pcd-footer .wp-block-columns { gap: clamp(1.5rem, 4vw, 3.5rem) !important; margin: 0; }
.pcd-footer .wp-block-column > * { margin: 0 0 .9rem; }
.pcd-footer .wp-block-column > *:last-child { margin-bottom: 0; }
.pcd-footer .wp-block-site-logo img { width: 110px !important; height: auto; }
.pcd-footer .pcd-address { display: grid; gap: .6rem; justify-items: start; }
.pcd-footer .pcd-address p, .pcd-footer .pcd-contact { font-size: .95rem; font-weight: 400; }
.pcd-footer .pcd-contact a { overflow-wrap: anywhere; }
.pcd-footer .pcd-hours { font-size: .92rem; }
.pcd-footer-base { border-top: 1px solid var(--wp--preset--color--accent-6); margin-top: 2.5rem !important; padding-top: 1.25rem; font-size: .85rem; color: var(--wp--preset--color--accent-4); }
.pcd-main + footer, footer.wp-block-template-part { margin-top: 0 !important; }

/* ---------- Status pill: only the page's own language on normal pages ---------- */
.pcd-status.is-soon .pcd-l { display: none !important; }
html[lang^="en"] .pcd-status.is-soon .pcd-l-en,
html[lang^="zh"] .pcd-status.is-soon .pcd-l-zh,
html[lang^="ms"] .pcd-status.is-soon .pcd-l-bm { display: inline !important; }
html .pcd-ml .pcd-status.is-soon .pcd-l { display: none !important; }
html:not([data-pcd-lang]) .pcd-ml .pcd-status.is-soon .pcd-l-en,
html[data-pcd-lang="en"] .pcd-ml .pcd-status.is-soon .pcd-l-en,
html[data-pcd-lang="zh"] .pcd-ml .pcd-status.is-soon .pcd-l-zh,
html[data-pcd-lang="bm"] .pcd-ml .pcd-status.is-soon .pcd-l-bm { display: inline !important; }

@media (prefers-reduced-motion: reduce) { .pcd-card, .pcd-card h3 a::before { transition: none; } }

/* Two sections with the same background: no double gap */
.pcd-section:not(.pcd-alt):not(.pcd-hero):not(.pcd-band) + .pcd-section:not(.pcd-alt):not(.pcd-hero):not(.pcd-band),
.pcd-alt + .pcd-alt { padding-top: 0 !important; }
.pcd-hero + .pcd-section:not(.pcd-alt):not(.pcd-band) { border-top: 0; }
.pcd-cards + .pcd-lead2 { margin-top: 1.5rem; }

/* ---------- Logo: larger, crisp ---------- */
.pcd-header { padding-block: .65rem !important; }
.pcd-header .pcd-brand-logo { flex: none; margin: 0 !important; line-height: 0; }
.pcd-header .pcd-brand-logo img { width: 240px !important; max-width: none; height: auto; display: block; }
@media (max-width: 1180px) { .pcd-header .pcd-brand-logo img { width: 210px !important; } }
/* Below 1024px the menu folds into the menu button, leaving room for the logo */
@media (min-width: 600px) and (max-width: 1023px) {
	.pcd-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex !important; }
	.pcd-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none !important; }
	.pcd-nav .wp-block-navigation__responsive-container.is-menu-open { display: flex !important; position: fixed; inset: 0; z-index: 100000; flex-direction: column; }
	.pcd-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { display: flex !important; }
	.pcd-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 600px) {
	.pcd-header { gap: .75rem; }
	.pcd-header .pcd-brand-logo img { width: 156px !important; }
}
@media (max-width: 380px) { .pcd-header .pcd-brand-logo img { width: 140px !important; } .pcd-lang a { padding: .28rem .42rem; } }
.pcd-nav .is-menu-open .wp-block-navigation__responsive-container-content,
.pcd-nav .is-menu-open .wp-block-navigation__container { align-items: flex-start !important; justify-content: flex-start !important; }
.pcd-nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 2.5rem; }

/* ---------- Phone/tablet refinements ---------- */
@media (max-width: 1023px) {
	.pcd-header-right .pcd-lang { order: -1; }
}
@media (max-width: 860px) {
	.pcd-visit-card { padding: 1.15rem 1.25rem; }
	.pcd-visit-card .pcd-hours { display: none; }
	.pcd-visit-card .pcd-facts { border-top: 0; padding-top: 0; }
}
@media (max-width: 860px) { .pcd-visit-card .pcd-hours-wrap { display: none; } }

/* ---------- Label → heading spacing ---------- */
.pcd-section .pcd-kicker + h2, .pcd-section .pcd-kicker + h1 { margin-top: 0 !important; }
.pcd-section h2 + .pcd-lead2 { margin-top: -.6rem; }

/* ---------- Treatment menu: six even panels ---------- */
.pcd-tmenu { display: grid !important; grid-template-columns: repeat(auto-fill, minmax(min(19rem, 100%), 1fr)); gap: 1rem; }
.pcd-tmenu > * { margin: 0 !important; }
.pcd-tgroup { background: #fff; border: 1px solid var(--wp--preset--color--accent-6); border-radius: 16px; padding: 1.4rem 1.5rem 1.2rem; }
.pcd-alt .pcd-tgroup { background: var(--wp--preset--color--base); }
.pcd-tgroup > * { margin: 0 0 .6rem !important; }
.pcd-tgroup > *:last-child { margin-bottom: 0 !important; }
.pcd-tgroup .pcd-kicker { border-bottom: 1px solid var(--wp--preset--color--accent-6); padding-bottom: .7rem; margin-bottom: .2rem !important; }
ul.pcd-tlist { list-style: none; padding: 0; margin: 0; }
ul.pcd-tlist li { margin: 0; border-bottom: 1px solid var(--wp--preset--color--accent-6); }
ul.pcd-tlist li:last-child { border-bottom: 0; }
ul.pcd-tlist a { display: block; position: relative; padding: .7rem 1.6rem .1rem 0; font: 500 1.08rem/1.3 var(--wp--preset--font-family--gelasio); text-decoration: none; color: var(--wp--preset--color--contrast); }
ul.pcd-tlist a::after { content: "→"; position: absolute; right: .1rem; top: .7rem; font-family: var(--wp--preset--font-family--arimo); color: var(--wp--preset--color--accent-1); transition: transform .2s; }
ul.pcd-tlist a:hover { color: var(--wp--preset--color--gold-text); }
ul.pcd-tlist a:hover::after { transform: translateX(3px); }
ul.pcd-tlist span { display: block; padding: 0 0 .7rem; font-size: .9rem; line-height: 1.45; color: var(--wp--preset--color--accent-4); }
.pcd-tgroup.is-start { background: var(--wp--preset--color--accent-3); border-color: var(--wp--preset--color--accent-2); display: flex; flex-direction: column; justify-content: center; }
.pcd-tgroup.is-start h3 { font-size: 1.3rem; }
.pcd-tgroup.is-start p { color: var(--wp--preset--color--accent-4); font-size: .97rem; }
.pcd-tmenu + .pcd-lead2 { margin-top: 1.5rem; font-size: .95rem; }

/* ---------- Map placeholder: looks like a map, not an empty box ---------- */
.pcd-map:not(:has(iframe)) {
	aspect-ratio: 16 / 11; max-height: 340px;
	background:
		linear-gradient(115deg, transparent 47%, rgba(197,155,75,.35) 47.4%, rgba(197,155,75,.35) 49%, transparent 49.4%),
		linear-gradient(25deg, transparent 62%, rgba(255,255,255,.95) 62.3%, rgba(255,255,255,.95) 65%, transparent 65.3%),
		linear-gradient(160deg, transparent 30%, rgba(255,255,255,.95) 30.3%, rgba(255,255,255,.95) 32.5%, transparent 32.8%),
		repeating-linear-gradient(0deg, transparent 0 46px, rgba(15,30,54,.05) 46px 47px),
		repeating-linear-gradient(90deg, transparent 0 46px, rgba(15,30,54,.05) 46px 47px),
		var(--wp--preset--color--accent-3);
}

/* ---------- Treatment icons (gold line, built in) ---------- */
.ico-scaling, ul.pcd-tlist a[href="/scaling/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22 transform=%22translate(-4 0) scale(.85) translate(2 4)%22/%3E%3Ccircle cx=%2236%22 cy=%2214%22 r=%225%22/%3E%3Cpath d=%22M33 18 26 40%22/%3E%3C/svg%3E"); }
.ico-gum-care, ul.pcd-tlist a[href="/gum-care/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M7 27c4 2 7.5 2.5 11 1.5s5-1.5 6-1.5 2.5.5 6 1.5 7 .5 11-1.5%22/%3E%3C/svg%3E"); }
.ico-childrens-dentistry, ul.pcd-tlist a[href="/childrens-dentistry/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22 transform=%22translate(8 12) scale(.7)%22/%3E%3Cpath d=%22M13 7l1.6 3.3 3.6.5-2.6 2.5.6 3.6-3.2-1.7-3.2 1.7.6-3.6-2.6-2.5 3.6-.5z%22/%3E%3Cpath d=%22M36 9.5v4M34 11.5h4%22/%3E%3C/svg%3E"); }
.ico-fillings, ul.pcd-tlist a[href="/fillings/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M19 17c2-2.2 4-2.6 5-1.2 1-1.4 3-1 5 1.2-1 3-3 4.4-5 4.4s-4-1.4-5-4.4z%22 fill=%22%23C59B4B%22 fill-opacity=%22.25%22/%3E%3C/svg%3E"); }
.ico-root-canal, ul.pcd-tlist a[href="/root-canal/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M20 21c-.6 5 .4 10 .3 16M28 21c.6 5-.4 10-.3 16%22/%3E%3Ccircle cx=%2224%22 cy=%2218%22 r=%222.4%22/%3E%3C/svg%3E"); }
.ico-crowns-bridges, ul.pcd-tlist a[href="/crowns-bridges/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M7.2 20c-.6-7.2 3.6-12.5 9.8-12.5 3.2 0 4.6 1.6 7 1.6s3.8-1.6 7-1.6c6.2 0 10.4 5.3 9.8 12.5-5.2 1.6-10.8 2.3-16.8 2.3S12.4 21.6 7.2 20z%22 fill=%22%23C59B4B%22 fill-opacity=%22.22%22/%3E%3C/svg%3E"); }
.ico-dentures, ul.pcd-tlist a[href="/dentures/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 30c0-9 8-17 18-17s18 8 18 17%22/%3E%3Cpath d=%22M10 30c0-7 6.3-13 14-13s14 6 14 13%22/%3E%3Cpath d=%22M6 30h4M38 30h4%22/%3E%3Cpath d=%22M15 19.5v5M19.5 17.6v5M24 17v5M28.5 17.6v5M33 19.5v5%22/%3E%3Cpath d=%22M6 30c3 5 10 7 18 7s15-2 18-7%22/%3E%3C/svg%3E"); }
.ico-dental-implants, ul.pcd-tlist a[href="/dental-implants/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M15 8c-3.5 0-6 2.8-6 6.3 0 2.5 1 4.3 1.8 6 .5 1.2 1.6 1.9 2.9 1.9h20.6c1.3 0 2.4-.7 2.9-1.9.8-1.7 1.8-3.5 1.8-6C39 10.8 36.5 8 33 8c-2.6 0-3.8 1.4-6 1.4h-6C18.8 9.4 17.6 8 15 8z%22/%3E%3Cpath d=%22M19 22.5h10v3H19z%22/%3E%3Cpath d=%22M20.5 25.5h7l-1 16-2.5 2.5-2.5-2.5z%22/%3E%3Cpath d=%22M20.5 29.5h7M20.8 33.5h6.4M21.1 37.5h5.8%22/%3E%3C/svg%3E"); }
.ico-braces, ul.pcd-tlist a[href="/braces/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Crect x=%2219.5%22 y=%2217%22 width=%229%22 height=%227%22 rx=%221.5%22/%3E%3Cpath d=%22M4 20.5h15.5M28.5 20.5H44%22/%3E%3C/svg%3E"); }
.ico-clear-aligners, ul.pcd-tlist a[href="/clear-aligners/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M6 17c0-6.5 4.6-10.5 11-10.5 3.5 0 5 1.6 7 1.6s3.5-1.6 7-1.6c6.4 0 11 4 11 10.5 0 3.6-1 6.3-2 9%22 stroke-dasharray=%223 2.5%22/%3E%3Cpath d=%22M8 26c-1-2.7-2-5.4-2-9%22 stroke-dasharray=%223 2.5%22/%3E%3C/svg%3E"); }
.ico-teeth-whitening, ul.pcd-tlist a[href="/teeth-whitening/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22 transform=%22translate(-3 4) scale(.85) translate(2 2)%22/%3E%3Cpath d=%22M37 5v8M33 9h8%22/%3E%3Cpath d=%22M41 18v4M39 20h4%22/%3E%3Cpath d=%22M32 17.5v3M30.5 19h3%22/%3E%3C/svg%3E"); }
.ico-veneers, ul.pcd-tlist a[href="/veneers/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M13 13.5c3-2.3 6.3-2.5 11-1 4.7-1.5 8-1.3 11 1-.6 6-2.8 10.5-11 10.5S13.6 19.5 13 13.5z%22 fill=%22%23C59B4B%22 fill-opacity=%22.18%22/%3E%3C/svg%3E"); }
.ico-tooth-extraction, ul.pcd-tlist a[href="/tooth-extraction/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22 transform=%22translate(0 8) scale(.82) translate(5 0)%22/%3E%3Cpath d=%22M24 3v10M19.5 7.5 24 3l4.5 4.5%22/%3E%3C/svg%3E"); }
.ico-toothache, ul.pcd-tlist a[href="/toothache/"] { --pcd-ico: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%23C59B4B%22 stroke-width=%221.7%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M25.5 13 21 21h5l-3.5 8%22/%3E%3C/svg%3E"); }

/* Hero icon: a champagne disc on the right on wide screens, small above the label on phones */
.pcd-hero.has-icon { position: relative; }
.pcd-hero.has-icon::after { content: ""; position: absolute; top: 50%; right: var(--pcd-edge); transform: translateY(-50%); width: clamp(150px, 15vw, 200px); aspect-ratio: 1; border-radius: 50%; background: var(--pcd-ico) center / 58% no-repeat, radial-gradient(circle at 35% 30%, #fff 0, var(--wp--preset--color--accent-3) 70%); border: 1px solid var(--wp--preset--color--accent-6); box-shadow: 0 24px 48px -32px rgba(15,30,54,.35); }
.pcd-hero.has-icon > * { max-width: min(var(--pcd-w), 100%) !important; }
.pcd-hero.has-icon > .pcd-kicker, .pcd-hero.has-icon > h1, .pcd-hero.has-icon > .pcd-intro { padding-right: clamp(0px, 18vw, 240px); }
@media (max-width: 900px) {
	.pcd-hero.has-icon::after { position: static; display: block; transform: none; width: 64px; margin: 0 auto 0 0; order: -1; box-shadow: none; }
	.pcd-hero.has-icon { display: flex; flex-direction: column; }
	.pcd-hero.has-icon::after { margin-bottom: 1rem; margin-left: max(0px, calc((100% - var(--pcd-w)) / 2)); }
	.pcd-hero.has-icon > .pcd-kicker, .pcd-hero.has-icon > h1, .pcd-hero.has-icon > .pcd-intro { padding-right: 0; }
}

/* Small icons in the treatment menu */
ul.pcd-tlist li { position: relative; padding-left: 2.6rem; }
ul.pcd-tlist a::before { content: ""; position: absolute; left: -2.6rem; top: .55rem; width: 1.9rem; height: 1.9rem; border-radius: 50%; background: var(--pcd-ico) center / 72% no-repeat, var(--wp--preset--color--accent-3); }

/* ---------- Treatment pages: article + sticky booking card ---------- */
.pcd-art-grid { display: grid !important; grid-template-columns: minmax(0, 1fr) 320px; gap: clamp(2.5rem, 6vw, 5rem); align-items: start; }
.pcd-art-grid > * { margin: 0 !important; }
.pcd-art-main > * { margin: 0 !important; }
.pcd-art-main > * + * { margin-top: 3.25rem !important; }
.pcd-art-block > * { margin: 0 0 1rem; }
.pcd-art-block > *:last-child { margin-bottom: 0; }
.pcd-art-block h2 { margin: 0 0 1.1rem !important; }
.pcd-art-block h2:not(:first-child) { margin-top: 2.5rem !important; }
.pcd-art-block .pcd-callout { margin-top: 1rem; }
.pcd-art-aside { position: sticky; top: 130px; }
.admin-bar .pcd-art-aside { top: 162px; }
.pcd-book-card { background: #fff; border: 1px solid var(--wp--preset--color--accent-6); border-radius: 18px; padding: 1.4rem 1.4rem 1.25rem; box-shadow: 0 1px 2px rgba(15,30,54,.04), 0 24px 48px -32px rgba(15,30,54,.35); }
.pcd-book-card > * { margin: 0 0 .9rem !important; }
.pcd-book-card > *:last-child { margin-bottom: 0 !important; }
.pcd-book-card p { font-size: .95rem; color: var(--wp--preset--color--accent-4); }
.pcd-book-card .pcd-actions { flex-direction: column; margin: 0; }
.pcd-book-card .pcd-btn { width: 100%; }
.pcd-book-card .pcd-more { margin-top: .25rem !important; }
.pcd-article { padding-top: clamp(48px, 6vw, 80px) !important; }
@media (max-width: 900px) {
	.pcd-art-grid { grid-template-columns: 1fr; }
	.pcd-art-aside { display: none; }   /* phones get the booking band at the end instead */
}
/* Menu icons: darker, thicker line for small sizes */
ul.pcd-tlist a[href="/scaling/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22 transform=%22translate(-4 0) scale(.85) translate(2 4)%22/%3E%3Ccircle cx=%2236%22 cy=%2214%22 r=%225%22/%3E%3Cpath d=%22M33 18 26 40%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/gum-care/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M7 27c4 2 7.5 2.5 11 1.5s5-1.5 6-1.5 2.5.5 6 1.5 7 .5 11-1.5%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/childrens-dentistry/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22 transform=%22translate(8 12) scale(.7)%22/%3E%3Cpath d=%22M13 7l1.6 3.3 3.6.5-2.6 2.5.6 3.6-3.2-1.7-3.2 1.7.6-3.6-2.6-2.5 3.6-.5z%22/%3E%3Cpath d=%22M36 9.5v4M34 11.5h4%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/fillings/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M19 17c2-2.2 4-2.6 5-1.2 1-1.4 3-1 5 1.2-1 3-3 4.4-5 4.4s-4-1.4-5-4.4z%22 fill=%22%239E7630%22 fill-opacity=%22.25%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/root-canal/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M20 21c-.6 5 .4 10 .3 16M28 21c.6 5-.4 10-.3 16%22/%3E%3Ccircle cx=%2224%22 cy=%2218%22 r=%222.4%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/crowns-bridges/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M7.2 20c-.6-7.2 3.6-12.5 9.8-12.5 3.2 0 4.6 1.6 7 1.6s3.8-1.6 7-1.6c6.2 0 10.4 5.3 9.8 12.5-5.2 1.6-10.8 2.3-16.8 2.3S12.4 21.6 7.2 20z%22 fill=%22%239E7630%22 fill-opacity=%22.22%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/dentures/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 30c0-9 8-17 18-17s18 8 18 17%22/%3E%3Cpath d=%22M10 30c0-7 6.3-13 14-13s14 6 14 13%22/%3E%3Cpath d=%22M6 30h4M38 30h4%22/%3E%3Cpath d=%22M15 19.5v5M19.5 17.6v5M24 17v5M28.5 17.6v5M33 19.5v5%22/%3E%3Cpath d=%22M6 30c3 5 10 7 18 7s15-2 18-7%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/dental-implants/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M15 8c-3.5 0-6 2.8-6 6.3 0 2.5 1 4.3 1.8 6 .5 1.2 1.6 1.9 2.9 1.9h20.6c1.3 0 2.4-.7 2.9-1.9.8-1.7 1.8-3.5 1.8-6C39 10.8 36.5 8 33 8c-2.6 0-3.8 1.4-6 1.4h-6C18.8 9.4 17.6 8 15 8z%22/%3E%3Cpath d=%22M19 22.5h10v3H19z%22/%3E%3Cpath d=%22M20.5 25.5h7l-1 16-2.5 2.5-2.5-2.5z%22/%3E%3Cpath d=%22M20.5 29.5h7M20.8 33.5h6.4M21.1 37.5h5.8%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/braces/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Crect x=%2219.5%22 y=%2217%22 width=%229%22 height=%227%22 rx=%221.5%22/%3E%3Cpath d=%22M4 20.5h15.5M28.5 20.5H44%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/clear-aligners/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M6 17c0-6.5 4.6-10.5 11-10.5 3.5 0 5 1.6 7 1.6s3.5-1.6 7-1.6c6.4 0 11 4 11 10.5 0 3.6-1 6.3-2 9%22 stroke-dasharray=%223 2.5%22/%3E%3Cpath d=%22M8 26c-1-2.7-2-5.4-2-9%22 stroke-dasharray=%223 2.5%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/teeth-whitening/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22 transform=%22translate(-3 4) scale(.85) translate(2 2)%22/%3E%3Cpath d=%22M37 5v8M33 9h8%22/%3E%3Cpath d=%22M41 18v4M39 20h4%22/%3E%3Cpath d=%22M32 17.5v3M30.5 19h3%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/veneers/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M13 13.5c3-2.3 6.3-2.5 11-1 4.7-1.5 8-1.3 11 1-.6 6-2.8 10.5-11 10.5S13.6 19.5 13 13.5z%22 fill=%22%239E7630%22 fill-opacity=%22.18%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/tooth-extraction/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22 transform=%22translate(0 8) scale(.82) translate(5 0)%22/%3E%3Cpath d=%22M24 3v10M19.5 7.5 24 3l4.5 4.5%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a[href="/toothache/"] { --pcd-ico-s: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 48 48%22 fill=%22none%22 stroke=%22%239E7630%22 stroke-width=%222.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M17 9c-5 0-8.5 4-8.5 9.5 0 4 1.6 7 2.6 10.3.9 3.2 1.2 7 1.9 10.2.5 2.4 1.4 3.6 2.7 3.6 1.4 0 2.2-1.3 2.7-3.8l1.1-5.4c.4-2 1.3-3 2.5-3s2.1 1 2.5 3l1.1 5.4c.5 2.5 1.3 3.8 2.7 3.8 1.3 0 2.2-1.2 2.7-3.6.7-3.2 1-7 1.9-10.2 1-3.3 2.6-6.3 2.6-10.3C39.5 13 36 9 31 9c-3.2 0-4.6 1.6-7 1.6S20.2 9 17 9z%22/%3E%3Cpath d=%22M25.5 13 21 21h5l-3.5 8%22/%3E%3C/svg%3E"); }
ul.pcd-tlist a::before { width: 2.15rem; height: 2.15rem; left: -2.8rem; top: .45rem; background: var(--pcd-ico-s, var(--pcd-ico)) center / 74% no-repeat, var(--wp--preset--color--accent-3); }
ul.pcd-tlist li { padding-left: 2.8rem; }
/* ---------- Photo spots: hidden until a photo is added ---------- */
.pcd-photo:not(:has(img[src])), .pcd-photo:has(img[src=""]), .pcd-photos:not(:has(img[src])) { display: none !important; }
.pcd-photo { margin-block: 0 !important; }
.pcd-photo img { display: block; width: 100%; height: auto; object-fit: cover; border-radius: 16px; }
.pcd-photo.is-land img { aspect-ratio: 3 / 2; }
.pcd-photo.is-wide img { aspect-ratio: 21 / 9; }
.pcd-photo figcaption { font-size: .85rem; color: var(--wp--preset--color--accent-4); margin-top: .5rem; text-align: left; }
.pcd-hero > .pcd-photo.is-wide { margin: clamp(2rem, 5vw, 3.5rem) auto 0 !important; }
.pcd-hero.has-icon > .pcd-photo { padding-right: 0; }
.pcd-hero > .pcd-photo.is-land { max-width: min(640px, 100%) !important; margin: 1.75rem 0 0 max(0px, calc((100% - var(--pcd-w)) / 2)) !important; }
.pcd-col > .pcd-photo + *, .pcd-col > * + .pcd-photo { margin-top: 1.25rem !important; }
.pcd-photos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; margin-top: 2.5rem !important; }
.pcd-photos:has(> .pcd-photo:only-child) { grid-template-columns: minmax(0, 1fr); }
.is-narrow .pcd-photo, .pcd-art-block .pcd-photo { margin-top: 1.75rem !important; }
@media (max-width: 700px) {
	.pcd-photo.is-wide img { aspect-ratio: 4 / 3; }
	.pcd-photos { grid-template-columns: minmax(0, 1fr); }
}
/* ---------- Opening hours: two columns; the times never break, long day names may ---------- */
.pcd-hours, .pcd-hours tbody { display: block; width: 100%; }
.pcd-hours tr { display: flex; justify-content: space-between; align-items: baseline; column-gap: 1rem; border-bottom: 1px solid var(--wp--preset--color--accent-6); }
.pcd-hours tr:last-child { border-bottom: 0; }
.pcd-hours th, .pcd-hours td { display: block; border: 0 !important; }
.pcd-hours th { flex: 1 1 auto; min-width: 0; white-space: normal; }
table.pcd-hours td { flex: none; margin-left: auto; text-align: right; white-space: nowrap; max-width: none; }
/* Narrow spaces: English day names switch to "Mon – Wed" instead of wrapping */
.pcd-hours { container-type: inline-size; }
.pcd-hours .pcd-d-short { display: none; }
@container (max-width: 285px) {
	.pcd-hours .pcd-d-full { display: none; }
	.pcd-hours .pcd-d-short { display: inline; }
}
/* Holding page and /go: the language-specific table keeps the same layout */
html:not([data-pcd-lang]) .pcd-ml table.pcd-hours.pcd-l-en,
html[data-pcd-lang="en"] .pcd-ml table.pcd-hours.pcd-l-en,
html[data-pcd-lang="zh"] .pcd-ml table.pcd-hours.pcd-l-zh,
html[data-pcd-lang="bm"] .pcd-ml table.pcd-hours.pcd-l-bm { display: block; }

/* ---------- Accessibility ---------- */
.pcd-footer .pcd-small-title { color: #7E6026 !important; }   /* 4.9:1 on the champagne footer */
.pcd-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
@media (min-width: 1024px) { .pcd-nav .wp-block-navigation-item:not(:last-child) > a { display: inline-block; padding-block: .45rem; } }

/* Visit us already shows the hours on the page, so the footer copy is hidden there */
body.pcd-slug-visit-us .pcd-footer .wp-block-column:has(.pcd-hours) { display: none; }

/* ---------- Phone booking bar (shown only between the top buttons and the closing band) ---------- */
.pcd-mbar { display: none; }
@media (max-width: 782px) {
	.pcd-mbar { display: flex; gap: .5rem; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; padding: .6rem var(--pcd-g) calc(.6rem + env(safe-area-inset-bottom)); background: rgba(250, 248, 245, .97); border-top: 1px solid var(--wp--preset--color--accent-6); box-shadow: 0 -8px 24px -18px rgba(15, 30, 54, .45); transform: translateY(110%); transition: transform .25s ease; }
	.pcd-mbar:not(.is-on) { visibility: hidden; transition: transform .25s ease, visibility 0s .25s; }
	.pcd-mbar.is-on { transform: none; }
	.pcd-mbar .pcd-btn { min-height: 48px; margin: 0; justify-content: center; }
	.pcd-mbar .pcd-btn.is-primary { flex: 1 1 auto; }
	.pcd-mbar .pcd-btn:not(.is-primary) { flex: none; padding-inline: 1.1rem; }
}
@media (prefers-reduced-motion: reduce) { .pcd-mbar { transition: none; } }

/* ---------- /go quick links: built for a phone held in one hand ---------- */
.pcd-go h1.pcd-brand { margin: .25rem 0 .75rem; font-size: inherit; line-height: 0; }
.pcd-go .pcd-logo { width: min(150px, 40vw) !important; height: auto; }
.pcd-go .pcd-links { margin-top: 1rem; }
.pcd-go .pcd-link { min-height: 64px; }
.pcd-go .pcd-social { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.pcd-go .pcd-social .pcd-link { min-height: 56px; }
.pcd-go .pcd-social .pcd-link-ico { width: 36px; height: 36px; }
.pcd-go .pcd-social .pcd-link > .pcd-ico:last-child { display: none; }
.pcd-go-info, .pcd-hold-info > div:has(.pcd-hours) { --pcd-hours-size: .9rem; }
.pcd-go-info .pcd-hours, .pcd-hold-info .pcd-hours { font-size: .9rem; }
.pcd-go-info .pcd-hours tr, .pcd-hold-info .pcd-hours tr { column-gap: .75rem; }
@media (max-width: 400px) { .pcd-go-info { padding: 1.1rem 1rem; } }

/* ---------- Notices: closed today and announcement ---------- */
.pcd-notice { background: var(--wp--preset--color--contrast); color: #fff; font: 600 .9rem/1.45 var(--wp--preset--font-family--arimo); }
.pcd-notice.is-alert { background: #8A2A2E; }
.pcd-notice p { margin: 0 auto; max-width: var(--pcd-w); padding: .65rem var(--pcd-g); display: flex; gap: .55rem; align-items: flex-start; justify-content: center; text-align: center; }
.pcd-notice .pcd-ico { width: 1.1em; height: 1.1em; flex: none; margin-top: .15em; }
.pcd-notice a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.pcd-notice[hidden] { display: none !important; }

/* ---------- Hours extras: second session, coming up, walk-in note ---------- */
.pcd-hours .pcd-session { display: block; }
.pcd-upcoming { margin-top: .9rem; padding-top: .8rem; border-top: 1px dashed var(--wp--preset--color--accent-6); font-size: .88rem; }
.pcd-upcoming[hidden], .pcd-upcoming li[hidden] { display: none !important; }
.pcd-upcoming .pcd-up-title { margin: 0 0 .35rem !important; font: 700 .72rem/1.3 var(--wp--preset--font-family--arimo); letter-spacing: .12em; text-transform: uppercase; color: var(--wp--preset--color--gold-text); }
.pcd-upcoming ul { list-style: none; margin: 0 !important; padding: 0; display: grid; gap: .3rem; }
.pcd-upcoming li { display: flex; flex-wrap: wrap; column-gap: .5rem; margin: 0; }
.pcd-upcoming .pcd-up-d { font-weight: 700; white-space: nowrap; }
.pcd-upcoming .pcd-up-n { color: var(--wp--preset--color--accent-4); }
.pcd-upcoming .pcd-up-w { margin-left: auto; white-space: nowrap; }
.pcd-walkin { margin: .7rem 0 0 !important; font-size: .85rem; color: var(--wp--preset--color--accent-4); }
.pcd-afterhours { margin-top: 1.25rem; }

/* ---------- Theme block styles that used to load after the Additional CSS ----------
   Repeated here so the cascade, and therefore the approved look, stays exactly the same. */
:root :where(.wp-block-columns-is-layout-flow) > :first-child{margin-block-start: 0;}:root :where(.wp-block-columns-is-layout-flow) > :last-child{margin-block-end: 0;}:root :where(.wp-block-columns-is-layout-flow) > *{margin-block-start: var(--wp--preset--spacing--50);margin-block-end: 0;}:root :where(.wp-block-columns-is-layout-constrained) > :first-child{margin-block-start: 0;}:root :where(.wp-block-columns-is-layout-constrained) > :last-child{margin-block-end: 0;}:root :where(.wp-block-columns-is-layout-constrained) > *{margin-block-start: var(--wp--preset--spacing--50);margin-block-end: 0;}:root :where(.wp-block-columns-is-layout-flex){gap: var(--wp--preset--spacing--50);}:root :where(.wp-block-columns-is-layout-grid){gap: var(--wp--preset--spacing--50);}
:root :where(.wp-block-post-title a:where(:not(.wp-element-button))){text-decoration: none;}
:root :where(.wp-block-post-title a:where(:not(.wp-element-button)):hover){text-decoration: underline;}
:root :where(.wp-block-navigation){font-size: var(--wp--preset--font-size--medium);}
:root :where(.wp-block-navigation a:where(:not(.wp-element-button))){text-decoration: none;}
:root :where(.wp-block-navigation a:where(:not(.wp-element-button)):hover){text-decoration: underline;}
:root :where(.wp-block-list li){margin-top: 0.5rem;}

/* Not-found page */
.pcd-404 .pcd-404-links { list-style: none; padding: 0; margin: 1.25rem 0 1.5rem; display: flex; flex-wrap: wrap; gap: .6rem 1.4rem; }
.pcd-404 .pcd-404-links a { font-weight: 600; color: var(--wp--preset--color--contrast); text-decoration: underline; text-underline-offset: .2em; text-decoration-color: var(--wp--preset--color--gold-text, #7E6026); }
