.dm-contact {
padding: 4rem 1.5rem 5rem;
background-color: #ffffff;
}
.dm-contact-inner {
max-width: 980px;
margin: 0 auto;
text-align: center;
}
.dm-contact-title {
font-size: 2.2rem;
letter-spacing: 0.15em;
text-transform: uppercase;
margin-bottom: 0.75rem;
}
.dm-contact-subtitle {
max-width: 640px;
margin: 0 auto 2.5rem;
font-size: 0.98rem;
line-height: 1.7;
}
.dm-contact-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
gap: 1.5rem;
margin-bottom: 2.5rem;
}
.dm-contact-card {
background: #ffffff;
border-radius: 18px;
padding: 1.8rem 1.5rem 1.6rem;
text-align: left;
box-shadow: 0 10px 25px rgba(0,0,0,0.04);
transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
text-decoration: none;
color: inherit;
position: relative;
}
.dm-contact-card:hover {
transform: translateY(-4px);
box-shadow: 0 16px 35px rgba(0,0,0,0.08);
background: #fffaf7;
}
.dm-icon-circle {
width: 46px;
height: 46px;
border-radius: 999px;
border: 1px solid #e0d0c4;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 0.85rem;
}
.dm-icon-circle svg {
width: 22px;
height: 22px;
fill: #c18b63; /* warm gold-ish tone */
}
.dm-contact-card h2 {
font-size: 1rem;
text-transform: uppercase;
letter-spacing: 0.14em;
margin-bottom: 0.45rem;
}
.dm-contact-card p {
font-size: 0.92rem;
line-height: 1.6;
margin-bottom: 0.7rem;
}
.dm-link-label {
font-size: 0.8rem;
text-transform: uppercase;
letter-spacing: 0.18em;
color: #c18b63;
}
.dm-contact-note {
font-size: 0.9rem;
color: #666;
}
@media (max-width: 600px) {
.dm-contact {
padding: 3rem 1.25rem 4rem;
}
.dm-contact-title {
font-size: 1.7rem;
}
}