/* ==========================================================================
   KAVANA — /pricing
   ========================================================================== */

.pricing { padding-top: calc(var(--header-h) + clamp(2rem, 6vw, 5rem)); padding-bottom: var(--space-section); }
.pricing-hero { display: grid; gap: 1.1rem; padding: 0 var(--gutter); max-width: 920px; }
.pricing-hero .kicker { margin: 0; }
.pricing-title { margin: 0; font-family: var(--font-display); font-size: var(--text-hero); font-weight: 400; line-height: 1; text-transform: uppercase; }
.pricing-lede { max-width: 58ch; margin: 0; font-size: clamp(1.05rem, 0.95rem + 0.5vw, 1.25rem); line-height: 1.6; color: var(--ink-2); }
.pricing-rate { margin: 0; font-size: var(--text-sm); color: var(--ink-2); }
.pricing-rate:empty { display: none; }
.pricing-rate s { margin-left: 0.4rem; color: var(--muted); }
.price-badge { display: inline-block; margin-right: 0.35rem; padding: 0.1em 0.6em; border-radius: 999px; background: var(--gold); color: var(--on-gold); font-size: 0.7rem; letter-spacing: 0.06em; text-transform: uppercase; }

/* ---------- Daftar harga ---------- */
.price-tiers { list-style: none; display: grid; gap: 0.6rem; max-width: 920px; margin: 0; padding: 0; }
.price-tier {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 0.5rem 1.25rem;
  padding: 1.1rem 1.25rem;
  border: 1px solid var(--line);
  border-radius: 16px 0 16px 0;
  background: rgb(255 255 255 / 0.02);
  transition: border-color var(--dur-fast), background-color var(--dur-fast);
}
.price-tier:hover { border-color: rgb(209 176 107 / 0.5); background: rgb(209 176 107 / 0.05); }
.price-tier-len { font-family: var(--font-display); font-size: clamp(1.05rem, 0.95rem + 0.5vw, 1.3rem); }
.price-tier-amount { display: inline-flex; align-items: baseline; gap: 0.6rem; }
.price-tier-amount s { font-size: var(--text-sm); color: var(--muted); }
.price-tier-amount strong { font-family: var(--font-display); font-size: clamp(1.3rem, 1.1rem + 1vw, 1.9rem); font-weight: 700; color: var(--gold); }
.price-tier-cta { padding: 0.45em 0.9em; border: 1px solid rgb(209 176 107 / 0.5); border-radius: 10px 0 10px 0; font-size: var(--text-xs); color: var(--gold); text-decoration: none; }
.price-tier-cta:hover { background: var(--gold); color: var(--on-gold); }
.price-empty { max-width: 60ch; color: var(--ink-2); }
@media (max-width: 520px) {
  .price-tier { grid-template-columns: minmax(0, 1fr) auto; }
  .price-tier-cta { grid-column: 1 / -1; justify-self: start; }
}

/* ---------- Kalkulator ---------- */
.calc {
  display: grid;
  gap: 1.5rem;
  max-width: 920px;
  padding: clamp(1.25rem, 3vw, 2.25rem);
  border: 1px solid rgb(209 176 107 / 0.35);
  border-radius: 22px 0 22px 0;
  background: linear-gradient(160deg, rgb(209 176 107 / 0.08), rgb(255 255 255 / 0.015) 60%);
}
.calc-head .kicker { margin: 0 0 0.4rem; }
.calc-head .section-title { margin: 0; }
.calc-form { display: grid; gap: 1.4rem; }
.calc-field { display: grid; gap: 0.7rem; margin: 0; padding: 0; border: 0; }
.calc-field legend,
.calc-label { padding: 0; font-size: var(--text-sm); color: var(--ink-2); }
.qty { display: inline-flex; align-items: center; justify-self: start; border: 1px solid var(--line); border-radius: 12px 0 12px 0; }
.qty-btn { width: 46px; height: 46px; border: 0; background: none; color: var(--ink); font-size: 1.3rem; cursor: pointer; }
.qty-btn:disabled { opacity: 0.3; cursor: default; }
.qty-btn:focus-visible { outline: 2px solid var(--gold); outline-offset: -2px; }
.qty-value { min-width: 2.5rem; font-family: var(--font-display); font-size: 1.2rem; text-align: center; }
.calc-result { display: grid; gap: 0.25rem; padding-top: 1.1rem; border-top: 1px solid var(--line); }
.calc-result-label { font-size: var(--text-xs); letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted); }
.calc-normal { font-size: var(--text-sm); color: var(--muted); }
.calc-price { font-family: var(--font-display); font-size: clamp(2.2rem, 1.6rem + 3vw, 3.6rem); font-weight: 700; line-height: 1.05; color: var(--gold); }
.calc-form .btn--cta { justify-self: start; }

/* ---------- Termasuk ---------- */
.included { list-style: none; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 0.75rem; max-width: 1100px; margin: 0; padding: 0; }
.included li { padding: 1.25rem; border: 1px solid var(--line); border-radius: 16px 0 16px 0; }
.included h3 { margin: 0 0 0.4rem; font-family: var(--font-display); font-size: 1.1rem; font-weight: 400; }
.included p { margin: 0; font-size: var(--text-sm); line-height: 1.6; color: var(--ink-2); }
.included-addon { border-style: dashed !important; }
.included-addon a { display: inline-block; margin-top: 0.35rem; color: var(--gold); text-underline-offset: 3px; }
