/* Prompt 6: scoped contact section; no changes to existing sections. */
.contact { padding-block: 60px 72px; background: var(--cream); color: var(--green); }
.contact-heading { text-align: center; margin-bottom: 40px; }
.contact-ornament { display: block; width: 90px; height: 1px; margin: 0 auto 22px; background: linear-gradient(90deg,transparent,var(--gold),transparent); }
.contact-heading h2 { margin: 0 0 12px; font-family: var(--font-heading); font-size: clamp(28px,3.2vw,42px); line-height: 1.25; font-weight: 700; }
.contact-heading p { margin: 0; color: #38483e; font-size: 16px; line-height: 1.6; }
.contact-layout { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); align-items: stretch; gap: 56px; }
.contact-details { display: grid; align-content: center; gap: 26px; margin: 0; min-width: 0; }
.contact-item { display: flex; align-items: flex-start; gap: 18px; min-width: 0; }
.contact-item>div { min-width: 0; }
.contact-icon { display: flex; align-items: center; justify-content: center; flex: 0 0 52px; width: 52px; height: 52px; border-radius: 50%; background: var(--gold); color: var(--green); }
.contact-icon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.contact-item dt { margin: 0 0 4px; font-size: 16px; font-weight: 700; }
.contact-item dd { margin: 0; color: #38483e; font-size: 15px; line-height: 1.6; overflow-wrap: break-word; }
.contact-item address { font-style: normal; }
.contact-map { display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 0; min-height: 380px; padding: 32px; border: 1px solid #d6a53a80; border-radius: 7px; background: linear-gradient(135deg,#f8eedb,#f0e4cb); text-align: center; }
.contact-map>svg { width: 38px; height: 38px; fill: none; stroke: var(--green); stroke-width: 1.3; }
.contact-map p { margin: 12px 0 0; font-size: 15px; line-height: 1.6; }
.contact-map .contact-map-label { font-family: var(--font-heading); font-size: 28px; }
.contact-map small { margin-top: 16px; color: #5d6357; font-size: 13px; }
@media (max-width:950px) { .contact-layout { gap: 30px; grid-template-columns: minmax(0,1fr) minmax(0,1fr); } }
@media (max-width:700px) { .contact { padding-block: 44px 50px; } .contact-heading { margin-bottom: 30px; } .contact-layout { grid-template-columns: minmax(0,1fr); gap: 34px; } .contact-map { min-height: 300px; padding: 24px; } .contact-heading p { font-size: 15px; } }
