/* My Place — theme styles. Most styling lives in theme.json; this file holds what theme.json cannot express. */

/* Most styling lives in theme.json. This file holds what theme.json cannot express. */

.myplace-topbar { font-size: var(--wp--preset--font-size--small); }
.myplace-topbar a { color: inherit; text-decoration: none; }
.myplace-topbar a:hover { text-decoration: underline; text-underline-offset: .2em; }
.myplace-topbar p { margin: 0; }

.myplace-header .wp-block-site-title a { text-decoration: none; }
/* Logo sized by height, so wide wordmarks and square marks both fit (1.2.0). */
.myplace-header .wp-block-site-logo { width: auto !important; flex: none; }
.myplace-header .wp-block-site-logo a, .myplace-header .wp-block-site-logo img { display: block; }
.myplace-header .wp-block-site-logo img { height: var(--myplace-logo-h, 48px) !important; width: auto !important; max-width: min(280px, 60vw); object-fit: contain; }
@media (max-width: 781px) { .myplace-header .wp-block-site-logo img { height: var(--myplace-logo-h-m, 40px) !important; max-width: 55vw; } }
.myplace-logo-only .myplace-header .wp-block-site-title { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.myplace-header .wp-block-navigation a:hover { text-decoration: underline; text-decoration-color: var(--wp--preset--color--accent); text-decoration-thickness: 2px; text-underline-offset: .35em; }
.myplace-header .wp-block-navigation .current-menu-item > a { text-decoration: underline; text-decoration-color: var(--wp--preset--color--accent); text-decoration-thickness: 2px; text-underline-offset: .35em; }

.myplace-sticky-header .myplace-site-header { position: sticky; top: 0; z-index: 50; }
/* The header template part wraps the group in a <header> of the same height, so the wrapper is what sticks. */
.myplace-sticky-header:not(.myplace-header-over) .myplace-header-part { position: sticky; top: 0; z-index: 50; }
.admin-bar.myplace-sticky-header:not(.myplace-header-over) .myplace-header-part { top: var(--wp-admin--admin-bar--height, 32px); }
@media (max-width: 600px) { .admin-bar.myplace-sticky-header:not(.myplace-header-over) .myplace-header-part { top: 0; } }
.admin-bar.myplace-sticky-header .myplace-site-header { top: var(--wp-admin--admin-bar--height, 32px); }
@media (max-width: 600px) { .admin-bar.myplace-sticky-header .myplace-site-header { top: 0; } }

.myplace-footer a { color: inherit; }
.myplace-footer .wp-block-site-title a { text-decoration: none; }
.myplace-footer a:hover { color: var(--wp--preset--color--accent-strong); }
.myplace-footer .myplace-footer__rule { border-top: 1px solid var(--wp--preset--color--accent-light); }

.myplace-accent-rule { width: 56px; height: 3px; background: var(--wp--preset--color--accent); border: 0; margin-left: 0; }

:where(.wp-site-blocks) a:focus-visible,
:where(.wp-site-blocks) button:focus-visible,
:where(.wp-site-blocks) input:focus-visible,
:where(.wp-site-blocks) select:focus-visible,
:where(.wp-site-blocks) textarea:focus-visible { outline: 3px solid var(--wp--preset--color--accent-strong); outline-offset: 2px; }

/* Home Seller Pro output inherits the palette; small refinements only. */
.myplace-footer .hsp-agency__item { color: inherit; }
.myplace-topbar .hsp-panel-button .hsp-panel-button__link { min-height: 28px; padding: 2px 12px; font-size: var(--wp--preset--font-size--x-small); background: var(--wp--preset--color--accent-soft); color: var(--wp--preset--color--accent-contrast); box-shadow: inset 0 0 0 1px var(--wp--preset--color--accent-strong); }
.myplace-topbar .hsp-agency__social:hover { background: var(--wp--preset--color--accent-light); }

/* ---------- Home hero ---------- */
.myplace-hero { position: relative; display: grid; min-height: 620px; margin-top: 0 !important; overflow: hidden; background: var(--wp--preset--color--accent-soft); }
.myplace-hero--medium { min-height: 520px; }
.myplace-hero--screen { min-height: calc(100vh - 120px); }
.myplace-hero__media { position: absolute; inset: 0; }
.myplace-hero__img { width: 100%; height: 100%; object-fit: cover; object-position: 60% center; display: block; }
.myplace-hero__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--wp--preset--color--accent-soft) 0%, rgba(251, 245, 225, 0) 22%); }
@media (min-width: 1024px) { .myplace-hero__media { left: 30%; } }
.myplace-hero__inner { position: relative; z-index: 1; width: 100%; max-width: 1200px; margin: 0 auto; padding: clamp(28px, 6vw, 72px) var(--wp--preset--spacing--30); display: flex; flex-direction: column; justify-content: center; gap: 22px; }
.myplace-hero__panel { max-width: 540px; padding: clamp(22px, 3vw, 36px); background: rgba(255, 255, 255, .93); border-top: 5px solid var(--wp--preset--color--accent); border-radius: var(--wp--custom--radius, 8px); box-shadow: 0 18px 40px rgba(111, 86, 13, .18); }
.myplace-hero__eyebrow, .myplace-eyebrow { margin: 0 0 8px; font-size: var(--wp--preset--font-size--x-small); font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--wp--preset--color--accent-strong); }
.myplace-hero__title { margin: 0 0 12px; font-size: clamp(2rem, 1.4rem + 2.6vw, 3.4rem); line-height: 1.08; }
.myplace-hero__text { margin: 0; font-size: 1.08rem; color: var(--wp--preset--color--contrast-2); }
.myplace-hero__cta { margin: 20px 0 0; }
.myplace-hero__search { max-width: 980px; }
@media (max-width: 781px) {
	.myplace-hero { min-height: 0; }
	.myplace-hero__media { position: relative; height: 280px; }
	.myplace-hero__media::after { display: none; }
	.myplace-hero__inner { margin-top: -70px; padding-top: 0; }
	.myplace-hero__panel { box-shadow: 0 10px 26px rgba(111, 86, 13, .16); }
}

