:root {
  --pc-ink: #0f172a;
  --pc-text: #1f2937;
  --pc-muted: #5b6773;
  --pc-bg: #f6f1ea;
  --pc-surface: #ffffff;
  --pc-border: #e5e7eb;
  --pc-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
  --pc-accent: #fbbf24;
  --pc-accent-deep: #f59e0b;
  --pc-pod: #2563eb;
  --pc-pod-soft: #dbeafe;
  --pc-cod: #f97316;
  --pc-cod-soft: #ffedd5;
  --pc-cod-deep: #7c3aed;
}

* {
  box-sizing: border-box;
}

body {
  font-family: "Manrope", "Segoe UI", sans-serif;
  background: var(--pc-bg);
  color: var(--pc-text);
  line-height: 1.55;
}

.btn {
  border-radius: 12px;
  transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.btn:hover {
  transform: translateY(-1px);
}

.btn:active {
  transform: translateY(0);
}

.form-control,
.form-select {
  border-radius: 12px;
  border-color: var(--pc-border);
}

.form-control:focus,
.form-select:focus {
  border-color: var(--pc-pod);
  box-shadow: 0 0 0 0.2rem rgba(37, 99, 235, 0.15);
}

a:focus-visible,
button:focus-visible,
.btn:focus-visible,
.form-control:focus-visible,
.form-select:focus-visible,
textarea:focus-visible {
  outline: none;
  box-shadow: 0 0 0 0.24rem rgba(37, 99, 235, 0.24);
}

h1,
h2,
h3,
h4,
h5,
h6,
.pc-display {
  font-family: "Space Grotesk", "Manrope", sans-serif;
  color: var(--pc-ink);
}

.pc-navbar {
  background: rgba(246, 241, 234, 0.9);
  border-bottom: 1px solid var(--pc-border);
  backdrop-filter: blur(12px);
}

.pc-navbar .nav-link {
  color: #334155;
  font-weight: 500;
  position: relative;
  transition: color 0.2s ease;
}

.pc-navbar .nav-link:hover,
.pc-navbar .nav-link.active {
  color: var(--pc-ink);
}

.pc-navbar .nav-link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.2rem;
  height: 2px;
  border-radius: 999px;
  background: var(--pc-pod);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.2s ease;
}

.pc-navbar .nav-link:hover::after,
.pc-navbar .nav-link.active::after {
  transform: scaleX(1);
}

.pc-brand {
  font-weight: 700;
  letter-spacing: 0.4px;
}

.pc-btn-primary {
  background: var(--pc-ink);
  border-color: var(--pc-ink);
  color: #fff;
}

.pc-btn-primary:hover {
  background: #0b1220;
  border-color: #0b1220;
  color: #fff;
}

.pc-btn-accent {
  background: var(--pc-accent);
  border-color: var(--pc-accent);
  color: #111827;
}

.pc-btn-accent:hover {
  background: var(--pc-accent-deep);
  border-color: var(--pc-accent-deep);
  color: #111827;
}

.pc-section {
  padding: 96px 0;
}

.pc-section-tight {
  padding: 64px 0;
}

.pc-section-surface {
  background: var(--pc-surface);
}

.pc-section-title {
  font-size: clamp(2rem, 3.5vw, 2.75rem);
  line-height: 1.16;
  text-wrap: balance;
}

.pc-section-sub {
  color: var(--pc-muted);
  font-size: 1.05rem;
}

.text-center .pc-section-sub {
  max-width: 62ch;
  margin-left: auto;
  margin-right: auto;
}

.pc-hero {
  background: radial-gradient(1200px 600px at 20% 10%, #fff1d6 0%, #f6f1ea 50%, #f6f1ea 100%);
  position: relative;
  overflow: hidden;
}

.pc-hero::after {
  content: "";
  position: absolute;
  right: -160px;
  top: -120px;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  background: linear-gradient(140deg, rgba(37, 99, 235, 0.2), rgba(249, 115, 22, 0.25));
}

.pc-hero-title {
  font-size: clamp(2.6rem, 4.5vw, 3.6rem);
  line-height: 1.05;
  text-wrap: balance;
}

.pc-hero-sub {
  font-size: 1.1rem;
  color: #3a4652;
}

.pc-badge {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--pc-border);
  font-size: 0.9rem;
}

