/* Breakpoint values are generated from Scripts/frontend-breakpoints.json. */

/* =====================================================================
   Photocka Styles v2.0
   Р С›РЎРѓР Р…Р С•Р Р†Р В° РЎРѓР С‘РЎРѓРЎвЂљР ВµР СРЎвЂ№ РЎРѓР ВµР С”РЎвЂ Р С‘Р в„– Р С‘ Р В±Р В°Р В·Р С•Р Р†РЎвЂ№РЎвЂ¦ Р С”Р С•Р СР С—Р С•Р Р…Р ВµР Р…РЎвЂљР С•Р Р† Photocka

   Р вЂ”Р С•Р Р…Р В° Р С•РЎвЂљР Р†Р ВµРЎвЂљРЎРѓРЎвЂљР Р†Р ВµР Р…Р Р…Р С•РЎРѓРЎвЂљР С‘ РЎвЂћР В°Р в„–Р В»Р В°:
   РІР‚Сћ Р В±Р В°Р В·Р С•Р Р†Р В°РЎРЏ РЎРѓР ВµР С”РЎвЂ Р С‘РЎРЏ Р С‘ Р Р†Р Р…РЎС“РЎвЂљРЎР‚Р ВµР Р…Р Р…Р С‘Р в„– РЎР‚Р С‘РЎвЂљР С
   РІР‚Сћ РЎвЂ Р Р†Р ВµРЎвЂљР С•Р Р†РЎвЂ№Р Вµ РЎР‚Р С•Р В»Р С‘ РЎРѓР ВµР С”РЎвЂ Р С‘Р в„–
   РІР‚Сћ РЎС“Р Р…Р С‘Р Р†Р ВµРЎР‚РЎРѓР В°Р В»РЎРЉР Р…РЎвЂ№Р Вµ РЎРѓР ВµРЎвЂљР С”Р С‘ Р С”Р В°РЎР‚РЎвЂљР С•РЎвЂЎР ВµР С”
   РІР‚Сћ Р В±Р В°Р В·Р С•Р Р†Р В°РЎРЏ Р С”Р В°РЎР‚РЎвЂљР С•РЎвЂЎР С”Р В°
   РІР‚Сћ note / divider / РЎвЂљР В°Р В±Р В»Р С‘РЎвЂ РЎвЂ№
   РІР‚Сћ РЎРѓР В»РЎС“Р В¶Р ВµР В±Р Р…РЎвЂ№Р Вµ foundation-РЎС“РЎвЂљР С‘Р В»Р С‘РЎвЂљРЎвЂ№

   Р вЂ™ РЎвЂћР В°Р в„–Р В» Р СњР вЂў Р Р†РЎвЂ¦Р С•Р Т‘РЎРЏРЎвЂљ:
   РІР‚Сћ Hero
   РІР‚Сћ CTA
   РІР‚Сћ Action Menu
   РІР‚Сћ SVG-Р С‘Р С”Р С•Р Р…Р С”Р С‘ Р С‘Р В· sprite
   ===================================================================== */


/* =========================================================
   1. Р вЂР С’Р вЂ”Р С›Р вЂ™Р С’Р Р‡ Р РЋР вЂўР С™Р В¦Р ВР Р‡ Р В Р вЂ™Р СњР Р€Р СћР В Р вЂўР СњР СњР ВР в„ў Р В Р ВР СћР Сљ
   ========================================================= */



/* =========================================================
   2. Р вЂР С’Р вЂ”Р С›Р вЂ™Р В«Р вЂў Р СћР вЂўР С™Р РЋР СћР С›Р вЂ™Р В«Р вЂў Р В­Р вЂєР вЂўР СљР вЂўР СњР СћР В« Р РЋР вЂўР С™Р В¦Р ВР в„ў
   ========================================================= */

.phc__subtitle {
  font-size: var(--phc-font-size-lg);
  color: var(--phc-text-secondary);
}

/* =========================================================
   3. Р В¦Р вЂ™Р вЂўР СћР С›Р вЂ™Р В«Р вЂў Р В Р С›Р вЂєР В Р РЋР вЂўР С™Р В¦Р ВР в„ў
   ========================================================= */

/* Р РЋР Р†Р ВµРЎвЂљР В»Р В°РЎРЏ РЎРѓР ВµР С”РЎвЂ Р С‘РЎРЏ */

.phc-section.phc--light {
  background: var(--phc-bg-white);
  color: var(--phc-text-primary);
}

.phc--light a {
  color: var(--phc-link-color);
}

.phc--light a:hover {
  color: var(--phc-link-hover);
}


/* Р С™РЎР‚Р ВµР СР С•Р Р†Р В°РЎРЏ РЎРѓР ВµР С”РЎвЂ Р С‘РЎРЏ */

