.hero h1 { color: var(--gold); }
.hero h1 em { color: #fff; }
.contact-form { align-self: start; }
.contact-details { row-gap: 30px; }
.contact-phone { font-size: 25px; }
.contact-phone:hover { color: var(--gold); }
.contact-email { overflow-wrap: anywhere; }
.contact-email:hover { color: var(--gold); }
.form-actions { display: flex; flex-direction: column; gap: 12px; }
.contact-form .button-email { border: 1px solid var(--green); color: var(--green); background: transparent; }
.button-whatsapp { background: #eab83f; color: #0e2d20; padding: 13px 15px; gap: 10px; align-self: flex-start; line-height: 1.6; }
.contact a:focus-visible, .contact button:focus-visible { outline: 3px solid #eab83f; outline-offset: 5px; }
.opening-hours { margin-top: 32px; border-top: 1px solid rgba(255,255,255,.15); padding-top: 24px; }
.opening-hours h3 { margin: 0 0 17px; font-family: Fraunces,serif; color: var(--wheat); font-size: 24px; }
.opening-hours dl { margin: 0; }
.opening-hours dl div { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px 20px; padding: 9px 0; border-bottom: 1px solid rgba(255,255,255,.08); font-size: 14px; }
.opening-hours dd { margin: 0; font-weight: 600; }
.opening-hours p { color: var(--wheat); font-size: 13px; line-height: 1.6; }
.form-note { font-size: 12px; line-height: 1.6; color: #60645d; }
@media(max-width:620px) { .contact-phone { font-size: 23px; } }
