.page-hero{position:relative;padding:100px 80px 80px;background:var(--black);overflow:hidden}.page-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,var(--black) 0%,var(--dark2) 100%)}.page-hero-content{position:relative;z-index:2;max-width:720px}.page-hero-eyebrow{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--silver);margin-bottom:22px;display:flex;align-items:center;gap:10px}.page-hero-eyebrow:before{content:"";display:inline-block;width:32px;height:1px;background:var(--silver)}.page-hero h1{font-family:var(--font-serif);font-size:clamp(34px,4vw,52px);font-weight:500;line-height:1.15;color:var(--pure-white);margin-bottom:20px}.page-hero h1 em{font-style:italic;color:var(--pure-white)}.page-hero-sub{font-size:16px;line-height:1.75;color:var(--light-grey);font-weight:300;max-width:600px}.locations-grid-section{background:var(--stone);padding:80px}.locations-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:28px}.location-card{position:relative;height:420px;overflow:hidden;display:block}.location-card-img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .6s ease}.location-card:hover .location-card-img{transform:scale(1.05)}.location-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,#0a0a0af2,#0a0a0acc 42%,#0a0a0a73 72%,#0a0a0a26)}.location-card-content{position:absolute;bottom:0;left:0;right:0;padding:36px 40px;color:var(--pure-white);z-index:2}.location-card-eyebrow{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#ffffffb3;margin-bottom:10px}.location-card h2{font-family:var(--font-serif);font-size:30px;font-weight:500;line-height:1.15;margin-bottom:10px;color:var(--pure-white)}.location-card p{font-size:14px;line-height:1.65;color:#ffffffd9;margin-bottom:18px;font-weight:300;max-width:480px}.btn-light-link{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pure-white);border-bottom:1px solid rgba(255,255,255,.5);text-decoration:none;padding-bottom:3px;display:inline-block}.btn-light-link:hover{border-bottom-color:var(--pure-white)}.counties-section{background:var(--pure-white);padding:96px 80px}.counties-inner{max-width:1280px;margin:0 auto;display:grid;gap:56px}.county-block{border-top:1px solid #e5e0d8;padding-top:36px}.county-eyebrow{font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#6b6b6b;margin-bottom:10px}.county-block h3{font-family:var(--font-serif);font-size:clamp(26px,2.8vw,34px);font-weight:500;color:#0a0a0a;margin-bottom:24px}.area-tags{display:flex;flex-wrap:wrap;gap:10px}.area-tag{display:inline-block;padding:8px 16px;background:#f5f0ea;color:#333;font-size:13px;font-weight:500;border-radius:2px}.locations-bottom-cta{background:var(--dark);padding:80px 40px;text-align:center}.locations-bottom-inner{max-width:720px;margin:0 auto}.locations-bottom-inner h2{font-family:var(--font-serif);font-size:clamp(28px,3vw,40px);font-weight:500;color:var(--pure-white);margin-bottom:18px}.locations-bottom-inner p{font-size:16px;color:var(--light-grey);line-height:1.75;font-weight:300;margin-bottom:28px}.locations-bottom-inner .btn-dark{display:inline-block;background:var(--pure-white);color:#0a0a0a;padding:16px 36px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}.locations-bottom-inner .btn-dark:hover{background:var(--silver)}.fade-in{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.fade-in.visible{opacity:1;transform:translateY(0)}@media(max-width:1024px){.page-hero{padding:80px 40px 60px}.locations-grid-section{padding:60px 40px}.locations-grid{grid-template-columns:1fr;gap:20px}.location-card{height:360px}.counties-section{padding:72px 40px}}@media(max-width:680px){.page-hero{padding:64px 24px 48px}.locations-grid-section{padding:48px 24px}.location-card{height:300px}.location-card-content{padding:24px}.location-card h2{font-size:24px}.counties-section{padding:56px 24px}.locations-bottom-cta{padding:64px 24px}}