.phc-section.phc--cream {
  background: var(--phc-bg-cream);
  color: var(--phc-text-primary);
}

.phc--cream a {
  color: var(--phc-link-color);
}

.phc--cream a:hover {
  color: var(--phc-link-hover);
}


/* Р СћРЎвЂР СР Р…Р В°РЎРЏ Р Р…Р ВµР в„–РЎвЂљРЎР‚Р В°Р В»РЎРЉР Р…Р В°РЎРЏ РЎРѓР ВµР С”РЎвЂ Р С‘РЎРЏ */

.phc-section.phc--dark-neutral {
  background: var(--phc-bg-graphite);
  color: var(--phc-text-on-dark);
}

.phc--dark-neutral h2,
.phc--dark-neutral .phc-title {
  color: var(--phc-text-on-dark);
}

.phc--dark-neutral .phc__subtitle {
  color: var(--phc-text-on-dark-muted);
}

.phc--dark-neutral a {
  color: var(--phc-link-on-dark);
}

.phc--dark-neutral a:hover {
  color: var(--phc-link-on-dark-hover);
}


/* Р СћРЎвЂР СР Р…Р В°РЎРЏ Р В°Р С”РЎвЂ Р ВµР Р…РЎвЂљР Р…Р В°РЎРЏ РЎРѓР ВµР С”РЎвЂ Р С‘РЎРЏ */

.phc-section.phc--dark-accent {
  background: var(--phc-bg-blue-dark);
  color: var(--phc-text-on-dark);
}

.phc--dark-accent h2,
.phc--dark-accent .phc-title {
  color: var(--phc-text-on-dark);
}

.phc--dark-accent .phc__subtitle {
  color: var(--phc-text-on-dark-muted);
}

.phc--dark-accent a {
  color: var(--phc-link-on-dark);
}

.phc--dark-accent a:hover {
  color: var(--phc-link-on-dark-hover);
}


/* Р С›Р В±РЎвЂ°Р В°РЎРЏ Р С”Р С•РЎР‚РЎР‚Р ВµР С”РЎвЂ Р С‘РЎРЏ Р С—Р С•Р Т‘Р В·Р В°Р С–Р С•Р В»Р С•Р Р†Р С”Р С•Р Р† Р Р…Р В° РЎвЂљРЎвЂР СР Р…РЎвЂ№РЎвЂ¦ РЎвЂћР С•Р Р…Р В°РЎвЂ¦ */

.phc--dark-neutral .phc__subtitle,
.phc--dark-accent .phc__subtitle {
  color: var(--phc-text-on-dark-muted);
}


/* =========================================================
   4. Р Р€Р СњР ВР вЂ™Р вЂўР В Р РЋР С’Р вЂєР В¬Р СњР С’Р Р‡ Р РЋР вЂўР СћР С™Р С’ Р С™Р С’Р В Р СћР С›Р В§Р вЂўР С™
   Р вЂР В°Р В·Р В°: 3 Р С”Р С•Р В»Р С•Р Р…Р С”Р С‘ Р Р…Р В° Р Т‘Р ВµРЎРѓР С”РЎвЂљР С•Р С—Р Вµ, 2 Р Р…Р В° Р С—Р В»Р В°Р Р…РЎв‚¬Р ВµРЎвЂљР Вµ, 1 Р Р…Р В° Р СР С•Р В±Р С‘Р В»РЎРЉР Р…Р С•Р С
   ========================================================= */



/* =========================================================
   5. Р СљР С›Р вЂќР ВР В¤Р ВР С™Р С’Р СћР С›Р В Р В« Р С™Р С›Р вЂєР ВР В§Р вЂўР РЋР СћР вЂ™Р С’ Р С™Р С›Р вЂєР С›Р СњР С›Р С™
   ========================================================= */


/* Р вЂ“РЎвЂРЎРѓРЎвЂљР С”Р В°РЎРЏ РЎРѓР ВµРЎвЂљР С”Р В° 2РЎвЂ¦2 Р Т‘Р В»РЎРЏ РЎвЂЎР ВµРЎвЂљРЎвЂ№РЎР‚РЎвЂРЎвЂ¦ Р С”Р В°РЎР‚РЎвЂљР С•РЎвЂЎР ВµР С” */