.pc-tag {
  background: rgba(15, 23, 42, 0.08);
  color: var(--pc-ink);
  padding: 6px 10px;
  border-radius: 10px;
  font-size: 0.8rem;
  font-weight: 600;
}

.pc-pill {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.08);
  color: var(--pc-ink);
  font-size: 0.85rem;
}

.pc-filter-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  justify-content: space-between;
  align-items: center;
}

.pc-filter-group {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pc-filter-pill {
  border: 1px solid var(--pc-border);
  background: #fff;
  color: var(--pc-ink);
  padding: 6px 14px;
  border-radius: 999px;
  font-size: 0.85rem;
  font-weight: 600;
}

.pc-filter-pill.active {
  border-color: var(--pc-pod);
  color: var(--pc-pod);
  box-shadow: 0 10px 20px rgba(37, 99, 235, 0.15);
}

.pc-filter-pill[disabled],
.pc-filter-pill.is-disabled {
  opacity: 0.6;
  cursor: not-allowed;
  box-shadow: none;
}

.pc-filter-selected {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  color: var(--pc-muted);
  font-size: 0.85rem;
}

.pc-filter-label {
  font-weight: 600;
  color: var(--pc-ink);
}

.pc-filter-chip {
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.08);
  color: var(--pc-ink);
}

.pc-filter-clear {
  color: var(--pc-cod);
  text-decoration: none;
  font-weight: 600;
}

.pc-empty-state {
  border: 1px dashed var(--pc-border);
  border-radius: 14px;
  padding: 14px 16px;
  background: rgba(15, 23, 42, 0.03);
  color: var(--pc-muted);
}

