/* ==========================================================================
   Detail portofolio: hero ringkas, teks di kiri, gambar ringkas di kanan.
   Dimuat setelah CSS bawaan.
   ========================================================================== */

.asa-site .pd-hero{padding:46px 0 54px;text-align:center;color:#fff;background:linear-gradient(135deg,#00224C 0%,#003a85 55%,#0051B5 100%)}
.asa-site .pd-chip{display:inline-block;margin:0 0 14px;padding:6px 16px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.2}
.asa-site .pd-title{max-width:860px;margin:0 auto;color:#fff;font-size:clamp(26px,3.8vw,40px);font-weight:700;line-height:1.2;letter-spacing:-.01em}

.asa-site .pd-main{padding:52px 0 84px;background:#fff;outline:none}
.asa-site .pd-main .container{max-width:1120px}
.asa-site .pd-grid{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:52px;align-items:start}
.asa-site .pd-grid:not(:has(.pd-visual)){grid-template-columns:minmax(0,760px);justify-content:center}

/* Teks */
.asa-site .pd-content{text-align:left}
.asa-site .pd-h2{position:relative;margin:0 0 20px;padding-bottom:14px;color:#0b2b52;font-size:24px;font-weight:700;line-height:1.3;text-align:left}
.asa-site .pd-h2::after{content:"";position:absolute;left:0;bottom:0;width:48px;height:3px;border-radius:3px;background:#0051B5}
.asa-site .pd-desc{color:#41566f;font-size:17px;line-height:1.85}

.asa-site .pd-meta{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 0;padding:0}
.asa-site .pd-meta_item{display:flex;flex-direction:column;gap:3px;min-width:150px;padding:13px 18px;border:1px solid #e3ebf7;border-radius:12px;background:#f7faff}
.asa-site .pd-meta_item dt{margin:0;color:#7488a1;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.asa-site .pd-meta_item dd{margin:0;color:#0b2b52;font-size:15.5px;font-weight:600;line-height:1.4;word-break:break-word}

.asa-site .pd-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.asa-site .pd-actions .btn{display:inline-flex;align-items:center;justify-content:center;width:auto;flex:0 1 auto;height:auto!important;min-height:50px;margin:0!important;padding:12px 28px!important;box-sizing:border-box;
  font-size:15.5px!important;font-weight:600!important;line-height:1.3!important;letter-spacing:0!important;text-align:center;white-space:normal}
.asa-site .pd-actions .pd-btn--ghost{background:#fff!important;border:1px solid #0051B5!important;color:#0051B5!important;box-shadow:none!important}
.asa-site .pd-actions .pd-btn--ghost:hover{background:#0051B5!important;color:#fff!important}
.asa-site .pd-back{display:inline-block;margin-top:20px;color:#4d6483;font-size:14.5px;font-weight:600;text-decoration:none;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}
.asa-site .pd-back:hover{color:#0051B5;border-bottom-color:#0051B5}

/* Gambar ringkas */
.asa-site .pd-visual{position:sticky;top:120px}
.asa-site .pd-visual_btn{position:relative;display:block;width:100%;margin:0;padding:7px;border:1px solid #e3ebf7;border-radius:18px;background:#fff;cursor:zoom-in;
  box-shadow:0 22px 44px -28px rgba(0,34,76,.55);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s ease}
.asa-site .pd-visual_btn:hover{transform:translateY(-3px);box-shadow:0 30px 52px -28px rgba(0,34,76,.65)}
.asa-site .pd-visual_btn:focus-visible{outline:2px solid #2E8BFF;outline-offset:3px}
.asa-site .pd-visual_btn picture,.asa-site .pd-visual_btn img,.asa-site .pd-visual_img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:top center;border-radius:12px;background:#0a2a52}
.asa-site .pd-visual_hint{position:absolute;right:18px;bottom:18px;padding:7px 14px;border-radius:999px;background:rgba(0,22,52,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;font-size:12.5px;font-weight:600;line-height:1.2;pointer-events:none}

@media (max-width:960px){
  .asa-site .pd-grid{grid-template-columns:1fr;gap:30px}
  .asa-site .pd-visual{position:static;order:-1;max-width:560px;width:100%;margin:0 auto}
}
@media (max-width:640px){
  .asa-site .pd-hero{padding:34px 0 40px}
  .asa-site .pd-main{padding:32px 0 64px}
  .asa-site .pd-desc{font-size:16px}
  .asa-site .pd-meta_item{flex:1 1 100%}
  .asa-site .pd-actions .btn{flex:1 1 100%}
}
@media (prefers-reduced-motion:reduce){.asa-site .pd-visual_btn{transition:none}}
