/* Focused refinements for coverage, projects and Why LM. */
.page-areas .town-heading { grid-template-columns: 1fr 1fr; gap:32px; align-items:center; margin-bottom:32px; }
.page-areas .town-heading h2 { font-size:clamp(2rem,3.6vw,3.5rem); line-height:1.08; max-width:18ch; }
.page-areas .town-section::before { display:none; }
.page-areas .town-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.page-areas .town-grid article { min-height:0; padding:32px; border-left:3px solid #e2a15e; background:linear-gradient(125deg,#1a2e37,#122127); }
.page-areas .town-grid article::after { display:none; }
.page-areas .town-grid article > span { color:#f7f5f1; font-size:1.4rem; line-height:1.3; font-weight:650; letter-spacing:-.02em; text-transform:none; padding-right:48px; }
.page-areas .town-grid article::before { color:#bde8f1; top:24px; right:24px; }
.page-areas .town-grid h3 { margin:16px 0 8px; font-size:1rem; line-height:1.4; font-weight:500; color:#edb879; letter-spacing:0; }
.page-areas .town-grid p { color:#c0cdd1; max-width:52ch; }
.page-areas .town-map-button { color:#f3c58d; min-height:48px; align-self:flex-start; margin-top:16px; padding:8px 0; font-weight:500; }
.page-areas .town-map-button:hover,.page-areas .town-map-button:focus-visible { color:white; }
.page-areas .town-map-button:focus-visible { outline:2px solid #f3c58d; outline-offset:4px; }
.page-our-work .page-projects { grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:auto; gap:24px; align-items:stretch; }
.page-our-work .page-projects article,.page-our-work .page-projects article:first-child { display:flex; flex-direction:column; grid-row:auto; min-width:0; }
.page-our-work .page-projects article img,.page-our-work .page-projects article:first-child img { display:block; width:100%; height:auto; min-height:0; aspect-ratio:4/3; grid-row:auto; object-fit:cover; flex:none; }
.page-our-work .page-projects h2 { font-size:clamp(1.35rem,2vw,1.8rem); line-height:1.18; font-weight:650; margin-top:16px; margin-bottom:8px; }
.page-our-work .page-projects article > span { color:#edb879; font-weight:600; letter-spacing:.08em; font-size:.7rem; }
.page-our-work .page-projects p { color:#c0cdd1; font-size:1rem; line-height:1.65; margin-top:8px; margin-bottom:24px; }
.page-why-lm .why-section-heading h2 { font-size:clamp(2.2rem,4vw,3.8rem); line-height:1.08; }
.page-why-lm .why-card-grid { gap:16px; }
.page-why-lm .why-card-grid .page-card { min-height:0; padding:24px; border-top:2px solid #e2a15e; }
.page-why-lm .why-card-grid .page-card::after { display:none; }
.page-why-lm .why-card-grid .page-card h2 { margin-top:32px; font-size:1.4rem; font-weight:650; }
.page-why-lm .why-card-grid .page-card > span { color:#edb879; }
.page-why-lm .why-card-grid .page-card p { color:#c0cdd1; margin-bottom:0; }
.page-why-lm .why-detail-feature { display:grid; grid-template-columns:1.1fr 1fr; gap:clamp(32px,5vw,72px); align-items:center; margin-top:80px; }
.page-why-lm .why-detail-feature > img { width:100%; height:auto; aspect-ratio:4/5; max-height:640px; object-fit:cover; border-radius:16px; }
.page-why-lm .why-detail-feature h2 { font-size:clamp(2rem,4vw,3.8rem); line-height:1.1; max-width:15ch; }
.page-why-lm .why-detail-feature p { color:#c0cdd1; line-height:1.7; max-width:40ch; }
.page-why-lm .why-detail-feature .eyebrow { color:#edb879; }
.page-why-lm .why-detail-feature .button { margin-top:16px; }
.page-why-lm .why-local-note { display:flex; align-items:center; gap:16px; margin-top:40px; padding-top:24px; border-top:1px solid rgba(255,255,255,.16); }
.page-why-lm .why-local-note > span { color:#edb879; font-size:2rem; }
.page-why-lm .why-local-note p { margin:0; font-size:.95rem; }
.page-why-lm .page-cta .cta-context { display:none; }
@media(max-width:1000px) { .page-our-work .page-projects { grid-template-columns:repeat(2,minmax(0,1fr)); } .page-our-work .page-projects article:first-child { grid-column:1/-1; } .page-our-work .page-projects article:first-child img { aspect-ratio:16/9; } }
@media(max-width:700px) { .page-areas .town-heading,.page-areas .town-grid,.page-why-lm .why-detail-feature { grid-template-columns:1fr; } .page-areas .town-grid article { padding:24px; } .page-our-work .page-projects { grid-template-columns:1fr; gap:24px; } .page-our-work .page-projects article:first-child img { aspect-ratio:4/3; } .page-why-lm .why-detail-feature { margin-top:48px; gap:32px; } .page-why-lm .why-detail-feature > img { aspect-ratio:4/3; } .page-why-lm .why-section-heading { gap:16px; } }