/* ---------- Home sections ---------- */
.myplace-home > * { margin-block-start: 0; }
.wp-site-blocks > .myplace-home { margin-block-start: 0; }
.myplace-section h2 { margin-top: 0; }
.myplace-section__head { margin-bottom: 26px; }
.myplace-section__head p { margin: 0; }
.myplace-arrow-link { font-weight: 700; text-decoration: none; color: var(--wp--preset--color--contrast); border-bottom: 2px solid var(--wp--preset--color--accent); padding-bottom: 2px; }
.myplace-arrow-link::after { content: " →"; color: var(--wp--preset--color--accent-strong); }
.myplace-arrow-link:hover { color: var(--wp--preset--color--accent-strong); }
.myplace-offers { gap: 20px !important; }
.myplace-offer { padding: 28px; background: var(--wp--preset--color--accent-soft); border: 1px solid var(--wp--preset--color--accent-light); border-radius: var(--wp--custom--radius, 8px); transition: transform .2s, box-shadow .2s; }
.myplace-offer:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(111, 86, 13, .14); }
.myplace-offer h3 { margin: 14px 0 6px; }
.myplace-offer p { margin: 0 0 10px; }
.myplace-offer__icon { display: inline-grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--wp--preset--color--accent); color: var(--wp--preset--color--accent-contrast); }
.myplace-cta { background: var(--wp--preset--color--accent-soft); border: 1px solid var(--wp--preset--color--accent-light); border-radius: var(--wp--custom--radius, 8px); overflow: hidden; }
.myplace-cta__media figure { margin: 0; }
.myplace-cta__media img { display: block; width: 100%; height: 100%; min-height: 300px; object-fit: cover; }
.myplace-cta__body { padding: clamp(24px, 4vw, 56px) !important; }
@media (max-width: 781px) { .myplace-cta__body { padding-top: 0 !important; } }

@media print {
	.myplace-topbar, .myplace-site-header, .myplace-footer { display: none !important; }
}

