.location_page
{
max-width:1000px;
margin:0 auto;
padding:20px 20px 50px 20px;
background:#FFF;
text-align:center;
}

.location_intro
{
max-width:700px;
margin:0 auto 30px auto;
}

.location_intro p
{
font-size:95%;
line-height:2;
color:#333;
}

.location_address
{
margin-bottom:30px;
}

.location_address h2,
.location_notes h2
{
font-family:'Playfair Display', serif;
font-size:165%;
font-weight:500;
margin:0 0 10px 0;
color:#454545;
text-align: center;
}

.location_address p
{
font-size:100%;
line-height:1.9;
}

.location_button
{
display:inline-block;
margin-top:10px;
padding:10px 20px;
background:#000;
color:#C6A25A;
border:1px solid #C6A25A;
text-decoration:none;
transition:all .25s ease;
}

.location_button:hover
{
background:#111;
color:#FFF;
border-color:#FFF;
}

.location_travel
{
max-width:900px;
margin:0 auto 30px auto;
display:grid;
grid-template-columns:repeat(3,1fr);
gap:18px;
}

.location_travel_item
{
background:#fafafa;
border:1px solid #dddddd;
padding:18px 16px;
box-shadow:0 6px 16px rgba(0,0,0,0.08);
}

.location_travel_item h3
{
margin:0 0 8px 0;
font-family:'Playfair Display', serif;
font-size:130%;
font-weight:500;
color:#454545;
}

.location_travel_item p
{
margin:0;
font-size:92%;
line-height:1.8;
color:#444;
}

.location_map_wrap
{
position:relative;
margin:35px 0 30px 0;
}

.location_map_pin
{
position:absolute;
top:16px;
left:50%;
transform:translateX(-50%);
z-index:2;
padding:8px 14px;
background:rgba(0,0,0,0.82);
color:#C6A25A;
border:1px solid #C6A25A;
font-size:13px;
letter-spacing:.4px;
box-shadow:0 6px 16px rgba(0,0,0,0.2);
pointer-events:none;
}

.location_map
{
border:1px solid #454545;
box-shadow:0 8px 20px rgba(0,0,0,0.15);
overflow:hidden;
}

.location_map iframe
{
width:100%;
height:420px;
border:0;
display:block;
}

.location_notes
{
max-width:650px;
margin:25px auto 0 auto;
font-size:92%;
line-height:1.9;
color:#444;
}

@media (max-width:800px)
{
.location_travel
{
grid-template-columns:1fr;
}
}

@media (max-width:700px)
{
.location_page
{
padding:10px 16px 35px 16px;
}

.location_map_pin
{
top:12px;
font-size:12px;
padding:7px 12px;
}

.location_map iframe
{
height:320px;
}
}
