/* Typography observed on the public NATIIVE site, served locally. */
@font-face { font-family: 'Roboto'; font-style: normal; font-weight: 300 500; font-display: swap; src: url('../fonts/roboto-latin-variable.woff2') format('woff2'); }
@font-face { font-family: 'PT Sans'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/pt-sans-latin-regular.woff2') format('woff2'); }
:root {
  --natiive-action-font: var(--wp--preset--font-family--system, 'PT Sans', Arial, sans-serif);
  --natiive-action-size: 1rem;
  --natiive-action-weight: 700;
  --natiive-action-radius: 3px;
  --natiive-action-height: 48px;
  --natiive-action-padding: .75rem 1.25rem;
  --natiive-action-primary: var(--wp--preset--color--green, #227131);
  --natiive-action-hover: #1b5b27;
  --natiive-action-ink: var(--wp--preset--color--navy, #1f2244);
}
/* Shared public actions. Icon controls, tabs and filters retain their own layout. */
button, input, select, textarea { font: inherit; }
.wp-block-button__link, .natiive-button {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  min-height: var(--natiive-action-height); max-width: 100%; padding: var(--natiive-action-padding);
  border: 1px solid var(--natiive-action-primary); border-radius: var(--natiive-action-radius);
  background: var(--natiive-action-primary); color: #fff;
  font: var(--natiive-action-weight) var(--natiive-action-size)/1.4 var(--natiive-action-font);
  letter-spacing: normal; text-transform: none; text-align: center; text-decoration: none; cursor: pointer;
}
.wp-block-button__link:hover, .natiive-button:hover { background: var(--natiive-action-hover); border-color: var(--natiive-action-hover); color: #fff; }
.wp-block-button.is-style-outline .wp-block-button__link, .natiive-button--secondary {
  background: #fff; color: var(--natiive-action-ink); border-color: var(--natiive-action-ink);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover, .natiive-button--secondary:hover { background: #f0f3ef; color: var(--natiive-action-ink); }
.natiive-text-link { display: inline-flex; align-items: center; min-height: 44px; color: var(--natiive-action-ink); text-decoration: underline; text-underline-offset: .2em; }
html { scroll-behavior: smooth; scroll-padding-top: 2rem; }
body { margin: 0; }
* { box-sizing: border-box; }
:where(a, button, input, select, textarea):focus-visible { outline: 3px solid #1f2244; outline-offset: 4px; }
:where(h1,h2,h3,p,a) { overflow-wrap: anywhere; }
:where(img) { max-width: 100%; height: auto; }
.natiive-header { border-bottom: 1px solid var(--wp--preset--color--line); padding-block: 1.25rem; }
.natiive-header .wp-block-navigation a { text-decoration: none; }
.natiive-header .wp-block-navigation a:hover { text-decoration: underline; text-underline-offset: 0.3em; }
.natiive-header .wp-block-site-logo:empty { display: none; }
.natiive-header .wp-block-site-logo:not(:empty) + .natiive-brand-text { display: none; }
.natiive-brand-text .wp-block-site-title { margin: 0; }
.natiive-brand-text p { margin: 0; }
.natiive-hero { padding-block: clamp(3rem, 8vw, 6rem); }
.natiive-eyebrow { text-transform: uppercase; font-size: .78rem; font-weight: 700; letter-spacing: .12em; }
.natiive-eyebrow::before { content: ''; display: inline-block; width: .55rem; height: .55rem; margin-right: .6rem; border-radius: 50%; background: #52af31; }
.natiive-intro { max-width: 44rem; }
.natiive-panel { border: 1px solid var(--wp--preset--color--line); border-radius: 12px; height: 100%; }
.natiive-section { padding-block: clamp(2.5rem, 6vw, 4.5rem); }
.natiive-section-heading { margin-bottom: 2rem; }
.natiive-section :where(h2,h3) { margin-top: 0; }
.natiive-owner-columns { gap: 1.25rem; }
.natiive-owner-columns .wp-block-column { display: flex; }
.natiive-owner-columns .natiive-panel { width: 100%; }
.natiive-contact { border-radius: 12px; }
.natiive-footer { margin-top: 0; padding-block: 2rem; border-top: 1px solid var(--wp--preset--color--line); }
.natiive-footer a { text-underline-offset: .18em; }
.natiive-footer .wp-block-buttons { flex-wrap: wrap; }
.wp-block-button.is-style-outline .wp-block-button__link { color: var(--wp--preset--color--navy); border-color: currentColor; }
.natiive-contact :where(a,button):focus-visible { outline-color: #FFFFFF; }
.natiive-contact a { color: #FFFFFF; }
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; justify-content: center; align-items: center; }
.wp-block-navigation__responsive-container.is-menu-open { padding: 1.5rem; }
.natiive-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { display: flex; align-items: center; min-height: 44px; min-width: 44px; padding-block: .5rem; }
.natiive-reading { padding-block: 3rem; }
.natiive-reading :where(h1) { max-width: 20ch; }
@media (max-width: 780px) {
  .natiive-header > .wp-block-group { gap: .75rem; }
  .natiive-header .natiive-header-cta { display: none; }
  .natiive-header .wp-block-site-logo img { width: 180px; height: auto; }
  .natiive-hero .wp-block-buttons { align-items: stretch; flex-direction: column; }
  .natiive-hero .wp-block-button, .natiive-hero .wp-block-button__link { width: 100%; }
  .natiive-hero .wp-block-button__link { text-align: center; }
  .natiive-contact { padding: 1.5rem !important; }
}
@media (max-width: 1100px) {
  .natiive-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
  .natiive-header .wp-block-navigation__responsive-container-open { display: flex; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Owner-first navigation and editorial presentation; native WordPress menu retained. */
.natiive-header { background: #fff; padding-block: .65rem; }
.natiive-header > .wp-block-group { gap: 1.5rem; }
.natiive-header .wp-block-site-logo img { width: 180px; }
.natiive-header .wp-block-navigation { margin-left: auto; }
.natiive-header .wp-block-navigation__container { gap: 1.35rem; }
.natiive-header .wp-block-navigation-item__content { display: inline-flex; align-items: center; min-height: 44px; }
.natiive-header .wp-block-button__link { white-space: nowrap; }
.natiive-header :where(.wp-block-site-logo a) { display: inline-flex; min-height: 44px; align-items: center; }
.natiive-home-hero { padding-block: clamp(2.5rem, 6vw, 5rem); }
.natiive-hero-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.natiive-hero-layout > .natiive-intro { width: 100%; max-width: none; margin: 0; }
.natiive-hero-layout h1 { font-size: clamp(2.375rem, 4.4vw, 4.4rem); line-height: 1.08; letter-spacing: -.045em; margin-block: 1.25rem 1.75rem; overflow-wrap: normal; }
.natiive-hero-layout .has-lead-font-size { max-width: 46ch; color: #53656d; }
.natiive-local-panel { width: 100%; min-width: 0; margin: 0 !important; padding: clamp(1.75rem, 3vw, 3rem); background: #1f2244; color: #fff; border-radius: 2px 2px 56px 2px; border-top: 4px solid #52af31; }
.natiive-local-panel h2 { font-size: clamp(1.65rem, 2.3vw, 2.2rem); line-height: 1.2; letter-spacing: -.02em; color: #fff; }
.natiive-panel-kicker { text-transform: uppercase; letter-spacing: .12em; font-size: .72rem; color: #dfe6dc; }
.natiive-local-panel .natiive-panel-phone a { display: inline-flex; align-items: center; min-height: 44px; color: #fff; font-size: 1.3rem; text-decoration-thickness: 1px; text-underline-offset: .3em; }
.natiive-panel-caption { font-size: .8rem; color: #dfe6dc; padding-top: 1.25rem; border-top: 1px solid #ffffff40; }
.natiive-local-panel :where(a):focus-visible { outline-color: #fff; }
.natiive-panel { border-radius: 2px; border-top: 3px solid #1f2244; background: #fff; }
.natiive-panel h3 { font-size: clamp(1.4rem, 2.2vw, 1.8rem); }
.natiive-panel a { display: inline-flex; align-items: center; min-height: 44px; }
.natiive-agency { border-bottom: 1px solid #dde4e3; }
.natiive-agency > :where(p,h2) { max-width: 48rem; margin-left: 0 !important; }
.natiive-contact { border-radius: 2px 2px 32px 2px; }
.natiive-footer { background: #1f2244; color: #fff; padding-block: 3rem; }
.natiive-footer .natiive-footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr; gap: 2rem; }
.natiive-footer .natiive-footer-grid > div { margin: 0; min-width: 0; }
.natiive-footer :where(a,h2,.wp-block-site-title a) { color: #fff; }
.natiive-footer h2 { text-transform: uppercase; letter-spacing: .08em; line-height: 1.5; }
.natiive-footer a { display: inline-flex; align-items: center; min-height: 44px; }
.natiive-footer :where(a):focus-visible { outline-color: #fff; }
@media (min-width: 1101px) and (max-width: 1240px) {
  .natiive-header .wp-block-navigation__container { gap: .75rem; }
  .natiive-header > .wp-block-group { gap: 1rem; }
  .natiive-header .wp-block-site-logo img { width: 160px; }
}
@media (max-width: 900px) {
  .natiive-hero-layout { grid-template-columns: 1fr; gap: 2rem; }
  .natiive-local-panel { max-width: none; }
  .natiive-local-panel h2 br { display: none; }
  .natiive-local-panel h2 { max-width: 22ch; }
}
@media (max-width: 780px) {
  .natiive-header .wp-block-site-logo img { width: 160px; }
  .natiive-footer .natiive-footer-grid { grid-template-columns: 1fr; }
  .natiive-hero-layout h1 { font-size: clamp(2.2rem, 8.8vw, 3rem); }
  .natiive-local-panel { border-bottom-right-radius: 32px; }
}

@media (max-width: 1100px) {
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content { align-items: flex-start; padding-top: 3rem; }
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation__container { align-items: stretch; width: 100%; gap: .75rem; }
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation-item { width: 100%; }
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation-item__content { justify-content: flex-start; width: 100%; padding: .65rem .5rem; font-size: 1.2rem; }
}

/* Visual continuity with the existing NATIIVE site. */
.natiive-header { background: #1f2244; border-bottom: 2px solid var(--wp--preset--color--gold, #917a26); }
.natiive-header :where(.wp-block-navigation,a,button) { color: #fff; }
.natiive-header .wp-block-button__link { background: #227131; color: #fff; border: 1px solid #78a77d; }
.natiive-header :where(a,button):focus-visible { outline-color: var(--wp--preset--color--gold, #917a26); }
.natiive-header .natiive-nav-estimate { display: none; }
.natiive-home-hero { min-height: 640px; padding-block: clamp(3rem, 8vw, 6rem); background-image: linear-gradient(180deg, #11183026, #1118304d), url('../images/bois-colombes-hero.webp'); background-position: center; background-size: cover; color: #fff; display: flex; align-items: center; }
.natiive-home-hero .natiive-hero-layout { display: block; width: 100%; text-align: center; }
.natiive-home-hero .natiive-intro { max-width: 64rem; margin-inline: auto; }
.natiive-home-hero h1 { max-width: 20ch; margin: 1.3rem auto 1.6rem; color: #fff; font-size: clamp(2.6rem, 5vw, 4.3rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.12; }
.natiive-home-hero :where(.natiive-eyebrow,.has-lead-font-size,p,a) { color: #fff; }
.natiive-home-hero .has-lead-font-size { max-width: 55ch; margin-inline: auto; }
.natiive-home-hero .wp-block-buttons { justify-content: center; margin-top: 2rem; }
.natiive-home-hero .wp-block-button:not(.is-style-outline) .wp-block-button__link { background: var(--natiive-action-primary); border: 1px solid var(--natiive-action-primary); }
.natiive-home-hero .wp-block-button.is-style-outline .wp-block-button__link { border: 1px solid #fff; color: #fff; background: #11183038; }
.natiive-home-hero :where(a,button):focus-visible { outline-color: var(--wp--preset--color--gold, #917a26); }
.natiive-local-panel { max-width: 50rem; margin: 0 auto 3rem !important; }
.natiive-section-heading,.natiive-section h2 { font-weight: 500; }
@media (max-width: 1100px) {
 .natiive-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open { background: #1f2244 !important; color: #fff; }
 .natiive-header .wp-block-navigation .is-menu-open :where(a,button) { color: #fff; }
 .natiive-header .wp-block-navigation .is-menu-open .natiive-nav-estimate { display: flex; }
 .natiive-header .wp-block-navigation .is-menu-open .natiive-nav-estimate a { background: #227131; padding-inline: 1rem; }
 .natiive-header .wp-block-navigation .is-menu-open a:focus-visible { outline-color: var(--wp--preset--color--gold, #917a26); }
}
@media (max-width: 780px) {
 .natiive-home-hero { min-height: 680px; padding-block: 2.75rem; background-image: linear-gradient(#1118302e,#11183061), url('../images/bois-colombes-hero.webp'); }
 .natiive-home-hero h1 { font-size: clamp(2.4rem, 10vw, 3.2rem); }
 .natiive-home-hero .natiive-eyebrow { font-size: .7rem; }
 .natiive-home-hero .has-lead-font-size { font-size: 1.125rem !important; line-height: 1.7; }
 .natiive-home-hero .has-small-font-size { font-size: .85rem !important; }
 .natiive-local-panel { max-width: calc(100% - 2rem); }
}

/* The recruitment path stays available alongside the valuation on phone menus. */
.natiive-nav-recruitment { display: none !important; }
.natiive-service-hero { padding-block: clamp(3rem, 7vw, 6rem); background: #f4f1ea; }
.natiive-service-hero h1 { max-width: 18ch; font-size: clamp(2.25rem, 5vw, 3.6rem); line-height: 1.12; }
.natiive-service-hero > p { max-width: 66ch; }
.natiive-owner-columns .natiive-panel { padding: 1.5rem; height: 100%; box-sizing: border-box; }
.natiive-concierge { border-left: 3px solid #227131; padding-left: clamp(1.5rem, 4vw, 3rem); }
.wp-block-navigation__responsive-container.is-menu-open .natiive-nav-recruitment { display: block !important; }
@media (max-width: 1100px) { .natiive-header .natiive-header-cta { display: none; } }

/* Keep hero copy legible over the photo and centered in native block layouts. */
.wp-site-blocks > main { margin-block-start: 0 !important; }
.natiive-home-hero .natiive-hero-layout > .natiive-intro { max-width: 64rem; margin-inline: auto !important; }
.natiive-home-hero .natiive-hero-layout .has-lead-font-size { color: #fff; }
.natiive-home-hero .natiive-eyebrow { color: #fff !important; }

/* Page-specific editorial banners. Images illustrate the service; the copy stays native HTML. */
.natiive-page-hero {
  min-height: 19rem;
  padding-block: clamp(1.75rem, 3.2vw, 2.75rem);
  background-color: #1f2244 !important;
  background-image: linear-gradient(90deg, #1f2244f7 0%, #1f2244eb 35%, #1f2244b8 57%, #1f224426 100%), var(--natiive-page-hero-image);
  background-position: center, center;
  background-size: cover;
  background-repeat: no-repeat;
  border-bottom: 3px solid #52af31;
  color: #fff;
}
.natiive-estimation-hero { --natiive-page-hero-image: url('../images/header-estimation-20261023.webp'); }
.natiive-vente-hero { --natiive-page-hero-image: url('../images/header-vente-20261023.webp'); }
.natiive-gestion-hero { --natiive-page-hero-image: url('../images/header-gestion-20261023.webp'); }
.natiive-conciergerie-hero { --natiive-page-hero-image: url('../images/header-conciergerie-20261023.webp'); }
.natiive-recrutement-hero { --natiive-page-hero-image: url('../images/header-recrutement-20261023.webp'); }
.natiive-page-hero > :is(h1, p, .wp-block-buttons) {
  width: 100%;
  max-width: min(58%, 44rem);
  margin-left: max(0px, calc((100% - 1240px) / 2)) !important;
  margin-right: auto !important;
  padding-right: 0;
  box-sizing: border-box;
}
.natiive-page-hero .natiive-intro {
  width: 100%;
  max-width: 1240px;
  margin-inline: auto !important;
}
.natiive-page-hero h1 {
  max-width: 1240px;
  margin-block: .5rem .875rem;
  color: #fff;
  font-size: clamp(2rem, 3.3vw, 3rem) !important;
  line-height: 1.14;
  letter-spacing: -.035em;
}
.natiive-page-hero .natiive-intro h1 { max-width: 22ch; }
.natiive-page-hero p {
  margin-block: .75rem;
  color: #fff;
  font-size: 1rem !important;
  line-height: 1.55;
}
.natiive-page-hero .natiive-intro p { max-width: 58ch; }
.natiive-page-hero .natiive-eyebrow,
.natiive-page-hero > p:first-child {
  font-size: .75rem !important;
  font-weight: 600;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.natiive-page-hero .has-navy-color { color: #fff !important; }
.natiive-page-hero .has-small-font-size { font-size: .875rem !important; }
.natiive-page-hero .wp-block-buttons {
  flex-direction: row;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1.25rem;
}
.natiive-page-hero .wp-block-button__link { color: #fff; }
.natiive-page-hero .wp-block-button.is-style-outline .wp-block-button__link {
  background: #1f224466;
  border-color: #fff;
  color: #fff;
}
.natiive-page-hero :where(a, button):focus-visible { outline-color: var(--wp--preset--color--gold, #917a26); }
@media (max-width: 780px) {
  .natiive-page-hero {
    min-height: 0;
    padding-block: 2rem;
    background-image: linear-gradient(90deg, #1f2244f5 0%, #1f2244dc 50%, #1f224499 100%), var(--natiive-page-hero-image);
    background-position: center, 65% center;
  }
  .natiive-page-hero > :is(h1, p, .wp-block-buttons) { max-width: 100%; margin-left: 0 !important; }
  .natiive-page-hero h1 { font-size: clamp(1.9rem, 7.5vw, 2.5rem) !important; }
  .natiive-page-hero p { font-size: .9375rem !important; }
  .natiive-page-hero .wp-block-buttons { flex-direction: column; align-items: stretch; }
  .natiive-page-hero .wp-block-button,
  .natiive-page-hero .wp-block-button__link { width: 100%; }
}
/* Verified Immodvisor excerpts in an airy editorial layout — 28 October 2026. */
.natiive-home .natiive-home-reviews {
  max-width: 1120px; padding-block: clamp(2rem, 4vw, 3rem); background: #fff; color: #292d29;
}
.natiive-home-reviews .natiive-reviews-heading { text-align: center; margin-bottom: 1.5rem; }
.natiive-home .natiive-reviews-heading h2 {
  max-width: none; margin: 0; color: #242924; font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2rem, 2.6vw, 2.25rem); line-height: 1.2; font-weight: 400; letter-spacing: -.025em;
}
.natiive-home-reviews .natiive-reviews-heading h2 em { font-weight: 400; }
.natiive-home-reviews .natiive-reviews-summary {
  display: inline-flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .4rem .6rem;
  min-height: 44px; margin-top: .9rem; padding: .35rem 0; color: #66592e; font-size: .8125rem;
  line-height: 1.5; text-decoration: none;
}
.natiive-home-reviews .natiive-reviews-summary > strong { order: 1; font-size: inherit; font-weight: 500; white-space: nowrap; }
.natiive-home-reviews .natiive-reviews-summary > strong span { font-weight: 400; }
.natiive-home-reviews .natiive-reviews-summary-details { display: contents; }
.natiive-home-reviews .natiive-reviews-summary .natiive-review-stars { order: 0; font-size: 1.125rem; }
.natiive-home-reviews .natiive-reviews-summary-label { order: 2; }
.natiive-home-reviews .natiive-reviews-summary:hover .natiive-reviews-summary-label { text-decoration: underline; text-underline-offset: .25em; }
.natiive-home-reviews .natiive-review {
  display: flex; flex-direction: column; min-width: 0; margin: 0; padding: 0;
  border: 0; border-radius: 0; background: transparent; box-shadow: none;
}
.natiive-home-reviews .natiive-review figcaption {
  display: flex; align-items: flex-start; justify-content: space-between; gap: .75rem;
  margin: 0; padding: 0; border: 0; font-size: 1rem; line-height: 1.5;
}
.natiive-home-reviews .natiive-review-person { min-width: 0; }
.natiive-home-reviews .natiive-review-person strong {
  display: block; color: #292d29; font: 400 1.25rem/1.3 Georgia, 'Times New Roman', serif;
}
.natiive-home-reviews .natiive-review-person time { display: block; margin-top: .35rem; color: #6c716b; font-size: .75rem; line-height: 1.5; }
.natiive-home-reviews .natiive-review-rating { display: flex; flex-direction: column; align-items: flex-end; flex-shrink: 0; gap: .35rem; padding-top: .25rem; }
.natiive-home-reviews .natiive-review-stars { display: inline-flex; gap: .06em; font: .9375rem/1 Arial, sans-serif; letter-spacing: 0; white-space: nowrap; }
.natiive-home-reviews .natiive-review-star { position: relative; display: inline-block; color: #dddcd3; }
.natiive-home-reviews .natiive-review-star > span { position: absolute; top: 0; left: 0; overflow: hidden; white-space: nowrap; color: #caa526; }
.natiive-home-reviews .natiive-review-score { white-space: nowrap; font-size: .75rem; line-height: 1.5; color: #6c716b; }
.natiive-home-reviews .natiive-review-category { display: block; margin-top: .5rem; color: #6c716b; font-size: .75rem; line-height: 1.5; }
.natiive-home-reviews .natiive-review blockquote { flex-grow: 0; margin: .75rem 0 .5rem; padding: 0; border: 0; }
.natiive-home-reviews .natiive-review blockquote p { margin: 0; color: #646962; font: 400 .9375rem/1.6 'Roboto', Arial, sans-serif; }
.natiive-home-reviews .natiive-review.is-collapsible:not(.is-expanded) blockquote {
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden;
}
.natiive-home-reviews .natiive-review-toggle {
  align-self: flex-start; display: inline-flex; align-items: center; min-height: 44px;
  margin: 0 0 .5rem; padding: .25rem 0; border: 0; background: transparent;
  color: #30362f; font: 600 .8125rem/1.5 'Roboto', Arial, sans-serif;
  text-decoration: underline; text-underline-offset: .2em; cursor: pointer;
}
.natiive-home-reviews .natiive-review-toggle[hidden] { display: none; }
.natiive-home-reviews .natiive-review-toggle:hover { color: #227131; }
.natiive-home-reviews .natiive-review-toggle:focus-visible { outline: 3px solid #227131; outline-offset: 3px; }
.natiive-home-reviews .natiive-review-publication { display: flex; flex-direction: column; align-items: flex-start; gap: .25rem; min-height: 1.5rem; margin-top: auto; padding-top: .5rem; }
.natiive-home-reviews .natiive-review-publication img { display: block; width: 128px; height: auto; max-width: 100%; }
.natiive-home-reviews .natiive-review-origin { color: #6c716b; font-size: .75rem; line-height: 1.4; }
.natiive-home-reviews .natiive-review-source {
  display: inline-flex; align-items: center; align-self: flex-start; min-height: 44px; margin-top: .35rem;
  color: #30362f; font-size: .75rem; line-height: 1.5; font-weight: 500; letter-spacing: .08em;
  text-transform: uppercase; text-decoration: underline; text-underline-offset: .35em; text-decoration-thickness: 1px;
}
.natiive-home-reviews .natiive-review-source:hover, .natiive-home-reviews .natiive-reviews-footnote a:hover { color: #227131; }
.natiive-home-reviews a:focus-visible { outline: 3px solid #227131; outline-offset: 4px; }
.natiive-home-reviews .natiive-reviews-footnote { display: flex; flex-direction: column; align-items: center; gap: .15rem; margin-top: 1rem; font-size: .75rem; line-height: 1.6; text-align: center; }
.natiive-home-reviews .natiive-reviews-footnote p { margin: 0; color: #6c716b; }
.natiive-home-reviews .natiive-reviews-footnote a { display: inline-flex; align-items: center; min-height: 44px; color: #60665e; text-underline-offset: .25em; }
.natiive-home-reviews .natiive-reviews-heading .natiive-eyebrow,
.natiive-home-reviews .natiive-reviews-help,
.natiive-home-reviews .natiive-reviews-status {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); clip-path: inset(50%); white-space: nowrap; border: 0;
}
@media (max-width: 780px) {
  .natiive-home .natiive-home-reviews { padding-block: 2rem; }
  .natiive-home .natiive-reviews-heading h2 { max-width: 24ch; margin-inline: auto; font-size: clamp(1.875rem, 7.8vw, 2.125rem); line-height: 1.25; }
  .natiive-home-reviews .natiive-reviews-heading h2 em { white-space: nowrap; }
  .natiive-home-reviews .natiive-reviews-heading { margin-bottom: 1.5rem; }
  .natiive-home-reviews .natiive-reviews-summary { gap: .25rem .5rem; margin-top: .85rem; font-size: .75rem; }
  .natiive-home-reviews .natiive-reviews-summary .natiive-review-stars { font-size: 1rem; }
  .natiive-home-reviews .natiive-reviews-footnote { margin-top: 1.5rem; }
}

/* Homepage and agency: local expertise, concrete services and a quieter rhythm. */
.natiive-home-hero h1 { max-width: 23ch; }
.natiive-home-paths > h2 { max-width: 28ch; }
.natiive-home-paths .natiive-panel { display: flex; flex-direction: column; }
.natiive-home-paths .natiive-panel > * { width: 100%; }
.natiive-home-paths .natiive-panel > p:last-child { margin-top: auto !important; padding-top: 1.25rem; }
.natiive-deliverables { list-style: none; padding: 0; margin-block: 1.25rem; }
.natiive-deliverables > li { position: relative; padding: .65rem 0 .65rem 1.25rem; border-bottom: 1px solid #dde4e3; }
.natiive-deliverables > li::before { content: ''; position: absolute; left: 0; top: 1.2rem; width: .4rem; height: .4rem; border-radius: 50%; background: #227131; }
.natiive-deliverables > li:last-child { border-bottom: 0; }
.natiive-expertise { display: grid; grid-template-columns: 1fr 1.1fr; align-items: start; gap: clamp(2rem, 5vw, 4rem); padding: clamp(1.5rem, 4vw, 3rem); background: #f5f3ee; border-top: 3px solid #227131; }
.natiive-expertise :where(h2,p), .natiive-agency-areas :where(h2,p) { margin-top: 0; }
.natiive-expertise h2, .natiive-agency-areas h2 { font-size: clamp(1.75rem, 3vw, 2.25rem); font-weight: 500; }
.natiive-expertise p:last-child { margin-bottom: 0; }
.natiive-city-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1.25rem; list-style: none; padding: 0; margin: 0 0 1.5rem; }
.natiive-city-list li { padding-block: .7rem; border-bottom: 1px solid #cfd6d0; font-size: .9375rem; font-weight: 600; }
.natiive-expertise-area > p { color: #53656d; font-size: .9375rem; }
.natiive-recruitment-note { padding-block: 2.5rem; border-top: 1px solid #dde4e3; }
.natiive-recruitment-note h2 { font-size: clamp(1.5rem, 2.5vw, 1.875rem); }
.natiive-recruitment-note > p { max-width: 65ch; margin-left: 0 !important; }
.natiive-agency-hero { border-left: 3px solid #227131; padding-inline: clamp(1.5rem, 4vw, 3rem); }
.natiive-agency-hero h1 { max-width: 22ch; }
.natiive-agency-history > h2 { max-width: 32ch; }
.natiive-agency-history .natiive-panel { border-top-width: 1px; }
.natiive-agency-history .natiive-panel h3 { font-size: 1.35rem; }
.natiive-agency-areas { display: grid; grid-template-columns: .9fr 1.1fr; align-items: start; gap: clamp(2rem, 5vw, 4rem); padding-block: clamp(2.5rem, 6vw, 4.5rem); border-block: 1px solid #dde4e3; }
.natiive-agency-areas dl { margin: 0; }
.natiive-agency-areas dl > div + div { border-top: 1px solid #dde4e3; margin-top: 1.5rem; padding-top: 1.5rem; }
.natiive-agency-areas dt { font-weight: 600; margin-bottom: .5rem; }
.natiive-agency-areas dd { margin: 0; color: #53656d; }
.natiive-agency-principles { max-width: 76ch; margin-left: 0 !important; }
.natiive-agency-visit { border-top: 1px solid #dde4e3; }
.natiive-agency-visit > p { max-width: 66ch; margin-left: 0 !important; }
@media (max-width: 780px) {
  .natiive-expertise, .natiive-agency-areas { grid-template-columns: 1fr; gap: 1.5rem; }
  .natiive-expertise { padding: 1.5rem; }
  .natiive-home-paths .natiive-panel { padding: 1.5rem !important; }
  .natiive-home-paths .natiive-panel > p:last-child { margin-top: 0 !important; }
  .natiive-city-list { gap: 0 .75rem; }
  .natiive-city-list li { font-size: 1rem; }
  .natiive-agency-areas h2 br { display: none; }
  .natiive-agency-hero { padding-inline: 1.5rem; }
}

/* Keep place names readable in the narrower agency hero. */
.natiive-agency-hero h1 { font-size: clamp(1.65rem, 7vw, 3.5rem); }
.natiive-place-name { white-space: nowrap; }


/* Two clear applicant journeys beside the owner priorities. */
.natiive-home-search { max-width: 38rem; margin: 1.5rem auto 0; }
.natiive-home-search > p { margin: 0 0 .65rem; font-size: 1rem; }
.natiive-home-search-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.natiive-home-search-links a { display: flex; align-items: center; justify-content: center; gap: .6rem; min-height: 48px; padding: .65rem 1rem; border: 1px solid #ffffffa6; border-radius: 3px; background: #1f224455; color: #fff; font-size: 1rem; font-weight: 600; line-height: 1.4; text-decoration: none; }
.natiive-home-search-links a:hover { background: #fff; color: #1f2244; border-color: #fff; }
.natiive-home-search-links span { flex-shrink: 0; }
.natiive-home-catalogue-links { display: flex; flex-wrap: wrap; gap: .65rem; margin-block: 1.25rem 1.5rem; }
.natiive-home-catalogue-links a { display: inline-flex; align-items: center; justify-content: center; gap: .65rem; min-height: 48px; padding: .65rem 1.15rem; border: 1px solid #227131; border-radius: 3px; color: #1f2244; font-weight: 600; line-height: 1.4; text-decoration: none; }
.natiive-home-catalogue-links a:hover { background: #227131; color: #fff; }
.natiive-home-properties > .wp-block-group > h2 { margin-bottom: .75rem; }
@media (max-width: 780px) {
  .natiive-home-search { margin-top: 1.25rem; }
  .natiive-home-search-links { gap: .5rem; }
  .natiive-home-search-links a { padding: .65rem .5rem; font-size: .9375rem; }
  .natiive-home-catalogue-links a { flex: 1 1 8rem; padding-inline: .65rem; }
}


/* Clear service, property search, advice and recruitment navigation. */
.natiive-header .wp-block-navigation__container { gap: 1rem; }
.natiive-header .wp-block-navigation-item__content { white-space: nowrap; min-height: 48px; }
.natiive-header .wp-block-navigation__submenu-container { background: #1f2244; color: #fff; border: 1px solid #ffffff55; min-width: 16rem; padding: .4rem; }
.natiive-header .wp-block-navigation__submenu-container a { padding: .65rem .85rem; }
.natiive-header .wp-block-navigation-submenu__toggle { min-width: 48px; min-height: 48px; }
.natiive-header .wp-block-navigation__submenu-container a:hover { background: #ffffff18; }
@media (min-width: 1101px) and (max-width: 1365px) {
  .natiive-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
  .natiive-header .wp-block-navigation__responsive-container-open { display: flex; }
  .natiive-header .natiive-header-cta { display: none; }
}
@media (max-width: 1365px) {
  .natiive-header .wp-block-navigation__responsive-container-open,
  .natiive-header .wp-block-navigation__responsive-container-close { min-width: 48px; min-height: 48px; }
  .natiive-header .wp-block-navigation__responsive-container.is-menu-open { background: #1f2244 !important; color: #fff; padding: 1.5rem; }
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation__responsive-container-content { align-items: flex-start; padding-top: 3rem; }
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation__container { align-items: stretch; width: 100%; gap: .35rem; }
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation-item { width: 100%; }
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation-item__content { white-space: normal; min-height: 48px; width: 100%; padding: .5rem; font-size: 1.1rem; }
  .natiive-header .wp-block-navigation .is-menu-open :where(a,button) { color: #fff; }
  .natiive-header .wp-block-navigation .is-menu-open .natiive-nav-estimate { display: flex; }
  .natiive-header .wp-block-navigation .is-menu-open .natiive-nav-estimate a { background: #227131; padding-inline: 1rem; }
  .natiive-header .wp-block-navigation .is-menu-open a:focus-visible { outline-color: var(--wp--preset--color--gold, #917a26); }
}

/* Keep submenu children visually attached to their parent in the native overlay. */
@media (max-width: 1365px) {
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container {
    align-self: stretch !important; align-items: stretch !important; width: 100% !important; min-width: 0 !important;
    margin-inline: 0 !important; padding: .4rem 0 .4rem 1.5rem !important; border: 0; background: transparent; text-align: left;
  }
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { align-items: flex-start; }
  .natiive-header .wp-block-navigation .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    display: flex !important; align-items: center; width: 100%; min-height: 48px !important; padding: .65rem .5rem; line-height: 1.4;
  }
}

/* One full photographic banner and one copy alignment on every secondary page. */
.natiive-photo-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  overflow: hidden;
  min-height: 20rem;
  max-width: none !important;
  margin-block: 0;
  padding: clamp(2.5rem, 4vw, 4rem) clamp(1.5rem, 4vw, 4rem);
  background: #1f2244 !important;
  border-bottom: 3px solid #52af31;
  color: #fff;
  text-align: left;
}
.natiive-photo-hero .natiive-page-photo {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none !important;
  margin: 0 !important;
}
.natiive-page-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.natiive-photo-hero::after {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  background: linear-gradient(90deg, #1f2244ed 0%, #1f2244d9 35%, #1f224473 70%, #1f224433 100%);
  pointer-events: none;
}
/* Cap the photographic crop on ultrawide screens while the banner stays full width. */
@media (min-width: 781px) {
  .natiive-photo-hero .natiive-page-photo { max-width: 1800px !important; margin-inline: auto !important; }
  .natiive-photo-hero .natiive-page-photo[data-natiive-image="recrutement"] img { object-position: 50% 20%; }
  .natiive-photo-hero .natiive-page-photo[data-natiive-image="financement"] img { object-position: 50% 90%; }
  .natiive-photo-hero .natiive-page-photo[data-natiive-image="estimation"] img { object-position: 50% 80%; }
}
@media (min-width: 1801px) {
  .natiive-photo-hero .natiive-page-photo::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #1f2244 0%, #1f224400 12%, #1f224400 88%, #1f2244 100%);
    pointer-events: none;
  }
}
.natiive-photo-hero > .natiive-photo-copy {
  position: relative;
  width: 100%;
  max-width: var(--wp--style--global--wide-size, 1240px) !important;
  margin: 0 auto !important;
}
.natiive-photo-copy > :not(.natiive-intro),
.natiive-photo-hero .natiive-intro { width: 100%; max-width: 44rem; margin-inline: 0 !important; }
.natiive-photo-copy :is(h1, p, .wp-block-buttons) { margin-inline: 0 !important; text-align: left; }
.natiive-photo-copy :is(h1, p) { color: #fff !important; }
.natiive-photo-hero .natiive-photo-copy h1 {
  max-width: 25ch;
  margin-block: .5rem 1rem;
  font-size: clamp(2rem, 3.3vw, 3rem) !important;
  line-height: 1.15;
  overflow-wrap: break-word;
  text-wrap: balance;
}
.natiive-photo-copy p { max-width: 62ch; }
.natiive-photo-copy > :first-child,
.natiive-photo-copy > .natiive-intro > :first-child { margin-block-start: 0; }
.natiive-photo-copy > :last-child,
.natiive-photo-copy > .natiive-intro > :last-child { margin-block-end: 0; }
.natiive-photo-hero.natiive-title-hero,
.natiive-property-list__header.natiive-photo-hero { min-height: 17.5rem; }
/* Native reading templates and the catalogue retain their own content widths. */
main.natiive-reading:has(> .natiive-photo-hero),
main.natiive-reading:has(> .natiive-property-list > .natiive-photo-hero) { max-width: none !important; padding-block-start: 0; }
main.natiive-reading > .natiive-property-list:has(> .natiive-photo-hero) { width: auto; max-width: none !important; }
.natiive-property-list:has(> .natiive-photo-hero) > :not(.natiive-photo-hero) {
  width: calc(100% - var(--wp--style--root--padding-left, 1rem) - var(--wp--style--root--padding-right, 1rem));
  max-width: var(--wp--style--global--content-size, 760px);
  margin-inline: auto !important;
}
.natiive-footer-legal { margin-top: 2.5rem; border-top: 1px solid #ffffff50; padding-top: 1.5rem; }
.natiive-footer-legal nav { display: flex; flex-wrap: wrap; gap: .25rem 1.5rem; }
.natiive-footer-legal a { display: inline-flex; align-items: center; min-height: 44px; font-size: .9rem; text-underline-offset: .2em; }
.natiive-footer-legal p { font-size: .8rem; line-height: 1.7; opacity: .9; }
.natiive-reading :is(.ne-intro,.ne-section) { margin-block: 2rem; }
.natiive-reading :is(.ne-intro,.ne-section) h2 { margin-top: 1.5rem; }
@media (max-width: 780px) {
 .natiive-photo-hero { min-height: 18.75rem; padding: 2rem 1.5rem !important; }
 .natiive-photo-hero::after { background: linear-gradient(90deg, #1f2244e6, #1f2244bd); }
 .natiive-photo-copy > :not(.natiive-intro), .natiive-photo-hero .natiive-intro { width: 100%; max-width: 100%; }
 .natiive-photo-hero .natiive-photo-copy h1 { max-width: none !important; font-size: clamp(2rem, 6vw + .4rem, 2.25rem) !important; }
 .natiive-photo-hero .wp-block-buttons { margin-top: 1rem; }
 .natiive-footer-legal nav { flex-direction: column; align-items: flex-start; }
}
.natiive-catalogue-photo { margin-bottom: 2rem; }
.natiive-catalogue-photo .natiive-page-photo { margin: 0; height: clamp(12rem,25vw,22rem); overflow: hidden; border-radius: 2px 2px 20px 2px; }
.natiive-property-list__header { margin: 0 0 2rem; }
.natiive-property-list__header h1 { margin-block: .5rem 0; }

/* Published NATIIVE fee schedule, preserved on mobile. */
.nh-schedule{--nh-navy:#1e2245;--nh-ink:#303448;--nh-muted:#555967;--nh-rule:#daddE5;--nh-paper:#f4f5f8;--nh-gold:#917a26;color:var(--nh-ink);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;max-width:1120px;margin:auto;overflow-wrap:anywhere;text-align:left}.nh-schedule,.nh-schedule *{box-sizing:border-box}.nh-schedule a{color:var(--nh-navy)}.nh-schedule strong{font-weight:700}.nh-brand{display:flex;align-items:center;gap:30px;margin:0 0 25px}.nh-brand img{width:140px;height:140px;object-fit:contain;flex-shrink:0}.nh-brand h1,.nh-brand h2{font-size:38px;line-height:1.15;margin:4px 0 12px;color:var(--nh-navy)}.nh-eyebrow{font-size:12px;letter-spacing:1.4px;text-transform:uppercase;font-weight:650;color:#85733e;margin:0}.nh-intro{margin:0;color:var(--nh-muted);font-size:17px}.nh-lead{font-size:18px}.nh-schedule p{margin:0 0 13px}.nh-schedule .nh-eyebrow{margin:0 0 8px}.nh-schedule .nh-intro{margin:0}.nh-nav{display:flex;flex-wrap:wrap;gap:9px;margin:25px 0 30px}.nh-nav a{padding:8px 15px;border:1px solid var(--nh-rule);border-radius:3px;text-decoration:none;font-weight:550}.nh-nav a:hover,.nh-nav a:focus-visible{background:var(--nh-paper);border-color:var(--nh-navy)}.nh-section{padding:30px 0;border-top:1px solid var(--nh-rule);scroll-margin-top:110px}.nh-section h2{color:var(--nh-navy);font-size:27px;line-height:1.3;margin:0 0 16px}.nh-section h3{color:var(--nh-navy);font-size:21px;line-height:1.35;margin:24px 0 12px}.nh-table-wrap{overflow-x:auto;max-width:100%;margin:20px 0}.nh-table{border-collapse:collapse;width:100%;min-width:560px;line-height:1.5;font-size:16px;table-layout:auto}.nh-table th,.nh-table td{padding:13px 15px;border-bottom:1px solid var(--nh-rule);vertical-align:top;text-align:left;white-space:normal}.nh-table thead th{background:var(--nh-navy);color:white;font-weight:600}.nh-table tbody th{font-weight:500}.nh-table tbody tr:nth-child(odd){background:var(--nh-paper)}.nh-rule{padding:16px 20px;border-left:3px solid var(--nh-gold);background:var(--nh-paper)}.nh-schedule .nh-small,.nh-schedule .nh-legal{font-size:13px;line-height:1.6;color:var(--nh-muted)}.nh-schedule .nh-price{font-size:24px;line-height:1.35;color:var(--nh-navy)}.nh-footer{border-top:2px solid var(--nh-navy);padding:22px 0 0;margin-top:10px}.nh-contact{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px}.nh-contact strong{color:var(--nh-navy);font-size:18px}.nh-contact a{text-decoration:none}.nh-public .nh-footer{margin-bottom:20px}
@media(max-width:620px){.nh-brand{gap:14px}.nh-brand img{width:100px;height:100px}.nh-brand h2{font-size:29px}.nh-eyebrow{font-size:10px;letter-spacing:.6px}.nh-intro{font-size:14px}.nh-section h2{font-size:24px}.nh-table th,.nh-table td{padding:11px}.nh-contact{display:block}.nh-contact>*{display:block;margin-bottom:6px}}
.nh-sale-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin:22px 0}.nh-sale-option{min-width:0}.nh-sale-option h3{font-size:20px;line-height:1.35;margin:0 0 12px}.nh-sale-option .nh-table-wrap{margin:0 0 14px}.nh-sale-option .nh-table{min-width:460px;font-size:15px}.nh-sale-option .nh-table th:first-child{width:45%}.nh-sale-option .nh-table th,.nh-sale-option .nh-table td{padding:12px 10px}.nh-schedule .nh-sale-band-rule{font-size:13px;line-height:1.55;color:var(--nh-muted);margin:0}@media(max-width:980px){.nh-sale-grid{grid-template-columns:minmax(0,1fr);gap:26px}.nh-sale-option .nh-table{font-size:16px}}

/* One common public sale schedule; payer is stated alongside the rates. */
.nh-public .nh-sale-grid-single{grid-template-columns:minmax(0,1fr)}

/* Public mobile fee tables: preserve every value and its column label. */
.nh-schedule .nh-cell-label{display:none}
@media screen and (max-width:620px){
 .nh-public .nh-table-wrap{overflow:visible}
 .nh-public .nh-table{display:block;width:100%;min-width:0}
 .nh-public .nh-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}
 .nh-public .nh-table tbody{display:grid;width:100%;gap:12px}
 .nh-public .nh-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--nh-rule);border-radius:6px;overflow:hidden;background:#fff}
 .nh-public .nh-table tbody th,.nh-public .nh-table tbody td{display:block;min-width:0;width:auto;padding:12px 10px;border:0;overflow-wrap:anywhere}
 .nh-public .nh-table tbody th[scope="row"]{grid-column:1/-1;width:auto;background:var(--nh-navy);color:#fff;font-weight:600}
 .nh-public .nh-table tbody td+td{border-left:1px solid var(--nh-rule)}
 .nh-public .nh-table .nh-cell-label{display:block;margin:0 0 5px;color:var(--nh-muted);font-size:12px;line-height:1.4;font-weight:600}
}


/* Homepage refinement: scoped to the front page, 24 October 2026. */
.natiive-home .natiive-home-lead-desktop { display: none; }
/* Yan prefers the original mobile banner; refinements below are desktop-only. */
@media (min-width: 781px) {
  .natiive-home .natiive-home-lead-mobile { display: none; }
  .natiive-home .natiive-home-lead-desktop { display: inline; }
  .natiive-home .natiive-home-hero { min-height: 560px; padding-block: clamp(2.5rem,5vw,4.5rem); }
  .natiive-home .natiive-home-hero h1 { margin-block: 1rem 1.25rem; font-size: clamp(2.4rem,4.5vw,4rem); }
  .natiive-home .natiive-home-hero .has-lead-font-size { max-width: 49ch; margin-bottom: 0; }
  .natiive-home .natiive-home-hero .wp-block-buttons { gap: .6rem 1.25rem; margin-top: 1.6rem; }
  .natiive-home .natiive-home-hero .wp-block-button__link { min-height: 48px; box-sizing: border-box; }
  .natiive-home .natiive-home-search { max-width: 34rem; margin-top: 1.1rem; }
  .natiive-home .natiive-home-search > p { font-size: 1rem; margin-bottom: .35rem; }
  .natiive-home .natiive-home-search-links { column-gap: 1.5rem; }
  .natiive-home .natiive-home-search-links a {
    min-height: 44px; padding: .35rem .1rem; border: 0; border-bottom: 1px solid #ffffff66;
    border-radius: 0; background: transparent; font-size: .9375rem;
  }
  .natiive-home .natiive-home-search-links a:hover { color: #fff; background: #ffffff12; border-bottom-color: #fff; }
}
.natiive-home .natiive-home-properties > .wp-block-group > :not(.wp-block-buttons),
.natiive-home .natiive-home-paths > :is(p,h2,.wp-block-columns) {
  max-width: none; margin-left: 0 !important; margin-right: 0 !important;
}
.natiive-home .natiive-home-properties > .wp-block-group > :not(.wp-block-buttons) { width: 100%; }
.natiive-home .natiive-home-paths > h2 { max-width: 36ch; }
.natiive-home .natiive-agency > :is(p,h2,.wp-block-buttons),
.natiive-home .natiive-recruitment-note > :is(p,h2),
.natiive-home .natiive-concierge > :is(p,h2,.wp-block-buttons) {
  margin-left: 0 !important; margin-right: auto !important; text-align: left;
}
.natiive-home .natiive-concierge { box-sizing: border-box; padding-inline: clamp(1.25rem,3vw,2.5rem); }
.natiive-home .natiive-home-properties .natiive-property-card { min-width: 0; }
@media (max-width: 780px) {
  .natiive-home .natiive-home-paths > h2 { max-width: none; }
}

.natiive-home .natiive-home-properties > .wp-block-group > .wp-block-buttons { max-width: none; margin-left: 0 !important; margin-right: 0 !important; }

/* A generous photograph with a stable frame, including ultrawide displays. */
body.home { --natiive-header-height: 92px; --natiive-adminbar-height: 0px; }
body.home.admin-bar { --natiive-adminbar-height: 32px; }
.home .wp-site-blocks { position: relative; }
.home .wp-site-blocks > header { position: absolute; inset: 0 0 auto; z-index: 40; margin: 0; width: 100%; }
.home .natiive-header { background: #1f2244; border-bottom: 2px solid #917a26; }
.home .natiive-home { margin-block-start: 0; }
.natiive-home .natiive-home-hero-frame { margin-block: 0; background: #1f2244; container-type: inline-size; }
.natiive-home .natiive-home-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: 100%;
  max-width: 1800px;
  margin-block: 0;
  margin-inline: auto !important;
  min-height: clamp(640px, calc(80vh - var(--natiive-adminbar-height, 0px)), 880px);
  min-height: clamp(640px, calc(80svh - var(--natiive-adminbar-height, 0px)), 880px);
  background: #1f2244 !important;
  padding-block-start: calc(var(--natiive-header-height, 92px) + clamp(1.5rem, 4vh, 3rem));
  padding-block-end: clamp(1.75rem, 4vh, 3rem);
}
.natiive-home .natiive-home-photo {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  max-width: none !important;
  height: 100%;
  margin: 0 !important;
}
.natiive-home-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--natiive-photo-position, 50% 50%);
}
.natiive-home .natiive-home-hero::after {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  background: none;
  pointer-events: none;
}
.natiive-home .natiive-home-hero > .natiive-hero-layout {
  position: relative;
  max-width: min(100%, 1240px);
  margin-block-start: 0;
  margin-inline: auto !important;
}
.natiive-home .natiive-home-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: .75rem;
  width: 100%;
  max-width: 34rem;
  margin-inline: auto !important;
}
.natiive-home .natiive-home-actions .wp-block-button { display: flex; min-width: 0; width: 100%; }
.natiive-home .natiive-home-actions .wp-block-button__link { width: 100%; padding-inline: .75rem; }
.natiive-page-photo img { object-position: var(--natiive-photo-position, 50% 50%); }
.natiive-home .natiive-eyebrow::before { background: var(--wp--preset--color--gold, #917a26); }
.natiive-home .natiive-home-hero .natiive-eyebrow::before { content: none; display: none; }
.natiive-home .natiive-home-search-links a { border-color: #c7b476; }
.natiive-home .natiive-home-hero .wp-block-button.is-style-outline .wp-block-button__link { text-decoration-color: #d7c797; }
.natiive-back-to-top {
  position: fixed; z-index: 30; right: max(1.25rem, env(safe-area-inset-right));
  bottom: calc(1.25rem + env(safe-area-inset-bottom)); display: inline-flex;
  align-items: center; justify-content: center; width: 52px; height: 52px; padding: 0;
  border: 1px solid #227131; border-radius: 4px; background: #227131;
  color: #fff; box-shadow: 0 6px 22px #11183030; cursor: pointer;
}
.natiive-back-to-top svg { width: 24px; height: 24px; pointer-events: none; }
.natiive-back-to-top:hover { background: #1b5b27; }
.natiive-back-to-top:focus-visible { outline: 3px solid #1f2244; outline-offset: 4px; }
.natiive-back-to-top[hidden], .has-modal-open .natiive-back-to-top { display: none; }
@media (max-width: 780px) {
  body.home { --natiive-header-height: 80px; }
  .natiive-home .natiive-home-hero {
    min-height: calc(100vh - var(--natiive-adminbar-height, 0px));
    min-height: calc(100svh - var(--natiive-adminbar-height, 0px));
  }
  .natiive-home-photo img,
  .natiive-page-photo img { object-position: var(--natiive-photo-position-mobile, var(--natiive-photo-position, 50% 50%)); }
  .natiive-back-to-top { right: max(1rem, env(safe-area-inset-right)); bottom: calc(1rem + env(safe-area-inset-bottom)); width: 48px; height: 48px; }
}
@media (max-width: 782px) {
  body.home.admin-bar { --natiive-adminbar-height: 46px; }
}

/* Public NATIIVE design, with more readable typography requested on 25 October. */
.natiive-header { padding-block: 0; }
.natiive-header > .wp-block-group { min-height: 80px; max-width: 1440px; width: 100%; margin-inline: auto !important; }
.natiive-header .wp-block-site-logo img { width: auto; height: 76px; max-width: 180px; object-fit: contain; }
.natiive-header .wp-block-navigation-item__content {
  font-family: 'Roboto', Arial, sans-serif; font-size: .875rem; font-weight: 500;
  letter-spacing: .04em; text-transform: uppercase;
}
.natiive-header .wp-block-navigation__container { gap: .85rem; }
.natiive-header .wp-block-button__link {
  border-color: #ffffff55;
}
.natiive-header .wp-block-button__link:hover { background: var(--natiive-action-hover); }
.natiive-home :is(h1,h2,h3) { font-family: 'Roboto', Arial, sans-serif; font-weight: 500; letter-spacing: normal; line-height: 1.25; }
.natiive-home .natiive-home-hero h1 { font-size: clamp(2.4rem,5vw,4.5rem); font-weight: 500; letter-spacing: normal; line-height: 1.12; }
.natiive-home .natiive-home-hero :is(h1,.has-lead-font-size,.natiive-eyebrow) { text-shadow: 0 2px 8px #0008; }
.natiive-home .natiive-home-hero .has-lead-font-size { font-family: 'PT Sans', Arial, sans-serif; }
.natiive-home .natiive-eyebrow { color: #806b2f; font-size: .875rem; font-weight: 600; letter-spacing: .065em; }
.natiive-home .natiive-home-hero .natiive-eyebrow { color: #fff; }
.natiive-home .wp-block-button__link { text-shadow: none; }
.natiive-home-hero .wp-block-button.is-style-outline .wp-block-button__link:hover,
.natiive-page-hero .wp-block-button.is-style-outline .wp-block-button__link:hover { background: #ffffff1f; color: #fff; }
.natiive-home .natiive-home-search-links { gap: .75rem; }
.natiive-home .natiive-home-search-links a {
  min-height: 48px; padding: .65rem 1rem; border: 1px solid #ffffffb3; border-radius: 3px;
  background: #1f22444d; font-family: 'Roboto', Arial, sans-serif; font-size: 1rem; font-weight: 500;
}
.natiive-home .natiive-home-search-links a:hover { background: #fff; color: #1f2244; border-color: #fff; }
.natiive-home .natiive-home-catalogue-links a { border-radius: 3px; font-family: 'Roboto', Arial, sans-serif; font-size: 1rem; font-weight: 500; border-color: #227131; color: #227131; }
.natiive-home .natiive-panel { padding: 28px !important; border: 1px solid #e0e3df; border-radius: 6px; background: #fff; box-shadow: 0 1px 3px #0000000a; }
.natiive-home #gestion.natiive-panel { border-top: 4px solid #917a26; background: #f3f7f4; }
.natiive-home .natiive-panel h3 { font-size: 1.5rem; }
.natiive-home .natiive-panel p, .natiive-home .natiive-panel li { font-size: 1.125rem; line-height: 1.7; color: #262b29; }
.natiive-home .natiive-home-paths > h2 { font-size: clamp(1.65rem,2.2vw,1.8125rem); }
.natiive-home .natiive-contact { border-radius: 6px; }
@media (max-width: 780px) {
  .natiive-header > .wp-block-group { min-height: 76px; }
  .natiive-header .wp-block-site-logo img { width: auto; height: 70px; }
  .natiive-home .natiive-home-hero h1 { font-size: clamp(2.4rem,10vw,3.2rem); line-height: 1.12; }
  .natiive-home .natiive-home-search-links a { padding-inline: .5rem; font-size: 1rem; }
  .natiive-home .natiive-panel { padding: 22px !important; }
}

.natiive-estimate-fixed {
  position: fixed; z-index: 30; left: max(1.5rem, env(safe-area-inset-left));
  bottom: calc(1.5rem + env(safe-area-inset-bottom)); display: inline-flex; align-items: center; gap: .5rem;
  min-height: 51px; padding: 15px 23px; border: 1px solid #227131; border-radius: 4px;
  background: #227131; color: #fff; font: 500 1rem/1.4 'Roboto', Arial, sans-serif;
  text-decoration: none; box-shadow: 0 4px 22px #0002;
}
.natiive-estimate-fixed:hover { color: #fff; background: #1b5b27; border-color: #1b5b27; }
.natiive-estimate-fixed:focus-visible { outline: 3px solid #1f2244; outline-offset: 4px; }
.natiive-estimate-fixed[hidden], .has-modal-open .natiive-estimate-fixed { display: none; }
@media (max-width: 780px) {
  .natiive-estimate-fixed { left: max(1rem, env(safe-area-inset-left)); bottom: calc(1rem + env(safe-area-inset-bottom)); padding: 14px 18px; min-height: 48px; }
}

/* Keep the town hall facade in the portrait crop and the estimate action available. */
.natiive-home .natiive-home-hero { background-position: 45% 35%; padding-block-end: max(2rem, calc(76px + env(safe-area-inset-bottom, 0px) + 1rem)); }
html { scroll-padding-bottom: calc(var(--natiive-dock-height, 76px) + 1rem); }
.natiive-action-dock {
  position: fixed; z-index: 35; left: max(1.5rem, env(safe-area-inset-left)); right: max(1.5rem, env(safe-area-inset-right));
  bottom: calc(1.5rem + env(safe-area-inset-bottom)); display: flex; align-items: center; justify-content: space-between;
  gap: .75rem; pointer-events: none;
}
.natiive-action-dock > * { pointer-events: auto; }
.natiive-action-dock[hidden] { display: none; }
.natiive-action-dock .natiive-estimate-fixed { position: static; flex: 0 1 auto; }
.natiive-action-dock .natiive-back-to-top { position: static; flex: 0 0 52px; margin-inline-start: auto; }
@media (min-width: 781px) {
  .natiive-action-dock { max-width: 1440px; margin-inline: auto; }
}
@media (max-width: 780px) {
  body { padding-bottom: var(--natiive-dock-height, 76px); }
  .natiive-home .natiive-home-hero { background-position: 43% center; }
  .natiive-action-dock {
    left: 0; right: 0; bottom: 0; padding: .625rem max(1rem, env(safe-area-inset-right)) calc(.625rem + env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
    background: #1f2244; border-top: var(--natiive-gold-rule-width, 2px) solid #917a26; pointer-events: auto;
  }
  .natiive-action-dock .natiive-estimate-fixed { flex: 1 1 auto; min-width: 0; justify-content: center; margin: 0; padding: .75rem 1rem; min-height: 48px; }
  .natiive-action-dock .natiive-back-to-top { flex-basis: 48px; }
}
/* Native snapping and keyboard navigation remain available without a carousel dependency. */
.natiive-home-reviews .natiive-reviews-track {
  display: grid; grid-template-columns: none; grid-auto-flow: column;
  grid-auto-columns: calc((100% - 4rem) / 3); gap: 2rem;
  width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory; scroll-behavior: auto;
  padding-block: .25rem .5rem; scrollbar-width: thin; scrollbar-color: #b4ac8e #f5f4ef;
}
.natiive-home-reviews .natiive-reviews-track > .natiive-review { scroll-snap-align: start; scroll-snap-stop: normal; min-width: 0; height: auto; }
.natiive-home-reviews .natiive-reviews-track.is-draggable { cursor: grab; }
.natiive-home-reviews .natiive-reviews-track.is-draggable a,
.natiive-home-reviews .natiive-reviews-track.is-draggable button { cursor: pointer; }
.natiive-home-reviews .natiive-reviews-track.is-dragging { scroll-snap-type: none; }
.natiive-home-reviews .natiive-reviews-track.is-dragging,
.natiive-home-reviews .natiive-reviews-track.is-dragging * { cursor: grabbing; user-select: none; -webkit-user-select: none; }
.natiive-home-reviews .natiive-reviews-track:focus-visible { outline: 3px solid #227131; outline-offset: 4px; }
.natiive-home-reviews .natiive-reviews-controls { display: flex; justify-content: center; align-items: center; gap: .75rem; margin-top: 1.25rem; min-width: 0; }
.natiive-home-reviews .natiive-reviews-controls[hidden],
.natiive-home-reviews .natiive-reviews-dots,
.natiive-home-reviews .natiive-reviews-arrow-label { display: none; }
.natiive-home-reviews .natiive-reviews-controls button {
  display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px;
  margin: 0; padding: .25rem; border: 0; border-radius: 0; background: transparent; color: #30362f;
  font: 400 2rem/1 Georgia, 'Times New Roman', serif; cursor: pointer;
}
.natiive-home-reviews .natiive-reviews-controls button:hover { color: #227131; background: #f4f6f2; }
.natiive-home-reviews .natiive-reviews-controls button:focus-visible { outline: 3px solid #227131; outline-offset: 3px; }
.natiive-home-reviews .natiive-reviews-controls button[aria-disabled="true"] { opacity: .4; cursor: default; }
@media (max-width: 1050px) {
  .natiive-home-reviews .natiive-reviews-track { grid-auto-columns: calc((100% - 1.5rem) / 2); gap: 1.5rem; }
}
@media (max-width: 700px) {
  .natiive-home-reviews .natiive-reviews-track { grid-auto-columns: 100%; gap: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .natiive-home-reviews .natiive-reviews-track { scroll-behavior: auto; }
}

/* Approved homepage hierarchy, agency portrait and curated advice — 26 October 2026. */
.natiive-home .natiive-agency-profile {
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  align-items: center;
  gap: clamp(2rem, 5vw, 4.5rem);
  border-bottom: 0;
}
.natiive-home .natiive-agency-portrait { width: 100%; max-width: 25rem; margin: 0; }
.natiive-home .natiive-agency-portrait img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 6px;
  background: #f5f3ee;
}
.natiive-home .natiive-agency-portrait figcaption {
  margin-top: .75rem;
  color: #53656d;
  font-size: .9375rem;
  line-height: 1.5;
}
.natiive-home .natiive-agency-copy { min-width: 0; }
.natiive-home .natiive-agency-copy > :first-child { margin-top: 0; }
.natiive-home .natiive-agency-copy h2 { max-width: 22ch; margin: .6rem 0 1.25rem; }
.natiive-home .natiive-agency-copy > p { max-width: 58ch; }
.natiive-home .natiive-agency-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin: 1.5rem 0;
  padding-block: 1.25rem;
  border-block: 1px solid #e0e3df;
}
.natiive-home .natiive-agency-facts > div { min-width: 0; }
.natiive-home .natiive-agency-facts dt { font-size: 1.1rem; font-weight: 700; color: #1f2244; }
.natiive-home .natiive-agency-facts dd { margin: .25rem 0 0; font-size: .9375rem; color: #53656d; line-height: 1.5; }
.natiive-home .natiive-agency-copy a:not(.wp-block-button__link) { display: inline-flex; align-items: center; min-height: 44px; }
.natiive-home .natiive-home-advice > :is(h2,p) { margin-left: 0 !important; max-width: 65ch; }
.natiive-home .natiive-home-advice-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
  width: 100%;
  max-width: none;
  margin: 1.75rem 0;
}
.natiive-home .natiive-advice-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  border: 1px solid #e0e3df;
  border-radius: 6px;
  background: #fff;
}
.natiive-home .natiive-advice-card > a { display: flex; flex: 1; flex-direction: column; color: inherit; text-decoration: none; border-radius: 6px; }
.natiive-home .natiive-advice-card > a:hover .natiive-advice-title { text-decoration: underline; text-underline-offset: .18em; }
.natiive-home .natiive-advice-card > a:focus-visible { outline: 3px solid #227131; outline-offset: 4px; }
.natiive-home .natiive-advice-image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: 5px 5px 0 0;
  background: #f5f3ee;
}
.natiive-home .natiive-advice-image--portrait { object-position: center bottom; }
.natiive-home .natiive-advice-content { display: flex; flex-direction: column; flex: 1; padding: 1.5rem; }
.natiive-home .natiive-advice-content > .natiive-eyebrow { margin: 0 0 .5rem; }
.natiive-home .natiive-advice-title { margin: 0 0 1rem; font-size: 1.35rem; line-height: 1.35; overflow-wrap: break-word; }
.natiive-home .natiive-advice-title a { color: #1f2244; text-decoration: none; }
.natiive-home .natiive-advice-title a:hover { text-decoration: underline; text-underline-offset: .18em; }
.natiive-home .natiive-advice-excerpt { flex: 1; margin: 0 0 1rem; font-size: 1rem; line-height: 1.65; color: #53656d; }
.natiive-home .natiive-advice-link,
.natiive-home .natiive-home-advice-all a { display: inline-flex; align-items: center; min-height: 44px; color: #227131; text-decoration: underline; text-underline-offset: .2em; }
.natiive-home .natiive-home-secondary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.5rem;
  margin-bottom: clamp(2.5rem, 5vw, 4rem);
}
.natiive-home .natiive-secondary-card {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: clamp(1.5rem, 3vw, 2rem);
  border: 1px solid #e0e3df;
  border-top: 3px solid #917a26;
  border-radius: 6px;
  background: #f8f8f6;
}
.natiive-home .natiive-secondary-card > :is(h2,p) { max-width: none; margin-left: 0 !important; }
.natiive-home .natiive-secondary-card .natiive-eyebrow { margin-top: 0; }
.natiive-home .natiive-secondary-card h2 { margin: .5rem 0 1rem; font-size: clamp(1.4rem, 2.1vw, 1.65rem); }
.natiive-home .natiive-secondary-card > p:not(.natiive-eyebrow) { flex: 1; margin: 0 0 1rem; }
.natiive-home .natiive-secondary-card > a { align-self: flex-start; display: inline-flex; align-items: center; min-height: 44px; text-underline-offset: .2em; }
@media (max-width: 900px) {
  .natiive-home .natiive-agency-profile { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 1.75rem; }
  .natiive-home .natiive-agency-facts { grid-template-columns: 1fr; gap: .75rem; }
  .natiive-home .natiive-agency-facts dd { margin-top: 0; }
  .natiive-home .natiive-home-advice-grid { gap: 1rem; }
  .natiive-home .natiive-advice-content { padding: 1.25rem; }
}
@media (max-width: 780px) {
  .natiive-home .natiive-agency-profile { grid-template-columns: 1fr; gap: 1.5rem; }
  .natiive-home .natiive-agency-portrait { max-width: 20rem; margin-inline: auto; }
  .natiive-home .natiive-agency-copy h2 { max-width: none; }
  .natiive-home .natiive-home-advice-grid,
  .natiive-home .natiive-home-secondary { grid-template-columns: 1fr; }
  .natiive-home .natiive-home-secondary { gap: 1rem; }
  .natiive-home .natiive-advice-title { font-size: 1.35rem; }
}


/* Practical footer with one shared grid and progressively enhanced mobile menus. */
.natiive-footer {
  padding-block: clamp(2rem, 5vw, 3.5rem);
  border-top: var(--natiive-gold-rule-width, 2px) solid #917a26;
}
.natiive-footer > .natiive-footer-inner {
  width: 100%;
  max-width: var(--wp--style--global--wide-size, 1240px);
  margin-inline: auto !important;
}
.natiive-footer .natiive-footer-grid {
  grid-template-columns: minmax(0, 1.25fr) repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: clamp(2rem, 5vw, 4.5rem);
}
.natiive-footer .natiive-footer-grid > * { min-width: 0; margin: 0; }
.natiive-footer .natiive-footer-logo { min-height: 0; padding: 0; }
.natiive-footer-logo img { display: block; width: 66px; height: 83px; object-fit: contain; }
.natiive-footer .natiive-footer-promise { margin-block: 1.25rem; max-width: 29ch; }
.natiive-footer-contact address { font-style: normal; line-height: 1.6; margin: 0 0 1rem; }
.natiive-footer .natiive-footer-call {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .15rem;
  padding: .75rem 1rem;
  border: 1px solid #ffffff50;
  border-radius: 3px;
  background: #227131;
  color: #fff;
  text-decoration: none;
  line-height: 1.4;
}
.natiive-footer-call span { font-size: .875rem; }
.natiive-footer-call strong { font: 500 1.125rem/1.4 'Roboto', Arial, sans-serif; }
.natiive-footer .natiive-footer-call:hover { background: #1b5b27; }
.natiive-footer-contact-links { display: flex; flex-wrap: wrap; gap: 0 1.5rem; margin-top: .4rem; }
.natiive-footer-contact-links a { gap: .35rem; }
.natiive-footer-menu > summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  min-height: 44px;
  list-style: none;
  cursor: pointer;
}
.natiive-footer-menu > summary::-webkit-details-marker { display: none; }
.natiive-footer-menu > summary::marker { content: ''; }
.natiive-footer-menu > summary h2 {
  margin: 0;
  font: 500 .875rem/1.5 'Roboto', Arial, sans-serif;
  letter-spacing: .065em;
}
.natiive-footer-menu > summary:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.natiive-footer-toggle {
  width: .55rem;
  height: .55rem;
  margin: -.2rem .25rem 0 0;
  flex-shrink: 0;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
}
.natiive-footer-menu[open] > summary .natiive-footer-toggle { transform: rotate(225deg); margin-top: .25rem; }
.natiive-footer-menu nav { padding-top: .6rem; }
.natiive-footer-menu ul { list-style: none; padding: 0; margin: 0; }
.natiive-footer-menu li { margin: 0; padding: 0; }
.natiive-footer-menu a { padding-block: .45rem; }
.natiive-footer-history { display: flex; flex-wrap: wrap; gap: 0 1.25rem; margin-top: .75rem; }
.natiive-footer .natiive-footer-legal {
  max-width: none;
  margin: 2rem 0 0;
  padding-top: 1.25rem;
}
.natiive-footer .natiive-footer-legal nav { margin: 0; max-width: none; }
.natiive-footer .natiive-footer-legal p { max-width: none; margin: 1rem 0 0; }
@media (min-width: 781px) {
  .natiive-footer[data-footer-wide="true"] .natiive-footer-menu > summary { cursor: default; }
  .natiive-footer[data-footer-wide="true"] .natiive-footer-toggle { display: none; }
}
@media (max-width: 780px) {
  .natiive-footer .natiive-footer-grid { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .natiive-footer-contact { padding-bottom: 1.5rem; }
  .natiive-footer-menu { border-top: 1px solid #ffffff40; }
  .natiive-footer-menu:last-child { border-bottom: 1px solid #ffffff40; }
  .natiive-footer-menu > summary { min-height: 56px; padding-block: .65rem; }
  .natiive-footer-menu nav { padding: 0 0 1rem; }
  .natiive-footer .natiive-footer-legal { margin-top: 1.5rem; padding-top: 0; border-top: 0; }
  .natiive-footer .natiive-footer-legal nav { gap: 0; }
  .natiive-footer .natiive-footer-legal a { padding-block: .45rem; }
}


/* Junot-inspired editorial navigation — 28 October 2026. */
.natiive-header.natiive-header-editorial {
  --natiive-menu-paper: var(--wp--preset--color--navy, #1f2244);
  --natiive-menu-ink: #fff;
  position: relative;
  z-index: 70;
  padding: 0;
  border-bottom: var(--natiive-gold-rule-width, 2px) solid var(--wp--preset--color--gold, #917a26);
  background: var(--natiive-menu-paper);
  color: var(--natiive-menu-ink);
}
.natiive-header-editorial :where(a, button, summary) { color: var(--natiive-menu-ink); }
.natiive-header.natiive-header-editorial :where(a, button, summary):focus-visible { outline: 2px solid #d7c797; outline-offset: 4px; }
.natiive-header.natiive-header-editorial > .natiive-menu-bar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
  min-height: 80px;
  max-width: 1440px;
  width: 100%;
  margin: 0 auto !important;
  padding: 10px 32px;
}
.natiive-menu-bar > * { min-width: 0; margin: 0 !important; }
.natiive-menu-disclosure { position: static; justify-self: start; }
.natiive-menu-toggle {
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  min-width: 44px;
  min-height: 44px;
  padding: .25rem 0;
  cursor: pointer;
  list-style: none;
  font: 400 .75rem/1.4 'Roboto', Arial, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.natiive-menu-toggle::-webkit-details-marker { display: none; }
.natiive-menu-toggle::marker { content: ''; }
.natiive-menu-icon { position: relative; display: block; width: 23px; height: 18px; flex: 0 0 23px; }
.natiive-menu-icon::before, .natiive-menu-icon::after {
  content: '';
  position: absolute;
  left: 0;
  width: 23px;
  height: 1px;
  background: currentColor;
}
.natiive-menu-icon::before { top: 5px; }
.natiive-menu-icon::after { top: 12px; }
.natiive-menu-disclosure[open] .natiive-menu-icon::before { top: 8px; transform: rotate(45deg); }
.natiive-menu-disclosure[open] .natiive-menu-icon::after { top: 8px; transform: rotate(-45deg); }
.natiive-header-editorial .natiive-menu-logo { justify-self: center; }
.natiive-header-editorial .natiive-menu-logo .wp-block-site-logo { margin: 0; }
.natiive-header-editorial .natiive-menu-logo a { display: block; }
.natiive-header.natiive-header-editorial .wp-block-site-logo img { display: block; width: 148px; max-width: 148px; height: auto; max-height: 60px; object-fit: contain; }
.natiive-header-editorial .natiive-menu-contact {
  display: inline-flex;
  align-items: center;
  justify-self: end;
  min-height: 44px;
  padding: .25rem 0;
  color: var(--natiive-menu-ink);
  font: 400 .75rem/1.4 'Roboto', Arial, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
  text-decoration: none;
}
.natiive-header-editorial .natiive-menu-contact:hover { text-decoration: underline; text-underline-offset: .25em; }
.natiive-menu-panel {
  position: absolute;
  z-index: 2;
  top: 100%;
  right: 0;
  left: 0;
  max-height: calc(100vh - var(--natiive-menu-edge, 80px));
  max-height: calc(100dvh - var(--natiive-menu-edge, 80px));
  overflow-y: auto;
  overscroll-behavior-y: contain;
  border-top: 1px solid #ffffff30;
  background: var(--natiive-menu-paper);
  padding: 32px;
  text-align: left;
}
.natiive-menu-panel-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  align-items: start;
  gap: 56px;
  max-width: 1376px;
  margin-inline: auto;
}
.natiive-menu-panel-inner > * { min-width: 0; }
.natiive-menu-content { padding-block: 0; }
.natiive-menu-section + .natiive-menu-section { margin-top: 26px; }
.natiive-menu-section h2 { margin: 0 0 16px; color: var(--natiive-menu-ink); font: 400 1.85rem/1.25 Georgia, 'Times New Roman', serif; letter-spacing: -.015em; }
.natiive-menu-section h2 em { font-weight: 400; }
.natiive-menu-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.natiive-menu-columns ul { margin: 0; padding: 0; list-style: none; }
.natiive-menu-columns li { margin: 0; padding: 0; }
.natiive-header-editorial .natiive-menu-columns a {
  display: flex;
  align-items: center;
  gap: .5rem;
  min-height: 44px;
  padding: .55rem 0;
  color: var(--natiive-menu-ink);
  font: 400 .875rem/1.4 'Roboto', Arial, sans-serif;
  letter-spacing: .035em;
  text-decoration: none;
  text-transform: uppercase;
}
.natiive-header-editorial .natiive-menu-columns a:hover { text-decoration: underline; text-underline-offset: .25em; }
.natiive-header-editorial .natiive-menu-columns .natiive-menu-estimate {
  justify-content: space-between;
  width: fit-content;
  min-width: min(100%, 210px);
  max-width: 100%;
  padding: .55rem .8rem;
  border: 1px solid #78a77d;
  background: var(--natiive-action-primary);
  color: #fff;
}
.natiive-menu-estimate span { font-size: 1.125rem; line-height: 1; }
.natiive-header-editorial .natiive-menu-columns .natiive-menu-estimate:hover { background: var(--natiive-action-hover); color: #fff; text-decoration: none; }
.natiive-menu-contact-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .25rem 1.5rem;
  margin-top: 22px;
  padding-top: 12px;
  border-top: 1px solid #ffffff30;
  font: 400 .8rem/1.5 'Roboto', Arial, sans-serif;
  color: #d9dce8;
}
.natiive-header-editorial .natiive-menu-contact-line a { display: inline-flex; align-items: center; min-height: 44px; color: var(--natiive-menu-ink); text-decoration: none; }
.natiive-header-editorial .natiive-menu-contact-line a:hover { text-decoration: underline; text-underline-offset: .25em; }
.natiive-menu-visual { margin: 0; padding: 0; width: 280px; height: 370px; overflow: hidden; border-radius: 145px 145px 0 0; }
.natiive-menu-visual img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 76% 50%; }
.natiive-menu-backdrop { position: fixed; z-index: 1; inset: var(--natiive-menu-edge, 80px) 0 0; background: #11183080; }
.natiive-menu-backdrop[hidden] { display: none; }
html.natiive-menu-is-open { overflow: hidden; }
html.natiive-menu-is-open body { overflow: clip; }
@media (max-width: 1100px) {
  .natiive-menu-panel-inner { grid-template-columns: minmax(0, 1fr); }
  .natiive-menu-visual { display: none; }
}
@media (max-width: 700px) {
  .natiive-header.natiive-header-editorial > .natiive-menu-bar { min-height: 72px; gap: .5rem; padding: 10px 20px; }
  .natiive-menu-toggle { gap: .45rem; font-size: .6875rem; letter-spacing: .04em; }
  .natiive-menu-icon, .natiive-menu-icon::before, .natiive-menu-icon::after { width: 20px; }
  .natiive-menu-icon { flex-basis: 20px; }
  .natiive-header.natiive-header-editorial .wp-block-site-logo img { width: 128px; max-width: 128px; max-height: 52px; }
  .natiive-header-editorial .natiive-menu-contact { font-size: .6875rem; letter-spacing: .04em; }
  .natiive-menu-panel { padding: 24px 24px max(24px, env(safe-area-inset-bottom)); }
  .natiive-menu-columns { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .natiive-menu-section h2 { font-size: 1.6rem; margin-bottom: 12px; }
  .natiive-menu-section + .natiive-menu-section { margin-top: 24px; }
  .natiive-header-editorial .natiive-menu-columns a { font-size: .875rem; }
  .natiive-header-editorial .natiive-menu-columns .natiive-menu-estimate { margin-bottom: .35rem; }
  .natiive-menu-contact-line { display: block; margin-top: 18px; }
  .natiive-menu-contact-line > span { display: block; }
}
@media (max-width: 350px) {
  .natiive-header.natiive-header-editorial > .natiive-menu-bar { padding-inline: 16px; }
  .natiive-header.natiive-header-editorial .wp-block-site-logo img { width: 116px; max-width: 116px; }
}
/* End editorial navigation — 28 October 2026. */

/* Shared page frame, full-screen home and unobstructed footer — 28 October 2026. */
:root {
  --natiive-layout-wide: 1280px;
  --natiive-layout-reading: 760px;
  --natiive-layout-gutter: clamp(1.5rem, 4vw, 4rem);
  --wp--style--global--wide-size: var(--natiive-layout-wide);
  --wp--style--global--content-size: var(--natiive-layout-reading);
  --wp--style--root--padding-left: var(--natiive-layout-gutter);
  --wp--style--root--padding-right: var(--natiive-layout-gutter);
  --natiive-home-header-expanded: 112px;
  --natiive-home-header-compact: 80px;
  --natiive-header-logo-expanded: 240px;
  --natiive-header-logo-compact: 148px;
  --natiive-gold-rule-width: 2px;
  --natiive-dock-clearance: calc(52px + 2.5rem + env(safe-area-inset-bottom, 0px));
}
/* One wide frame for sections and tools; paragraphs keep a comfortable reading measure. */
.natiive-home .natiive-home-reviews,
.natiive-home .natiive-home-hero > .natiive-hero-layout,
.natiive-footer > .natiive-footer-inner,
.natiive-menu-panel-inner { max-width: var(--natiive-layout-wide); }
.natiive-header.natiive-header-editorial > .natiive-menu-bar {
  max-width: calc(var(--natiive-layout-wide) + 2 * var(--natiive-layout-gutter));
  padding-inline: var(--natiive-layout-gutter);
}
.natiive-menu-panel { padding-inline: var(--natiive-layout-gutter); }
.natiive-photo-hero { padding-inline: var(--natiive-layout-gutter); border-inline: 0; }
main.natiive-reading > .wp-block-post-content {
  width: 100%;
  max-width: var(--natiive-layout-wide);
}
.wp-block-post-content > :is(.natiive-financing, .natiive-income-simulator, .nh-schedule),
.natiive-financing, .natiive-income-simulator, .nh-schedule { max-width: var(--natiive-layout-wide); }
.natiive-property-list:has(> .natiive-photo-hero) > :not(.natiive-photo-hero) {
  width: calc(100% - 2 * var(--natiive-layout-gutter));
  max-width: var(--natiive-layout-wide);
}
/* Property details share the outer frame; their internal gallery and text keep their own rhythm. */
.natiive-property-page {
  max-width: calc(var(--natiive-layout-wide) + 2 * var(--natiive-layout-gutter));
  padding-inline: var(--natiive-layout-gutter);
}
/* Reserve the expanded header once; its animation never moves page content. */
html {
  --natiive-adminbar-height: 0px;
  scroll-padding-top: calc(var(--natiive-home-header-compact) + var(--natiive-adminbar-height) + var(--natiive-gold-rule-width) + 1rem);
}
html:has(body.admin-bar) { --natiive-adminbar-height: 32px; }
.wp-site-blocks > header.wp-block-template-part {
  position: fixed;
  top: var(--natiive-adminbar-height, 0px);
  right: 0;
  left: 0;
  z-index: 70;
  margin: 0;
}
body:not(.home) .wp-site-blocks {
  padding-block-start: calc(var(--natiive-home-header-expanded) + var(--natiive-gold-rule-width));
}
@media (max-width: 782px) {
  html:has(body.admin-bar) { --natiive-adminbar-height: 46px; }
}
.natiive-header.natiive-header-editorial > .natiive-menu-bar {
  height: var(--natiive-home-header-expanded);
  min-height: 0;
  padding-block: 0;
  transition: height 180ms ease-out;
}
.natiive-header.natiive-header-editorial .wp-block-site-logo img {
  width: var(--natiive-header-logo-expanded);
  max-width: var(--natiive-header-logo-expanded);
  max-height: none;
  transform: none;
  transition: width 180ms ease-out;
}
.natiive-header.natiive-header-editorial.is-compact > .natiive-menu-bar { height: var(--natiive-home-header-compact); }
.natiive-header.natiive-header-editorial.is-compact .wp-block-site-logo img { width: var(--natiive-header-logo-compact); }
.natiive-home .natiive-home-hero {
  max-width: none;
  width: 100%;
  min-height: calc(100vh - var(--natiive-adminbar-height, 0px));
  min-height: calc(100svh - var(--natiive-adminbar-height, 0px));
  padding-inline: var(--natiive-layout-gutter);
  padding-block-start: calc(var(--natiive-home-header-expanded) + clamp(2rem, 4vh, 4rem));
  padding-block-end: clamp(2rem, 5vh, 4rem);
}
/* Keep the original photograph clear. Its frame follows the usable height, not screen width. */
.natiive-home .natiive-home-photo {
  top: var(--natiive-home-header-expanded);
  right: auto;
  left: 50%;
  width: auto;
  max-width: 100% !important;
  height: calc(100% - var(--natiive-home-header-expanded));
  aspect-ratio: 2.12;
  transform: translateX(-50%);
}
.natiive-home .natiive-home-photo img { object-position: 50% 20%; }
/* This becomes a zero-width fade whenever the photograph fills its frame. */
.natiive-home .natiive-home-photo::after {
  --natiive-hero-side-fade: clamp(0px, calc((100cqw - 100%) / 2), 180px);
  --natiive-hero-edge-overlap: clamp(0px, calc((100cqw - 100%) / 2), 2px);
  content: '';
  position: absolute;
  inset: 0 calc(0px - var(--natiive-hero-edge-overlap));
  background: linear-gradient(90deg,
    #1f2244 0%,
    #1f2244 var(--natiive-hero-edge-overlap),
    #1f224400 var(--natiive-hero-side-fade),
    #1f224400 calc(100% - var(--natiive-hero-side-fade)),
    #1f2244 calc(100% - var(--natiive-hero-edge-overlap)),
    #1f2244 100%);
  pointer-events: none;
}
.natiive-home .natiive-home-hero :is(h1, .has-lead-font-size, .natiive-eyebrow, .natiive-home-search > p) {
  text-shadow: 0 1px 2px #111830, 0 2px 8px #111830e6, 0 0 18px #11183080;
}
.natiive-home .natiive-home-hero .wp-block-button.is-style-outline .wp-block-button__link,
.natiive-home .natiive-home-hero .natiive-home-search-links a { background: #1f2244d9; text-shadow: none; }
.natiive-home .natiive-home-hero .wp-block-button.is-style-outline .wp-block-button__link:hover,
.natiive-home .natiive-home-hero .natiive-home-search-links a:hover { background: #fff; color: #1f2244; }
@media (max-width: 780px) {
  .natiive-home .natiive-home-photo img { object-position: 44% 50%; }
}
/* Reserve the dock's whole footprint inside the footer on every screen size. */
body {
  --wp--style--root--padding-left: var(--natiive-layout-gutter);
  --wp--style--root--padding-right: var(--natiive-layout-gutter);
  padding-bottom: 0;
}
.natiive-footer {
  padding-inline: var(--natiive-layout-gutter);
  padding-block-end: calc(3rem + max(var(--natiive-dock-clearance), var(--natiive-dock-measured-clearance, 0px)));
}
.natiive-action-dock {
  left: var(--natiive-layout-gutter);
  right: var(--natiive-layout-gutter);
  max-width: var(--natiive-layout-wide);
  margin-inline: auto;
}
html.natiive-menu-is-open { scroll-padding-top: 0; scroll-padding-bottom: 0; }
@media (max-width: 780px) {
  :root { --natiive-dock-clearance: calc(48px + 2.25rem + env(safe-area-inset-bottom, 0px)); }
  .natiive-photo-hero { padding-inline: var(--natiive-layout-gutter) !important; }
  .natiive-action-dock { left: 0; right: 0; }
}
@media (max-width: 700px) {
  :root {
    --natiive-home-header-expanded: 96px;
    --natiive-home-header-compact: 72px;
    --natiive-header-logo-expanded: clamp(152px, calc(100vw - 200px), 176px);
    --natiive-header-logo-compact: 128px;
  }
}
@media (max-width: 350px) {
  :root {
    --natiive-home-header-expanded: 88px;
    --natiive-header-logo-expanded: 152px;
    --natiive-header-logo-compact: 116px;
  }
  .natiive-header.natiive-header-editorial > .natiive-menu-bar { padding-inline: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .natiive-header.natiive-header-editorial > .natiive-menu-bar,
  .natiive-header.natiive-header-editorial .wp-block-site-logo img { transition: none; }
}
/* End shared page frame, full-screen home and unobstructed footer — 28 October 2026. */

/* Property presentation refinements — 28 October 2026. */
/* Property photographs keep their original proportions, with no letterbox frame. */
.natiive-property-gallery .natiive-gallery-stage {
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;
  background: transparent;
}
.natiive-property-gallery .natiive-gallery-hero {
  width: fit-content;
  max-width: 100%;
  height: auto;
  min-height: 0;
  max-height: none;
  aspect-ratio: auto;
}
.natiive-property-gallery .natiive-gallery-hero img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: min(72svh, 780px);
  object-fit: contain;
}
@media (max-width: 700px) {
  .natiive-property-gallery .natiive-gallery-expand {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
  }
}
/* Existing hidden attributes, thumbnail rules, counters, arrows and dialog are retained. */
.natiive-sector .natiive-school-map-marker {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  border: 2px solid #1f2244;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 5px #1f224433;
}
.natiive-sector .natiive-school-map-marker svg {
  display: block;
  width: 24px;
  height: 24px;
}
.natiive-sector .natiive-sector__map .natiive-school-map-marker:focus-visible {
  outline: 3px solid var(--wp--preset--color--gold, #917a26);
  outline-offset: 3px;
}
.natiive-sector .natiive-sector__maps-link {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  min-height: 44px;
  margin-top: .5rem;
  color: #1f2244;
  text-underline-offset: .2em;
}

/* Desktop estimator viewport. Property neighbourhood maps keep their own sizing. */
@media (min-width: 1024px) {
  #natiive-bunji-estimator {
    box-sizing: border-box;
    width: min(1440px, calc(100vw - 4rem));
    max-width: none !important;
    margin-inline: calc(50% - min(720px, calc(50vw - 2rem))) !important;
  }
}
