:root {
  --dalmia-void: #030914;
  --dalmia-navy: #061326;
  --dalmia-panel: #081a32;
  --dalmia-panel-soft: rgba(8, 26, 50, 0.82);
  --dalmia-gold: #d8a94b;
  --dalmia-gold-soft: #f5d276;
  --dalmia-blue: #1d55d8;
  --dalmia-cyan: #00cfe8;
  --dalmia-text: #eef6ff;
  --dalmia-muted: #a9bed7;
  --dalmia-border: rgba(216, 169, 75, 0.55);
  --dalmia-shadow: 0 28px 80px rgba(0, 0, 0, 0.42);
  --dalmia-radius: 20px;
}
* { box-sizing: border-box; }
body.dalmia-royal-page,
.dalmia-royal-root {
  margin: 0;
  min-height: 100vh;
  color: var(--dalmia-text);
  background:
    radial-gradient(circle at 18% 8%, rgba(29, 85, 216, 0.35), transparent 34%),
    radial-gradient(circle at 78% 0%, rgba(216, 169, 75, 0.20), transparent 30%),
    linear-gradient(145deg, #02070e 0%, #061326 45%, #030914 100%);
  font-family: Inter, Segoe UI, Arial, sans-serif;
}
.dalmia-royal-shell { width: min(1440px, calc(100% - 28px)); margin: 0 auto; padding: 22px 0 42px; }
.dalmia-royal-hero {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--dalmia-border);
  border-radius: 28px;
  padding: clamp(28px, 4vw, 58px);
  background:
    linear-gradient(120deg, rgba(3, 9, 20, 0.92), rgba(8, 26, 50, 0.86)),
    repeating-linear-gradient(90deg, transparent, transparent 18px, rgba(216, 169, 75, 0.06) 19px, transparent 20px);
  box-shadow: var(--dalmia-shadow);
}
.dalmia-royal-hero:before {
  content: "";
  position: absolute;
  inset: -30% auto auto 45%;
  width: 55%;
  height: 140%;
  background: radial-gradient(circle, rgba(0, 207, 232, 0.18), transparent 62%);
  transform: rotate(18deg);
  pointer-events: none;
}
.dalmia-royal-kicker { color: var(--dalmia-gold-soft); letter-spacing: 0.20em; text-transform: uppercase; font-weight: 800; font-size: 0.76rem; }
.dalmia-royal-hero h1 { margin: 10px 0 12px; font-size: clamp(2rem, 5vw, 4.8rem); line-height: 0.98; letter-spacing: -0.055em; }
.dalmia-royal-hero p { max-width: 860px; margin: 0; color: var(--dalmia-muted); font-size: clamp(1rem, 1.5vw, 1.22rem); line-height: 1.72; }
.dalmia-royal-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.dalmia-royal-actions a,
.dalmia-card-link,
.dalmia-tour-control button {
  border: 1px solid rgba(216, 169, 75, 0.6);
  border-radius: 999px;
  color: #05101f;
  background: linear-gradient(135deg, var(--dalmia-gold-soft), var(--dalmia-gold));
  padding: 11px 18px;
  text-decoration: none;
  font-weight: 800;
  box-shadow: 0 14px 30px rgba(216, 169, 75, 0.18);
}
.dalmia-card-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 18px; }
.dalmia-card {
  min-height: 190px;
  border: 1px solid var(--dalmia-border);
  border-radius: var(--dalmia-radius);
  padding: 18px;
  background: linear-gradient(155deg, rgba(8, 26, 50, 0.92), rgba(3, 9, 20, 0.78));
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.28);
}
.dalmia-card span { display: inline-block; color: var(--dalmia-cyan); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; }
.dalmia-card h2 { margin: 8px 0 8px; font-size: 1.18rem; color: var(--dalmia-gold-soft); }
.dalmia-card p { margin: 0 0 14px; color: var(--dalmia-muted); line-height: 1.62; }
.dalmia-journey { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
.dalmia-step { border: 1px solid rgba(216, 169, 75, 0.42); border-radius: 18px; padding: 14px; background: rgba(8, 26, 50, 0.72); min-height: 142px; }
.dalmia-step b { display: block; color: var(--dalmia-gold-soft); margin-bottom: 8px; }
.dalmia-step p { color: var(--dalmia-muted); margin: 0; font-size: 0.88rem; line-height: 1.5; }
.dalmia-panel-wide { border: 1px solid var(--dalmia-border); border-radius: 24px; padding: 22px; margin-top: 18px; background: rgba(8, 26, 50, 0.72); }
.dalmia-panel-wide h2 { margin: 0 0 8px; color: var(--dalmia-gold-soft); }
.dalmia-panel-wide p, .dalmia-panel-wide li { color: var(--dalmia-muted); line-height: 1.65; }
.dalmia-table { width: 100%; border-collapse: collapse; margin-top: 12px; overflow: hidden; border-radius: 18px; }
.dalmia-table th, .dalmia-table td { border: 1px solid rgba(216, 169, 75, 0.32); padding: 11px 12px; text-align: left; vertical-align: top; }
.dalmia-table th { color: var(--dalmia-gold-soft); background: rgba(216, 169, 75, 0.08); }
.dalmia-table td { color: var(--dalmia-muted); }
.dalmia-tour-stage { position: relative; min-height: 500px; margin-top: 18px; border: 1px solid var(--dalmia-border); border-radius: 28px; overflow: hidden; background: rgba(3, 9, 20, 0.72); }
.dalmia-tour-slide { display: none; min-height: 500px; padding: clamp(24px, 4vw, 58px); background: radial-gradient(circle at 75% 20%, rgba(29, 85, 216, 0.32), transparent 42%); }
.dalmia-tour-slide.is-active { display: block; animation: dalmiaFade 0.45s ease both; }
.dalmia-tour-slide h2 { margin: 0 0 10px; font-size: clamp(2rem, 4vw, 4.2rem); color: var(--dalmia-gold-soft); }
.dalmia-tour-slide p { max-width: 760px; color: var(--dalmia-muted); line-height: 1.72; font-size: 1.1rem; }
.dalmia-tour-control { display: flex; gap: 10px; margin-top: 14px; }
@keyframes dalmiaFade { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
@media (max-width: 1100px) { .dalmia-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .dalmia-journey { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .dalmia-card-grid { grid-template-columns: 1fr; } .dalmia-journey { grid-template-columns: 1fr; } .dalmia-royal-shell { width: min(100% - 16px, 1440px); } }