/* Zayd Weverton: the supplied corporate palette and locally hosted Montserrat. */
:root {
  --wa-blue: #112749;
  --wa-cream: #E7E0D6;
  --wa-gray: #6E7073;
  --wa-font: "WA Montserrat", Arial, sans-serif;
}

body { font-family: var(--wa-font); }
h1, h2, h3, h4, h5, h6 { font-family: var(--wa-font); font-weight: 600; }
.wa-brand-logo { display: block; width: 118px; height: auto; max-width: 100%; object-fit: contain; }
.wa-brand-wordmark { display: flex; flex-direction: column; align-items: center; gap: 6px; color: var(--wa-cream); }
.wa-brand-wordmark > img { display: block; width: 54%; height: auto; filter: brightness(0) invert(1); }
.wa-brand-wordmark > span { font: 400 clamp(11px,1vw,18px)/1.2 var(--wa-font); white-space: nowrap; letter-spacing: -.04em; }
.wordmark { flex-shrink: 0; }
.wordmark .wa-brand-logo { width: 110px; }
.footer-mark .wa-brand-logo { width: 160px; }
.site-header { background: linear-gradient(180deg, rgba(17,39,73,.72), transparent); }
.site-header.is-solid,
body:not(.home):not(.wa-property-presentation) .site-header,
body.wa-blog .site-header { background: rgba(17,39,73,.97); }
.menu-dialog, .wa-clone-menu, .wa-clone-menu::backdrop { background: var(--wa-blue); color: var(--wa-cream); font-family: var(--wa-font); }
.menu-links a, .wa-clone-menu nav a { font-family: var(--wa-font); font-weight: 500; letter-spacing: -.04em; }
.menu-dialog .eyebrow, .menu-contact, .menu-bottom { color: var(--wa-cream); }
.site-footer .footer-title { font: 400 clamp(32px,3.5vw,56px)/1.16 var(--wa-font); letter-spacing: -.035em; padding-right: 64px; }
.site-footer .footer-title em { font-style: normal; font-weight: inherit; }
.site-footer .footer-arrow { font-size: clamp(30px,3vw,44px); right: 0; bottom: 4px; }
.site-footer { position: relative; isolation: isolate; background: var(--wa-blue); color: var(--wa-cream); overflow: hidden; }
.site-footer::before, .wa-clone footer::before {
  content: ""; position: absolute; inset: 0; pointer-events: none; z-index: -1;
  background: url("../brand/wa-pattern-blue.png") center / 780px auto repeat;
  filter: brightness(0) invert(1); opacity: .045;
}
.site-footer::after, .wa-clone footer::after {
  content: ""; position: absolute; right: -4%; bottom: 6%; width: min(48vw,580px); aspect-ratio: 2698 / 1822;
  background: url("../brand/wa-outline-white.png") center / contain no-repeat;
  opacity: .045; pointer-events: none; z-index: -1;
}
.footer-grid p, .footer-grid a:not(.wordmark), .footer-bottom,
.advisor-copy p, .principle p, .faq-intro p, .faq-list details p, .article-body { color: rgba(231,224,214,.78); }
.contact-float { color: var(--wa-cream); background: var(--wa-blue); border-color: rgba(231,224,214,.5); }
.collection-section .eyebrow, .collection-section em, .insights-section .eyebrow, .insights-section em { color: var(--wa-blue); }
.collection-section .section-heading p, .insights-section .section-heading p { color: rgba(17,39,73,.78); }
.property-tag { background: rgba(17,39,73,.84); }
.property-source-details { color: var(--wa-cream); }
.property-source-content p, .property-source-content li { color: rgba(231,224,214,.8); }

