/* Premium Domains for Sale — site styles */

:root {
  --brand-navy: #0b2545;
  --brand-blue: #1d5fbf;
  --brand-accent: #ffb703;
  --brand-light: #f5f8fc;
  --brand-ink: #14213d;
}

body {
  font-family: "Segoe UI", Roboto, -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--brand-ink);
  background: var(--brand-light);
}

/* ---------- Navbar ---------- */
.pd-navbar {
  background: var(--brand-navy);
}

.pd-navbar .navbar-brand {
  font-weight: 700;
  letter-spacing: .5px;
  color: #fff;
}

.pd-navbar .navbar-brand span {
  color: var(--brand-accent);
}

/* ---------- Hero ---------- */
.pd-hero {
  background: linear-gradient(135deg, var(--brand-navy) 0%, var(--brand-blue) 100%);
  color: #fff;
  padding: 3.5rem 0 3rem;
}

.pd-hero .pd-domain-name {
  font-weight: 800;
  font-size: clamp(2rem, 5vw, 3.25rem);
  word-break: break-word;
}

.pd-hero .pd-tagline {
  color: #d7e6ff;
  font-size: 1.15rem;
  max-width: 46rem;
}

.pd-hero .badge.pd-badge {
  background: var(--brand-accent);
  color: var(--brand-navy);
  font-weight: 700;
  font-size: .8rem;
  letter-spacing: .5px;
  padding: .5em .9em;
}

/* ---------- Content card ---------- */
.pd-content-card {
  background: #fff;
  border-radius: .75rem;
  box-shadow: 0 .25rem 1.5rem rgba(11, 37, 69, .08);
  padding: 2rem 2.25rem;
}

.pd-content-card h1,
.pd-content-card h2,
.pd-content-card h3 {
  color: var(--brand-navy);
}

.pd-content-card h1 {
  font-weight: 700;
  margin-bottom: 1rem;
}

.pd-content-card h2 {
  margin-top: 2rem;
  font-weight: 700;
}

.pd-content-card h3 {
  font-weight: 600;
}

.pd-content-card p,
.pd-content-card li {
  line-height: 1.75;
}

/* ---------- Sidebar / CTA ---------- */
.pd-sidebar {
  position: sticky;
  top: 1.5rem;
}

.pd-cta-card {
  background: #fff;
  border-radius: .75rem;
  box-shadow: 0 .25rem 1.5rem rgba(11, 37, 69, .1);
  overflow: hidden;
  border-top: 4px solid var(--brand-accent);
}

.pd-cta-card .pd-cta-header {
  background: var(--brand-navy);
  color: #fff;
  padding: 1.25rem 1.5rem;
  text-align: center;
}

.pd-cta-card .pd-cta-header .pd-cta-domain {
  font-weight: 700;
  font-size: 1.25rem;
  word-break: break-word;
}

.pd-cta-card .pd-cta-body {
  padding: 1.5rem;
}

.pd-cta-card .pd-cta-body p {
  margin-bottom: .5rem;
}

.pd-cta-card .btn-pd-primary {
  background: var(--brand-accent);
  border-color: var(--brand-accent);
  color: var(--brand-navy);
  font-weight: 700;
  padding: .65rem 1rem;
}

.pd-cta-card .btn-pd-primary:hover {
  background: #e6a300;
  border-color: #e6a300;
  color: var(--brand-navy);
}

.pd-cta-card .pd-contact-list {
  list-style: none;
  padding-left: 0;
  margin: 1rem 0 0;
  font-size: .92rem;
}

.pd-cta-card .pd-contact-list li {
  padding: .35rem 0;
  border-top: 1px solid #eef1f6;
}

.pd-cta-card .pd-contact-list li:first-child {
  border-top: none;
}

.pd-cta-card .pd-contact-list i,
.pd-cta-card .pd-contact-list .bi {
  color: var(--brand-blue);
  width: 1.25rem;
  display: inline-block;
}

.pd-trust-badges {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-top: 1rem;
}

.pd-trust-badges .badge {
  background: var(--brand-light);
  color: var(--brand-navy);
  border: 1px solid #dbe4f0;
  font-weight: 600;
  font-size: .75rem;
  padding: .5em .75em;
}

/* ---------- Other domains card ---------- */
.pd-other-domains {
  margin-top: 1.5rem;
}

.pd-other-domains .card-header {
  background: var(--brand-light);
  font-weight: 700;
  color: var(--brand-navy);
}

.pd-other-domains a {
  color: var(--brand-blue);
  text-decoration: none;
}

.pd-other-domains a:hover {
  text-decoration: underline;
}

/* ---------- Footer ---------- */
.pd-footer {
  background: var(--brand-navy);
  color: #b9c9e4;
  padding: 2rem 0;
  margin-top: 3rem;
  font-size: .9rem;
}

.pd-footer a {
  color: #fff;
}

/* ---------- Sticky mobile CTA ---------- */
.pd-mobile-cta {
  display: none;
}

@media (max-width: 991.98px) {
  .pd-sidebar {
    position: static;
    margin-top: 2rem;
  }

  .pd-mobile-cta {
    display: block;
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1030;
    background: var(--brand-navy);
    padding: .75rem 1rem;
    box-shadow: 0 -.25rem .75rem rgba(0, 0, 0, .2);
  }

  .pd-mobile-cta .btn-pd-primary {
    background: var(--brand-accent);
    border-color: var(--brand-accent);
    color: var(--brand-navy);
    font-weight: 700;
    width: 100%;
  }

  body {
    padding-bottom: 4.5rem;
  }
}
