.se-price { padding: 56px 0; color: #233239; }
.se-price [hidden] { display: none !important; }
.se-price-intro { max-width: 760px; margin-bottom: 32px; }
.se-price-eyebrow { font: 700 12px/1.5 Arial,sans-serif; letter-spacing: .12em; text-transform: uppercase; color: #315ecb; }
.se-price h1 { margin: 14px 0 20px; font: 700 clamp(38px,4.5vw,56px)/1.1 'Roboto Condensed',Arial,sans-serif; }
.se-price-intro p { font-size: 18px; line-height: 1.6; color: #53636c; }
.se-price-filters { display: grid; grid-template-columns: 1.3fr 1fr auto; align-items: end; gap: 16px; margin-bottom: 36px; padding: 24px; background: #f4f7fb; border: 1px solid #e1e7ed; border-radius: 12px; }
.se-price-filters label { min-width: 0; font-size: 13px; line-height: 1.5; font-weight: 500; margin: 0; }
.se-price-filters input, .se-price-filters select { display: block; width: 100%; min-width: 0; height: 48px; margin-top: 8px; padding: 0 14px; border: 1px solid #d4dfe8; border-radius: 7px; background: #fff; color: #233239; font-size: 15px; }
.se-price-filters button { height: 48px; padding: 0 18px; border: 1px solid #d4dfe8; border-radius: 7px; background: #fff; color: #315ecb; font-weight: 700; }
#se-price-count { grid-column: 1 / -1; margin: 0; color: #53636c; font-size: 13px; }
.se-price-section { margin-bottom: 36px; border: 1px solid #dfe6ed; border-radius: 12px; overflow: hidden; }
.se-price-section-heading { padding: 22px 24px; background: #eef3fc; }
.se-price-section h2 { margin: 0; font: 700 24px/1.3 'Roboto Condensed',Arial,sans-serif; }
.se-price-section-heading p { margin: 8px 0 0; font-size: 14px; color: #476281; }
.se-price-table { width: 100%; border-collapse: collapse; table-layout: fixed; margin: 0; font-size: 15px; line-height: 1.6; }
.se-price-table thead th { background: #f8fafc; color: #667783; font-size: 12px; font-weight: 500; }
.se-price-table th, .se-price-table td { padding: 18px 24px; text-align: left; vertical-align: top; border: 0; border-bottom: 1px solid #edf1f5; overflow-wrap: anywhere; }
.se-price-table th:first-child { width: 53%; }
.se-price-table th:nth-child(2) { width: 29%; }
.se-price-table th:last-child { width: 18%; }
.se-price-table tbody th { font-weight: 500; }
.se-price-table tbody td { color: #53636c; }
.se-price-table tbody tr:nth-child(even) { background: #fbfcfe; }
.se-price-table tbody tr:hover { background: #f2f6fc; }
.se-price-table tbody tr:last-child > * { border-bottom: 0; }
.se-price-table .se-price-value { text-align: right; color: #233239; font-weight: 700; font-variant-numeric: tabular-nums; }
.se-price-table thead th:last-child { text-align: right; }
.se-price-mobile-label { display: none; }
.se-price-empty { margin-bottom: 32px; padding: 24px; border-radius: 10px; background: #f4f7fb; font-size: 16px; line-height: 1.6; }
.se-price-contact { display: flex; align-items: center; justify-content: space-between; gap: 28px; padding-top: 12px; }
.se-price-contact h2 { margin: 0 0 10px; font: 700 28px/1.2 'Roboto Condensed',Arial,sans-serif; }
.se-price-contact p { font-size: 15px; color: #53636c; margin: 0; }
.se-price-contact button { flex: 0 0 auto; border: 0; border-radius: 8px; background: #2ebe63; color: #fff; padding: 17px 26px; font-weight: 700; }
.se-price input:focus-visible, .se-price select:focus-visible, .se-price button:focus-visible { outline: 2px solid #315ecb !important; outline-offset: 3px; }
@media(max-width:991px) { .se-price-filters { grid-template-columns: 1fr 1fr; } .se-price-filters button { justify-self: start; } .se-price-table th, .se-price-table td { padding: 16px; } }
@media(max-width:600px) {
 .se-price { padding: 32px 0 40px; }
 .se-price-intro p { font-size: 16px; }
 .se-price-filters { grid-template-columns: 1fr; padding: 18px; gap: 14px; }
 .se-price-filters button { width: 100%; }
 .se-price-section-heading { padding: 20px; }
 .se-price-section h2 { font-size: 22px; }
 .se-price-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
 .se-price-table, .se-price-table tbody { display: block; }
 .se-price-table tbody tr { display: block; padding: 18px 20px; border-bottom: 1px solid #e5ebf1; }
 .se-price-table tbody tr:last-child { border-bottom: 0; }
 .se-price-table tbody th, .se-price-table tbody td { display: block; width: 100%; padding: 0; border: 0; }
 .se-price-table tbody th { margin-bottom: 12px; font-weight: 700; }
 .se-price-table tbody td { display: grid; grid-template-columns: 100px minmax(0,1fr); gap: 12px; margin-top: 8px; }
 .se-price-mobile-label { display: block; color: #667783; font-size: 12px; font-weight: 400; }
 .se-price-table .se-price-value { text-align: left; }
 .se-price-contact { flex-direction: column; align-items: stretch; gap: 20px; }
}
