/* Contact / Lien he page layout */
.contact-hero{position:relative;overflow:hidden;color:var(--color-text-inverse);isolation:isolate}
.contact-hero-bg{position:absolute;inset:0;z-index:-1;background:var(--color-hero-overlay),var(--color-hero-base)}
.contact-hero-inner{padding:3.75rem 0 3rem;max-width:44rem}
.contact-hero .badge{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .9rem;border-radius:999px;background:var(--color-brand-subtle);border:1px solid rgba(249,115,22,.5);color:var(--color-brand-muted);font-size:.82rem;font-weight:600;margin-bottom:1rem}
.contact-hero h1{font-size:var(--fs-h1);line-height:1.05;font-weight:800;margin:0 0 1rem;color:#fff}
.contact-hero .lead{margin:0;font-size:clamp(1rem,2vw,1.16rem);color:var(--color-text-inverse-muted)}
.contact-hero .hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.contact-hero .btn-ghost{border-color:rgba(250,250,249,.4);color:var(--color-text-inverse)}

.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.contact-card{border-radius:var(--radius);padding:1.6rem 1.5rem;box-shadow:var(--color-shadow);display:flex;flex-direction:column;gap:.35rem}
.contact-card .c-top{display:flex;align-items:center;gap:.65rem}
.contact-card .c-ic{width:2.75rem;height:2.75rem;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:var(--color-brand-subtle);color:var(--color-brand);flex-shrink:0}
.contact-card .c-label{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--color-text-brand);margin:0}
.contact-card .c-big{font-family:var(--font-display);font-size:1.32rem;font-weight:700;color:var(--color-text);text-decoration:none;line-height:1.25;word-break:break-word}
.contact-card .c-big:hover{color:var(--color-text-brand)}
.contact-card .c-sub{margin:.15rem 0 0;color:var(--color-text-secondary);font-size:.92rem}
.contact-card .c-sub a{font-weight:600}

.contact-info-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:1.75rem;align-items:stretch;margin-top:1.5rem}
.info-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.75rem;box-shadow:var(--color-shadow)}
.info-card h2{font-family:var(--font-display);font-size:var(--fs-h4);margin:0 0 1rem}
.info-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}
.info-list li{display:flex;gap:.85rem;align-items:flex-start}
.info-list .li-ic{flex:0 0 auto;width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:var(--color-brand-subtle);color:var(--color-brand)}
.info-list .li-t{margin:0;font-weight:700;color:var(--color-text)}
.info-list .li-d{margin:.1rem 0 0;color:var(--color-text-secondary);font-size:.94rem}
.info-list .li-d a{font-weight:600}
.map-embed{position:relative;min-height:340px;border-radius:var(--radius);overflow:hidden;border:1px solid var(--color-border);box-shadow:var(--color-shadow)}
.map-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.cta-inner .hero-actions{justify-content:center;display:flex;flex-wrap:wrap;gap:.75rem}

@media (max-width:900px){
  .contact-grid{grid-template-columns:1fr}
  .contact-info-grid{grid-template-columns:1fr}
  .map-embed{min-height:280px}
}
