/* DesigningAxis location.min.css | 2026-05-30 */
.loc-hero{

 background:var(--dark);
padding:8rem 5% 4rem;
position:relative;
overflow:hidden;
}

.loc-hero::before{

 content:'';
position:absolute; inset:0;
background-image:
 repeating-linear-gradient(45deg,rgba(201,169,110,0.03) 0,rgba(201,169,110,0.03) 1px,transparent 1px,transparent 40px),
 repeating-linear-gradient(-45deg,rgba(201,169,110,0.03) 0,rgba(201,169,110,0.03) 1px,transparent 1px,transparent 40px);
}

.loc-hero-inner{
position:relative; max-width:var(--container); margin:0 auto;}

.loc-breadcrumb{

 font-size:0.7rem; letter-spacing:0.15em; text-transform:uppercase;
color:rgba(255,255,255,0.3); margin-bottom:1.5rem; font-weight:300;
}

.loc-breadcrumb a{
color:var(--gold); text-decoration:none;}

.loc-hero h1{

 font-family:var(--serif);
font-size:clamp(2rem,4vw,3.2rem);
color:var(--white); font-weight:400; line-height:1.2; margin-bottom:1rem;
}

.loc-hero h1 em{
color:var(--gold); font-style:italic;}

.loc-hero-sub{

 font-size:0.95rem; color:rgba(255,255,255,0.5);
font-weight:300; max-width:560px; line-height:1.8; margin-bottom:2rem;
}

.loc-stats{

 display:flex; gap:2rem; flex-wrap:wrap;
}

.loc-stat{

 background:rgba(255,255,255,0.04);
border:1px solid rgba(201,169,110,0.2);
padding:1rem 1.5rem; text-align:center; min-width:100px;
}

.loc-stat-num{
font-family:var(--serif); font-size:1.8rem; color:var(--gold); line-height:1;}

.loc-stat-lbl{
font-size:0.65rem; letter-spacing:0.1em; text-transform:uppercase; color:rgba(255,255,255,0.4); margin-top:0.3rem;}

.loc-content{
max-width:var(--container); margin:0 auto; padding:4rem 5%;}

.loc-grid{
display:grid; grid-template-columns:1fr 360px; gap:4rem; align-items:start;}

.loc-body h2{

 font-family:var(--serif); font-size:1.6rem; color:var(--dark);
font-weight:400; margin:2.5rem 0 1rem; line-height:1.3;
}

.loc-body h2:first-child{
margin-top:0;}

.loc-body p{

 font-size:0.95rem; color:var(--text); line-height:1.85;
font-weight:300; margin-bottom:1.25rem;
}

.loc-body ul{
list-style:none; margin-bottom:1.5rem;}

.loc-body ul li{

 font-size:0.92rem; color:var(--text); font-weight:300;
padding:0.6rem 0; border-bottom:1px solid var(--border);
display:flex; gap:0.75rem; align-items:flex-start; line-height:1.6;
}

.loc-body ul li::before{
content:'◈'; color:var(--gold); font-size:0.6rem; margin-top:0.4rem; flex-shrink:0;}

.loc-divider{
width:48px; height:2px; background:var(--gold); margin:2rem 0;}

.area-tags{
display:flex; flex-wrap:wrap; gap:0.5rem; margin:1.5rem 0;}

.area-tag{

 font-size:0.72rem; letter-spacing:0.1em; text-transform:uppercase;
padding:0.4rem 1rem; background:var(--cream-dk);
border:1px solid var(--border); color:var(--text); font-weight:400;
}

.loc-sidebar{
}

.loc-cta-card{

 background:var(--dark); padding:2rem; margin-bottom:1.5rem; text-align:center;
}

.loc-cta-card .label{
color:var(--gold);}

.loc-cta-card h3{

 font-family:var(--serif); font-size:1.2rem; color:var(--white);
margin:0.75rem 0 0.5rem; font-weight:400; line-height:1.4;
}

.loc-cta-card p{

 font-size:0.82rem; color:rgba(255,255,255,0.45);
font-weight:300; margin-bottom:1.5rem; line-height:1.6;
}

.loc-info-card{

 background:var(--white); border:1px solid var(--border); padding:1.75rem; margin-bottom:1.5rem;
}

.loc-info-title{

 font-size:0.68rem; letter-spacing:0.18em; text-transform:uppercase;
color:var(--gold); margin-bottom:1.25rem; font-weight:400;
}

.loc-info-item{
display:flex; gap:0.75rem; margin-bottom:1rem; align-items:flex-start;}

.loc-info-icon{
font-size:0.9rem; flex-shrink:0; margin-top:0.15rem;}

.loc-info-text{
font-size:0.85rem; color:var(--text); font-weight:300; line-height:1.6;}

.loc-info-text strong{
color:var(--dark); font-weight:500; display:block;}

.nearby-links{
list-style:none;}

.nearby-links li{
margin-bottom:0.5rem;}

.nearby-links a{

 font-size:0.82rem; color:var(--gold); text-decoration:none;
font-weight:400; transition:opacity 0.2s;
}

.nearby-links a:hover{
opacity:0.7;}

.loc-map-placeholder{

 background:var(--cream-dk); border:1px solid var(--border);
height:200px; display:flex; align-items:center; justify-content:center;
margin-bottom:1.5rem; text-align:center;
}

.loc-map-placeholder p{

 font-size:0.8rem; color:var(--muted); font-weight:300; line-height:1.6;
}

.loc-services{
display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--border); margin:2rem 0;}

.loc-service-item{

 background:var(--white); padding:1.5rem;
transition:background 0.2s; position:relative; overflow:hidden;
}

.loc-service-item::before{

 content:''; position:absolute; top:0; left:0;
width:3px; height:0; background:var(--gold); transition:height 0.3s;
}

.loc-service-item:hover::before{
height:100%;}

.loc-service-item:hover{
background:var(--cream);}

.loc-service-name{
font-family:var(--serif); font-size:0.95rem; color:var(--dark); margin-bottom:0.35rem; font-weight:500;}

.loc-service-desc{
font-size:0.8rem; color:var(--muted); font-weight:300; line-height:1.6;}

.loc-testi{
background:var(--dark); padding:2rem 5%; margin-top:0;}

.loc-testi-inner{
max-width:var(--container); margin:0 auto;}

.loc-testi-grid{
display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:1px; background:rgba(255,255,255,0.05); margin-top:2rem;}

.loc-testi-card{
background:var(--dark); padding:2rem;}

.loc-testi-stars{
color:var(--gold); font-size:0.8rem; margin-bottom:1rem;}

.loc-testi-text{
font-family:var(--serif); font-size:0.95rem; color:rgba(255,255,255,0.75); line-height:1.8; font-style:italic; margin-bottom:1.5rem;}

.loc-testi-name{
font-size:0.82rem; color:var(--white); font-weight:500;}

.loc-testi-loc{
font-size:0.72rem; color:rgba(255,255,255,0.35); margin-top:0.15rem;}

@media(max-width:768px){

 .loc-grid{
grid-template-columns:1fr;}

 .loc-sidebar{
order:-1;}

 .loc-services{
grid-template-columns:1fr;}

 .loc-stats{
gap:1rem;}

}

.loc-content[id],section[id]{

 scroll-margin-top:80px;
}