/* Halaman Kontak - mandiri, tidak bergantung pada style.css */
.kontak-hero { position:relative; overflow:hidden; text-align:center; color:#fff; padding:4.5rem 0 7.5rem;
    background:linear-gradient(135deg,#0b3b3a,#0f766e 55%,#164e63); }
.kontak-hero::before { content:''; position:absolute; inset:0;
    background:radial-gradient(circle at 15% 20%,rgba(255,255,255,.12),transparent 40%),
               radial-gradient(circle at 85% 85%,rgba(94,234,212,.2),transparent 45%); }
.kontak-hero .container { position:relative; }
.kontak-eyebrow { font-size:.75rem; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:#5eead4; margin-bottom:.75rem; }
.kontak-hero h1 { font-weight:800; font-size:clamp(2rem,5vw,3.1rem); margin:0; }
.kontak-hero p { max-width:34rem; margin:.9rem auto 0; opacity:.9; }

.kontak-wrap { position:relative; z-index:2; margin-top:-5rem; padding-bottom:4.5rem; }
.k-card { display:flex; flex-direction:column; height:100%; background:#fff; border-radius:22px; overflow:hidden;
    box-shadow:0 22px 55px rgba(15,23,42,.13); }
.k-card-body { padding:2rem; }
.k-title { font-size:1.15rem; font-weight:800; margin:0 0 1rem; }

.k-item { display:flex; align-items:center; gap:1rem; padding:.95rem 0; border-bottom:1px solid #eef2f7;
    color:inherit; text-decoration:none; }
.k-item:last-of-type { border-bottom:0; }
.k-ic { flex:0 0 48px; width:48px; height:48px; border-radius:14px; display:grid; place-items:center; font-size:1.25rem;
    color:#0d9488; background:rgba(13,148,136,.1); transition:background .2s ease, color .2s ease; }
a.k-item:hover .k-ic { background:#0d9488; color:#fff; }
.k-label { display:block; font-size:.68rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; color:#94a3b8; }
.k-value { display:block; font-weight:600; color:#1e293b; word-break:break-word; }
.k-arrow { margin-left:auto; color:#cbd5e1; transition:transform .2s ease, color .2s ease; }
a.k-item:hover .k-arrow { transform:translateX(4px); color:#0d9488; }

.k-btn-wa { display:flex; align-items:center; justify-content:center; gap:.5rem; margin-top:1.25rem; padding:.85rem 1rem;
    border-radius:14px; font-weight:700; color:#fff; text-decoration:none; background:#25d366;
    transition:transform .2s ease, box-shadow .2s ease; }
.k-btn-wa:hover { color:#fff; transform:translateY(-2px); box-shadow:0 10px 24px rgba(37,211,102,.38); }

.k-map { flex:1 1 auto; min-height:360px; background:#eef2f7; display:grid; }
.k-map iframe { display:block; width:100%; height:100%; min-height:360px; border:0; }
.k-map-empty { place-self:center; text-align:center; color:#94a3b8; padding:2rem; }
.k-map-empty i { font-size:2.5rem; display:block; margin-bottom:.5rem; }
.k-map-foot { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1rem;
    padding:1.15rem 1.5rem; border-top:1px solid #eef2f7; }
.k-map-addr { font-size:.9rem; color:#64748b; max-width:26rem; }
.k-btn-map { display:inline-flex; align-items:center; gap:.45rem; padding:.6rem 1.2rem; border-radius:50px; font-weight:600;
    color:#fff; text-decoration:none; background:#0d9488; transition:background .2s ease; }
.k-btn-map:hover { background:#0f766e; color:#fff; }

@media (max-width:767.98px) {
    .kontak-hero { padding:3rem 0 6.5rem; }
    .kontak-wrap { margin-top:-4.5rem; padding-bottom:3rem; }
    .k-card-body { padding:1.35rem; }
    .k-map, .k-map iframe { min-height:280px; }
    .k-map-foot { padding:1rem 1.25rem; }
    .k-btn-map { width:100%; justify-content:center; }
}
