/* Clinic access block loaded only when a singular page uses .mp-local-access-block
   without the broader archive/article utility stylesheet. */
.mp-local-access-block{
	margin:34px 0;
	padding:clamp(20px, 3vw, 30px);
	border:1px solid oklch(84% .014 145);
	border-radius:6px;
	background:oklch(98.5% .006 96);
	color:var(--ink, #1d1d1f);
}

/* 2026-09-30 inner polish round 2 (cu-local-access-legacy-tokens): Hardware tokens in place of the pre-Hardware oklch
   green-tinted ink and grey; the h2 takes the shared page scale (var(--h2), was a 34px clamp) and the paragraph the
   18px body size (was 16px). */
.mp-local-access-block h2{
	margin:0 0 14px;
	color:var(--ink, #1d1d1f);
	font-size:var(--h2, clamp(24px, 2.6vw, 34px)) !important;
	font-weight:800;
	line-height:1.08;
	text-transform:none;
}

.mp-local-access-block p{
	color:var(--text, #2c2c2e);
	font-size:18px !important;
	font-weight:300;
	line-height:1.62;
}

.mp-local-access-block a{
	color:var(--ink, #1d1d1f) !important;
	font-weight:800;
	text-decoration:none;
	border-bottom:1px solid oklch(62% .035 165 / .42);
}

.mp-local-access-grid{
	display:grid;
	grid-template-columns:minmax(0, .85fr) minmax(0, 1.15fr);
	gap:22px;
	align-items:center;
}

.mp-local-access-block img{
	display:block;
	width:100%;
	aspect-ratio:4/3;
	object-fit:cover;
	border-radius:5px;
}

@media only screen and (max-width:760px){
	.mp-local-access-grid{
		grid-template-columns:1fr;
	}
}

/* 2026-09-30 inner polish: local access block (clinica 4507 and any other page that carries it).
   wpautop leaves an empty <p> after the photo that took grid cell 2 and pushed the text under the photo; the block
   is an unboxed band instead of a bordered cream card. Clinica keeps its own band colour and padding from
   authority.css (its owner), so the background here skips page 4507. */
.mp-local-access-grid > p:empty{display:none}
.mph-site .entry-content .mp-local-access-block{margin:0;border:0;border-radius:0}
.mph-site:not(.page-id-4507) .entry-content .mp-local-access-block{background:var(--panel)}
.mph-site .mp-local-access-grid{gap:clamp(24px,4vw,56px)}
.mph-site .mp-local-access-block img{border-radius:var(--radius)}
.mph-site .mp-local-access-block a{border-bottom:0;text-decoration:underline;text-underline-offset:.18em}

/* ==========================================================================================================
   2026-10-01 "Curvatura em cor" inner pass, family lists-utility: /contato/ (4967) and /agende-sua-consulta/ (4526).

   Before: three stacked bands in an 890px column (a tint band with an oversized paragraph, a heading beside two
   buttons, a tint band with a small photo), the right third of the page empty, and "Agendamento da avaliação"
   breaking inside a word. The two rules of 2026-09-30 that gave these pages an 8% inset and a .7fr / 1.3fr photo
   grid were replaced by this block.

   Now one band on the ground, like the home's treatments band (text rows beside a photo): the page leads with the
   contact heading, its sentence and the two pills (WhatsApp first); the address block follows under its own ink
   rule; the clinic entrance photo fills the right column; the intro paragraph closes the band as a ruled note.
   The stored markup is untouched: the page column becomes a grid and the access block's two wrappers are
   display: contents, so the photo and the address text are grid items.

   Specificity: the shared layer positions these sections with one-id selectors and !important (site-curvatura.css,
   "one left edge"), and this file loads first, so the prefix carries the skin id twice.
   ========================================================================================================== */
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .p1-in.entry-content {
	display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, .76fr); grid-template-rows: auto 1fr auto; column-gap: clamp(32px, 4.5vw, 72px); row-gap: 0; align-items: start;
	box-sizing: border-box; width: min(100% - 2 * var(--gutter), var(--max)) !important; max-width: none !important; margin-inline: auto !important;
	padding: 0 0 clamp(64px, 8.5vw, 120px) !important;
}
/* the shared layer paints each stored section edge to edge (background, 100vmax box-shadow, clip-path) and insets it
   to an 890px measure: all of that is off here, the sections are plain grid items */
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content > section.mp-contact-actions, html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content > .mp-authority-page > section.mp-lead { margin: 0 !important; padding: 0 !important; background: none !important; box-shadow: none !important; clip-path: none !important; min-width: 0; }
/* Owner decision 2026-10-02 (board #19): the sentence about a form the page does not have was removed from the stored
   tagline of /contato/ (tools/fix-contato-20261002.php), so the rule that hid .p1-tag-b on page 4967 is gone and the
   tagline shows under the title, as on /agende-sua-consulta/. Do not hide it again. On a phone the line broke with
   "SP." alone on the second line, so the tagline of the two pages wraps in balanced lines. */
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .p1-tag-b { text-wrap: balance; }
/* Owner decision 2026-10-02 (board #20): the stored "Ver endereço" button of /contato/ is now "Ver no mapa" and opens
   the map (same URL as marcuspai_cv_map_url()). It leaves the site, so its end mark is the "out" arrow of the other
   "Ver no mapa" pills (marcuspai_cv_icon( 'out' )) in place of the row arrow the shared layer gives secondary buttons. */
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content a.mp-btn--secondary[href*="google.com/maps"]::after { width: 14px !important; height: 14px !important; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Cpath d='M3 11L11 3M5 3h6v6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Cpath d='M3 11L11 3M5 3h6v6'/%3E%3C/svg%3E") center / contain no-repeat; }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .p1-ov { padding-bottom: clamp(36px, 4.4vw, 64px) !important; }

/* 1. contact block: heading in the text face (the page title above is the display line), sentence, pills */
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content > .mp-contact-actions { grid-column: 1; grid-row: 1; display: block !important; color: var(--text); }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .mp-contact-actions__inner { display: block; max-width: none; margin: 0; }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content .mp-contact-actions h2 { margin: 0 0 14px !important; font-family: var(--font) !important; font-size: clamp(24px, 2.2vw, 32px) !important; font-weight: 600 !important; line-height: 1.2 !important; letter-spacing: -0.01em !important; text-transform: none !important; color: var(--ink) !important; }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content .mp-contact-actions p { max-width: 600px; margin: 0; font-size: clamp(18px, 1.5vw, 21px) !important; font-weight: 400; line-height: 1.5; color: var(--text); }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content .mp-contact-actions__buttons { justify-content: flex-start !important; margin-top: 32px; }

/* 2. address block: its two wrappers dissolve, the text sits under an ink rule in column 1, the photo fills column 2 */
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content > .mp-local-access-block,
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content > .mp-local-access-block > .mp-local-access-grid { display: contents !important; }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .mp-local-access-grid > div { grid-column: 1; grid-row: 2; min-width: 0; margin-top: clamp(48px, 5.5vw, 80px); }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content .mp-local-access-block h2 { margin: 0 0 24px !important; padding: 0 0 16px !important; border-bottom: 1.5px solid var(--ink); font-size: clamp(20px, 1.85vw, 26px) !important; font-weight: 400 !important; line-height: 1.2 !important; color: var(--ink) !important; }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content .mp-local-access-block p { max-width: 600px; margin: 0 0 16px; font-size: 18px !important; font-weight: 400; line-height: 1.6; color: var(--text); }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content .mp-local-access-block p:last-child { margin-bottom: 0; }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content .mp-local-access-block p a { font-weight: 600 !important; }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .mp-local-access-grid > img { grid-column: 2; grid-row: 1 / span 2; align-self: stretch; display: block; width: 100%; height: 100%; min-height: 360px; aspect-ratio: auto; object-fit: cover; object-position: 50% 60%; border-radius: 0 !important; box-shadow: none !important; }

/* 3. intro paragraph of the stored content: a ruled note across the band */
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content > .mp-authority-page { grid-column: 1 / -1; grid-row: 3; min-width: 0; margin: clamp(48px, 5.5vw, 80px) 0 0 !important; padding: 28px 0 0 !important; border-top: 1px solid var(--rule); background: none !important; }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content > .mp-authority-page .mp-lead p { max-width: 820px !important; margin: 0 !important; font-size: 18px !important; font-weight: 400 !important; line-height: 1.6 !important; color: var(--text) !important; }
html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content > .mp-authority-page .mp-lead::after { display: none !important; }

@media (max-width: 900px) {
	/* one column: contact block, photo, address, note (under 900px the photo column became a narrow upright strip) */
	html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .p1-in.entry-content { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; }
	html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .mp-local-access-grid > img { grid-column: 1; grid-row: 2; height: auto; min-height: 0; aspect-ratio: 3 / 2; margin-top: 40px; }
	html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .mp-local-access-grid > div { grid-row: 3; margin-top: 40px; }
	html body:is(#mpc, .mpc-site):is(#mpc, .mpc-site):is(.page-id-4967, .page-id-4526) .entry-content > .mp-authority-page { grid-row: 4; margin: 40px 0 0 !important; padding: 24px 0 0 !important; }
}

/* ==========================================================================================================
   2026-10-01 "Curvatura em cor" inner pass, family lists-utility: privacy policy (page 6298, body.privacy-policy).
   The reading column itself (720px at the gutter, 18px text, empty headings hidden) is in style.css and the shared
   layer. Here: the first heading starts 0px under the title band instead of 72px (the title band already ends with
   56px), each section opens with a hairline, and the page ends 64-120px above the navy band.
   ========================================================================================================== */
html body:is(#mpc, .mpc-site).privacy-policy .p1-in.entry-content { padding-top: 0 !important; padding-bottom: clamp(64px, 8.5vw, 120px) !important; }
html body:is(#mpc, .mpc-site).privacy-policy .entry-content > h2 { font-weight: 600 !important; font-size: clamp(22px, 2vw, 28px) !important; }
html body:is(#mpc, .mpc-site).privacy-policy .entry-content > h2:not(:first-child) { margin-top: clamp(36px, 4vw, 52px) !important; padding-top: clamp(24px, 2.4vw, 32px); border-top: 1px solid var(--rule); }
html body:is(#mpc, .mpc-site).privacy-policy .entry-content > p { font-weight: 400; overflow-wrap: anywhere; }
/* 2026-10-03 release fix (visual-inner-03): the list ("Seus direitos") had no rule here, so it kept the legacy 16px
   text with 1.95 leading beside 18px / 1.6 paragraphs, and its markers hung outside the column (2-4px from the
   screen edge on phones). The items take the paragraph scale and the markers sit inside the column. The side margins
   of the list stay with the reading-column rules (style.css and the shared layer, both !important); the list is a
   border-box of the column width, so the indent does not widen it. */
html body:is(#mpc, .mpc-site).privacy-policy .entry-content > ul { padding-left: 1.25em; margin-bottom: 16px; font-size: 18px; }
html body:is(#mpc, .mpc-site).privacy-policy .entry-content > ul li { font-size: 18px; font-weight: 400; line-height: 1.6; margin-block: .35em; overflow-wrap: anywhere; }
html body:is(#mpc, .mpc-site).privacy-policy .entry-content > ul li::marker { color: var(--mpc-ink); }
/* 2026-10-02 bold layer, wave 2 (builder "listas"): the privacy policy stays a calm reading page; only its title takes
   the cover scale of the bold pages (104px at 1440, sized so that "privacidade", its longest word, fits a 320px
   screen), with the tight display tracking. Rule, column and text are unchanged. */
html body:is(#mpc, .mpc-site).privacy-policy:not(.home) main h1.p1-tit { font-size: clamp(32px, 10.4vw, 104px) !important; line-height: 1.06 !important; letter-spacing: -0.01em !important; padding-bottom: clamp(20px, 2.2vw, 32px) !important; }
html body:is(#mpc, .mpc-site).privacy-policy .p1-ov { padding-top: clamp(40px, 4.45vw, 64px) !important; }

/* ==========================================================================================================
   2026-10-02 bold layer, wave 2, builder "listas": /contato/ (4967) and /agende-sua-consulta/ (4526) as theme-owned
   bold pages. Markup: lib/listas-contato.php, switched by page-contato.php and page-agende-sua-consulta.php (the
   stored content is not rendered; the rules above for .page-id-4967 / .page-id-4526 only style the stored markup
   and apply again if those two template files are removed).

   assets/css/bold-kit.css is NOT loaded here: the rules are self-contained and take the kit's values. They mirror
   the "mpl-" rules of assets/css/archive-utility.css (cover, lines, titles, rows), which is not loaded on pages.
   Every rule starts with html body:is(#mpc, .mpc-site) .mpl-contact (the class of <main>).
   Order of the page: tint cover > cobalt address block beside the entrance photo > ground (texts and row links) >
   the site's navy closing band.
   ========================================================================================================== */
html body:is(#mpc, .mpc-site) .mpl-contact { --mpl-u: min(1px, 100vw / 1440); --mpl-edge: max(0px, (100vw - 1440px) / 2); display: block; background: var(--mpc-ground); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-band { position: relative; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-band > .mph-wrap { position: relative; z-index: 1; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-band--tint { background: var(--mpc-tint); }
html body:is(#mpc, .mpc-site) .mpl-contact p { margin: 0; }

/* line bundle of the cover (marcuspai_listas_lines()): the wave lives in the right third of the cover, which the
   layout keeps empty from 901px; at 900px and less one flat sweep runs in the cover's bottom strip */
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-lines { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; user-select: none; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-lines .mpl-lines-svg { position: absolute; display: block; max-width: none; overflow: visible; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-lines-svg path { vector-effect: non-scaling-stroke; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-lines--wave-solo .mpl-lines-svg { right: var(--mpl-edge); bottom: calc(-300 * var(--mpl-u)); width: calc(520 * var(--mpl-u)); height: calc(1200 * var(--mpl-u)); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-lines--sweep-solo { display: none; }

/* cover: display title sized to its longest word (--mpl-fit, set by the template), the stored tagline, the lead */
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-cover { padding-block: clamp(40px, 4.45vw, 64px) clamp(56px, 6.1vw, 88px); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-cover-main { container-type: inline-size; }
html body:is(#mpc, .mpc-site):not(.home) main.mpl-contact h1.mpl-cover-title {
	--mpl-cover-max: 120px; --mpl-cover-col: 62vw;
	margin: 0; padding: 0; border: 0; max-width: none; color: var(--mpc-ink);
	font-size: clamp(32px, calc(var(--mpl-cover-col) / var(--mpl-fit, 8)), var(--mpl-cover-max)) !important;
	font-size: clamp(32px, calc(100cqw / var(--mpl-fit, 8)), var(--mpl-cover-max)) !important;
	line-height: 1.12 !important; letter-spacing: -0.01em !important; text-wrap: balance;
}
html body:is(#mpc, .mpc-site):not(.home) main.mpl-contact h1.mpl-cover-title--160 { --mpl-cover-max: 160px; line-height: 1 !important; }
html body:is(#mpc, .mpc-site):not(.home) main.mpl-contact h1.mpl-cover-title--104 { --mpl-cover-max: 104px; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-cover .mpl-statement { max-width: 760px; margin-top: clamp(20px, 2.2vw, 32px); font-size: clamp(22px, 2.23vw, 32px); font-weight: 600; line-height: 1.25; color: var(--mpc-ink); text-wrap: balance; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-cover .mpl-lead { max-width: 620px; margin-top: 16px; font-size: clamp(18px, 1.53vw, 22px); line-height: 1.45; color: var(--mpc-body); text-wrap: pretty; }

/* labels and section titles */
html body:is(#mpc, .mpc-site):not(.home) main.mpl-contact :is(h2, p).mpl-label { margin: 0; font-family: var(--mpc-font) !important; font-size: 15px; font-weight: 600 !important; line-height: 1.4 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; color: inherit; }
html body:is(#mpc, .mpc-site):not(.home) main.mpl-contact h2.mpl-title { margin: 0; color: var(--mpc-ink); font-family: var(--mpc-display) !important; font-size: clamp(24px, 2.5vw, 36px); font-weight: 300 !important; line-height: 1.1 !important; letter-spacing: -0.01em !important; text-transform: uppercase !important; text-wrap: balance; hyphens: none; }

/* the address block beside the entrance photo: one full-bleed band, cobalt 42% / photo 58% from 901px.
   Street and number size themselves to the block (container units), so they fill it without ever overflowing. */
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place { display: grid; grid-template-columns: minmax(0, 42fr) minmax(0, 58fr); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-block { background: var(--mpc-accent); color: #FFFFFF; padding: clamp(48px, 5vw, 72px) clamp(24px, 3.4vw, 48px) clamp(48px, 5vw, 72px) max(var(--mpc-pad), (100vw - var(--max)) / 2); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-in { container-type: inline-size; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-block p { color: #FFFFFF; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-street { margin-top: 14px; font-family: var(--mpc-display) !important; font-size: clamp(34px, 9vw, 72px); font-size: clamp(34px, calc(100cqw / 6.4), 72px); font-weight: 300; line-height: 1.04; letter-spacing: -0.01em; text-transform: uppercase; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-city { margin-top: 14px; font-size: clamp(19px, 1.53vw, 22px); line-height: 1.4; }
html body:is(#mpc, .mpc-site):not(.home) main.mpl-contact .mpl-place-block p.mpl-place-label { margin-top: clamp(28px, 2.8vw, 40px); padding-top: clamp(24px, 2.5vw, 36px); border-top: 1px solid rgba(255, 255, 255, .45); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-phone { margin-top: 10px; font-family: var(--mpc-display) !important; font-size: clamp(30px, 7.6vw, 56px); font-size: clamp(30px, calc(100cqw / 8.9), 56px); font-weight: 300; line-height: 1.05; letter-spacing: -0.01em; font-variant-numeric: lining-nums; white-space: nowrap; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place .mpc-actions { margin-top: clamp(28px, 2.8vw, 40px); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-block :is(a, button):focus-visible { outline-color: #FFFFFF !important; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-photo { position: relative; margin: 0; min-height: 420px; overflow: hidden; background: var(--mpc-tint); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-photo img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 46% 50%; border-radius: 0; }
/* /agende-sua-consulta/ (review fix 2026-10-02: the two pages were the same page twice). Here the WhatsApp number
   leads the block at the size the street has on /contato/ (72px) with the booking pill under it; the address comes
   second under the hairline, on one line, with "Ver no mapa". Block and photo share the band half and half, so the
   number fits one line; the photo is the waiting room (stair and brick wall kept in the frame at every ratio).
   Number and street size themselves to the block (container units; the vw values before them are the fallback and
   fit the half-screen block). These rules stay above the media queries: at 900px and less the band is one column
   on both pages. */
html body:is(#mpc, .mpc-site) .mpl-contact--agende-sua-consulta .mpl-place { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-in--whatsapp .mpl-place-phone { margin-top: 14px; font-size: clamp(30px, 5vw, 72px); font-size: clamp(30px, calc(100cqw / 8.6), 72px); line-height: 1.04; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-in--whatsapp .mpl-place-street { margin-top: 10px; font-size: clamp(24px, 3.7vw, 44px); font-size: clamp(24px, calc(100cqw / 11.7), 44px); line-height: 1.1; white-space: nowrap; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-in--whatsapp .mpl-place-city { margin-top: 10px; }
html body:is(#mpc, .mpc-site) .mpl-contact--agende-sua-consulta .mpl-place-photo img { object-position: 64% 58%; }

/* texts: one note (the emergency statement of /contato/ under a vermilion mark; the booking note of the other
   page), the two stored blocks side by side under a 1.5px rule, two large row links */
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-info { padding-block: clamp(56px, 6.7vw, 96px) clamp(72px, 8.9vw, 128px); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-note { max-width: 980px; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-note--mark::before { content: ''; display: block; width: 48px; height: 8px; margin-bottom: 24px; background: var(--mpc-pain); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-note-lead { font-size: clamp(22px, 1.95vw, 28px); font-weight: 600; line-height: 1.3; color: var(--mpc-ink); text-wrap: pretty; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-text { max-width: 620px; font-size: clamp(18px, 1.39vw, 20px); line-height: 1.5; color: var(--mpc-body); text-wrap: pretty; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-note .mpl-text { max-width: 860px; margin-top: 14px; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-info-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px clamp(32px, 3.9vw, 56px); margin-top: clamp(48px, 5vw, 72px); padding-top: clamp(32px, 3.4vw, 48px); border-top: 1.5px solid var(--mpc-ink); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-info-col .mpl-text { margin-top: 20px; }
/* style.css turns every <nav> into the legacy off-canvas menu (display: none, 35px side padding, 100vh, near-black
   ground): all of it is reset */
html body:is(#mpc, .mpc-site) .mpl-contact nav.mpl-routes { display: block; position: static; width: auto; height: auto; margin: clamp(48px, 5vw, 72px) 0 0; padding: 0; background: none; box-shadow: none; border-top: 1.5px solid var(--mpc-ink); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-routes .mpc-row { grid-template-columns: minmax(0, 1fr) 64px; gap: 32px; padding: 28px 0; transition: background-color .15s ease, box-shadow .15s ease; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-routes .mpc-row:is(:hover, :focus-visible) { background: var(--mpc-tint); box-shadow: -24px 0 0 var(--mpc-tint), 24px 0 0 var(--mpc-tint); }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-routes .mpc-row-title { font-size: clamp(22px, 2.23vw, 32px); line-height: 1.2; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-routes .mpc-circle { width: 64px; height: 64px; }
html body:is(#mpc, .mpc-site) .mpl-contact .mpl-routes .mpc-circle svg { width: 24px; height: 14px; }

/* phone booking bar (marcuspai_bold_bar(), lib/pages-bold.php): the same four rules as assets/css/bold-kit.css */
html body:is(#mpc, .mpc-site) .mpl-contact .mpb-bar { display: none; }

@media (min-width: 901px) {
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-cover-main { width: 68%; }
}
@media (max-width: 900px) {
	html body:is(#mpc, .mpc-site):not(.home) main.mpl-contact h1.mpl-cover-title { --mpl-cover-col: 90vw; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-lines--wave-solo { display: none; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-lines--sweep-solo { display: block; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-lines--sweep-solo .mpl-lines-svg { left: 0; bottom: 16px; width: 100%; height: 120px; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-cover { padding-bottom: 160px; }
	/* one column: the address block across the screen, then the photo */
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place { grid-template-columns: minmax(0, 1fr); }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-block { padding-inline: var(--mpc-pad); }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-photo { min-height: 0; aspect-ratio: 16 / 10; }
}
@media (max-width: 640px) {
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-photo { aspect-ratio: 4 / 3; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-info-grid { grid-template-columns: minmax(0, 1fr); }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-routes .mpc-row { grid-template-columns: minmax(0, 1fr) 48px; gap: 16px; padding: 22px 0; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-routes .mpc-row:is(:hover, :focus-visible) { box-shadow: -16px 0 0 var(--mpc-tint), 16px 0 0 var(--mpc-tint); }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-routes .mpc-circle { width: 48px; height: 48px; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-routes .mpc-circle svg { width: 22px; height: 12px; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpb-bar { display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 40; padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px)); background: var(--mpc-ground); box-shadow: 0 -1px 0 var(--mpc-rule); visibility: hidden; transform: translateY(100%); transition: transform .2s ease, visibility 0s linear .2s; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpb-bar.is-on { visibility: visible; transform: none; transition: transform .2s ease; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpb-bar .mpc-pill { width: 100% !important; font-size: 18px !important; white-space: nowrap; }
}
@media (max-width: 359px) { html body:is(#mpc, .mpc-site) .mpl-contact .mpb-bar .mpc-pill { gap: 10px !important; padding-inline: 16px !important; font-size: 16px !important; } }
@media (prefers-reduced-motion: reduce) {
	html body:is(#mpc, .mpc-site) .mpl-contact * { transition: none !important; }
}
@media print {
	html body:is(#mpc, .mpc-site) .mpl-contact :is(.mpl-lines, .mpb-bar) { display: none !important; }
	html body:is(#mpc, .mpc-site) .mpl-contact :is(.mpl-band, .mpl-place-block) { background: #FFFFFF !important; color: #000000 !important; }
	html body:is(#mpc, .mpc-site) .mpl-contact .mpl-place-block p { color: #000000; }
}
