html[data-yop-theme="light"], body {
  background: var(--yop-bg);
  color: var(--yop-text);
  font-family: var(--yop-font);
}

body {
  min-height: 100vh;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

img, svg, video { max-width: 100%; height: auto; }
a { color: var(--yop-primary); text-decoration: none; }
a:hover { text-decoration: none; }

.yop-container, .yop-enterprise-shell {
  width: min(var(--yop-container), calc(100% - 32px));
  margin-inline: auto;
}

.yop-section {
  padding: clamp(42px, 7vw, 96px) 0;
}

.yop-eyebrow, .enterprise-kicker {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  border: 1px solid rgba(37, 99, 255, .14);
  background: rgba(37, 99, 255, .08);
  color: var(--yop-primary);
  border-radius: var(--yop-radius-pill);
  padding: .45rem .8rem;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.yop-display, .enterprise-hero h1, .enterprise-section-head h2 {
  color: var(--yop-text);
  letter-spacing: -0.055em;
  line-height: .95;
  font-weight: 780;
}

.yop-lead, .enterprise-hero p, .enterprise-section-head p {
  color: var(--yop-muted);
  line-height: 1.7;
}

.yop-page-main {
  background: var(--yop-gradient-soft);
  min-height: 70vh;
}

.yop-card, .enterprise-category-card, .enterprise-listing-card, .enterprise-panel, .enterprise-mockup {
  background: rgba(255, 255, 255, .92);
  border: 1px solid var(--yop-border);
  border-radius: var(--yop-radius-lg);
  box-shadow: var(--yop-shadow-soft);
  color: var(--yop-text);
}

.yop-button, .enterprise-primary-button, .enterprise-link-button, .cta-button, .primary-button,
button[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  min-height: 46px;
  border: 0;
  border-radius: 14px;
  padding: .85rem 1.25rem;
  background: var(--yop-gradient-primary);
  color: #fff !important;
  font-weight: 700;
  cursor: pointer;
  box-shadow: 0 14px 30px rgba(37, 99, 255, .22);
  transition: transform var(--yop-transition), box-shadow var(--yop-transition);
}

.yop-button:hover, .enterprise-primary-button:hover, .enterprise-link-button:hover, .cta-button:hover, .primary-button:hover,
button[type="submit"]:hover {
  transform: translateY(-1px);
  box-shadow: 0 20px 38px rgba(37, 99, 255, .28);
}

input, select, textarea {
  font: inherit;
  color: var(--yop-text);
  background: #fff;
  border: 1px solid #d9e2ef;
  border-radius: 16px;
  padding: .95rem 1rem;
}

input:focus, select:focus, textarea:focus, button:focus-visible, a:focus-visible {
  outline: none;
  box-shadow: var(--yop-shadow-focus);
}

@media (max-width: 768px) {
  .yop-container, .yop-enterprise-shell { width: min(100% - 20px, var(--yop-container)); }
  .enterprise-hero h1, .yop-display { font-size: clamp(2.5rem, 14vw, 4rem); }
}