/* =========================================================
   6. Р СљР С›Р вЂќР ВР В¤Р ВР С™Р С’Р СћР С›Р В Р В« Р СџР вЂєР С›Р СћР СњР С›Р РЋР СћР В / Р В Р С’Р вЂ”Р СљР вЂўР В Р С’ Р С™Р С’Р В Р СћР С›Р В§Р вЂўР С™
   Р ВРЎРѓР С—Р С•Р В»РЎРЉР В·РЎС“РЎР‹РЎвЂљРЎРѓРЎРЏ Р С”Р В°Р С” Р С•Р В±РЎвЂ°Р С‘Р Вµ Р Р†Р В°РЎР‚Р С‘Р В°Р Р…РЎвЂљРЎвЂ№ Р Т‘Р В»РЎРЏ РЎР‚Р В°Р В·Р Р…РЎвЂ№РЎвЂ¦ РЎРѓР ВµР С”РЎвЂ Р С‘Р в„–
   ========================================================= */



/* =========================================================
   7. Р С’Р вЂќР С’Р СџР СћР ВР вЂ™ Р РЋР вЂўР СћР С›Р С™
   Р СћР С•РЎвЂЎР С”Р С‘ РЎРѓР С•РЎвЂ¦РЎР‚Р В°Р Р…Р ВµР Р…РЎвЂ№ Р С—Р С• Р В»Р С•Р С–Р С‘Р С”Р Вµ РЎРѓРЎвЂљР В°РЎР‚Р С•Р С–Р С• РЎвЂћР В°Р в„–Р В»Р В°
   ========================================================= */



/* =========================================================
   8. Р вЂР С’Р вЂ”Р С›Р вЂ™Р С’Р Р‡ Р С™Р С’Р В Р СћР С›Р В§Р С™Р С’
   ========================================================= */



/* Р вЂ™Р Р…РЎС“РЎвЂљРЎР‚Р ВµР Р…Р Р…Р С‘Р в„– РЎР‚Р С‘РЎвЂљР С Р С”Р В°РЎР‚РЎвЂљР С•РЎвЂЎР С”Р С‘ */



/* Р СџР С•Р Р†Р ВµР Т‘Р ВµР Р…Р С‘Р Вµ Р С—РЎР‚Р С‘ Р Р…Р В°Р Р†Р ВµР Т‘Р ВµР Р…Р С‘Р С‘ */



/* Р РЋР Р†Р ВµРЎвЂљР В»РЎвЂ№Р Вµ Р С”Р В°РЎР‚РЎвЂљР С•РЎвЂЎР С”Р С‘ */



/* Р СћРЎвЂР СР Р…РЎвЂ№Р Вµ Р С”Р В°РЎР‚РЎвЂљР С•РЎвЂЎР С”Р С‘ */



/* =========================================================
   9. NOTE / Р В Р вЂўР вЂњР вЂєР С’Р СљР вЂўР СњР СћР СњР В«Р вЂў Р вЂР вЂєР С›Р С™Р В
   ========================================================= */

/* =========================================================
   10. Р В Р С’Р вЂ”Р вЂќР вЂўР вЂєР ВР СћР вЂўР вЂєР В
   ========================================================= */

.phc-divider {
  height: 1px;
  background: var(--phc-border);
  margin-block: var(--phc-space-group-internal);
}

.phc--dark-neutral .phc-divider,
.phc--dark-accent .phc-divider {
  background: var(--phc-border-on-dark);
}


/* =========================================================
   11. Р СњР С›Р В Р СљР С’Р вЂєР ВР вЂ”Р С’Р В¦Р ВР Р‡ Р СћР С’Р вЂР вЂєР ВР В¦
   ========================================================= */

.phc-section table {
  width: 100%;
  border-collapse: collapse;
}

.phc-section th,
.phc-section td {
  padding: var(--phc-space-2);
  border-bottom: 1px solid var(--phc-border);
  text-align: start;
}

.phc--dark-neutral th,
.phc--dark-neutral td,
.phc--dark-accent th,
.phc--dark-accent td {
  border-bottom: 1px solid var(--phc-border-on-dark);
}


/* =========================================================
   12. Р вЂ™Р В«Р вЂќР вЂўР вЂєР вЂўР СњР ВР вЂў Р СћР вЂўР С™Р РЋР СћР С’
   ========================================================= */

.phc-section ::selection {
  background: var(--phc-selection-bg);
  color: var(--phc-selection-text);
}


/* =========================================================
   13. Р вЂњР В Р С’Р вЂќР ВР вЂўР СњР Сћ Р вЂќР вЂєР Р‡ Р ВР С™Р С›Р СњР С›Р С™ Р В Р СћР вЂўР С™Р РЋР СћР С’
   ========================================================= */

.phc-icon-gradient {
  background: var(--phc-brand-icon-gradient);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}