/* Map the captured components to the same brand palette, retaining their layout. */
body.wa-clone {
  --token-5c6d233d-1667-4ba0-87ce-8540c600778b: var(--wa-cream);
  --token-df41efe3-3b06-4aec-a740-43df69c793df: var(--wa-cream);
  --token-b711479a-cc47-40cf-a753-fc5ef4d81d54: var(--wa-blue);
  --token-5f18c1b5-513a-4b76-b6ad-b41f7d8e7fa8: var(--wa-blue);
  --token-cc8cc9d6-b478-4155-ac4e-db2d75b6bd33: var(--wa-blue);
  --token-67e2eebc-f435-4b4c-aa0e-19d0b7e4fad1: var(--wa-blue);
  --token-2d8eee63-5493-4479-bf28-14ea87fd2b2b: var(--wa-blue);
  --token-2b8fb093-e7c0-401d-8443-97beab96ff9a: var(--wa-gray);
  --token-e8d806da-5800-413f-b11d-f08689d57a67: rgba(110,112,115,.4);
  --token-4f6e3922-fa7e-4556-ba76-86095435288f: rgba(17,39,73,.78);
  --token-a3fdb390-adac-49f5-96e9-6f26315f9f08: var(--wa-gray);
  --token-c81e8d0f-3304-47db-8d2e-90dacf7e3233: var(--wa-cream);
  --token-60c7d26d-c83c-4db0-895c-79e0c2090be9: var(--wa-blue);
  --token-ef2226b8-68ef-4086-942e-46bbdbdbc71f: var(--wa-blue);
  --token-319d0d7c-131f-4954-b27d-6b03bac76cc7: var(--wa-cream);
  background: var(--wa-cream); color: var(--wa-blue); font-family: var(--wa-font);
}
.wa-clone .framer-text, .wa-clone .framer-text span,
.wa-clone button, .wa-clone input, .wa-clone .wa-faq-answer,
.wa-clone .wa-listing-empty { font-family: var(--wa-font) !important; }
.wa-clone h1.framer-text, .wa-clone h2.framer-text, .wa-clone h3.framer-text,
.wa-clone h4.framer-text { font-weight: 600; font-style: normal; letter-spacing: -.04em; text-wrap: balance; }
.wa-clone h1.framer-text { font-size: clamp(42px,6.1vw,86px); line-height: 1.07; }
.wa-clone h2.framer-text { font-size: clamp(36px,4.6vw,66px); line-height: 1.12; }
.wa-clone h3.framer-text { font-size: clamp(28px,3.4vw,48px); line-height: 1.18; }
.wa-clone h4.framer-text { font-size: clamp(23px,2.5vw,34px); line-height: 1.22; }
.wa-clone .wa-faq-answer, .wa-clone .wa-listing-empty { color: rgba(17,39,73,.78); }
.wa-clone .wa-brand-link { display: flex !important; justify-content: flex-start; align-items: center; width: 118px !important; height: auto !important; min-height: 61px; overflow: visible; flex-shrink: 0; }
.wa-clone [data-wa-header] .framer-1j0rms2-container,
.wa-clone footer .framer-95zch5-container { width: 118px; height: auto; flex-shrink: 0; }
.wa-clone [data-wa-header] .wa-brand-logo[data-wa-brand-default] { filter: brightness(0) saturate(100%) invert(12%) sepia(25%) saturate(2015%) hue-rotate(177deg) brightness(97%) contrast(96%); }
.wa-clone-home [data-wa-header] .wa-brand-logo[data-wa-brand-default] { filter: none; }
.wa-clone footer { position: relative; isolation: isolate; overflow: hidden; }
.wa-clone footer .wa-brand-logo { filter: none; }
.wa-clone-menu .wa-brand-link { min-height: 0; }
.wa-clone .framer-l2t4B { background: url("../brand/wa-outline-white.png") center / contain no-repeat; }
.wa-clone .framer-l2t4B > * { visibility: hidden; }

/* Native WordPress articles and their blocks. */
body.wa-blog { --blog-accent: var(--wa-blue); --blog-muted: rgba(17,39,73,.78); --blog-border: rgba(110,112,115,.32); --blog-paper: var(--wa-cream); }
.blog-heading h1 { font-size: clamp(48px,6.2vw,88px); line-height: 1.08; font-weight: 600; }
.blog-featured-copy h2 { font-size: clamp(30px,3.1vw,44px); line-height: 1.17; }
.blog-card-copy h2 { font-size: clamp(26px,2.3vw,34px); line-height: 1.2; }
.blog-article-header h1 { font-size: clamp(36px,5.2vw,72px); line-height: 1.14; font-weight: 600; }
.blog-content a:not(.wp-block-button__link) { color: var(--wa-blue); }
.blog-content .wp-block-button__link:hover, .blog-comments input[type="submit"]:hover { background: var(--wa-gray); }
.blog-image-placeholder { background: var(--wa-blue); color: var(--wa-cream); }
.blog-image-placeholder::before { border-color: rgba(231,224,214,.25); }
.blog-image-placeholder .wa-brand-logo { width: min(50%,230px); height: auto; object-fit: contain; }
.blog-image-placeholder .eyebrow { color: var(--wa-cream); }

/* Six-chapter property presentations keep their scroll choreography. */
#stage, #stage h1, #stage h2, #stage h3,
#stage .glass .n, #stage .glass .pct, #stage .price-m { font-family: var(--wa-font); }
#stage h1 { font-size: clamp(42px,6.5vw,96px); font-weight: 600; line-height: 1.08; }
#stage h2 { font-size: clamp(28px,4vw,58px); font-weight: 500; line-height: 1.18; font-style: normal; }
#stage h3 { font-size: clamp(22px,2.7vw,38px); font-weight: 500; }
#stage em { font-style: normal; }
#map-svg .zone, #map-svg .zone2 { stroke: var(--wa-cream); }
#map-svg .pulse, #map-inset .pulse { fill: var(--wa-cream); }
#ov-white { background: var(--wa-cream); }
#cinematic.light #chapter, #cinematic.light #brand, #cinematic.light #chapter .n,
#cinematic.light #scene-unit h3 { color: var(--wa-blue); }
#cinematic.light #chapter .line { background: var(--wa-blue); }

@media (max-width: 760px) {
  .wordmark .wa-brand-logo { width: 90px; }
  .wa-clone .wa-brand-link, .wa-clone [data-wa-header] .framer-1j0rms2-container,
  .wa-clone footer .framer-95zch5-container { width: 96px !important; min-height: 50px; }
  .wa-clone h1.framer-text { font-size: clamp(36px,9.6vw,62px); }
  .wa-clone h2.framer-text { font-size: clamp(32px,8.2vw,52px); }
  .wa-clone h3.framer-text { font-size: clamp(25px,6.5vw,40px); }
  .wa-clone h4.framer-text { font-size: clamp(23px,6vw,34px); }
  .blog-heading h1 { font-size: clamp(38px,10.4vw,64px); }
  .blog-article-header h1 { font-size: clamp(31px,8.3vw,50px); }
  #stage h1 { font-size: clamp(35px,9.3vw,64px); }
  #stage h2 { font-size: clamp(26px,7.5vw,42px); }
  .site-footer .footer-title { font-size: clamp(28px,5.5vw,38px); padding-right: 46px; }
  .site-footer .footer-arrow { font-size: 30px; right: 0; bottom: 3px; }
}
