/* Live Todos Santos architecture layer — ARCH-IA-v1 */

/* One footer hierarchy, preserving the established palette and type system. */
footer .footer-groups{
  grid-template-columns: 1.15fr 1.15fr 1fr .9fr;
}
footer .footer-group{ min-width: 0; }
footer .footer-group h2{ margin-bottom: 14px; }
footer .footer-group a{ min-height: 36px; }

/* One semantic breadcrumb component; route-specific classes retain spacing. */
.site-breadcrumbs a{ text-underline-offset: 4px; }
.site-breadcrumbs [aria-current="page"]{ color: var(--ink); }

/* Guides index */
.ia-page{ background: var(--paper); color: var(--ink); }
.ia-main{ padding-top: 76px; }
.ia-main>.site-breadcrumbs{
  max-width: none; margin: 0; padding: 22px var(--gutter);
  border-bottom: 1px solid var(--line);
}
.ia-hero{
  display: grid; grid-template-columns: minmax(0,1.05fr) minmax(360px,.95fr);
  min-height: min(760px,82vh); border-bottom: 1px solid var(--line);
}
.ia-hero-copy{ min-width: 0; padding: clamp(72px,9vw,148px) var(--gutter) clamp(68px,8vw,120px); align-self: end; }
.ia-kicker{ display: block; margin-bottom: 24px; }
.ia-hero h1{ max-width: 10ch; margin: 0; font-size: clamp(58px,8.6vw,132px); line-height: .89; letter-spacing: -.045em; }
.ia-hero h1 i{ color: var(--terra); font-style: italic; }
.ia-lede{ max-width: 56ch; margin: 34px 0 0; color: var(--ink-60); font-size: clamp(18px,2vw,24px); line-height: 1.52; }
.ia-hero-media{ position: relative; min-width: 0; min-height: 520px; margin: 0; overflow: hidden; background: var(--paper-2); }
.ia-hero-media img{ display: block; width: 100%; height: 100%; object-fit: cover; }
.ia-caption{ position: absolute; right: 20px; bottom: 18px; max-width: calc(100% - 40px); padding: 8px 10px; background: rgba(24,22,18,.72); color: var(--paper); font-family: var(--mono); font-size: 9px; line-height: 1.35; letter-spacing: .1em; text-align: right; text-transform: uppercase; }
.ia-jump{ display: flex; flex-wrap: wrap; gap: 10px; padding: 22px var(--gutter); border-bottom: 1px solid var(--line); }
.ia-jump a{ min-height: 42px; display: inline-flex; align-items: center; padding: 0 16px; border: 1px solid var(--line); border-radius: 999px; font-family: var(--mono); font-size: 10px; letter-spacing: .11em; text-transform: uppercase; }
.ia-jump a:hover{ border-color: var(--ink); background: var(--ink); color: var(--paper); }
.ia-section{ padding: clamp(72px,10vw,150px) var(--gutter); border-bottom: 1px solid var(--line); }
.ia-section-head{ display: grid; grid-template-columns: minmax(0,.55fr) minmax(0,1fr); gap: 42px; align-items: end; margin-bottom: 52px; }
.ia-section h2{ max-width: 12ch; margin: 0; font-size: clamp(40px,5.5vw,76px); line-height: .98; letter-spacing: -.035em; }
.ia-section h2 i{ color: var(--terra); font-style: italic; }
.ia-section-intro{ max-width: 58ch; margin: 0; color: var(--ink-60); font-size: 17px; }
.ia-card-grid{ display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.ia-card{ min-height: 220px; padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; transition: background .25s,color .25s; }
.ia-card:hover{ background: var(--ink); color: var(--paper); }
.ia-card .n{ color: var(--terra); }
.ia-card h3{ margin: 36px 0 12px; font-size: clamp(24px,2.4vw,34px); line-height: 1.02; }
.ia-card p{ margin: 0; color: var(--ink-60); font-size: 14.5px; line-height: 1.55; }
.ia-card:hover p{ color: rgba(250,248,243,.72); }

/* Sales context shell */
.market-principles{ display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.market-principles article{ padding: 28px; background: var(--paper); }
.market-principles h3{ margin: 18px 0 10px; font-size: 28px; }
.market-principles p{ margin: 0; color: var(--ink-60); }
.market-snapshots{ display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 28px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.market-snapshot{ padding: 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.market-snapshot strong,.market-snapshot>span:last-child{ display: block; margin-top: 12px; }
.market-snapshot strong{ font-family: var(--serif); font-size: 28px; font-weight: 400; }
.market-areas{ display: grid; gap: 0; border-top: 1px solid var(--line); }
.market-area{ display: grid; grid-template-columns: minmax(220px,.6fr) minmax(0,1fr); gap: 50px; padding: 44px 0; border-bottom: 1px solid var(--line); scroll-margin-top: 100px; }
.market-area h3{ margin: 0; font-size: clamp(32px,4vw,54px); }
.market-area p{ max-width: 62ch; margin: 0; color: var(--ink-60); }
.market-status{ margin-top: 18px; padding: 18px 20px; border-left: 2px solid var(--terra); background: var(--paper-2); }
.market-actions{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.market-actions a{ min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 0 20px; border: 1px solid var(--ink); font-family: var(--mono); font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; }
.market-actions a:first-child{ background: var(--ink); color: var(--paper); }
.market-actions a:hover{ background: var(--terra); border-color: var(--terra); color: var(--paper); }
.sales-context{ margin: clamp(56px,7vw,92px) 0 0; padding: clamp(28px,4vw,44px); border: 1px solid var(--line); background: var(--paper-2); }
.sales-context .lbl{ display: block; margin-bottom: 14px; }
.sales-context h2{ margin: 0 0 14px; font-size: clamp(28px,3.2vw,44px); }
.sales-context p{ max-width: 68ch; margin: 0 0 22px; color: var(--ink-60); }
.sales-context a{ font-family: var(--mono); font-size: 10.5px; letter-spacing: .1em; text-transform: uppercase; border-bottom: 1px solid var(--ink); }
.context-links{ display: flex; flex-wrap: wrap; gap: 14px 24px; }
.tryfirst.sold-image-only{ grid-template-columns: 1fr; padding: 0; background: transparent; border: 0; gap: 0; }
.tryfirst.sold-image-only .phf{ aspect-ratio: 16/7; }
.area-sales-context{ margin: clamp(56px,7vw,92px) 0 0; }
.market-record-list{ display: grid; gap: 0; margin: 18px 0 0; padding: 0; list-style: none; }
.market-record-list li{ display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 18px; align-items: baseline; padding: 12px 0; border-bottom: 1px solid var(--line); }
.market-record-list a{ text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.market-record-list span{ font-family: var(--mono); font-size: 10px; letter-spacing: .08em; color: var(--ink-60); }
.market-empty{ margin-top: 18px; color: var(--ink-60); }

@media (max-width: 960px){
  .ia-main{ padding-top: 68px; }
  .ia-hero{ grid-template-columns: 1fr; }
  .ia-hero-copy{ order: 2; }
  .ia-hero-media{ min-height: 54vw; max-height: 560px; }
  .ia-card-grid{ grid-template-columns: repeat(2,minmax(0,1fr)); }
  footer .footer-groups{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 620px){
  .ia-hero-media{ min-height: 64vw; }
  .ia-section-head,.market-area{ grid-template-columns: 1fr; gap: 20px; }
  .ia-card-grid,.market-principles,.market-snapshots{ grid-template-columns: 1fr; }
  .ia-card{ min-height: 190px; }
  footer .footer-groups{ grid-template-columns: 1fr 1fr; gap: 30px 22px; }
}