/* --------------------------------------------------------------------------
   14. INTERNAL PATTERNS BASE
   Р вЂР В°Р В·Р С•Р Р†РЎвЂ№Р в„– Р С”Р В°РЎР‚Р С”Р В°РЎРѓ Р Р†Р Р…РЎС“РЎвЂљРЎР‚Р ВµР Р…Р Р…Р С‘РЎвЂ¦ Р С—Р В°РЎвЂљРЎвЂљР ВµРЎР‚Р Р…Р С•Р Р† РЎРѓРЎвЂљРЎР‚Р В°Р Р…Р С‘РЎвЂ РЎвЂ№.
   Р вЂР ВµР В· theme-Р В»Р С•Р С–Р С‘Р С”Р С‘. Р вЂР ВµР В· Hero / CTA.
   -------------------------------------------------------------------------- */

/* ==========================================================
   14.1 PAGE LAYER
   ========================================================== */

.phc-page--patterns {
  background: var(--phc-page-bg-patterns);
  color: var(--phc-pattern-text-primary);
}

/* ==========================================================
   14.2 BASE PATTERN CONTAINER
   Р вЂўР Т‘Р С‘Р Р…РЎвЂ№Р в„– Р С”Р С•Р Р…РЎвЂљР ВµР в„–Р Р…Р ВµРЎР‚ Р Р†Р Р…РЎС“РЎвЂљРЎР‚Р ВµР Р…Р Р…Р С‘РЎвЂ¦ Р В±Р В»Р С•Р С”Р С•Р Р†.
   ========================================================== */

.phc-pattern {
  position: relative;
  inline-size: 100%;
  max-inline-size: var(--phc-pattern-content-max);
  margin-inline: auto;
  padding:
    var(--phc-pattern-section-padding-y)
    var(--phc-pattern-section-padding-x);
  border: 1px solid var(--phc-pattern-border);
  border-radius: var(--phc-pattern-radius-md);
  background: var(--phc-pattern-theme-white-bg);
  box-shadow: var(--phc-pattern-shadow-sm);
}

.phc-pattern > * {
  min-inline-size: 0;
}

.phc-pattern__inner {
  display: flex;
  flex-direction: column;
  gap: var(--phc-pattern-block-gap-lg);
  min-inline-size: 0;
}

.phc-pattern__head {
  display: flex;
  flex-direction: column;
  gap: var(--phc-pattern-block-gap-xs);
  min-inline-size: 0;
}

.phc-pattern__eyebrow {
  margin: 0;
  font-size: var(--phc-font-size-sm);
  line-height: var(--phc-line-height-base);
  font-weight: var(--phc-font-weight-semibold);
  color: var(--phc-pattern-text-muted);
}

.phc-pattern__title {
  margin: 0;
  font-family: var(--phc-font-family-heading);
  font-size: var(--phc-type-section-title-size);
  line-height: var(--phc-line-height-tight);
  font-weight: var(--phc-font-weight-bold);
  letter-spacing: -0.02em;
  color: var(--phc-pattern-text-primary);
  text-wrap: balance;
  max-inline-size: none;
}

.phc-pattern__lead,
.phc-pattern__subtitle,
.phc-pattern__description {
  margin: 0;
  max-inline-size: var(--phc-pattern-text-max);
  font-size: var(--phc-font-size-base);
  line-height: var(--phc-line-height-base);
  color: var(--phc-pattern-text-secondary);
}

.phc-pattern__body {
  display: flex;
  flex-direction: column;
  gap: var(--phc-pattern-block-gap-md);
  min-inline-size: 0;
}

.phc-pattern__body > * {
  min-inline-size: 0;
}

.phc-pattern__foot {
  display: flex;
  flex-direction: column;
  gap: var(--phc-pattern-block-gap-sm);
  min-inline-size: 0;
}

.phc-pattern__text,
.phc-pattern__body p,
.phc-pattern__body li,
.phc-pattern__body dd {
  max-inline-size: var(--phc-pattern-text-max);
}

.phc-pattern__body p,
.phc-pattern__foot p {
  margin: 0;
  color: var(--phc-pattern-text-secondary);
}

.phc-pattern__body strong,
.phc-pattern__foot strong {
  color: var(--phc-pattern-text-primary);
  font-weight: var(--phc-font-weight-semibold);
}

/* ==========================================================
   14.3 DIVIDERS / SEPARATORS
   ========================================================== */

.phc-pattern__divider {
  inline-size: 100%;
  block-size: 1px;
  background: var(--phc-pattern-divider);
}

.phc-pattern__stack {
  display: flex;
  flex-direction: column;
  gap: var(--phc-pattern-block-gap-md);
}

.phc-pattern__stack--sm {
  gap: var(--phc-pattern-block-gap-sm);
}

.phc-pattern__stack--lg {
  gap: var(--phc-pattern-block-gap-lg);
}

.phc-pattern__cluster {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--phc-pattern-block-gap-sm);
}

.phc-pattern__meta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-inline-size: 0;
}