/* Menu position (Appearance → My Place → Menu position). Phones keep the menu button on the right. */
@media (min-width: 600px) {
	.myplace-nav-left .myplace-header > .wp-block-group { justify-content: flex-start !important; gap: clamp(1.5rem, 4vw, 3.5rem); }
	.myplace-nav-left .myplace-header .wp-block-navigation, .myplace-nav-left .myplace-header .wp-block-navigation__container { justify-content: flex-start !important; }
	.myplace-nav-center .myplace-header > .wp-block-group { display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center; }
	.myplace-nav-center .myplace-header > .wp-block-group > .wp-block-group { justify-self: start; }
	.myplace-nav-center .myplace-header .wp-block-navigation { justify-self: center; }
	.myplace-nav-center .myplace-header .wp-block-navigation__container { justify-content: center !important; }
}

/* Contact Form 7 anywhere on the site (contact page, property enquiry): theme look without extra CSS. */
.wpcf7 form { display: grid; gap: 14px; }
.wpcf7 form > p, .wpcf7 form p { margin: 0; }
.wpcf7 label { display: grid; gap: 6px; font-size: .9rem; font-weight: 700; color: var(--wp--preset--color--contrast); }
.wpcf7 label br { display: none; }
.wpcf7 input[type=text], .wpcf7 input[type=email], .wpcf7 input[type=tel], .wpcf7 input[type=url], .wpcf7 input[type=number], .wpcf7 input[type=date], .wpcf7 select, .wpcf7 textarea { box-sizing: border-box; width: 100%; min-height: 46px; padding: 10px 12px; border: 1px solid var(--wp--preset--color--accent-light); border-radius: 8px; background: #fff; color: var(--wp--preset--color--contrast); font: inherit; font-weight: 400; font-size: 1rem; }
.wpcf7 textarea { min-height: 120px; resize: vertical; }
.wpcf7 input:focus-visible, .wpcf7 select:focus-visible, .wpcf7 textarea:focus-visible { outline: 3px solid var(--wp--preset--color--accent-strong); outline-offset: 1px; border-color: var(--wp--preset--color--accent-strong); }
.wpcf7 input[type=submit], .wpcf7 button[type=submit] { width: 100%; min-height: 48px; padding: 12px 20px; border: 0; border-radius: 8px; background: var(--wp--preset--color--accent); color: var(--wp--preset--color--contrast); font: inherit; font-weight: 700; font-size: 1rem; cursor: pointer; }
.wpcf7 input[type=submit]:hover, .wpcf7 button[type=submit]:hover { background: var(--wp--preset--color--accent-strong); color: #fff; }
.wpcf7 input[type=submit]:focus-visible { outline: 3px solid var(--wp--preset--color--accent-strong); outline-offset: 2px; }
.wpcf7 .wpcf7-list-item { margin: 0; }
.wpcf7 .wpcf7-acceptance label, .wpcf7 .wpcf7-checkbox label, .wpcf7 .wpcf7-radio label { display: flex; align-items: flex-start; gap: 8px; font-weight: 400; font-size: .85rem; }
.wpcf7 input[type=checkbox], .wpcf7 input[type=radio] { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--wp--preset--color--accent-strong); flex: none; }
.wpcf7 .wpcf7-not-valid { border-color: #b3261e !important; }
.wpcf7 .wpcf7-not-valid-tip { margin-top: 4px; color: #b3261e; font-size: .8rem; font-weight: 400; }
.wpcf7 form .wpcf7-response-output { margin: 0; padding: 10px 12px; border: 1px solid var(--wp--preset--color--accent-light); border-radius: 8px; background: var(--wp--preset--color--accent-soft); font-size: .9rem; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.spam .wpcf7-response-output { border-color: #b3261e; background: #fdf1f0; }
.wpcf7 form.init .wpcf7-response-output, .wpcf7 form.resetting .wpcf7-response-output, .wpcf7 form.submitting .wpcf7-response-output, .wpcf7 .wpcf7-response-output:empty { display: none; }
.wpcf7 .wpcf7-spinner { margin: 8px auto 0; display: block; background-color: var(--wp--preset--color--accent-strong); }

/* Top bar menu (language switcher) */
.myplace-topbar-nav { font-size: var(--wp--preset--font-size--x-small); font-weight: 700; }
.myplace-topbar-nav a { color: inherit; text-decoration: none; }
.myplace-topbar-nav a:hover, .myplace-topbar-nav .current-lang a, .myplace-topbar-nav .current-menu-item a { text-decoration: underline; text-underline-offset: .3em; }
.myplace-topbar-nav img { display: inline-block; vertical-align: middle; }

/* Home hero as an editable Cover block (Pages → Home) */
.myplace-hero-cover.wp-block-cover { min-height: 620px; padding: clamp(28px, 6vw, 72px) var(--wp--preset--spacing--30); background: var(--wp--preset--color--accent-soft); margin-top: 0 !important; margin-bottom: 0 !important; }
.myplace-hero-cover .wp-block-cover__image-background { object-position: 60% center; }
.myplace-hero-cover > .wp-block-cover__background { opacity: 1 !important; background: linear-gradient(90deg, var(--wp--preset--color--accent-soft) 0%, rgba(251, 245, 225, .55) 30%, rgba(251, 245, 225, 0) 55%) !important; }
.myplace-hero-cover.wp-block-cover .wp-block-cover__inner-container { width: 100% !important; max-width: 1200px; margin: 0 auto !important; display: flex; flex-direction: column; gap: 22px; color: var(--wp--preset--color--contrast); }
.myplace-hero-cover .myplace-hero__panel { max-width: 540px; margin: 0 !important; padding: clamp(22px, 3vw, 36px); background: rgba(255, 255, 255, .93); border-top: 5px solid var(--wp--preset--color--accent); border-radius: var(--wp--custom--radius, 8px); box-shadow: 0 18px 40px rgba(111, 86, 13, .18); }
.myplace-hero-cover .myplace-hero__panel > * { margin-top: 0; margin-bottom: 12px; }
.myplace-hero-cover .myplace-hero__panel > :last-child { margin-bottom: 0; }
.myplace-hero-cover .myplace-hero__title { font-size: clamp(2rem, 1.4rem + 2.6vw, 3.4rem); line-height: 1.08; }
.myplace-hero-cover .myplace-hero__text { font-size: 1.08rem; color: var(--wp--preset--color--contrast-2); }
.myplace-hero-cover .myplace-hero__search { max-width: 980px; margin: 0 !important; }
@media (max-width: 781px) {
	.myplace-hero-cover.wp-block-cover { min-height: 0 !important; padding: 220px 16px 24px; align-items: flex-end; }
	.myplace-hero-cover .wp-block-cover__image-background { height: 280px !important; bottom: auto !important; }
	.myplace-hero-cover > .wp-block-cover__background { background: linear-gradient(180deg, rgba(251, 245, 225, 0) 180px, var(--wp--preset--color--accent-soft) 280px) !important; }
}
.myplace-home__content > * { margin-block-start: 0; }
.is-style-rounded-soft img { border-radius: var(--wp--custom--radius, 8px); }
.myplace-values { margin-top: var(--wp--preset--spacing--50); }
.myplace-contact-form { padding: clamp(18px, 3vw, 32px); background: var(--wp--preset--color--accent-soft); border: 1px solid var(--wp--preset--color--accent-light); border-radius: var(--wp--custom--radius, 8px); }
.myplace-values + .wp-block-heading { margin-top: var(--wp--preset--spacing--60); }

/* Noir scheme: gold on a dark top bar, header and footer (the only dark surfaces). */
.myplace-dark-chrome .myplace-topbar { background: #0d0f12 !important; color: #e9e5da !important; border-bottom: 1px solid rgba(211, 175, 55, .35); }
.myplace-dark-chrome .myplace-topbar a { color: #e9e5da !important; }
.myplace-dark-chrome .myplace-topbar a:hover { color: var(--wp--preset--color--accent) !important; }
.myplace-dark-chrome .myplace-header { background: #14161a !important; color: #e9e5da; border-bottom-color: rgba(211, 175, 55, .45) !important; }
.myplace-dark-chrome .myplace-header a, .myplace-dark-chrome .myplace-header .wp-block-site-title a, .myplace-dark-chrome .myplace-header .wp-block-navigation-item__content { color: #e9e5da; }
.myplace-dark-chrome .myplace-header .wp-block-navigation__responsive-container-open, .myplace-dark-chrome .myplace-header .wp-block-navigation__responsive-container-close { color: #e9e5da; }
.myplace-dark-chrome .myplace-header .wp-block-navigation__responsive-container.is-menu-open { background: #14161a; color: #e9e5da; }
.myplace-dark-chrome .myplace-footer { background: #14161a !important; color: #e9e5da !important; }
.myplace-dark-chrome .myplace-footer a, .myplace-dark-chrome .myplace-footer .wp-block-site-title a { color: #e9e5da !important; }
.myplace-dark-chrome .myplace-footer a:hover { color: var(--wp--preset--color--accent) !important; }
.myplace-dark-chrome .myplace-footer .has-accent-strong-color { color: var(--wp--preset--color--accent) !important; }
.myplace-dark-chrome .myplace-footer .myplace-footer__rule { border-top-color: rgba(211, 175, 55, .3); color: #c9c5b9; }
.myplace-dark-chrome .myplace-header :focus-visible, .myplace-dark-chrome .myplace-footer :focus-visible, .myplace-dark-chrome .myplace-topbar :focus-visible { outline-color: var(--wp--preset--color--accent) !important; }
.myplace-dark-chrome .myplace-topbar .hsp-saved, .myplace-dark-chrome .myplace-topbar .hsp-panel-btn { border-color: rgba(211, 175, 55, .6); }

/* Simple footer: one row (title, menu, socials) + copyright. */
.myplace-footer--simple .myplace-footer__row { align-items: center; }
.myplace-footer--simple .wp-block-navigation { font-size: var(--wp--preset--font-size--small); }
.myplace-dark-chrome .myplace-site-header { background: #14161a; }
.myplace-dark-chrome .myplace-site-header > * { margin-block-start: 0; }

/* ---------- Block style: full-width band, big image (Group → Styles) ---------- */
html, body { overflow-x: clip; }
.wp-block-group.is-style-myplace-band { width: 100vw; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background-color: var(--wp--preset--color--accent-soft); }
.is-style-myplace-band > .wp-block-columns, .is-style-myplace-band .wp-block-columns { gap: 0 !important; margin: 0 !important; align-items: stretch !important; max-width: none !important; }
.is-style-myplace-band .wp-block-column { align-self: stretch !important; }
.is-style-myplace-band .wp-block-column:has(> .wp-block-image), .is-style-myplace-band .wp-block-column:has(> figure) { flex: 1 1 50% !important; padding: 0 !important; margin: 0 !important; }
.is-style-myplace-band .wp-block-column > .wp-block-image { height: 100%; margin: 0 !important; }
.is-style-myplace-band .wp-block-column > .wp-block-image img { width: 100%; height: 100%; min-height: 460px; object-fit: cover; border-radius: 0 !important; display: block; }
.is-style-myplace-band .wp-block-column:not(:has(> .wp-block-image)):not(:has(> figure)) { flex: 1 1 50% !important; display: flex; flex-direction: column; justify-content: center; padding: clamp(32px, 6vw, 96px) clamp(24px, 6vw, 96px) !important; }
.is-style-myplace-band .wp-block-column:not(:has(> .wp-block-image)) > * { max-width: 560px; }
.is-style-myplace-band .wp-block-column:not(:has(> .wp-block-image)).has-text-align-right > *, .is-style-myplace-band .wp-block-column:not(:has(> .wp-block-image)) > .has-text-align-right { margin-left: auto; }
.myplace-checks { list-style: none; padding-left: 0; }
.myplace-checks li { position: relative; padding-left: 1.6em; margin-bottom: .45em; }
.myplace-checks li::before { content: "✔"; position: absolute; left: 0; color: var(--wp--preset--color--accent-strong); }
@media (max-width: 781px) {
	.is-style-myplace-band .wp-block-column > .wp-block-image img { min-height: 260px; }
	.is-style-myplace-band .wp-block-columns { flex-direction: column; }
	.is-style-myplace-band .wp-block-columns { width: 100% !important; }
	.is-style-myplace-band .wp-block-column { flex: 0 0 auto !important; flex-basis: auto !important; width: 100% !important; min-width: 0 !important; max-width: 100% !important; box-sizing: border-box; }
	.is-style-myplace-band .wp-block-column > * { max-width: 100%; }
}

/* ---------- Block style: over the image, centred (Group → Styles) ---------- */
.wp-block-group.is-style-myplace-on-image { background: transparent !important; box-shadow: none !important; border: 0 !important; text-align: center; max-width: 860px !important; margin-left: auto !important; margin-right: auto !important; color: #fff; text-shadow: 0 2px 14px rgba(0, 0, 0, .45); }
.is-style-myplace-on-image :where(h1, h2, h3, h4, p, .wp-block-heading, .myplace-hero__title, .myplace-hero__text, .myplace-hero__eyebrow, .myplace-eyebrow) { color: #fff !important; }
.is-style-myplace-on-image .wp-block-buttons { justify-content: center; }
.is-style-myplace-on-image .hsp-search, .is-style-myplace-on-image .wp-element-button { text-shadow: none; }
.wp-block-cover:has(.is-style-myplace-on-image) > .wp-block-cover__background { background: rgba(20, 16, 6, .42) !important; opacity: 1 !important; }
.wp-block-cover:has(.is-style-myplace-on-image) .wp-block-cover__inner-container { align-items: center; text-align: center; }
.myplace-hero-cover:has(.is-style-myplace-on-image) .myplace-hero__panel { max-width: 860px; margin-left: auto !important; margin-right: auto !important; }

/* Hero (settings) — centred white text over the image */
.myplace-hero--center .myplace-hero__media { left: 0; }
.myplace-hero--center .myplace-hero__media::after { background: rgba(20, 16, 6, .42); }
.myplace-hero--center .myplace-hero__inner { align-items: center; text-align: center; }
.myplace-hero--center .myplace-hero__panel { max-width: 860px; background: transparent; border: 0; box-shadow: none; color: #fff; text-shadow: 0 2px 14px rgba(0, 0, 0, .45); }
.myplace-hero--center .myplace-hero__eyebrow, .myplace-hero--center .myplace-hero__title, .myplace-hero--center .myplace-hero__text { color: #fff; }
@media (max-width: 781px) {
	.myplace-hero--center .myplace-hero__media { position: absolute; height: auto; }
	.myplace-hero--center .myplace-hero__inner { margin-top: 0; padding-top: 56px; padding-bottom: 56px; }
}

/* ---- 1.9.0: top bar layouts ---- */
.myplace-topbar-minimal .myplace-topbar > .wp-block-group > .wp-block-group:first-child { display: none; }
.myplace-topbar-minimal .myplace-topbar > .wp-block-group > .wp-block-group:last-child > p { display: none; }
.myplace-topbar-minimal .myplace-topbar > .wp-block-group { justify-content: flex-end !important; }
.myplace-topbar-centered .myplace-topbar > .wp-block-group { justify-content: center !important; text-align: center; }
.myplace-topbar-centered .myplace-topbar > .wp-block-group > .wp-block-group { justify-content: center !important; }

/* ---- header: logo centred, menu below ---- */
@media (min-width: 782px) {
	.myplace-header-stacked .myplace-header > .wp-block-group { flex-direction: column !important; align-items: center !important; gap: .9rem; }
	.myplace-header-stacked .myplace-header > .wp-block-group > .wp-block-group { justify-content: center; }
	.myplace-header-stacked .myplace-header .wp-block-navigation, .myplace-header-stacked .myplace-header .wp-block-navigation__container { justify-content: center !important; }
}

/* ---- sticky header gets slimmer while scrolling ---- */
.myplace-header, .myplace-header .wp-block-site-logo img { transition: padding .2s ease, height .2s ease, background-color .2s ease; }
.myplace-sticky-header.myplace-scrolled .myplace-header { padding-top: 6px !important; padding-bottom: 6px !important; box-shadow: 0 6px 18px rgba(0, 0, 0, .06); }
.myplace-sticky-header.myplace-scrolled .myplace-header .wp-block-site-logo img { height: calc(var(--myplace-logo-h, 48px) * .8) !important; }
@media (prefers-reduced-motion: reduce) { .myplace-header, .myplace-header .wp-block-site-logo img { transition: none; } }

/* ---- header over the hero (Home page) ---- */
.myplace-header-over .myplace-site-header { position: absolute; left: 0; right: 0; z-index: 60; }
.myplace-header-over .wp-site-blocks { position: relative; }
.myplace-header-over:not(.myplace-scrolled) .myplace-header { background: transparent !important; border-bottom-color: rgba(255, 255, 255, .35) !important; }
.myplace-header-over:not(.myplace-scrolled) .myplace-header .wp-block-site-title a,
.myplace-header-over:not(.myplace-scrolled) .myplace-header .wp-block-navigation__responsive-container:not(.is-menu-open) .wp-block-navigation-item__content,
.myplace-header-over:not(.myplace-scrolled) .myplace-header .wp-block-navigation__responsive-container-open { color: #fff !important; text-shadow: 0 1px 8px rgba(0, 0, 0, .35); }
.myplace-header-over.myplace-sticky-header.myplace-scrolled .myplace-site-header { position: fixed; top: 0; }
.admin-bar.myplace-header-over.myplace-sticky-header.myplace-scrolled .myplace-site-header { top: var(--wp-admin--admin-bar--height, 32px); }
.myplace-header-over main > :first-child:is(.wp-block-cover, .myplace-hero, .myplace-hero-slides, .myplace-hero-split),
.myplace-header-over .wp-block-post-content > :first-child:is(.wp-block-cover, .myplace-hero-slides, .myplace-hero-split) { padding-top: calc(clamp(28px, 6vw, 72px) + 120px) !important; }
@media (max-width: 600px) { .admin-bar.myplace-header-over.myplace-sticky-header.myplace-scrolled .myplace-site-header { top: 0; } }

/* ---- hero: split ---- */
.myplace-hero-split { margin-top: 0 !important; background: var(--wp--preset--color--accent-soft); }
.myplace-hero-split__cols { gap: 0 !important; margin: 0 !important; min-height: 600px; }
.myplace-hero-split__text { padding: clamp(32px, 6vw, 96px) clamp(20px, 5vw, 80px) !important; display: flex; flex-direction: column; justify-content: center; gap: 18px; }
.myplace-hero-split__text > * { max-width: 600px; margin-left: auto !important; margin-right: 0 !important; width: 100%; }
.myplace-hero-split__text .myplace-hero__title { margin: 0; }
.myplace-hero-split__media { padding: 0 !important; }
.myplace-hero-split__media .wp-block-image { height: 100%; margin: 0; }
.myplace-hero-split__media img { width: 100%; height: 100%; min-height: 600px; object-fit: cover; display: block; }
@media (max-width: 781px) {
	.myplace-hero-split__cols { flex-direction: column; min-height: 0; }
	.myplace-hero-split__media img { min-height: 280px; max-height: 360px; }
	.myplace-hero-split__text > * { max-width: none; }
}

/* ---- hero: video ---- */
.myplace-hero-video.wp-block-cover { margin-top: 0 !important; padding: clamp(28px, 6vw, 72px) var(--wp--preset--spacing--30); }
.myplace-hero-video .wp-block-cover__inner-container { width: 100% !important; max-width: 1200px; display: flex; flex-direction: column; gap: 24px; align-items: stretch; }
.myplace-hero-video .myplace-hero__title { font-size: clamp(2.2rem, 5vw, 3.6rem); }

/* ---- slideshow gallery ---- */
.wp-block-gallery.is-style-myplace-slideshow { position: relative; display: block !important; aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--wp--custom--radius, 8px); background: var(--wp--preset--color--accent-soft); }
.wp-block-gallery.is-style-myplace-slideshow > .wp-block-image { position: absolute !important; inset: 0; width: 100% !important; height: 100%; margin: 0 !important; opacity: 0; transition: opacity .9s ease; }
.wp-block-gallery.is-style-myplace-slideshow > .wp-block-image:first-child, .wp-block-gallery.is-style-myplace-slideshow.is-ready > .wp-block-image.is-active { opacity: 1; }
.wp-block-gallery.is-style-myplace-slideshow.is-ready > .wp-block-image:not(.is-active) { opacity: 0; }
.wp-block-gallery.is-style-myplace-slideshow > .wp-block-image img { width: 100% !important; height: 100% !important; object-fit: cover; }
.myplace-slides__nav { position: absolute; left: 0; right: 0; bottom: 16px; z-index: 3; display: flex; justify-content: center; align-items: center; gap: 12px; }
.myplace-slides__prev, .myplace-slides__next { width: 40px; height: 40px; border-radius: 50%; border: 0; background: rgba(255, 255, 255, .9); color: #1b1b1f; cursor: pointer; font-size: 20px; line-height: 1; }
.myplace-slides__prev::before { content: "\2039"; }
.myplace-slides__next::before { content: "\203A"; }
.myplace-slides__dots { display: flex; gap: 8px; }
.myplace-slides__dot { width: 12px; height: 12px; padding: 0; border-radius: 50%; border: 2px solid #fff; background: transparent; cursor: pointer; }
.myplace-slides__dot[aria-current="true"] { background: var(--wp--preset--color--accent); border-color: var(--wp--preset--color--accent); }
.myplace-slides__nav button:focus-visible { outline: 3px solid var(--wp--preset--color--accent); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) { .wp-block-gallery.is-style-myplace-slideshow > .wp-block-image { transition: none; } }

/* ---- hero: slideshow ---- */
.myplace-hero-slides { position: relative; margin-top: 0 !important; min-height: 640px; overflow: hidden; display: flex; align-items: center; }
.myplace-hero-slides > .wp-block-gallery.is-style-myplace-slideshow { position: absolute !important; inset: 0; aspect-ratio: auto; border-radius: 0; margin: 0 !important; }
.myplace-hero-slides > .wp-block-gallery.is-style-myplace-slideshow::after { content: ""; position: absolute; inset: 0; background: rgba(20, 16, 6, .42); z-index: 1; pointer-events: none; }
.myplace-hero-slides__text { position: relative; z-index: 2; width: 100%; padding: clamp(28px, 6vw, 72px) var(--wp--preset--spacing--30) 90px; display: flex; flex-direction: column; gap: 24px; }
.myplace-hero-slides .myplace-hero__title { font-size: clamp(2.2rem, 5vw, 3.6rem); }
@media (max-width: 781px) { .myplace-hero-slides { min-height: 560px; } }

/* ---- testimonials ---- */
.wp-block-quote.is-style-myplace-testimonial { height: 100%; margin: 0; padding: 28px 26px 24px; border: 1px solid var(--wp--preset--color--accent-light); border-left-width: 1px; border-radius: var(--wp--custom--radius, 8px); background: var(--wp--preset--color--accent-soft); font-style: normal; }
.wp-block-quote.is-style-myplace-testimonial::before { content: "\2605\2605\2605\2605\2605"; content: "\2605\2605\2605\2605\2605" / ""; display: block; margin-bottom: 10px; color: var(--wp--preset--color--accent); letter-spacing: 3px; font-size: 1.05rem; }
.wp-block-quote.is-style-myplace-testimonial p { font-size: 1.02rem; line-height: 1.6; }
.wp-block-quote.is-style-myplace-testimonial cite { display: block; margin-top: 14px; font-style: normal; font-weight: 700; font-size: .9rem; color: var(--wp--preset--color--accent-strong); }
.myplace-testimonials .wp-block-column { display: flex; }

/* ---- about & team ---- */
.myplace-about__img img { border-radius: var(--wp--custom--radius, 8px); width: 100%; height: auto; }
.myplace-team__card { text-align: center; }
.myplace-team__card .wp-block-image img { width: 160px; height: 160px; object-fit: cover; margin: 0 auto; display: block; }

/* ---- footer: agency with map ---- */
.myplace-footer--agency .wp-block-site-logo img { height: auto; max-width: 180px; }
.myplace-footer--agency .hsp-map { border-radius: var(--wp--custom--radius, 8px); overflow: hidden; }
.myplace-hero-split__text .hsp-sf { flex-direction: column; align-items: stretch; }
.myplace-hero-split__text .hsp-sf__fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.myplace-header-over.myplace-scrolled .myplace-site-header, .myplace-sticky-header .myplace-site-header { background: var(--wp--preset--color--base, #fff); }
.myplace-header-over:not(.myplace-scrolled) .myplace-site-header { background: transparent; }
.myplace-site-header > .myplace-header { margin-top: 0 !important; }

/* ---- top bar on phones: no email, the rest on the right ---- */
@media (max-width: 600px) {
	.myplace-topbar a[href^="mailto:"] { display: none !important; }
	.myplace-topbar > .wp-block-group > .wp-block-group:first-child:not(:has(a[href^="tel:"])) { display: none; }
	.myplace-topbar > .wp-block-group { justify-content: flex-end !important; }
	.myplace-topbar > .wp-block-group > .wp-block-group:last-child { margin-left: auto; justify-content: flex-end !important; }
}
