/* Mantella.nl — Dienst-detail: Domeinen & hosting */

.dom-col { width: 864px; max-width: 100%; margin: 0 auto; }

/* ---- Hero ---- */
.dom-hero { padding: 64px var(--pad-x) 8px; }
.dom-hero__inner { display: flex; flex-direction: column; gap: 20px; }
.dom-eyebrow {
  display: inline-flex; align-items: center; gap: 10px; align-self: flex-start;
  border: 1px solid rgba(243,146,0,0.4); border-radius: var(--r-pill); padding: 7px 18px;
}
.dom-eyebrow .material-symbols-outlined { font-size: 17px; color: var(--c-orange); }
.dom-eyebrow span:last-child { color: #f5b661; font-size: 13px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; }
.dom-hero__title { font-weight: 900; font-size: 50px; line-height: 1.08; color: #fff; text-wrap: balance; }
.dom-hero__lead { font-size: 20px; line-height: 1.65; color: #a9a9a9; text-wrap: pretty; }
.dom-hero__actions { display: flex; align-items: center; gap: 16px; margin-top: 8px; }

/* ---- Statuskaart ---- */
.dom-statuscard-wrap { position: relative; width: 864px; max-width: 100%; margin: 40px auto 0; }
.dom-statuscard-glow {
  position: absolute; inset: -18px; border-radius: 26px;
  background: radial-gradient(circle at 25% 20%, rgba(228,0,58,0.16), transparent 60%); filter: blur(28px);
}
.dom-statuscard {
  position: relative; background: rgba(19,19,19,0.92); border: 1px solid #2a2a2a; border-radius: 20px;
  padding: 32px 40px; display: grid; grid-template-columns: auto 1fr; gap: 44px; align-items: center;
  box-shadow: 0 40px 90px rgba(0,0,0,0.5);
}
.dom-statuscard__domain { display: flex; flex-direction: column; gap: 10px; }
.dom-statuscard__label { font-family: monospace; font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase; color: #8a8175; }
.dom-statuscard__name-row { display: flex; align-items: center; gap: 14px; }
.dom-statuscard__icon {
  width: 52px; height: 52px; border-radius: 14px; background: rgba(243,146,0,0.12);
  display: flex; align-items: center; justify-content: center; flex: 0 0 auto;
}
.dom-statuscard__icon .material-symbols-outlined { font-size: 27px; color: var(--c-orange); }
.dom-statuscard__name { font-family: var(--font-head); font-weight: 900; font-size: 38px; line-height: 1; color: #fff; }
.dom-statuscard__badge {
  display: inline-flex; align-items: center; gap: 6px; align-self: flex-start;
  font-size: 11.5px; font-weight: 700; color: #7ee0a1; background: rgba(53,184,105,0.14);
  border-radius: var(--r-pill); padding: 5px 11px; margin-top: 4px;
}
.dom-statuscard__badge-dot { width: 7px; height: 7px; border-radius: 50%; background: #35b869; box-shadow: 0 0 0 4px rgba(53,184,105,0.18); }
.dom-statuscard__list { display: flex; flex-direction: column; }
.dom-statuscard__row { display: flex; align-items: center; gap: 12px; padding: 13px 2px; border-top: 1px solid #1e1e1e; }
.dom-statuscard__row:first-child { border-top-color: #262626; }
.dom-statuscard__row .material-symbols-outlined { font-size: 19px; color: var(--c-orange); flex: 0 0 auto; }
.dom-statuscard__row-label { font-size: 14.5px; color: #ddd; font-weight: 500; }
.dom-statuscard__row-val { margin-left: auto; font-family: monospace; font-size: 13px; color: #7ee0a1; }

/* ---- Detailsecties ---- */
/* margin-top geeft donkere ruimte onder de statuskaart in de hero (zelfde ritme als de andere dienstpagina's) */
.dom-detail-sec {
  padding: 72px var(--pad-x); margin-top: 56px;
  background-image: linear-gradient(160deg, rgba(243,146,0,0.12), transparent 45%);
}
.dom-detail__inner { display: flex; flex-direction: column; gap: 64px; }
.dom-detail-item { display: flex; flex-direction: column; gap: 18px; }
.dom-detail-item--sep { border-top: 1px solid #e8e2d8; padding-top: 56px; }
.dom-detail-item__head { display: flex; align-items: baseline; gap: 16px; }
.dom-detail-item__num { font-family: monospace; font-size: 20px; font-weight: 600; color: var(--c-red); }
.dom-detail-item__title { font-weight: 800; font-size: 30px; color: #0d0d0d; }
.dom-detail-item__desc { font-size: 18px; line-height: 1.8; color: #4a453e; text-wrap: pretty; }
.dom-checks { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 24px; margin-top: 4px; }
.dom-checks__row { display: flex; gap: 12px; align-items: flex-start; }
.dom-checks__row .material-symbols-outlined { font-size: 20px; color: #2e7d4f; margin-top: 1px; flex: 0 0 auto; }
.dom-checks__row span { font-size: 16px; line-height: 1.6; color: #3a332c; }

/* ---- Pakketblok ---- */
.dom-pack-sec { padding: 72px var(--pad-x); }
.dom-pack {
  position: relative; background: rgba(19,19,19,0.9); border: 1px solid #2a2a2a; border-radius: 22px;
  padding: 52px 56px; display: flex; flex-direction: column; gap: 22px; align-items: center; text-align: center;
  overflow: hidden;
}
.dom-pack__mark {
  position: absolute; bottom: -90px; right: -40px; font-size: 300px; line-height: 1;
  color: rgba(255,255,255,0.03); pointer-events: none;
}
.dom-pack__kicker { position: relative; font-family: monospace; font-size: 12px; letter-spacing: 2px; text-transform: uppercase; color: #8a8175; }
.dom-pack__title { position: relative; font-weight: 900; font-size: 42px; line-height: 1.1; color: #fff; }
.dom-pack__desc { position: relative; font-size: 17.5px; line-height: 1.7; color: #b4b4b4; max-width: 640px; text-wrap: pretty; }
.dom-pack__cta { position: relative; margin-top: 4px; }
.dom-pack__note { position: relative; font-size: 14.5px; color: #8a8175; }
.dom-pack__note a { color: var(--c-orange); font-weight: 600; text-decoration: none; }
.dom-pack__note a:hover { color: #ffb547; }


/* =================== Tablet (1080) =================== */
@media (max-width: 1080px) {
  .dom-hero { padding: 48px var(--pad-x) 8px; }
  .dom-hero__title { font-size: 38px; }

  .dom-statuscard-wrap { margin-top: 32px; }
  .dom-statuscard { padding: 28px 30px; gap: 28px; }
  .dom-statuscard__name { font-size: 32px; }

  .dom-detail-sec { padding: 56px var(--pad-x); }
  .dom-detail__inner { gap: 48px; }
  .dom-detail-item--sep { padding-top: 48px; }
  .dom-detail-item__title { font-size: 26px; }

  .dom-pack-sec { padding: 56px var(--pad-x); }
  .dom-pack { padding: 40px 36px; }
  .dom-pack__title { font-size: 32px; }
}

/* =================== Mobiel (700) =================== */
@media (max-width: 700px) {
  .dom-hero { padding: 40px var(--pad-x) 8px; }
  .dom-hero__title { font-size: 30px; }
  .dom-hero__actions { flex-direction: column; align-items: stretch; }

  .dom-statuscard-wrap { margin-top: 28px; }
  .dom-statuscard { grid-template-columns: 1fr; gap: 22px; padding: 24px 22px; }
  .dom-statuscard__name { font-size: 28px; }

  .dom-detail-sec { padding: 48px var(--pad-x); }
  .dom-detail__inner { gap: 32px; }
  .dom-detail-item--sep { padding-top: 32px; }
  .dom-detail-item__title { font-size: 24px; }
  .dom-checks { grid-template-columns: 1fr; }

  .dom-pack-sec { padding: 48px var(--pad-x); }
  .dom-pack { padding: 32px 24px; gap: 18px; }
  .dom-pack__mark { font-size: 200px; bottom: -60px; right: -30px; }
  .dom-pack__title { font-size: 26px; }
  .dom-pack__desc { font-size: 16px; }
}