.phc-pattern__meta-text {
  margin: 0;
  font-size: var(--phc-font-size-sm);
  line-height: var(--phc-line-height-base);
  color: var(--phc-pattern-text-secondary);
}

/* ==========================================================
   14.4 BADGES / NUMBERS / ICON HOLDERS
   ========================================================== */

.phc-pattern__badge,
.phc-pattern__icon-badge,
.phc-pattern__number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  min-inline-size: 2.25rem;
  min-block-size: 2.25rem;
  padding-inline: 0.75rem;
  border-radius: var(--phc-pattern-radius-sm);
  border: 1px solid var(--phc-pattern-badge-border);
  background: var(--phc-pattern-badge-bg);
  box-shadow: var(--phc-pattern-shadow-xs);
  color: var(--phc-pattern-accent-dark);
  font-size: var(--phc-font-size-sm);
  line-height: 1;
  font-weight: var(--phc-font-weight-semibold);
}

.phc-pattern__icon-badge .phc-icon {
  inline-size: 1.125rem;
  block-size: 1.125rem;
  color: currentColor;
}

.phc-pattern__number {
  min-inline-size: 2.5rem;
  min-block-size: 2.5rem;
  border-radius: 999px;
  padding-inline: 0;
  font-size: var(--phc-font-size-base);
}

/* ==========================================================
   14.5 LISTS
   Р вЂР В°Р В·Р С•Р Р†РЎвЂ№Р Вµ РЎРѓР С—Р С‘РЎРѓР С”Р С‘ Р Т‘Р В»РЎРЏ feature/spec/notes/conditions.
   ========================================================== */

.phc-pattern__list {
  display: flex;
  flex-direction: column;
  gap: 18px;
  margin: 0;
  margin-top: 8px;
  margin-bottom: 8px;
  padding: 0;
  list-style: none;
}

.phc-pattern__list-item {
  position: relative;
  margin: 0;
  margin-left: 8px;
  padding-inline-start: 28px;
  color: var(--phc-pattern-text-secondary);
}

.phc-pattern__list-item::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0.62em;
  inline-size: 6px;
  block-size: 6px;
  border-radius: 999px;
  background: var(--phc-pattern-accent);
}

.phc-pattern__list-item > strong {
  color: var(--phc-pattern-text-primary);
}

.phc-pattern__list--compact {
  gap: 10px;
}

.phc-pattern__list--grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 24px;
}

.phc-pattern__list--grid .phc-pattern__list-item {
  max-inline-size: none;
}

/* ==========================================================
   14.6 INFO ROWS / DEFINITION LISTS
   Р вЂќР В»РЎРЏ specs, notes, tech blocks, table-like strings.
   ========================================================== */

