/* FestejaMe 1.85.0 — proporciones de la página principal. */
.inicio-pulido .status-box { padding: 14px; border-radius: 16px; }
.inicio-pulido .status-box > strong { font-size: .875rem; line-height: 1.45; font-weight: 700; }
.inicio-pulido .status-fields { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.inicio-pulido .status-fields input { font-size: .875rem; line-height: 1.45; padding: 10px; min-height: 42px; }
.inicio-pulido .status-fields #checkStatus { grid-column: 1 / -1; font-size: .81rem; }
.inicio-pulido .status-fields input:focus-visible { outline: 2px solid var(--mango); outline-offset: 2px; }
@media (max-width: 600px) {
  .inicio-pulido .provider-gallery { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; overscroll-behavior-x: contain; gap: 8px; padding: 8px; height: 330px; }
  .inicio-pulido .provider-gallery figure,
  .inicio-pulido .provider-gallery figure:nth-child(n+5) { display: block; flex: 0 0 82%; scroll-snap-align: start; }
  .inicio-pulido .provider-gallery figure:first-child { grid-row: auto; }
}
@media (max-width: 720px) {
  .inicio-pulido .status-fields input { font-size: 16px; min-height: 44px; }
}
@media (max-width: 420px) {
  .inicio-pulido .status-fields { grid-template-columns: minmax(0, 1fr); }
}
.inicio-pulido .btn { min-height: 42px; padding: 9px 18px; font-size: .84rem; line-height: 1.35; }
.inicio-pulido .nav-cta { min-height: 42px; padding: 9px 17px; }
.inicio-pulido .section-head { gap: 16px 36px; margin-bottom: 32px; }
.inicio-pulido .section-head > div { grid-row: 1 / 3; }
.inicio-pulido .section-head > p { grid-column: 2; margin: 0; }
.inicio-pulido .section-head .btn-secondary { color: var(--ink); border-color: rgba(27,16,51,.2); background: transparent; }
.inicio-pulido .section-head .btn-secondary:hover { background: var(--paper-deep); }
.inicio-pulido .section-head h2,
.inicio-pulido .provider-showcase-head h2,
.inicio-pulido .provider-intro h2 { font-size: clamp(2rem, 3.4vw, 2.8rem); line-height: 1.15; }
.inicio-pulido .services { padding: 80px 0; }
.inicio-pulido .filter { padding: 9px 15px; font-size: .8rem; }
.inicio-pulido .services-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 16px; align-items: stretch; }
.inicio-pulido .service-card { min-width: 0; min-height: 0; border-radius: 22px; }
.inicio-pulido .service-visual { min-height: 104px; }
.inicio-pulido .service-visual svg { width: 52px; height: 52px; }
.inicio-pulido .service-body { min-width: 0; padding: 16px; }
.inicio-pulido .service-card h3 { min-height: 0; margin-bottom: 8px; font-size: .88rem; line-height: 1.4; overflow-wrap: anywhere; }
.inicio-pulido .service-card p { margin-bottom: 12px; font-size: .81rem; line-height: 1.55; }
.inicio-pulido .service-meta { gap: 8px; }
.inicio-pulido .price { font-size: .7rem; line-height: 1.5; }
.inicio-pulido .add-service { flex-shrink: 0; }
.inicio-pulido .sublimation-showcase { margin-top: 36px; padding: 26px; border-radius: 26px; }
.inicio-pulido .sublimation-showcase h3 { font-size: clamp(1.5rem, 2.7vw, 2.15rem); line-height: 1.2; }
.inicio-pulido .builder { padding: 80px 0; }
.inicio-pulido .wizard { padding: 32px; }
.inicio-pulido .summary { padding: 32px 28px; }
.inicio-pulido .choice { min-height: 82px; padding: 13px; border-radius: 16px; }
.inicio-pulido .field label,
.inicio-pulido .provider-form label { font-size: .81rem; line-height: 1.5; }
.inicio-pulido .field input,
.inicio-pulido .field select,
.inicio-pulido .field textarea { padding: 11px 13px; border-radius: 12px; font-size: .9rem; line-height: 1.5; }
.inicio-pulido .field input:not([type="checkbox"]):not([type="radio"]),
.inicio-pulido .field select { min-height: 44px; }
.inicio-pulido .provider-showcase-head { gap: 32px; }
.inicio-pulido .provider-card + .provider-card { margin-top: 24px; }
.inicio-pulido .provider-profile { padding: 30px; }
.inicio-pulido .provider-brand { gap: 14px; margin-bottom: 18px; }
.inicio-pulido .provider-logo { width: 68px; height: 68px; flex-shrink: 0; }
.inicio-pulido .provider-brand h3 { font-size: 1.4rem; line-height: 1.25; overflow-wrap: anywhere; }
.inicio-pulido .provider-description { margin-bottom: 18px; font-size: .9rem; line-height: 1.65; }
.inicio-pulido .provider-tags { gap: 7px; margin-bottom: 20px; }
.inicio-pulido .provider-details { margin-bottom: 20px; }
.inicio-pulido .provider-details dd { font-size: .84rem; line-height: 1.6; }
.inicio-pulido .provider-actions { align-items: stretch; }
.inicio-pulido .provider-actions .btn { padding: 10px 12px; font-size: .78rem; height: 100%; }
.inicio-pulido .provider-form { padding: 28px; border-radius: 26px; }
@media (min-width: 981px) and (max-width: 1099px) {
  .inicio-pulido .services-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .inicio-pulido .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .inicio-pulido .section-head { grid-template-columns: 1fr; }
  .inicio-pulido .section-head > div { grid-row: auto; }
  .inicio-pulido .section-head > p { grid-column: auto; }
}
@media (pointer: coarse) {
  .inicio-pulido .btn, .inicio-pulido .nav-cta, .inicio-pulido .filter { min-height: 44px; }
  .inicio-pulido .add-service { width: 44px; height: 44px; }
}
@media (max-width: 720px) {
  .inicio-pulido .services, .inicio-pulido .builder { padding: 56px 0; }
  .inicio-pulido .section-head { gap: 16px; margin-bottom: 26px; }
  .inicio-pulido .section-head > div { grid-row: auto; }
  .inicio-pulido .section-head > p { grid-column: auto; }
  .inicio-pulido .services-grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .inicio-pulido .service-card { min-height: 200px; grid-template-columns: 96px minmax(0, 1fr); }
  .inicio-pulido .service-visual { min-height: 100%; }
  .inicio-pulido .service-card h3 { min-height: 0; font-size: .94rem; }
  .inicio-pulido .service-body { padding: 17px 15px; }
  .inicio-pulido .btn, .inicio-pulido .nav-cta, .inicio-pulido .filter { min-height: 44px; }
  .inicio-pulido .add-service { width: 44px; height: 44px; }
  .inicio-pulido .sublimation-showcase { padding: 20px 16px; }
  .inicio-pulido .wizard, .inicio-pulido .summary { padding: 26px 20px; }
  .inicio-pulido .field input, .inicio-pulido .field select, .inicio-pulido .field textarea { font-size: 16px; }
  .inicio-pulido .provider-showcase-head { gap: 14px; }
  .inicio-pulido .provider-profile { padding: 26px 20px; }
  .inicio-pulido .provider-brand h3 { font-size: 1.3rem; }
  .inicio-pulido .provider-logo { width: 60px; height: 60px; }
  .inicio-pulido .provider-form { padding: 24px 20px; }
}