.pc-template-card {
  border: 1px solid var(--pc-border);
  border-radius: 18px;
  padding: 16px;
  background: #fff;
  box-shadow: var(--pc-shadow);
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.pc-template-card:hover {
  transform: translateY(-4px);
  border-color: rgba(15, 23, 42, 0.15);
  box-shadow: 0 24px 48px rgba(15, 23, 42, 0.12);
}

.pc-template-thumb {
  border-radius: 16px;
  border: 1px solid var(--pc-border);
  min-height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--pc-muted);
  font-weight: 600;
  background: linear-gradient(140deg, #ffffff 0%, #f4f6fb 100%);
}

.pc-template-thumb.pc-template-pod {
  background: linear-gradient(140deg, rgba(37, 99, 235, 0.12) 0%, #ffffff 100%);
}

.pc-template-thumb.pc-template-cod {
  background: linear-gradient(140deg, rgba(249, 115, 22, 0.15) 0%, #ffffff 100%);
}

.pc-template-tags {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.pc-template-title {
  margin: 0;
  font-weight: 600;
  color: var(--pc-ink);
}

.pc-plan-note {
  color: var(--pc-muted);
  font-size: 0.9rem;
  margin-bottom: 12px;
}

.pc-plan-featured {
  border: 2px solid rgba(37, 99, 235, 0.35);
  box-shadow: 0 22px 48px rgba(37, 99, 235, 0.15);
}

.pc-compare-stack {
  display: grid;
  gap: 16px;
}

.pc-compare-card {
  border: 1px solid var(--pc-border);
  border-radius: 16px;
  padding: 16px;
  background: #fff;
  box-shadow: var(--pc-shadow);
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.pc-compare-card:hover {
  transform: translateY(-3px);
  border-color: rgba(15, 23, 42, 0.15);
  box-shadow: 0 22px 42px rgba(15, 23, 42, 0.1);
}

.pc-subscribe {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 6px;
}

.pc-subscribe-note {
  color: var(--pc-muted);
  font-size: 0.85rem;
}

.pc-article-grid {
  display: grid;
  gap: 18px;
}

.pc-article-card {
  display: grid;
  grid-template-columns: minmax(180px, 220px) 1fr;
  gap: 16px;
  padding: 16px;
  border-radius: 18px;
  border: 1px solid var(--pc-border);
  background: #fff;
  box-shadow: var(--pc-shadow);
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.pc-article-card:hover {
  transform: translateY(-3px);
  border-color: rgba(15, 23, 42, 0.15);
  box-shadow: 0 22px 42px rgba(15, 23, 42, 0.1);
}

.pc-article-thumb {
  border-radius: 14px;
  border: 1px solid var(--pc-border);
  background: linear-gradient(140deg, #ffffff 0%, #f4f6fb 100%);
  color: var(--pc-muted);
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 140px;
}

.pc-article-body h5 {
  margin-top: 8px;
}

.pc-article-meta {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.pc-article-read {
  color: var(--pc-muted);
  font-size: 0.85rem;
}

.pc-search {
  display: flex;
  gap: 10px;
  align-items: center;
}

.pc-search .form-control {
  border-radius: 999px;
  padding: 10px 16px;
}

.pc-search .pc-btn-accent {
  border-radius: 999px;
  padding: 10px 18px;
}

.pc-help-stack {
  display: grid;
  gap: 16px;
}

.pc-help-card {
  border: 1px solid var(--pc-border);
  border-radius: 16px;
  padding: 16px;
  background: #fff;
  box-shadow: var(--pc-shadow);
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.pc-help-card:hover {
  transform: translateY(-3px);
  border-color: rgba(15, 23, 42, 0.15);
  box-shadow: 0 22px 42px rgba(15, 23, 42, 0.1);
}

.pc-help-label {
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--pc-cod);
  text-transform: uppercase;
  letter-spacing: 0.8px;
}

.pc-help-support {
  border: 1px dashed var(--pc-border);
  border-radius: 16px;
  padding: 16px;
  background: rgba(15, 23, 42, 0.03);
}

.pc-auth-section {
  background:
    radial-gradient(960px 400px at 12% 0%, rgba(37, 99, 235, 0.08), rgba(37, 99, 235, 0)),
    radial-gradient(960px 420px at 88% 0%, rgba(249, 115, 22, 0.1), rgba(249, 115, 22, 0)),
    var(--pc-surface);
}

.pc-auth-card {
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 24px 50px rgba(15, 23, 42, 0.12);
}

.pc-auth-card:hover {
  transform: none;
}

.pc-auth-card .pc-section-title {
  margin-bottom: 6px;
}

.pc-auth-card .pc-section-sub {
  margin-bottom: 4px;
}

.pc-auth-form .form-label {
  font-weight: 600;
  color: var(--pc-ink);
}

.pc-auth-form .form-control,
.pc-auth-form .form-select {
  min-height: 46px;
  border-radius: 12px;
}

.pc-auth-form .input-group .form-control {
  min-width: 0;
}

.pc-auth-form .input-group .pc-password-toggle {
  min-width: 84px;
  border-color: var(--pc-border);
  background: #fff;
  color: #334155;
  font-size: 0.85rem;
  font-weight: 600;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.pc-auth-form .input-group .btn:hover,
.pc-auth-form .input-group .btn:active {
  transform: none;
}

.pc-auth-form .input-group .pc-password-toggle:hover {
  color: var(--pc-ink);
  background: #f8fafc;
  border-color: #cbd5e1;
}

.pc-auth-form .send_captcha {
  min-width: 118px;
  font-weight: 600;
}

.pc-password-strength {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px 10px;
  align-items: center;
  margin-top: 8px;
  min-height: 18px;
}

.pc-password-strength-track {
  height: 6px;
  border-radius: 999px;
  background: #e2e8f0;
  overflow: hidden;
}

.pc-password-strength-fill {
  display: block;
  height: 100%;
  width: 0%;
  border-radius: inherit;
  transition: width 0.22s ease, background-color 0.22s ease;
  background: #cbd5e1;
}

.pc-password-strength-text {
  font-size: 0.78rem;
  color: var(--pc-muted);
  white-space: nowrap;
}

.pc-password-strength[data-level="1"] .pc-password-strength-fill {
  background: #f97316;
}

.pc-password-strength[data-level="2"] .pc-password-strength-fill {
  background: #2563eb;
}

.pc-password-strength[data-level="3"] .pc-password-strength-fill {
  background: #16a34a;
}

.pc-auth-form .form-item .error {
  display: block;
  margin-top: 6px;
  line-height: 1.35;
}

.pc-auth-form .form-check {
  border: 1px solid var(--pc-border);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.92);
  padding: 10px 12px 10px 36px;
}

.pc-auth-form .form-check .form-check-input {
  margin-top: 0.3rem;
}

.pc-auth-alerts {
  display: grid;
  gap: 8px;
  margin-top: 14px;
}

.pc-alert {
  display: none;
  border-radius: 12px;
  padding: 10px 12px;
  border: 1px solid transparent;
  font-size: 0.88rem;
}

.pc-alert.text-danger {
  color: #be123c !important;
  background: #fff1f2;
  border-color: #fecdd3;
}

.pc-alert.text-success {
  color: #166534 !important;
  background: #ecfdf3;
  border-color: #bbf7d0;
}

.pc-shop-picker {
  border: 1px dashed #cbd5e1;
  border-radius: 14px;
  padding: 12px;
  background: #f8fafc;
}

.pc-shop-picker-head {
  margin-bottom: 10px;
}

.pc-shop-picker-title {
  color: var(--pc-ink);
  font-weight: 700;
  font-size: 0.92rem;
}

.pc-shop-picker-sub {
  color: #475569;
  font-size: 0.82rem;
  margin-top: 2px;
}

.pc-shop-option-list {
  gap: 8px;
}

.pc-shop-picker .pc-shop-option {
  display: grid;
  gap: 2px;
  text-align: left;
  font-weight: 600;
  border-radius: 10px;
  border-color: #d1d9e6;
  background: #fff;
  padding-top: 10px;
  padding-bottom: 10px;
}

.pc-shop-picker .pc-shop-option:hover {
  border-color: #94a3b8;
}

.pc-shop-option-main {
  color: var(--pc-ink);
  font-size: 0.93rem;
}

.pc-shop-option-domain {
  color: #64748b;
  font-size: 0.8rem;
  font-weight: 500;
}

.pc-shop-option-status {
  color: #1d4ed8;
  font-size: 0.74rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.pc-auth-note {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.pc-auth-item {
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.08);
  font-size: 0.8rem;
  color: var(--pc-ink);
}

.pc-auth-hint {
  margin-top: 6px;
  font-size: 0.85rem;
  color: var(--pc-muted);
}

@media (max-width: 767px) {
  .pc-search {
    flex-direction: column;
    align-items: stretch;
  }

  .pc-auth-card {
    border-radius: 16px;
  }

  .pc-auth-form .send_captcha {
    min-width: 104px;
    font-size: 0.82rem;
    padding-left: 10px;
    padding-right: 10px;
  }

  .pc-auth-form .input-group .pc-password-toggle {
    min-width: 74px;
    font-size: 0.78rem;
    padding-left: 8px;
    padding-right: 8px;
  }

  .pc-password-strength {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .pc-auth-form .form-check {
    font-size: 0.9rem;
  }
}

@media (max-width: 767px) {
  .pc-subscribe {
    align-items: flex-start;
  }

  .pc-article-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767px) {
  .pc-section .table-responsive {
    border: 1px solid var(--pc-border);
    border-radius: 16px;
    background: #fff;
    box-shadow: var(--pc-shadow);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .pc-section .table {
    min-width: 640px;
    margin-bottom: 0;
  }
}

.pc-statbar {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
}

.pc-stat {
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--pc-border);
  background: #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

.pc-stat-value {
  font-weight: 700;
  color: var(--pc-ink);
  font-size: 1.1rem;
}

.pc-stat-label {
  color: var(--pc-muted);
  font-size: 0.85rem;
}

.pc-claim-note {
  color: var(--pc-muted);
  font-size: 0.85rem;
}

.pc-card {
  border: 1px solid var(--pc-border);
  border-radius: 18px;
  background: #fff;
  box-shadow: var(--pc-shadow);
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.pc-card:hover {
  transform: translateY(-2px);
  border-color: rgba(15, 23, 42, 0.15);
  box-shadow: 0 22px 42px rgba(15, 23, 42, 0.1);
}

.pc-model-card {
  border: 1px solid var(--pc-border);
  border-radius: 18px;
  padding: 24px;
  background: #fff;
  box-shadow: var(--pc-shadow);
  transition: transform 0.24s ease, box-shadow 0.24s ease, border-color 0.24s ease;
}

.pc-model-card:hover {
  transform: translateY(-3px);
  border-color: rgba(15, 23, 42, 0.15);
  box-shadow: 0 24px 44px rgba(15, 23, 42, 0.1);
}

.pc-model-card.pc-pod {
  border-top: 4px solid var(--pc-pod);
}

.pc-model-card.pc-cod {
  border-top: 4px solid var(--pc-cod);
}

.pc-model-scope {
  color: var(--pc-muted);
  font-size: 0.95rem;
}

.pc-illustration {
  border: 1px dashed var(--pc-border);
  border-radius: 20px;
  padding: 28px;
  background: linear-gradient(140deg, #ffffff 0%, #f4f6fb 80%);
  min-height: 260px;
  color: #6b7280;
}

.pc-hero-visual {
  border-radius: 20px;
  border: 1px solid var(--pc-border);
  background: linear-gradient(160deg, #ffffff 0%, #f4f6fb 100%);
  padding: 20px;
  min-height: 220px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.pc-visual-header,
.pc-visual-footer {
  font-size: 0.85rem;
  color: var(--pc-muted);
}

.pc-visual-row {
  display: grid;
  gap: 12px;
}

.pc-visual-card {
  padding: 12px 14px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--pc-border);
}

.pc-visual-title {
  font-weight: 600;
  color: var(--pc-ink);
  font-size: 0.95rem;
}

.pc-visual-flow {
  color: var(--pc-muted);
  font-size: 0.85rem;
}

.pc-proof {
  border-radius: 20px;
  border: 1px solid var(--pc-border);
  background: linear-gradient(160deg, #ffffff 0%, #f4f6fb 100%);
  padding: 24px;
  min-height: 260px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.pc-proof-pod {
  box-shadow: 0 18px 40px rgba(37, 99, 235, 0.12);
}

.pc-proof-cod {
  box-shadow: 0 18px 40px rgba(249, 115, 22, 0.12);
}

.pc-proof-title {
  font-weight: 600;
  color: var(--pc-ink);
}

.pc-proof-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
}

.pc-proof-card {
  padding: 12px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--pc-border);
  color: var(--pc-muted);
  font-size: 0.9rem;
}

.pc-proof-foot {
  color: var(--pc-muted);
  font-size: 0.9rem;
}

.pc-hero-panel {
  border-radius: 16px;
  border: 1px solid var(--pc-border);
  padding: 16px;
  background: #fff;
}

.pc-hero-panel.pc-pod {
  background: var(--pc-pod-soft);
}

.pc-hero-panel.pc-cod {
  background: var(--pc-cod-soft);
}

.pc-flow-inline {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 16px;
}

.pc-flow-step {
  border: 1px solid var(--pc-border);
  border-radius: 16px;
  padding: 16px;
  background: #fff;
}

.pc-flow-title {
  font-weight: 600;
  color: var(--pc-ink);
}

.pc-flow-highlight {
  border-width: 2px;
}

.pc-flow-highlight-pod {
  border-color: var(--pc-pod);
  box-shadow: 0 12px 24px rgba(37, 99, 235, 0.18);
}

.pc-flow-highlight-cod {
  border-color: var(--pc-cod);
  box-shadow: 0 12px 24px rgba(249, 115, 22, 0.18);
}

.pc-flow-vertical {
  display: grid;
  gap: 16px;
}

.pc-flow-vertical .pc-flow-step {
  position: relative;
  padding-left: 18px;
  border-left: 4px solid var(--pc-cod);
}

.pc-metric {
  font-size: 2rem;
  font-weight: 700;
  color: var(--pc-ink);
}

.pc-cta {
  background: linear-gradient(120deg, #101827 0%, #1f2937 55%, #101827 100%);
  color: #fff;
  border-radius: 22px;
}

.pc-cta .pc-btn-accent {
  box-shadow: 0 14px 30px rgba(251, 191, 36, 0.3);
}

.pc-footer {
  background: #0f172a;
  color: #d1d5db;
}

.pc-footer a {
  color: #d1d5db;
  text-decoration: none;
}

.pc-footer a:hover {
  color: var(--pc-accent);
}

.pc-muted {
  color: var(--pc-muted);
}

.pc-footer .list-unstyled li {
  margin-bottom: 4px;
}

.pc-footer-accordion {
  margin: 0;
}

.pc-footer-accordion summary {
  cursor: pointer;
  list-style: none;
  font-weight: 600;
  color: #e5e7eb;
}

.pc-footer-accordion summary::-webkit-details-marker {
  display: none;
}

.pc-highlight {
  border: 2px solid var(--pc-cod-deep);
  box-shadow: 0 18px 40px rgba(124, 58, 237, 0.2);
}

.pc-theme-pod {
  color: var(--pc-pod);
}

.pc-theme-cod {
  color: var(--pc-cod);
}

.table {
  --bs-table-bg: #fff;
  --bs-table-border-color: var(--pc-border);
}

.table thead th {
  background: #f8fafc;
  color: var(--pc-ink);
  font-weight: 600;
}

.table > :not(caption) > * > * {
  padding: 0.82rem 0.9rem;
}

.pc-reveal {
  animation: pc-fade-up 0.7s ease both;
}

@keyframes pc-fade-up {
  from {
    opacity: 0;
    transform: translateY(14px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 991px) {
  .pc-section {
    padding: 72px 0;
  }

  .pc-hero::after {
    width: 220px;
    height: 220px;
  }

  .pc-navbar .navbar-nav {
    align-items: flex-start !important;
  }

  .pc-navbar .navbar-collapse {
    margin-top: 10px;
    padding: 14px 16px;
    border: 1px solid var(--pc-border);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 18px 38px rgba(15, 23, 42, 0.12);
  }

  .pc-navbar .navbar-nav .btn {
    width: auto;
  }

  .pc-navbar .navbar-nav .btn + .btn {
    margin-top: 4px;
  }

  .pc-footer .row > div {
    margin-bottom: 10px;
  }

  .pc-footer .border-top {
    gap: 6px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .pc-reveal {
    animation: none;
  }

  .btn,
  .pc-card,
  .pc-model-card,
  .pc-template-card,
  .pc-compare-card,
  .pc-article-card,
  .pc-help-card,
  .pc-navbar .nav-link::after {
    transition: none;
  }

  .btn:hover,
  .pc-card:hover,
  .pc-model-card:hover,
  .pc-template-card:hover,
  .pc-compare-card:hover,
  .pc-article-card:hover,
  .pc-help-card:hover {
    transform: none;
  }
}

@media (max-width: 767px) {
  .pc-footer {
    padding-top: 32px;
    padding-bottom: 32px;
  }

  .pc-footer h5 {
    margin-bottom: 6px;
  }

  .pc-footer h6 {
    margin-top: 12px;
    margin-bottom: 6px;
  }

  .pc-footer p {
    margin-bottom: 8px;
    font-size: 0.95rem;
  }

  .pc-footer .list-unstyled {
    margin-bottom: 8px;
  }

  .pc-footer .border-top {
    margin-top: 16px !important;
    padding-top: 12px !important;
    font-size: 0.85rem;
    color: #94a3b8;
  }

  .pc-footer-accordion {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding-top: 10px;
  }

  .pc-footer-accordion summary {
    padding: 6px 0;
    position: relative;
  }

  .pc-footer-accordion summary::after {
    content: "+";
    position: absolute;
    right: 0;
    top: 0;
    color: #94a3b8;
  }

  .pc-footer-accordion[open] summary::after {
    content: "–";
  }

  .pc-footer-accordion ul {
    margin-top: 8px;
  }

  .pc-footer-accordion li {
    margin-bottom: 6px;
  }

  .pc-footer-accordion a {
    font-size: 0.92rem;
    display: inline-block;
    padding: 2px 0;
  }
}

@media (min-width: 768px) {
  .pc-footer-accordion summary {
    cursor: default;
    pointer-events: none;
  }

  .pc-footer-accordion summary::after {
    content: none;
  }

  details.pc-footer-accordion:not([open]) > ul {
    display: block;
  }
}