.phc-pattern__rows {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.phc-pattern__row {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 18px 24px;
  align-items: start;
  padding-block: 16px;
  border-block-end: 1px solid var(--phc-pattern-divider);
}

.phc-pattern__row:first-child {
  padding-block-start: 0;
}

.phc-pattern__row:last-child {
  padding-block-end: 0;
  border-block-end: 0;
}

.phc-pattern__row-key,
.phc-pattern__row-title {
  margin: 0;
  color: var(--phc-pattern-text-primary);
  font-weight: var(--phc-font-weight-semibold);
  line-height: var(--phc-line-height-tight);
}

.phc-pattern__row-value,
.phc-pattern__row-text {
  margin: 0;
  color: var(--phc-pattern-text-secondary);
  line-height: var(--phc-line-height-base);
}

.phc-pattern__dl {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 12px 24px;
  margin: 0;
}

.phc-pattern__dl dt {
  margin: 0;
  color: var(--phc-pattern-text-primary);
  font-weight: var(--phc-font-weight-semibold);
}

.phc-pattern__dl dd {
  margin: 0;
  color: var(--phc-pattern-text-secondary);
}

/* ==========================================================
   14.7 SHARED GRIDS
   Р вЂќР В»РЎРЏ variant-cards, template-grid, proof-gallery, price-block.
   ========================================================== */

.phc-pattern__grid {
  display: grid;
  gap: var(--phc-pattern-block-gap-md);
  min-inline-size: 0;
}

.phc-pattern__grid--2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.phc-pattern__grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.phc-pattern__grid--4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.phc-pattern__grid--5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.phc-pattern__grid--auto {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

/* ==========================================================
   14.8 LIGHT CARD MECHANICS
   Р С™Р В°РЎР‚РЎвЂљР С•РЎвЂЎР Р…Р В°РЎРЏ Р СР ВµРЎвЂ¦Р В°Р Р…Р С‘Р С”Р В° Р Т‘Р С•Р С—РЎС“РЎРѓРЎвЂљР С‘Р СР В° Р СњР вЂў Р Т‘Р В»РЎРЏ Р Р†РЎРѓР ВµРЎвЂ¦ Р С—Р В°РЎвЂљРЎвЂљР ВµРЎР‚Р Р…Р С•Р Р†,
   Р В° РЎвЂљР С•Р В»РЎРЉР С”Р С• РЎвЂљР В°Р С, Р С–Р Т‘Р Вµ РЎРЊРЎвЂљР С• РЎР‚Р В°Р В·РЎР‚Р ВµРЎв‚¬Р ВµР Р…Р С• РЎРѓР С‘РЎРѓРЎвЂљР ВµР СР С•Р в„–.
   ========================================================== */

.phc-pattern__card {
  display: flex;
  flex-direction: column;
  gap: var(--phc-pattern-block-gap-sm);
  min-inline-size: 0;
  min-block-size: 100%;
  padding: 8px;
  border: 1px solid var(--phc-pattern-border);
  border-radius: var(--phc-pattern-radius-sm);
  background: var(--phc-pattern-surface-white);
  box-shadow: var(--phc-pattern-shadow-xs);
  transition: var(--phc-pattern-transition);
}

.phc-pattern__card-title {
  margin: 0;
  margin-left: 8px;
  margin-right: 8px;
  color: var(--phc-pattern-text-primary);
  font-size: var(--phc-font-size-lg);
  line-height: var(--phc-line-height-tight);
  font-weight: var(--phc-font-weight-semibold);
}

.phc-pattern__card-subtitle,
.phc-pattern__card-text,
.phc-pattern__card-meta {
  margin: 0;
  color: var(--phc-pattern-text-secondary);
  line-height: var(--phc-line-height-base);
}

.phc-pattern__card-text {
  /* Keep card copy aligned inside the visual card surface. */
  margin-left: 8px;
  margin-right: 8px;
}

.phc-pattern__card-value {
  margin: 0;
  color: var(--phc-pattern-text-primary);
  font-size: clamp(1.125rem, 1.3vw, 1.375rem);
  line-height: var(--phc-line-height-tight);
  font-weight: var(--phc-font-weight-bold);
}

.phc-pattern--variants .phc-pattern__card:hover,
.phc-pattern--price .phc-pattern__card:hover,
.phc-pattern--templates .phc-pattern__card:hover,
.phc-pattern--proof .phc-pattern__card:hover {
  transform: translateY(var(--phc-pattern-hover-lift-y));
  box-shadow: var(--phc-pattern-shadow-card-hover);
}

/* ==========================================================
   14.9 TEMPLATE / GALLERY MEDIA SHELL
   ========================================================== */

.phc-pattern__media {
  position: relative;
  overflow: hidden;
  border-radius: calc(var(--phc-pattern-radius-sm) - 2px);
  background: var(--phc-pattern-surface-cream);
  border: 1px solid var(--phc-pattern-divider);
}

.phc-pattern__media img {
  display: block;
  inline-size: 100%;
  block-size: auto;
}

.phc-pattern__media--ratio-4x3 {
  aspect-ratio: 4 / 3;
}

.phc-pattern__media--ratio-1x1 {
  aspect-ratio: 1 / 1;
}

.phc-pattern__media--ratio-3x4 {
  aspect-ratio: 3 / 4;
}

.phc-pattern__template-id {
  position: absolute;
  inset-inline-start: 12px;
  inset-block-start: 12px;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-block-size: 2rem;
  padding-inline: 0.75rem;
  border-radius: 999px;
  background: rgba(31, 35, 40, 0.78);
  color: #fff;
  font-size: var(--phc-font-size-sm);
  font-weight: var(--phc-font-weight-semibold);
  line-height: 1;
  box-shadow: var(--phc-pattern-shadow-xs);
}

/* ==========================================================
   14.10 PROCESS BASE
   Р вЂєР С‘Р Р…Р ВµР в„–Р Р…Р В°РЎРЏ Р СР ВµРЎвЂ¦Р В°Р Р…Р С‘Р С”Р В° Р С—РЎР‚Р С•РЎвЂ Р ВµРЎРѓРЎРѓР В°. Р вЂР ВµР В· theme-Р В°Р С”РЎвЂ Р ВµР Р…РЎвЂљР С•Р Р†.
   ========================================================== */

.phc-pattern__process {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--phc-pattern-block-gap-md) var(--phc-pattern-block-gap-lg);
  margin: 0;
  padding: 0;
  list-style: none;
}

.phc-pattern__process-step {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr);
  gap: var(--phc-pattern-block-gap-md);
  align-items: start;
  min-inline-size: 0;
  padding: var(--phc-pattern-block-gap-md);
  border: 1px solid var(--phc-pattern-border);
  border-radius: var(--phc-pattern-radius-md);
  background: var(--phc-pattern-surface-white);
}

