/* Public PHP design system; images are authentic first-party UI captures. */
.public-language-panel {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  align-items: center;
  padding: clamp(var(--public-space-6), 4vw, var(--public-space-12));
  gap: var(--public-space-10);
  border-color: var(--public-border);
  border-radius: var(--public-radius);
  color: var(--public-text);
  background:
    radial-gradient(
      ellipse at 95% 0,
      var(--public-primary-soft),
      transparent 65%
    ),
    linear-gradient(115deg, var(--public-surface-soft), var(--public-surface));
}
.public-language-copy {
  min-width: 0;
}
.public-language-copy h2 {
  max-width: 22ch;
  font-weight: 800;
  letter-spacing: -0.035em;
  line-height: 1.2;
}
.public-language-copy p {
  color: var(--public-muted);
  font-size: var(--public-font-sm);
  line-height: 1.75;
}
.public-language-copy > small {
  font-size: var(--public-font-xs);
}
.public-language-benefits {
  margin-top: var(--public-space-5);
  font-size: var(--public-font-sm);
}
.public-language-benefits li {
  align-items: flex-start;
}
.public-language-badges {
  gap: var(--public-space-2);
}
.public-language-badges > .public-language-option {
  display: inline-flex;
  align-items: center;
  gap: var(--public-space-2);
  padding: 0.6rem 0.7rem;
  border-radius: var(--public-radius-sm);
  color: var(--public-text);
  background: var(--public-surface);
  border-color: var(--public-border);
}
.public-language-option > span {
  display: grid;
  text-align: left;
  padding: 0;
  border: 0;
  background: transparent;
  border-radius: 0;
}
.public-language-option strong {
  font-size: var(--public-font-sm);
  line-height: 1.65;
}
.public-language-option small {
  margin: 0;
  color: var(--public-muted);
  font-size: var(--public-font-xs);
  font-weight: 400;
  line-height: 1.4;
}
.public-language-code {
  display: grid;
  place-items: center;
  width: 1.65rem;
  height: 1.65rem;
  border-radius: 50%;
  background: var(--public-primary);
  color: var(--public-surface);
  font-size: 0.6rem;
}
.public-language-code[data-language="hi"] {
  background: #ef4444;
}
.public-language-code[data-language="kn"] {
  background: #7057dc;
}
.public-language-badge {
  padding: 0.25rem 0.65rem;
  font-size: var(--public-font-xs);
}
.public-language-team-example {
  padding: var(--public-space-6);
  border-radius: var(--public-radius);
  background: var(--public-surface);
  border: 1px solid var(--public-border);
  box-shadow: var(--public-shadow);
}
.public-language-team-example > i {
  display: grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  color: var(--public-primary);
  font-size: var(--public-font-xl);
  background: var(--public-primary-soft);
  border-radius: var(--public-radius-sm);
  margin-bottom: var(--public-space-4);
}
.public-language-team-example h3 {
  font-size: var(--public-font-lg);
  font-weight: 700;
}
.public-language-team-example p {
  line-height: 1.8;
}
.public-product-preview {
  min-width: 0;
  width: 100%;
  margin: 0;
}
.public-product-frames {
  position: relative;
  min-width: 0;
}
.public-product-frame {
  min-width: 0;
}
.public-product-frame img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--public-border);
  border-radius: var(--public-radius-sm);
  box-shadow: var(--public-shadow-lg);
}
.public-product-language {
  display: inline-flex;
  align-items: center;
  gap: var(--public-space-2);
  padding: 0.4rem 0.85rem;
  margin-bottom: var(--public-space-3);
  border: 1px solid var(--public-border);
  border-radius: 999px;
  background: var(--public-surface);
  font-weight: 600;
  color: var(--public-text);
  font-size: var(--public-font-sm);
}
.public-product-language b {
  font-size: var(--public-font-xs);
  color: var(--public-primary);
}
.public-product-preview figcaption {
  margin-top: var(--public-space-4);
  font-size: var(--public-font-xs);
  line-height: 1.7;
  color: var(--public-muted);
}
.public-product-preview--stack .public-product-frames {
  display: grid;
}
.public-product-preview--stack .public-product-frame {
  grid-area: 1 / 1;
  align-self: start;
  width: 56%;
}
.public-product-preview--stack .public-product-frame:nth-child(1) {
  margin: 0;
}
.public-product-preview--stack .public-product-frame:nth-child(2) {
  margin-top: 2.9rem;
  margin-left: 22%;
}
.public-product-preview--stack .public-product-frame:nth-child(3) {
  margin-top: 5.8rem;
  margin-left: 44%;
}
.public-product-preview--hero {
  max-width: 25rem;
  margin-inline: auto;
}
.public-language-hero {
  padding-block: clamp(var(--public-space-8), 5vw, 5rem);
  background:
    radial-gradient(
      ellipse at 85% 45%,
      var(--public-primary-soft),
      transparent 65%
    ),
    var(--public-surface-soft);
}
.public-language-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  align-items: center;
  gap: var(--public-space-10);
}
.public-language-hero h1 {
  font-size: clamp(2rem, 3.1vw, 3rem);
  line-height: 1.15;
  font-weight: 800;
  letter-spacing: -0.04em;
}
.public-language-hero h1 em {
  font-style: normal;
  color: var(--public-primary);
}
.public-language-hero p {
  max-width: 38rem;
  color: var(--public-muted);
  font-size: var(--public-font-md);
  line-height: 1.75;
}
.public-language-hero-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: var(--public-space-3) var(--public-space-5);
  list-style: none;
  padding: 0;
  margin: var(--public-space-6) 0 0;
  font-size: var(--public-font-xs);
  color: var(--public-muted);
}
.public-language-hero-benefits li {
  display: flex;
  align-items: flex-start;
  gap: var(--public-space-2);
}
.public-language-hero-benefits i {
  color: var(--public-primary);
}
.public-language-steps li {
  border: 1px solid var(--public-border);
  border-radius: var(--public-radius);
  box-shadow: var(--public-shadow);
}
.public-language-steps span {
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  background: var(--public-primary-soft);
  border-radius: var(--public-radius-sm);
  font-size: var(--public-font-lg);
}
.public-language-steps h3 {
  font-size: var(--public-font-md);
}
.public-language-pack .public-language-panel {
  padding: var(--public-space-6);
  gap: var(--public-space-6);
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
}
.public-language-pack h2 {
  font-size: var(--public-font-xl);
}
.public-language-menu-item {
  border-radius: var(--public-radius-sm);
  background: var(--public-primary-soft);
}
.public-language-selector nav {
  min-width: 12.5rem;
}
.public-language-selector nav a {
  display: flex;
  align-items: center;
  gap: var(--public-space-3);
  border-radius: var(--public-radius-sm);
}
.public-language-selector nav a > span {
  display: grid;
}
.public-language-selector nav a small {
  font-size: var(--public-font-xs);
  color: var(--public-muted);
}
.public-language-selector nav a > i {
  margin-left: auto;
  color: var(--public-primary);
}
.home-v3 .hv3-product {
  overflow: visible;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.home-v3 .hv3-product img {
  aspect-ratio: auto;
}
.home-v3 .hv3-product .public-product-language {
  margin-left: var(--public-space-4);
}
.home-v3 .hv3-product figcaption {
  padding-inline: var(--public-space-4);
}
@media (max-width: 991px) {
  .public-language-panel,
  .public-language-pack .public-language-panel,
  .public-language-hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .public-language-copy h2 {
    max-width: none;
  }
  .public-product-preview--stack {
    max-width: 40rem;
    margin-inline: auto;
  }
  .public-language-hero .public-product-preview {
    max-width: 25rem;
    margin-inline: auto;
  }
}
@media (max-width: 575px) {
  .public-language-panel {
    padding: var(--public-space-5);
    gap: var(--public-space-6);
  }
  .public-language-copy h2 {
    font-size: 1.65rem;
  }
  .public-language-hero h1 {
    font-size: 1.9rem;
  }
  .public-language-actions {
    gap: var(--public-space-3);
  }
  .public-language-actions .btn {
    width: 100%;
  }
  .public-language-team-example {
    padding: var(--public-space-5);
  }
  .public-language-pack h2 {
    font-size: var(--public-font-lg);
  }
}
