/* page-specific rules for contact-en.html (generated) */
.contact-main { padding:100px 0;background:var(--surface-2) }
.contact-grid { display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:start }
.contact-info-col h2 { font-size:36px;font-weight:900;color:var(--ink);margin-bottom:20px;line-height:1.2 }
.contact-info-col p.lead { font-size:16px;color:var(--text-muted);margin-bottom:30px;line-height:1.9 }
.contact-card { background:#fff;padding:24px 26px;border-radius:6px;border:1px solid var(--border);margin-bottom:16px;display:flex;gap:18px;align-items:flex-start;transition:.3s }
.contact-card:hover { border-color:var(--gold);box-shadow:0 12px 30px rgba(26,20,16,.08) }
.contact-card h4 { font-size:15px;font-weight:800;color:var(--ink);margin-bottom:4px }
.contact-card p, .contact-card a { font-size:14px;color:var(--text-muted);line-height:1.7 }
.contact-card a:hover { color:var(--gold-deep) }
.social-row { display:flex;gap:10px;margin-top:24px }
.social-row a { width:44px;height:44px;border-radius:6px;background:#fff;color:var(--gold-deep);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;transition:.3s;font-weight:700;font-size:14px }
.social-row a:hover { background:var(--gold-deep);color:#fff;border-color:var(--gold-deep);transform:translateY(-3px) }
.contact-form { background:#fff;padding:45px 40px;border-radius:8px;box-shadow:0 20px 50px rgba(26,20,16,.08);border:1px solid var(--border) }
.contact-form h3 { font-size:24px;font-weight:800;margin-bottom:6px;color:var(--ink) }
.contact-form .sub { color:var(--text-muted);font-size:14px;margin-bottom:24px }
.map-section { padding:0;background:#fff }
.map-wrap { height:460px;background:url('../../../assets/hero/cover-v16-1600.webp') center/cover;position:relative }
.map-wrap iframe { width:100%;height:100%;border:0;display:block }
.hours-band { background:var(--ink);color:#fff;padding:60px 0 }
.hours-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center }
.hours-item h4 { font-size:15px;color:var(--gold);letter-spacing:2px;text-transform:uppercase;font-weight:700;margin-bottom:10px }
.hours-item p { font-size:16px;color:rgba(255,255,255,.85);line-height:1.7 }
@media (max-width:968px) {
.contact-grid, .hours-grid { grid-template-columns:1fr }
.contact-main { padding:70px 0 }
.contact-form { padding:30px 24px }
}
.offices-section { padding:80px 0;background:var(--surface-3) }
.offices-section .tag { display:inline-block;padding:6px 18px;background:rgba(201,169,97,.15);border:1px solid var(--gold);color:var(--gold-deep);font-size:12px;font-weight:600;letter-spacing:2px;margin-bottom:16px;border-radius:2px }
.offices-section h2 { font-size:clamp(28px,3.5vw,40px);font-weight:900;color:var(--ink);margin-bottom:12px }
.offices-section .section-head p { color:#6b5d4a;font-size:16px }
.office-tabs { display:flex;gap:12px;justify-content:center;margin-bottom:32px;flex-wrap:wrap }
.office-tab { padding:14px 32px;background:#fff;border:1px solid var(--border);color:var(--ink);font-weight:600;font-size:15px;cursor:pointer;border-radius:4px;transition:all .25s;font-family:inherit }
.office-tab:hover { border-color:var(--gold);color:var(--gold) }
.office-tab.active { background:linear-gradient(135deg,var(--gold),var(--gold-deep));color:#fff;border-color:var(--gold);box-shadow:0 6px 18px rgba(201,169,97,.3) }
.office-panels { position:relative }
.office-panel { display:none;grid-template-columns:380px 1fr;gap:24px;background:#fff;border:1px solid var(--border);border-radius:8px;overflow:hidden }
.office-panel.active { display:grid }
.office-info { padding:36px }
.office-info h3 { font-size:24px;font-weight:900;color:var(--ink);margin-bottom:12px }
.office-info .office-city { font-size:18px;color:var(--gold);font-weight:700;margin-bottom:6px }
.office-info .office-addr { color:#6b5d4a;margin-bottom:24px }
.office-link { display:inline-block;padding:12px 24px;background:transparent;border:1px solid var(--gold);color:var(--gold);font-weight:600;text-decoration:none;border-radius:4px;transition:all .25s }
.office-link:hover { background:var(--gold);color:#fff }
.office-map { min-height:340px }
.office-map iframe { width:100%;height:100%;min-height:340px;border:0;display:block }
@media (max-width:768px) {
.office-panel.active { grid-template-columns:1fr }
.office-info { padding:24px }
}
.social-row { display: flex; gap: 10px; margin-top: var(--space-5); } .social-row a { width: 42px; height: 42px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--border-strong); border-radius: var(--radius-sm); color: var(--ink); } .social-row a svg { width: 16px; height: 16px; fill: currentColor; } .social-row a:hover { background: var(--gold); border-color: var(--gold); color: var(--ink); }