.phc-pattern--process .phc-pattern__body {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--phc-pattern-block-gap-md) var(--phc-pattern-block-gap-lg);
}

.phc-pattern--process .phc-pattern__process,
.phc-pattern--process .phc-pattern--note {
  grid-column: 1 / -1;
}

.phc-pattern__process-body {
  display: flex;
  flex-direction: column;
  gap: var(--phc-pattern-block-gap-xs);
  min-inline-size: 0;
}

.phc-pattern__process-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: calc(var(--phc-icon-size-md) * 2);
  block-size: calc(var(--phc-icon-size-md) * 2);
  flex-shrink: 0;
  border: 1px solid var(--phc-pattern-border);
  border-radius: var(--phc-radius-md);
  background: var(--phc-pattern-surface-white);
  color: var(--phc-pattern-accent-dark);
}

.phc-pattern__process-icon .phc-icon {
  inline-size: calc(var(--phc-icon-size-md) * 2);
  block-size: calc(var(--phc-icon-size-md) * 2);
}

.phc-pattern__process-icon .phc-illustration {
  inline-size: calc(var(--phc-icon-size-md) * 2);
  block-size: calc(var(--phc-icon-size-md) * 2);
}

.phc-pattern__process-step .phc-pattern__number {
  inline-size: var(--phc-icon-size-lg);
  min-inline-size: var(--phc-icon-size-lg);
  block-size: var(--phc-icon-size-lg);
  min-block-size: var(--phc-icon-size-lg);
  padding: 0;
  border-radius: var(--phc-radius-full);
  border-color: var(--phc-pattern-border);
  background: var(--phc-pattern-surface-cream);
  color: var(--phc-pattern-accent-dark);
  box-shadow: none;
}

.phc-pattern__process-title {
  margin: 0;
  color: var(--phc-pattern-text-primary);
  font-size: var(--phc-font-size-lg);
  line-height: var(--phc-line-height-tight);
  font-weight: var(--phc-font-weight-semibold);
}

.phc-pattern__process-text {
  margin: 0;
  color: var(--phc-pattern-text-secondary);
  font-size: var(--phc-type-body-size);
  line-height: var(--phc-type-body-line-height);
}

/* ==========================================================
   14.12 TABLE BASE
   Р РЋР С—Р С•Р С”Р С•Р в„–Р Р…Р В°РЎРЏ РЎвЂљР В°Р В±Р В»Р С‘РЎвЂЎР Р…Р В°РЎРЏ Р СР ВµРЎвЂ¦Р В°Р Р…Р С‘Р С”Р В° Р В±Р ВµР В· РЎвЂљРЎРЏР В¶РЎвЂР В»Р С•Р в„– РЎРѓР ВµРЎвЂљР С”Р С‘.
   ========================================================== */

.phc-pattern__table-wrap {
  overflow: hidden;
  border: 1px solid var(--phc-pattern-border);
  border-radius: var(--phc-pattern-radius-md);
  background: var(--phc-pattern-surface-white);
}

.phc-pattern__table {
  inline-size: 100%;
  border-collapse: collapse;
  min-inline-size: 0;
  table-layout: auto;
}

.phc-pattern__table th,
.phc-pattern__table td {
  padding: var(--phc-pattern-block-gap-sm) var(--phc-pattern-block-gap-md);
  text-align: start;
  vertical-align: top;
  overflow-wrap: anywhere;
}

.phc-pattern__table thead th {
  color: var(--phc-pattern-text-primary);
  font-size: var(--phc-font-size-sm);
  line-height: var(--phc-line-height-base);
  font-weight: var(--phc-font-weight-semibold);
  background: var(--phc-pattern-surface-cream);
  border-block-end: 1px solid var(--phc-pattern-divider-strong);
}

.phc-pattern__table tbody td {
  color: var(--phc-pattern-text-secondary);
  border-block-end: 1px solid var(--phc-pattern-divider);
}

.phc-pattern__table tbody tr:last-child td {
  border-block-end: 0;
}

/* ==========================================================
   14.13 PATTERN MODIFIERS (STRUCTURE ONLY)
   Р вЂР ВµР В· РЎвЂ Р Р†Р ВµРЎвЂљР С•Р Р†РЎвЂ№РЎвЂ¦ РЎвЂљР ВµР С.
   ========================================================== */

.phc-pattern--narrow .phc-pattern__title,
.phc-pattern--narrow .phc-pattern__lead,
.phc-pattern--narrow .phc-pattern__description,
.phc-pattern--narrow .phc-pattern__body p,
.phc-pattern--narrow .phc-pattern__body li {
  max-inline-size: 62ch;
}

