/* Load last. Presentation only: existing descriptions, prices, statuses and sources remain intact. */
body.reference-refresh {
  --reference-blue: #1c6386;
  --reference-navy: #0b3f5a;
  --reference-warm: #f8f5ef;
  --reference-border: #e7d7c7;
  --reference-muted: #596a73;
  --reference-serif: 'Noto Serif', Georgia, serif;
  --reference-shadow: 0 5px 18px rgba(29, 55, 66, .055);
  --ink: var(--reference-navy);
  --muted: var(--reference-muted);
  --paper: #fff;
  --soft: var(--reference-warm);
  --line: var(--reference-border);
  --gold: #8b6d52;
  --section-green: var(--reference-navy);
  --section-gold: #8b6d52;
  --rental-navy: var(--reference-navy);
  --rental-copper: #8b6d52;
  --rental-paper: var(--reference-warm);
  --rental-line: var(--reference-border);
  --rental-muted: var(--reference-muted);
  color: var(--reference-navy);
  background: #fff;
  font-size: 15px;
  line-height: 1.8;
}

body.reference-refresh :is(h1, h2, h3, h4),
body.reference-refresh .section-display,
body.reference-refresh .conversion-section-head h2,
body.reference-refresh .conversion-notes h2 {
  font-family: var(--sans);
  font-weight: 600;
  letter-spacing: -.025em;
  color: var(--reference-navy);
  line-height: 1.45;
}
body.reference-refresh .section-display,
body.reference-refresh .conversion-section-head h2 {
  font-size: clamp(27px, 2.6vw, 36px);
}
body.reference-refresh :is(.vision-intro, .rental-hero-lead, .area-intro-heading > p, .transaction-description) {
  font-family: var(--reference-serif);
  font-size: 15px;
  line-height: 1.9;
}
body.reference-refresh :is(.eyebrow, .conversion-kicker) {
  font-family: var(--sans);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .07em;
}
body.reference-refresh :is(.cover-copy h1, .cover-copy h2, .rental-hero-content h1, .project-hero:not(.editorial-cover) h1) {
  color: inherit;
}
body.reference-refresh .site-header {
  background: #fff;
  border-bottom-color: var(--reference-border);
  box-shadow: 0 2px 10px rgba(19, 50, 65, .025);
}
body.reference-refresh .site-header .brand {
  color: var(--reference-navy);
  font-family: var(--sans);
  font-size: 27px;
  font-weight: 600;
  letter-spacing: -.045em;
}
body.reference-refresh .site-header .brand small { font-weight: 400; letter-spacing: .18em; }
body.reference-refresh .desktop-nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; }
body.reference-refresh .desktop-nav a[aria-current="page"] { color: var(--reference-blue); border-bottom-color: var(--reference-blue); }
body.reference-refresh .mobile-menu { background: #fff; border-color: var(--reference-border); }
body.reference-refresh .mobile-menu a { color: var(--reference-navy); border-color: var(--reference-border); }
body.reference-refresh .header-contact { border-radius: 8px; background: var(--reference-blue); min-height: 44px; display: inline-flex; align-items: center; }

/* Shared calls to action use the reference's uncomplicated blue button. */
body.reference-refresh :is(.button, .conversion-button) {
  border-radius: 8px;
  border: 1px solid var(--reference-blue);
  background: #fff;
  color: var(--reference-blue);
  min-height: 46px;
  padding: 12px 22px;
  font-family: var(--sans);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}
body.reference-refresh :is(.button.primary, .conversion-button) {
  background: var(--reference-blue);
  border-color: var(--reference-blue);
  color: #fff;
}
body.reference-refresh .text-link { color: var(--reference-blue); border-color: #8daebf; }
body.reference-refresh :is(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #3882a5; outline-offset: 4px; }
body.reference-refresh :is(input, select, textarea) { border-radius: 6px; }

/* Three offers receive equal prominence; featured/compact classes remain for existing JS. */
body.reference-refresh .editorial-deals { background: var(--reference-warm); }
body.reference-refresh .editorial-deals h2.section-display { font-size: clamp(28px, 2.8vw, 38px); }
body.reference-refresh .deal-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
  align-items: stretch;
}
body.reference-refresh .deal-grid .deal-card {
  display: flex;
  flex-direction: column;
  grid-row: auto;
  min-width: 0;
  padding: 0;
  gap: 0;
  border: 1px solid var(--reference-border);
  border-radius: 16px;
  box-shadow: var(--reference-shadow);
  background: #fff;
  overflow: hidden;
}
body.reference-refresh .deal-card > .deal-media {
  display: block;
  flex: 0 0 240px;
  height: 240px;
  min-height: 240px;
  width: 100%;
  overflow: hidden;
}
body.reference-refresh .deal-card > .deal-media > img { width: 100%; height: 100%; object-fit: cover; }
body.reference-refresh .deal-card .deal-copy {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-width: 0;
  padding: 23px 23px 19px;
}
body.reference-refresh .deal-card .deal-copy > .eyebrow { font-size: 10px; line-height: 1.7; letter-spacing: .045em; color: #687781; }
body.reference-refresh .deal-card .deal-copy h3 {
  font: 600 18px/1.55 var(--sans);
  letter-spacing: -.015em;
  margin: 10px 0 16px;
  color: var(--reference-navy);
}
body.reference-refresh .deal-card .deal-price-row { align-items: baseline; gap: 9px 16px; }
body.reference-refresh .deal-card .deal-price { font: 600 27px/1.4 var(--sans); letter-spacing: -.035em; color: var(--reference-blue); }
body.reference-refresh .deal-card .deal-price small { font: 400 12px/1.7 var(--sans); letter-spacing: 0; color: var(--reference-muted); }
body.reference-refresh .deal-card .deal-status { border: 0; padding: 0; font-size: 11px; line-height: 1.75; color: #796347; }
body.reference-refresh .deal-card :is(.deal-condition, .deal-delivery) { font: 400 14px/1.85 var(--reference-serif); color: var(--reference-muted); margin: 12px 0 0; }
body.reference-refresh .deal-card .deal-permission { font: 400 12px/1.8 var(--sans); color: var(--reference-muted); margin: 10px 0 21px; }
body.reference-refresh .deal-card .deal-actions {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  gap: 5px;
  padding: 0;
  border: 0;
  margin: auto 0 0;
  align-items: stretch;
}
body.reference-refresh .deal-card .deal-actions > .text-link,
body.reference-refresh .deal-grid .deal-expired > .text-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 46px;
  padding: 12px 18px;
  background: var(--reference-blue);
  border: 1px solid var(--reference-blue);
  border-radius: 8px;
  color: #fff;
  font: 500 14px/1.5 var(--sans);
}
body.reference-refresh .deal-card .deal-source-details { width: 100%; order: initial; font-size: 12px; color: var(--reference-muted); }
body.reference-refresh .deal-card .deal-source-details > summary { min-height: 44px; justify-content: space-between; gap: 12px; font-size: 12px; }
body.reference-refresh .deal-card .deal-source-body { border-color: var(--reference-border); padding-top: 14px; font-size: 12px; line-height: 1.9; overflow-wrap: anywhere; }
body.reference-refresh .deal-card .deal-source-body a { min-height: 44px; display: inline-flex; align-items: center; color: var(--reference-blue); }
body.reference-refresh .deal-card .deal-image-note { font: 400 11px/1.8 var(--sans); color: var(--reference-muted); margin: 8px 0 0; }
body.reference-refresh .deal-grid .deal-expired { padding: 26px; min-height: 350px; }
body.reference-refresh .deal-grid .deal-expired > h3 { font-size: 18px; margin: 15px 0; }
body.reference-refresh .deal-grid .deal-expired > p:not(.eyebrow) { font: 400 14px/1.9 var(--reference-serif); margin-bottom: 24px; }
body.reference-refresh .deal-grid .deal-expired > .text-link { margin-top: auto; }

/* Project directory: the same silhouette, readable descriptions and one clear main CTA. */
body.reference-refresh .area-project-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; align-items: stretch; }
body.reference-refresh .area-project-card { display: flex; flex-direction: column; min-width: 0; padding: 0; background: #fff; border: 1px solid var(--reference-border); border-radius: 16px; overflow: hidden; box-shadow: var(--reference-shadow); }
body.reference-refresh .area-project-image { width: 100%; aspect-ratio: 3 / 2; flex-shrink: 0; border: 0; }
body.reference-refresh .area-project-credit { bottom: 10px; left: 12px; font-size: 10px; background: rgba(11, 63, 90, .86); padding: 4px 7px; border-radius: 4px; }
body.reference-refresh .area-project-copy { display: flex; flex-direction: column; padding: 22px; flex: 1; }
body.reference-refresh .area-project-location { font: 400 11px/1.8 var(--sans); color: var(--reference-muted); margin-bottom: 8px; }
body.reference-refresh .area-project-copy h3 { font: 600 18px/1.5 var(--sans); letter-spacing: -.015em; margin: 0 0 12px; }
body.reference-refresh .area-project-copy h3 a { color: var(--reference-navy); }
body.reference-refresh .area-project-summary { font: 400 14px/1.9 var(--reference-serif); color: var(--reference-muted); min-height: 0; margin-bottom: 14px; }
body.reference-refresh .area-project-categories { font-size: 12px; line-height: 1.8; color: var(--reference-muted); margin: 0 0 20px; }
body.reference-refresh .area-project-detail { display: flex; align-items: center; justify-content: center; min-height: 46px; background: var(--reference-blue); border: 1px solid var(--reference-blue); border-radius: 8px; color: #fff; font: 500 14px/1.5 var(--sans); padding: 11px 16px; margin-top: auto; }
body.reference-refresh .area-project-transactions { display: flex; justify-content: space-between; gap: 10px 18px; flex-wrap: wrap; margin: 11px 0 0; padding: 0; border: 0; }
body.reference-refresh .area-project-transactions a { min-height: 44px; color: var(--reference-blue); font-size: 12px; }
body.reference-refresh .area-search { background: #fff; border: 1px solid var(--reference-border); border-radius: 12px; box-shadow: var(--reference-shadow); }
body.reference-refresh .area-search :is(input[type="search"], select) { font-size: 16px; border-color: #b4c7cf; border-radius: 0; }
body.reference-refresh .area-nav-wrap { background: #fff; }
body.reference-refresh .area-nav a[aria-current="page"] { color: var(--reference-blue); }
body.reference-refresh .area-nav a[aria-current="page"]::after { background: var(--reference-blue); }
body.reference-refresh .area-empty { background: #fff; border-color: var(--reference-border); border-radius: 16px; }

/* Rental results retain their complete price, terms and source disclosures. */
body.reference-refresh .rental-search-section { background: var(--reference-warm); }
body.reference-refresh .rental-results { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; align-items: stretch; }
body.reference-refresh .rental-results .rental-product,
body.reference-refresh .project-body .rental-product {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  padding: 0;
  gap: 0;
  margin: 0;
  border: 1px solid var(--reference-border);
  border-radius: 16px;
  overflow: hidden;
  background: #fff;
  box-shadow: var(--reference-shadow);
}
body.reference-refresh .rental-product .product-photo { width: 100%; border-radius: 0; overflow: hidden; margin: 0; }
body.reference-refresh .rental-product .product-photo img { width: 100%; height: auto; min-height: 0; aspect-ratio: 3 / 2; object-fit: cover; }
body.reference-refresh .rental-product .product-photo figcaption { position: static; padding: 10px 24px 0; background: #fff; color: var(--reference-muted); font: 400 11px/1.8 var(--sans); }
body.reference-refresh .rental-product .product-content { display: flex; flex-direction: column; flex: 1; min-width: 0; padding: 19px 24px 24px; margin: 0; }
body.reference-refresh .rental-product .product-location { font: 400 11px/1.8 var(--sans); color: var(--reference-muted); letter-spacing: 0; margin-bottom: 10px; }
body.reference-refresh .rental-product .product-content h3 { font: 600 18px/1.55 var(--sans); letter-spacing: -.015em; color: var(--reference-navy); margin: 0 0 16px; text-wrap: initial; }
body.reference-refresh .rental-product .product-facts { font: 400 12px/1.8 var(--sans); gap: 6px 17px; margin: 0 0 18px; padding: 0 0 15px; border-bottom: 1px solid var(--reference-border); color: var(--reference-muted); }
body.reference-refresh .rental-product .product-facts li::before { background: #8196a1; }
body.reference-refresh .rental-product .product-price { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 5px 15px; margin-bottom: 10px; }
body.reference-refresh .rental-product .product-price > span { font: 400 12px/1.8 var(--sans); color: var(--reference-muted); }
body.reference-refresh .rental-product .product-price strong { font: 600 27px/1.4 var(--sans); color: var(--reference-blue); letter-spacing: -.03em; margin: 0; }
body.reference-refresh .rental-product .product-price small { font: 400 12px/1.8 var(--sans); letter-spacing: 0; }
body.reference-refresh .rental-product :is(.product-price-conditions, .owner-card-guidance) { font: 400 14px/1.9 var(--reference-serif); color: var(--reference-muted); margin: 4px 0 14px; }
body.reference-refresh .rental-product .product-status { font: 400 12px/1.8 var(--sans); color: #796347; padding: 0; border: 0; margin: 0 0 20px; }
body.reference-refresh .rental-product .product-actions { margin: auto 0 8px; padding-top: 6px; }
body.reference-refresh .rental-product .product-actions .conversion-button { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 46px; border-radius: 8px; font: 500 14px/1.5 var(--sans); padding: 12px 16px; background: var(--reference-blue); border-color: var(--reference-blue); color: #fff; }
body.reference-refresh .rental-product :is(.rental-details, .owner-example) { border-top: 0; padding-top: 0; color: var(--reference-muted); font-size: 12px; }
body.reference-refresh .rental-product :is(.rental-details, .owner-example) > summary { display: flex; align-items: center; justify-content: space-between; min-height: 44px; font: 400 12px/1.8 var(--sans); color: var(--reference-muted); }
body.reference-refresh .rental-product :is(.rental-details-body, .owner-example-body) { border-color: var(--reference-border); padding-top: 12px; font: 400 12px/1.9 var(--sans); }
body.reference-refresh .rental-product :is(.rental-details-body, .owner-example-body) :is(dt, dd, p, .market-source) { font-size: 12px; line-height: 1.9; }
body.reference-refresh .rental-product :is(.rental-details, .owner-example) a { color: var(--reference-blue); overflow-wrap: anywhere; }
body.reference-refresh .rental-product .market-source { border-color: var(--reference-border); }
body.reference-refresh .rental-filters-refined { background: #fff; border-color: var(--reference-border); border-radius: 12px; box-shadow: var(--reference-shadow); }
body.reference-refresh .rental-filters-refined .rental-primary-fields > label { border-color: var(--reference-border); }
body.reference-refresh .rental-filters-refined select { font-size: 16px; color: var(--reference-navy); }
body.reference-refresh .rental-filter-actions .conversion-button { min-height: 46px; background: var(--reference-blue); border-color: var(--reference-blue); font-size: 14px; border-radius: 8px; }
body.reference-refresh .rental-active-filters button { border-radius: 6px; border-color: #bed0d9; background: #fff; color: var(--reference-navy); min-height: 44px; font-size: 12px; }
body.reference-refresh .rental-empty { border-radius: 16px; background: #fff; border-color: var(--reference-border); }
body.reference-refresh .rental-empty h3 { font: 600 23px/1.5 var(--sans); }

/* The detail page uses the same family without inventing a photograph for text-only sales. */
body.reference-refresh .project-hero.editorial-cover { background: var(--reference-warm); }
body.reference-refresh .project-tabbar { background: #fff; border-color: var(--reference-border); }
body.reference-refresh .project-tabs button { min-height: 55px; font-size: 13px; }
body.reference-refresh .project-tabs button[aria-selected="true"] { border-color: var(--reference-blue); color: var(--reference-blue); font-weight: 600; }
body.reference-refresh .save-project { border-radius: 8px; border-color: var(--reference-border); color: var(--reference-navy); }
body.reference-refresh .save-project[aria-pressed="true"] { background: #e9f1f5; border-color: #98b8c8; }
body.reference-refresh .project-facts-card { border: 1px solid var(--reference-border); border-radius: 16px; box-shadow: var(--reference-shadow); background: #fff; }
body.reference-refresh .project-facts-card h3 { font-size: 20px; font-weight: 600; }
body.reference-refresh .project-overview #project-description { font: 400 15px/1.95 var(--reference-serif); }
body.reference-refresh .project-highlight { font-size: 14px; line-height: 1.85; }
body.reference-refresh .market-sale-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; align-items: stretch; }
body.reference-refresh .market-sale-card { display: flex; flex-direction: column; border: 1px solid var(--reference-border); border-radius: 16px; padding: 25px; background: #fff; box-shadow: var(--reference-shadow); }
body.reference-refresh .market-sale-card h4 { font: 600 18px/1.55 var(--sans); color: var(--reference-navy); letter-spacing: -.015em; margin: 12px 0 14px; }
body.reference-refresh .market-sale-summary { font: 400 14px/1.9 var(--reference-serif); }
body.reference-refresh .market-sale-card dl { margin-block: 18px 24px; }
body.reference-refresh .market-sale-card dt { font-size: 11px; }
body.reference-refresh .market-sale-card dd { font-size: 13px; }
body.reference-refresh .market-sale-card > .button { display: flex; width: 100%; margin: auto 0 7px; }
body.reference-refresh .market-sale-card > .rental-details { padding: 0; border: 0; font-size: 12px; }
body.reference-refresh .market-sale-card .rental-details > summary { display: flex; align-items: center; justify-content: space-between; min-height: 44px; font-size: 12px; }
body.reference-refresh .project-body [data-market-rent] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; }
body.reference-refresh .project-body [data-market-rent] > .market-sale-heading { grid-column: 1 / -1; margin-bottom: 0; }
body.reference-refresh .project-related { background: var(--reference-warm); }
body.reference-refresh .related-grid { align-items: stretch; }
body.reference-refresh .related-card { display: flex; flex-direction: column; border: 1px solid var(--reference-border); border-radius: 16px; overflow: hidden; background: #fff; box-shadow: var(--reference-shadow); }
body.reference-refresh .related-card > a:first-child { display: block; }
body.reference-refresh .related-card img { aspect-ratio: 3 / 2; }
body.reference-refresh .related-card h3 { margin: 20px 22px 0; font: 600 18px/1.5 var(--sans); }
body.reference-refresh .related-card > p { margin: 12px 22px 20px; font: 400 14px/1.9 var(--reference-serif); }
body.reference-refresh .related-card > a:last-child { display: flex; justify-content: center; align-items: center; margin: auto 22px 22px; border: 1px solid var(--reference-blue); border-radius: 8px; min-height: 46px; padding: 11px 16px; font: 500 14px/1.5 var(--sans); background: var(--reference-blue); color: #fff; }
body.reference-refresh :is(.inventory-empty, .coverage-status, .project-inquiry) { border: 1px solid var(--reference-border); border-radius: 12px; background: #fff; }
body.reference-refresh :is(.project-inquiry textarea, .home-inquiry-form input, .home-inquiry-form select, .home-inquiry-form textarea, .draft-workspace input, .draft-workspace select, .draft-workspace textarea) { font-size: 16px; border-radius: 6px; }

@media (hover: hover) {
  body.reference-refresh :is(.button.primary, .conversion-button, .header-contact):hover,
  body.reference-refresh .deal-card .deal-actions > .text-link:hover,
  body.reference-refresh .area-project-detail:hover,
  body.reference-refresh .rental-product .product-actions .conversion-button:hover,
  body.reference-refresh .related-card > a:last-child:hover { background: #155271; border-color: #155271; color: #fff; }
  body.reference-refresh .button.secondary:hover { background: #eef5f8; border-color: var(--reference-blue); color: var(--reference-blue); }
}
@media (max-width: 1280px) {
  body.reference-refresh .header-contact { display: none; }
}
@media (max-width: 1050px) {
  body.reference-refresh .deal-grid { gap: 20px; }
  body.reference-refresh .deal-card > .deal-media { flex-basis: 200px; min-height: 200px; height: 200px; }
  body.reference-refresh .deal-card .deal-copy { padding: 20px 18px 17px; }
  body.reference-refresh .deal-card .deal-price { font-size: 24px; }
  body.reference-refresh .area-project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
}
@media (max-width: 760px) {
  body.reference-refresh { font-size: 14px; }
  body.reference-refresh .site-header .brand { font-size: 25px; }
  body.reference-refresh .section-display,
  body.reference-refresh .conversion-section-head h2 { font-size: 27px; line-height: 1.45; }
  body.reference-refresh .deal-grid,
  body.reference-refresh .rental-results,
  body.reference-refresh .market-sale-grid,
  body.reference-refresh .project-body [data-market-rent] { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  body.reference-refresh .deal-card > .deal-media { flex-basis: auto; min-height: 0; height: auto; aspect-ratio: 3 / 2; }
  body.reference-refresh .deal-card .deal-copy { padding: 22px 21px 18px; }
  body.reference-refresh .deal-card .deal-copy h3 { font-size: 18px; }
  body.reference-refresh .deal-card .deal-price { font-size: 27px; }
  body.reference-refresh .deal-card .deal-price small { font-size: 12px; }
  body.reference-refresh .deal-card .deal-status { font-size: 11px; }
  body.reference-refresh .deal-card :is(.deal-condition, .deal-delivery) { font-size: 14px; }
  body.reference-refresh .deal-card .deal-permission { font-size: 12px; }
  body.reference-refresh .deal-card .deal-actions > .text-link { font-size: 14px; min-height: 46px; }
  body.reference-refresh .deal-card .deal-source-details > summary { font-size: 12px; }
  body.reference-refresh .deal-card .deal-image-note { font-size: 11px; }
  body.reference-refresh .rental-product .product-content { padding: 20px 21px 22px; }
  body.reference-refresh .rental-product .product-photo figcaption { padding-inline: 21px; }
  body.reference-refresh .rental-product .product-content h3 { font-size: 18px; }
  body.reference-refresh .rental-product .product-price strong { font-size: 27px; }
  body.reference-refresh .rental-product .product-price small { font-size: 12px; }
  body.reference-refresh .rental-product .product-actions .conversion-button { font-size: 14px; min-height: 46px; }
  body.reference-refresh .rental-filter-actions .conversion-button { font-size: 13px; min-height: 46px; }
  body.reference-refresh .project-tabs { overflow-x: auto; justify-content: flex-start; gap: 22px; }
  body.reference-refresh .project-tabs button { font-size: 12px; }
  body.reference-refresh .project-facts-card { padding: 24px; }
  body.reference-refresh .market-sale-card { padding: 22px; }
  body.reference-refresh .market-sale-card h4 { font-size: 18px; }
  body.reference-refresh :is(.rental-filters-refined select, .area-search input[type="search"], .area-search select, .project-inquiry textarea, .home-inquiry-form input, .home-inquiry-form select, .home-inquiry-form textarea, .draft-workspace input, .draft-workspace select, .draft-workspace textarea) { font-size: 16px; }
}
@media (max-width: 520px) {
  body.reference-refresh .area-project-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  body.reference-refresh .area-project-copy { padding: 22px 21px 17px; }
  body.reference-refresh .area-project-copy h3 { font-size: 18px; }
  body.reference-refresh .area-project-summary { font-size: 14px; }
  body.reference-refresh .area-project-detail,
  body.reference-refresh .area-project-transactions a { min-height: 44px; }
}

/* Area discovery and photographic project stories, adapted for real estate. */
body.reference-refresh .destination-section{padding:105px 0 110px;background:#fff;overflow:hidden}
body.reference-refresh .destination-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:100px;align-items:center}
body.reference-refresh .destination-preview{width:100%;max-width:455px;padding:10px 18px 0 10px;margin:0 auto;isolation:isolate}
body.reference-refresh .destination-polaroid{position:relative;z-index:0;background:#fff;padding:12px 12px 18px;box-shadow:0 19px 40px #463d2c25;transform:rotate(-2deg)}
body.reference-refresh .destination-polaroid::before,body.reference-refresh .destination-polaroid::after{content:"";position:absolute;inset:0;background:#f4f0e8;box-shadow:0 14px 30px #463d2c1c;z-index:-1;transform:rotate(5deg) translate(9px,9px)}
body.reference-refresh .destination-polaroid::after{transform:rotate(-1deg) translate(-5px,15px);background:#fff;z-index:-2}
body.reference-refresh .destination-photo{height:410px;overflow:hidden;background:#e7edf0}
body.reference-refresh .destination-description{display:block;margin:0;padding:15px 5px 0;min-height:76px}
body.reference-refresh .destination-description h3{font:600 16px/1.6 var(--sans);margin:0;letter-spacing:0}
body.reference-refresh .destination-description p{font:400 12px/1.8 var(--reference-serif);color:var(--muted);margin:3px 0 0}
body.reference-refresh .destination-credit{font-size:10px;line-height:1.8;text-align:center;margin:32px 0 0;padding-inline:12px}
body.reference-refresh .destination-choice>.eyebrow,body.reference-refresh .project-stories-heading .eyebrow{color:var(--reference-blue);letter-spacing:.13em;display:flex;align-items:center;gap:12px;margin:0 0 22px}
body.reference-refresh .destination-choice>.eyebrow::before,body.reference-refresh .project-stories-heading .eyebrow::before{content:"";width:28px;height:1px;background:currentColor;flex:none}
body.reference-refresh .destination-choice h2{font-size:34px;line-height:1.45;max-width:440px;margin:0 0 18px}
body.reference-refresh .destination-lead{font:400 16px/1.9 var(--reference-serif);color:var(--reference-navy);margin:0 0 15px}
body.reference-refresh .destination-summary{font:400 13px/1.9 var(--sans);color:var(--muted);min-height:74px;margin:0 0 22px;max-width:480px}
body.reference-refresh .destination-label{font:500 10px/1.7 var(--sans);letter-spacing:.15em;color:#8b6d52;margin:0 0 13px}
body.reference-refresh .destination-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;border:0;order:initial;width:100%}
body.reference-refresh .destination-tab,body.reference-refresh .destination-tab[aria-selected=true]{display:grid;grid-template-columns:40px minmax(0,1fr) 14px;gap:9px;align-items:center;justify-content:initial;text-align:left;min-height:76px;padding:11px 10px;border:1px solid var(--reference-border);border-radius:8px;background:#fff;transition:background-color .2s,border-color .2s}
body.reference-refresh .destination-tab:last-child{grid-column:1/-1}
body.reference-refresh .destination-tab img{width:40px;height:40px;object-fit:cover;border-radius:50%}
body.reference-refresh .destination-tab strong{font:500 12px/1.7 var(--sans);letter-spacing:0}
body.reference-refresh .destination-tab small{display:block;font:400 9px/1.7 var(--reference-serif);margin:1px 0 0;color:var(--muted)}
body.reference-refresh .destination-radio{height:13px;width:13px;border-radius:50%;border:1px solid #b2c6cf;position:relative}
body.reference-refresh .destination-tab[aria-selected=true]{background:#f6f7f7;border-color:var(--reference-blue)}
body.reference-refresh .destination-tab[aria-selected=true] .destination-radio{border-color:var(--reference-blue)}
body.reference-refresh .destination-tab[aria-selected=true] .destination-radio::after{content:"";position:absolute;inset:2px;background:var(--reference-blue);border-radius:50%}
body.reference-refresh .destination-tab:hover{background:#f1f6f8;border-color:#92afbf}
body.reference-refresh .destination-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:28px;margin-top:29px;padding:13px 27px}
body.reference-refresh .project-stories{padding:95px 0 90px;background:var(--reference-warm)}
body.reference-refresh .project-stories-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:38px}
body.reference-refresh .project-stories-heading h2{font-size:29px;line-height:1.5;margin:0}
body.reference-refresh .project-stories-heading .eyebrow{margin-bottom:18px}
body.reference-refresh .project-stories-heading .text-link{font-size:12px;flex:none;min-height:44px}
body.reference-refresh .project-stories-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
body.reference-refresh .project-story{display:flex;align-items:center;justify-content:center;position:relative;aspect-ratio:1/1.06;overflow:hidden;border-radius:8px;color:#fff;text-align:center;background:#0b3f5a}
body.reference-refresh .project-story::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#061e2b08,#061e2b65 40%,#061e2bd9)}
body.reference-refresh .project-story>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
body.reference-refresh .project-story>div{position:relative;z-index:1;width:100%;padding:26px}
body.reference-refresh .project-story p{font:500 9px/1.8 var(--sans);letter-spacing:.1em;color:#fff;margin:0 0 13px}
body.reference-refresh .project-story h3{font:600 25px/1.5 var(--sans);color:#fff;margin:0;letter-spacing:-.02em}
body.reference-refresh .project-story span{display:inline-block;font-size:11px;line-height:1.8;border-bottom:1px solid #ffffff8c;margin-top:26px;padding-bottom:3px}
body.reference-refresh .project-stories-credit{font-size:10px;color:var(--muted);margin:18px 0 0;line-height:1.8}
body.reference-refresh .consultation-band{background:#fff;color:var(--reference-navy)}
body.reference-refresh .consultation-story h2.section-display{font-family:var(--sans);font-size:34px;line-height:1.5;color:var(--reference-navy)}
body.reference-refresh .consultation-story>p:not(.eyebrow){font:400 15px/1.9 var(--reference-serif);color:var(--reference-muted)}
body.reference-refresh .consultation-story>.eyebrow{color:var(--reference-blue)}
body.reference-refresh .consultation-story .consult-channel{border-color:var(--reference-border)}
body.reference-refresh .consultation-story .consult-phone{color:var(--reference-navy)}
body.reference-refresh .home-inquiry-form{background:var(--reference-warm);border:1px solid var(--reference-border);border-radius:12px;box-shadow:0 5px 24px #052a3a08}
body.reference-refresh .home-inquiry-form label{font-size:12px}
body.reference-refresh .home-inquiry-form .soft-note{font-size:11px;line-height:1.9}
body.reference-refresh .home-inquiry-form .button{font-size:13px}
@media(hover:hover){body.reference-refresh .project-story:hover>img{transform:scale(1.035)}}
@media(max-width:1100px){body.reference-refresh .destination-layout{gap:55px}body.reference-refresh .destination-photo{height:370px}body.reference-refresh .destination-choice h2{font-size:30px}body.reference-refresh .destination-tab,body.reference-refresh .destination-tab[aria-selected=true]{grid-template-columns:34px minmax(0,1fr) 12px;gap:7px;padding:10px 8px}body.reference-refresh .destination-tab img{width:34px;height:34px}body.reference-refresh .destination-tab strong{font-size:11px}body.reference-refresh .project-story h3{font-size:22px}}
@media(max-width:900px){body.reference-refresh .destination-layout{gap:36px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}body.reference-refresh .destination-photo{height:340px}body.reference-refresh .destination-choice h2{font-size:27px}body.reference-refresh .destination-tabs{grid-template-columns:1fr}body.reference-refresh .destination-tab,body.reference-refresh .destination-tab[aria-selected=true]{min-height:60px;grid-template-columns:36px minmax(0,1fr) 14px}body.reference-refresh .destination-tab small{font-size:10px}body.reference-refresh .destination-tab strong{font-size:12px}body.reference-refresh .destination-summary{min-height:0}body.reference-refresh .project-stories-heading h2{font-size:26px}body.reference-refresh .project-stories-grid{gap:18px}body.reference-refresh .project-story>div{padding:18px}body.reference-refresh .project-story h3{font-size:19px}}
@media(max-width:760px){body.reference-refresh .destination-section{padding:58px 0 64px}body.reference-refresh .destination-layout{display:flex;flex-direction:column;gap:45px}body.reference-refresh .destination-preview{max-width:380px;order:1;padding-inline:12px}body.reference-refresh .destination-choice{order:0;width:100%}body.reference-refresh .destination-choice>.eyebrow{margin-bottom:18px;font-size:10px}body.reference-refresh .destination-choice h2{font-size:27px;max-width:none}body.reference-refresh .destination-lead{font-size:15px}body.reference-refresh .destination-summary{font-size:12px;margin-bottom:22px}body.reference-refresh .destination-tabs{order:initial;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}body.reference-refresh .destination-tab,body.reference-refresh .destination-tab[aria-selected=true]{grid-template-columns:34px minmax(0,1fr) 12px;min-height:75px;gap:7px;padding:10px 8px}body.reference-refresh .destination-tab strong{font-size:11px}body.reference-refresh .destination-tab small{font-size:9px}body.reference-refresh .destination-photo{height:330px}body.reference-refresh .destination-description{padding-top:14px}body.reference-refresh .destination-description h3{font-size:16px}body.reference-refresh .destination-credit{font-size:9px}body.reference-refresh .destination-cta{width:100%;margin-top:23px}body.reference-refresh .project-stories{padding:57px 0}body.reference-refresh .project-stories-heading{display:block;margin-bottom:27px}body.reference-refresh .project-stories-heading h2{font-size:26px}body.reference-refresh .project-stories-heading .text-link{margin-top:16px}body.reference-refresh .project-stories-grid{grid-template-columns:1fr;gap:20px}body.reference-refresh .project-story{aspect-ratio:1.1}body.reference-refresh .project-story h3{font-size:26px}body.reference-refresh .project-story p{font-size:10px}body.reference-refresh .consultation-story h2.section-display{font-size:28px}body.reference-refresh .consultation-story>p:not(.eyebrow){font-size:14px}body.reference-refresh .home-inquiry-form .button{font-size:13px}body.reference-refresh .home-inquiry-form .soft-note{font-size:11px}}
@media(max-width:360px){body.reference-refresh .destination-tab,body.reference-refresh .destination-tab[aria-selected=true]{grid-template-columns:28px minmax(0,1fr) 10px;gap:5px;padding:8px 6px}body.reference-refresh .destination-tab img{width:28px;height:28px}body.reference-refresh .destination-tab strong{font-size:10px}body.reference-refresh .destination-tab small{font-size:8px}body.reference-refresh .destination-radio{width:10px;height:10px}body.reference-refresh .destination-photo{height:280px}}
@media(prefers-reduced-motion:reduce){body.reference-refresh .project-story>img,body.reference-refresh .destination-tab{transition:none}body.reference-refresh .project-story:hover>img{transform:none}}
@media(min-width:761px) and (max-width:900px){body.reference-refresh .deal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* CoastalViet shared footer: Le Palmier-inspired depth and three-column hierarchy. */
.site-footer.palm-footer{background:#0b3f5a;color:#f0eee6;border-top:0;padding:64px 0 25px;font-family:var(--sans,'Be Vietnam Pro',Arial,sans-serif)}
.palm-footer .container{width:min(calc(100% - 96px),1280px);max-width:1280px;margin-inline:auto}
.palm-footer .palm-footer-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.9fr) minmax(0,2.6fr);gap:50px;padding-bottom:54px;align-items:start}
.palm-footer .palm-footer-brand{min-width:0}
.palm-footer .palm-footer-wordmark,.palm-footer .palm-footer-brand>a.brand{display:inline-block;font-family:'Noto Serif',Georgia,serif;font-size:34px;font-weight:400;line-height:1.2;letter-spacing:-.055em;white-space:nowrap;color:#f0eee6}
.palm-footer .palm-footer-brand>a.brand small{display:none}
.palm-footer .palm-footer-brand>p{font-family:'Noto Serif',Georgia,serif;font-size:15px;font-weight:400;line-height:1.9;color:#d1dfe2;max-width:292px;margin:23px 0 0}
.palm-footer .palm-footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-top:22px}
.palm-footer .palm-footer-contact>a{display:inline-flex;align-items:center;min-height:39px;max-width:100%;padding:5px 0;color:#f0eee6;font-family:var(--sans,'Be Vietnam Pro',Arial,sans-serif);font-size:13px;line-height:1.8}
.palm-footer .palm-footer-contact>a[href^="tel:"]{font-size:14px;letter-spacing:.025em;white-space:nowrap}
.palm-footer .palm-footer-contact>a[href*="zalo.me"]{color:#ded0b6;border-bottom:1px solid #ded0b66b}
.palm-footer .palm-footer-contact>a:hover{color:#e0c49c;border-bottom-color:#e0c49c}
.palm-footer .palm-footer-nav{min-width:0}
.palm-footer .palm-footer-nav>h2,.palm-footer .palm-footer-family>h2{font-family:var(--sans,'Be Vietnam Pro',Arial,sans-serif);font-size:13px;font-weight:500;line-height:1.7;letter-spacing:.12em;text-transform:uppercase;color:#f0eee6;margin:4px 0 23px}
.palm-footer .palm-footer-nav>a{display:flex;align-items:center;width:fit-content;max-width:100%;min-height:40px;padding:6px 0;font-size:13px;line-height:1.8;color:#d1dfe2}
.palm-footer .palm-footer-nav>a:hover{color:#e0c49c}
.palm-footer .palm-footer-family{min-width:0}
.palm-footer .palm-footer-brands{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:29px 36px}
.palm-footer .palm-footer-brands>article{min-width:0}
.palm-footer .palm-footer-brands h3{font-family:'Noto Serif',Georgia,serif;font-size:20px;font-weight:400;line-height:1.5;letter-spacing:-.025em;color:#f0eee6;margin:0 0 7px}
.palm-footer .palm-footer-brands article>p{font-family:'Noto Serif',Georgia,serif;font-size:15px;font-weight:400;line-height:1.9;color:#c2d5da;max-width:255px;margin:0}
.palm-footer .palm-footer-brands article>nav{display:flex;flex-wrap:wrap;align-items:center;gap:0 21px;margin-top:7px}
.palm-footer .palm-footer-brands article>nav>a{display:inline-flex;align-items:center;min-height:40px;padding:5px 0;font-family:var(--sans,'Be Vietnam Pro',Arial,sans-serif);font-size:13px;line-height:1.8;color:#ded0b6;text-decoration:underline;text-decoration-color:#ded0b66b;text-decoration-thickness:1px;text-underline-offset:5px;white-space:nowrap}
.palm-footer .palm-footer-brands article>nav>a:hover{color:#e0c49c;text-decoration-color:#e0c49c}
.palm-footer .palm-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:14px 35px;border-top:1px solid #e1e7df33;padding-top:21px;color:#b7ccd1;font-size:9px;line-height:1.9}
.palm-footer .palm-footer-bottom>p{font-family:var(--sans,'Be Vietnam Pro',Arial,sans-serif);font-size:9px;line-height:1.9;color:#b7ccd1;margin:0}
.palm-footer .palm-footer-bottom>a{display:inline-flex;align-items:center;min-height:30px;padding:3px 0;color:#ded0b6;font-size:10px;line-height:1.8}
.palm-footer .palm-footer-bottom>a:hover{color:#e0c49c;text-decoration:underline;text-underline-offset:4px}
.palm-footer a:focus-visible{outline-color:#e0c49c}

@media(max-width:1100px){
  .palm-footer .container{width:calc(100% - 64px)}
  .palm-footer .palm-footer-grid{gap:35px}
  .palm-footer .palm-footer-wordmark,.palm-footer .palm-footer-brand>a.brand{font-size:31px}
  .palm-footer .palm-footer-brand>p{font-size:14px;line-height:1.9}
  .palm-footer .palm-footer-brands{gap:29px 25px}
  .palm-footer .palm-footer-brands h3{font-size:18px}
  .palm-footer .palm-footer-brands article>p{font-size:14px}
  .palm-footer .palm-footer-brands article>nav{gap:0 16px}
  .palm-footer .palm-footer-brands article>nav>a{font-size:12px}
}

@media(max-width:900px) and (min-width:761px){
  .site-footer.palm-footer{padding-top:51px}
  .palm-footer .palm-footer-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:42px 80px;padding-bottom:42px}
  .palm-footer .palm-footer-brand>p{max-width:360px}
  .palm-footer .palm-footer-family{grid-column:1/-1;border-top:1px solid #e1e7df33;padding-top:31px}
  .palm-footer .palm-footer-brands{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 60px}
  .palm-footer .palm-footer-brands h3{font-size:20px}
  .palm-footer .palm-footer-brands article>p{font-size:14px}
  .palm-footer .palm-footer-brands article>nav>a{font-size:12px}
}

@media(max-width:760px){
  .site-footer.palm-footer{padding:43px 0 21px}
  .palm-footer .container{width:calc(100% - 40px)}
  .palm-footer .palm-footer-grid{display:grid;grid-template-columns:1fr;gap:30px;padding-bottom:34px}
  .palm-footer .palm-footer-wordmark,.palm-footer .palm-footer-brand>a.brand{font-size:33px}
  .palm-footer .palm-footer-brand>p{font-size:14px;line-height:1.95;max-width:430px;margin-top:19px}
  .palm-footer .palm-footer-contact{flex-direction:row;align-items:center;flex-wrap:wrap;gap:0 25px;margin-top:16px}
  .palm-footer .palm-footer-contact>a{min-height:40px;font-size:12px}
  .palm-footer .palm-footer-contact>a[href^="tel:"]{font-size:13px}
  .palm-footer .palm-footer-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:25px;padding-top:25px;border-top:1px solid #e1e7df33}
  .palm-footer .palm-footer-nav>h2{grid-column:1/-1;margin:0 0 13px;font-size:11px;letter-spacing:.1em}
  .palm-footer .palm-footer-nav>a{font-size:12px;min-height:40px}
  .palm-footer .palm-footer-family{padding-top:25px;border-top:1px solid #e1e7df33}
  .palm-footer .palm-footer-family>h2{font-size:11px;letter-spacing:.1em;margin:0 0 21px}
  .palm-footer .palm-footer-brands{gap:26px 24px}
  .palm-footer .palm-footer-brands h3{font-size:18px;margin-bottom:7px}
  .palm-footer .palm-footer-brands article>p{font-size:13px;line-height:1.85}
  .palm-footer .palm-footer-brands article>nav{gap:0 15px;margin-top:5px}
  .palm-footer .palm-footer-brands article>nav>a{min-height:40px;font-size:11px}
  .palm-footer .palm-footer-bottom{align-items:flex-start;gap:8px 24px;padding-top:17px;font-size:8px}
  .palm-footer .palm-footer-bottom>p{font-size:8px;max-width:220px}
  .palm-footer .palm-footer-bottom>a{font-size:9px;min-height:30px;white-space:nowrap}
}

@media(max-width:360px){
  .palm-footer .palm-footer-wordmark,.palm-footer .palm-footer-brand>a.brand{font-size:31px}
  .palm-footer .palm-footer-brands{gap:25px 20px}
  .palm-footer .palm-footer-brands h3{font-size:17px}
  .palm-footer .palm-footer-brands article>p{font-size:12px}
  .palm-footer .palm-footer-brands article>nav{gap:0 12px}
  .palm-footer .palm-footer-brands article>nav>a{font-size:10px}
  .palm-footer .palm-footer-bottom{flex-direction:column;gap:5px}
  .palm-footer .palm-footer-bottom>p{max-width:100%}
}
