/* newwestcondos.ca layer. Colours and type come from the parent theme.json. */

/* Hero */
.nwc-hero { padding-block: clamp(3rem, 8vw, 6.5rem); }
.nwc-hero h1 { max-width: 18ch; line-height: 1.05; }
.nwc-hero p.nwc-hero__lede { max-width: 46ch; }

/* Neighbourhood cards */
.nwc-cards { display: grid; gap: var(--wp--preset--spacing--30); grid-template-columns: 1fr; }
@media (min-width: 720px) { .nwc-cards { grid-template-columns: repeat(3, 1fr); } }
.nwc-card {
  display: block; padding: var(--wp--preset--spacing--30);
  border: 1px solid var(--wp--preset--color--line); border-radius: 8px;
  text-decoration: none; color: inherit; background: var(--wp--preset--color--base);
  transition: border-color .15s ease, box-shadow .15s ease;
}
.nwc-card:hover, .nwc-card:focus-visible { border-color: var(--wp--preset--color--navy); box-shadow: 0 6px 24px rgba(0,37,88,.08); }
.nwc-card h3 { margin: 0 0 .5rem; color: var(--wp--preset--color--navy); }
.nwc-card p { margin: 0; color: var(--wp--preset--color--muted); }
.nwc-card span.nwc-card__more { display: inline-block; margin-top: .9rem; font-weight: 600; color: var(--wp--preset--color--accent); }

/* Team */
.alhst-team { display: grid; gap: var(--wp--preset--spacing--40); grid-template-columns: 1fr; }
@media (min-width: 720px) { .alhst-team { grid-template-columns: 1fr 1fr; } }
.alhst-team__photo { width: 100%; max-width: 360px; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 8px; background: var(--wp--preset--color--surface); }
.alhst-team__name { margin: var(--wp--preset--spacing--20) 0 .25rem; }
.alhst-team__role { margin: 0 0 .75rem; font-size: var(--wp--preset--font-size--sm); color: var(--wp--preset--color--muted); }
.alhst-team__contact a { font-weight: 600; }

/* Lead form */
.alhst-lead-form { display: grid; gap: .25rem 1.25rem; grid-template-columns: 1fr; max-width: 720px;
  padding: var(--wp--preset--spacing--30); background: var(--wp--preset--color--surface); border-radius: 8px; }
@media (min-width: 640px) { .alhst-lead-form { grid-template-columns: 1fr 1fr; } }
.alhst-lead-form > p { margin: 0 0 .75rem; }
.alhst-lead-form__field--message, .alhst-lead-form__field--property, .alhst-lead-form__consent,
.alhst-lead-form__error, .alhst-lead-form > p:last-child { grid-column: 1 / -1; }
.alhst-lead-form label { display: block; font-weight: 600; font-size: var(--wp--preset--font-size--sm); margin-bottom: .3rem; }
.alhst-lead-form__consent label { font-weight: 400; }
.alhst-lead-form input[type=text], .alhst-lead-form input[type=email], .alhst-lead-form input[type=tel],
.alhst-lead-form select, .alhst-lead-form textarea {
  width: 100%; box-sizing: border-box; padding: .7rem .8rem; font: inherit;
  border: 1px solid var(--wp--preset--color--line-strong); border-radius: 6px; background: #fff; }
.alhst-lead-form input:focus, .alhst-lead-form select:focus, .alhst-lead-form textarea:focus { border-color: var(--wp--preset--color--navy); }
.alhst-lead-form button { cursor: pointer; }
.alhst-lead-form__error { padding: .75rem 1rem; border-left: 3px solid var(--wp--preset--color--accent); background: var(--wp--preset--color--accent-tint); }
.alhst-lead-form__hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* Reviewed line */
.alhst-reviewed { color: var(--wp--preset--color--muted); border-top: 1px solid var(--wp--preset--color--line); padding-top: var(--wp--preset--spacing--20); margin-top: var(--wp--preset--spacing--40); }

/* Footer compliance text */
.nwc-legal { opacity: .85; }