.phc-pattern--wide {
  max-inline-size: none;
}

.phc-pattern--compact {
  padding:
    calc(var(--phc-pattern-section-padding-y) - 8px)
    calc(var(--phc-pattern-section-padding-x) - 4px);
}

.phc-pattern--spacious .phc-pattern__inner {
  gap: calc(var(--phc-pattern-block-gap-lg) + 8px);
}

.phc-pattern--no-shadow {
  box-shadow: none;
}

.phc-pattern--flat {
  box-shadow: none;
  border-color: var(--phc-pattern-divider);
}

/* ==========================================================
   14.14 RESPONSIVE
   Р СљР С•Р В±Р С‘Р В»Р С”Р В°: Р В±Р С•РЎР‚Р Т‘РЎР‹РЎР‚ Р С•РЎРѓРЎвЂљР В°РЎвЂРЎвЂљРЎРѓРЎРЏ, Р Р…Р С• Р Р†Р С•Р В·Р Т‘РЎС“РЎвЂ¦Р В° РЎС“ РЎР‚Р В°Р СР С”Р С‘ Р СР ВµР Р…РЎРЉРЎв‚¬Р Вµ,
   Р В° РЎРЊР С”РЎР‚Р В°Р Р… РЎРѓР С‘Р В»РЎРЉР Р…Р ВµР Вµ Р Р…Р В°Р С—Р С•Р В»Р Р…РЎРЏР ВµРЎвЂљРЎРѓРЎРЏ Р С”Р С•Р Р…РЎвЂљР ВµР Р…РЎвЂљР С•Р С.
   ========================================================== */

/* phc-breakpoint:lg:max */ @media (max-width: 1023.98px) {
  .phc-section,
  .phc-pattern,
  .phc-pattern--feature {
    border-radius: 0;
  }

  .phc-pattern__grid--4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .phc-pattern__grid--5 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .phc-pattern__row,
  .phc-pattern__dl {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .phc-pattern__table {
    min-inline-size: 560px;
  }
}

/* phc-breakpoint:md:max */ @media (max-width: 767.98px) {
  .phc-pattern {
    padding:
      var(--phc-pattern-mobile-padding-y)
      var(--phc-pattern-mobile-padding-x);
    border-radius: 0;
  }

  .phc-section,
  .phc-pattern--feature {
    border-radius: 0;
  }

  .phc-pattern__inner {
    gap: var(--phc-pattern-mobile-gap);
  }

  .phc-pattern__head {
    gap: 8px;
  }

  .phc-pattern__title {
    max-inline-size: none;
    font-size: clamp(1.375rem, 6vw, 1.875rem);
    text-wrap: pretty;
  }

  .phc-pattern__lead,
  .phc-pattern__subtitle,
  .phc-pattern__description,
  .phc-pattern__body p,
  .phc-pattern__body li,
  .phc-pattern__body dd,
  .phc-pattern__text {
    max-inline-size: none;
  }

  .phc-pattern__grid--2,
  .phc-pattern__list--grid {
    grid-template-columns: 1fr;
  }

  .phc-pattern__process {
    grid-template-columns: 1fr;
  }

  .phc-pattern--process .phc-pattern__body {
    grid-template-columns: 1fr;
    gap: var(--phc-pattern-block-gap-lg);
  }

  .phc-pattern__grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .phc-pattern__grid--4,
  .phc-pattern__grid--5 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .phc-pattern__card {
    padding: 8px;
  }

  .phc-pattern__process-step {
    position: relative;
    grid-template-columns: var(--phc-icon-size-lg) calc(var(--phc-icon-size-md) * 2) minmax(0, 1fr);
    gap: var(--phc-pattern-block-gap-sm);
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
  }

  .phc-pattern__process-step:not(:last-child)::after {
    content: "";
    position: absolute;
    inset-block: var(--phc-icon-size-md) calc(var(--phc-pattern-block-gap-lg) * -1);
    inset-inline-start: calc(var(--phc-icon-size-md) / 2);
    z-index: -1;
    inline-size: 1px;
    background: var(--phc-pattern-border);
  }

  .phc-pattern__process-icon {
    align-self: start;
  }

  .phc-pattern__number {
    min-inline-size: 2.25rem;
    min-block-size: 2.25rem;
  }

  .phc-pattern__faq-question {
    padding: 16px 16px;
  }

  .phc-pattern__faq-answer {
    padding: 0 16px 16px;
  }

  .phc-pattern__table-wrap {
    border-radius: var(--phc-pattern-mobile-radius);
  }
}


.phc-pattern--title-wide .phc-pattern__title {
  max-inline-size: none;
}
