/* Approved concept 01: white price grid, coral booking controls. Scoped to prices only. */
.v-price { --vp-accent:#e25c56; --vp-ink:#262626; --vp-muted:#767676; --vp-line:#ededed; color:var(--vp-ink); background:#fff; width:100%; min-width:0; margin:24px 0 32px; }
.v-price *, .v-price *::before, .v-price *::after { box-sizing:border-box; }
.v-price .v-price-search { position:relative; margin:0 0 16px; }
.v-price .v-price-input { display:block; width:100%; height:46px; min-height:0; padding:0 16px 0 42px; border:1px solid #e7e7e7; border-radius:3px; background:#fff; box-shadow:none; font:400 14px/1.4 inherit; font-family:inherit; color:var(--vp-ink); }
.v-price .v-price-input::placeholder { color:var(--vp-muted); opacity:1; }
.v-price-search-icon { position:absolute; top:15px; left:16px; width:13px; height:13px; border:1.5px solid #858585; border-radius:50%; pointer-events:none; }
.v-price-search-icon::after { content:''; position:absolute; width:6px; height:1.5px; background:#858585; transform:rotate(45deg); top:10px; left:9px; }
.v-price .v-price-scroll { width:100%; max-width:100%; overflow:visible; margin:0; padding:0; }
.v-price table.v-price-table { display:block; width:100%; min-width:0; max-width:100%; border:0; border-collapse:collapse; margin:0; table-layout:auto; background:#fff; }
.v-price-table > thead, .v-price-table > tbody, .v-price-table > tfoot { display:block; width:100%; }
.v-price .v-price-table tr { display:grid; grid-template-columns:var(--v-price-columns); align-items:center; gap:16px; width:100%; margin:0; padding:0 14px; border:0; border-bottom:1px solid var(--vp-line); background:#fff; }
.v-price .v-price-table td, .v-price .v-price-table th { display:block; width:auto!important; min-width:0; height:auto; padding:16px 0; border:0!important; background:transparent!important; color:var(--vp-ink); font-family:inherit; font-size:15px; font-weight:400; line-height:1.5; text-align:left; vertical-align:middle; }
.v-price .v-price-table td p, .v-price .v-price-table th p { margin:0!important; padding:0; color:inherit; font:inherit; }
.v-price .v-price-table .v-price-head { background:#f5f5f5; border:0; border-radius:3px; }
.v-price .v-price-table .v-price-head > * { padding-top:11px; padding-bottom:11px; color:#707070; font-size:12px; font-weight:400; }
.v-price .v-price-table .v-price-name { overflow-wrap:anywhere; }
.v-price .v-price-table .v-price-name a { color:inherit; }
.v-price .v-price-table .v-price-unit { color:var(--vp-muted); font-size:13px; }
.v-price .v-price-table .v-price-amount { text-align:right; font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap; }
.v-price .v-price-table .v-price-head .v-price-amount { white-space:normal; max-width:185px; }
.v-price .v-price-table .v-price-action { padding:0; text-align:right; }
.v-price button.v-price-book { display:inline-flex!important; align-items:center; justify-content:center; width:44px!important; height:44px!important; min-width:44px!important; min-height:44px!important; padding:0!important; margin:0!important; border:0!important; border-radius:3px; background:transparent!important; color:var(--vp-accent)!important; box-shadow:none!important; font:400 23px/1 Arial,sans-serif; cursor:pointer; }
.v-price button.v-price-book::before, .v-price button.v-price-book::after { display:none; }
.v-price .v-price-row:hover, .v-price .price__item:hover { background:#fdf9f9; }
.v-price button.v-price-book:hover { background:#fbeceb!important; }
.v-price :is(button,input,a):focus-visible { outline:2px solid #aa3f3a!important; outline-offset:3px; }
.v-price .v-price-cta { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:24px; margin-top:24px; background:#fcf3f3; border-radius:3px; }
.v-price .v-price-cta-title { margin:0 0 6px!important; color:var(--vp-ink); font-size:20px; line-height:1.35; font-weight:500; }
.v-price .v-price-cta-text { margin:0!important; max-width:390px; color:#757575; font-size:13px; line-height:1.55; }
.v-price button.v-price-cta-button { display:inline-flex; flex-shrink:0; justify-content:center; align-items:center; gap:24px; min-height:46px; min-width:178px; height:auto; padding:12px 24px; border:0; border-radius:3px; background:var(--vp-accent); color:white; font-family:inherit; font-size:14px; line-height:1.4; cursor:pointer; }
.v-price button.v-price-cta-button:hover { background:#cc4e48; }
.v-price button.v-price-cta-button::before, .v-price button.v-price-cta-button::after { display:none; }
.v-price .v-price-status { margin:20px 0; color:#666; font-size:14px; }
.v-price .v-price-sr { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.v-price [hidden] { display:none!important; }
.v-price .v-price-list { display:block; padding:0; margin:0; background:transparent; border:0; }
.v-price .v-price-list-head { display:grid; grid-template-columns:minmax(0,1fr) auto 44px; gap:16px; background:#f5f5f5; border-radius:3px; padding:11px 14px; color:#707070; font-size:12px; }
.v-price .v-price-list .price__item { display:flex; align-items:center; gap:16px; margin:0; padding:12px 14px; border:0; border-bottom:1px solid var(--vp-line); background:#fff; }
.v-price .v-price-list .price__text_container { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:4px 16px; flex:1; min-width:0; width:auto; margin:0; }
.v-price .v-price-list .price__text_container > a { grid-column:1; grid-row:1 / span 2; width:auto; min-width:0; margin:0; color:var(--vp-ink); font-size:15px; line-height:1.5; font-weight:400; overflow-wrap:anywhere; }
.v-price .v-price-list .price__value { grid-column:2; display:block!important; width:auto; margin:0!important; color:var(--vp-ink); font-size:15px; font-weight:600; line-height:1.5; white-space:nowrap; text-align:right; font-variant-numeric:tabular-nums; }
.v-price .v-price-list .price__value_mobile { display:none!important; }
.v-price .v-price-list .price__old { grid-column:2; margin:0; text-align:right; white-space:nowrap; font-size:12px; color:#888; text-decoration:line-through; }
.v-price .v-price-list .price__block-text { margin:16px 0 0; font-size:12px; line-height:1.5; }
@media (max-width:767px) {
 .v-price { margin:20px 0 28px; }
 .v-price .v-price-input { font-size:16px; height:46px; }
 .v-price .v-price-table tr { gap:0 8px; padding:12px 0; }
 .v-price .v-price-table .v-price-head { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); padding:0; }
 .v-price .v-price-single tr.v-price-row { grid-template-columns:minmax(0,1fr) auto 36px; }
 .v-price .v-price-table td { padding:0; font-size:14px; line-height:1.45; }
 .v-price .v-price-single .v-price-name { grid-column:1; grid-row:1; align-self:end; }
 .v-price .v-price-single .v-price-unit { grid-column:1; font-size:12px; padding-top:3px; }
 .v-price .v-price-single .v-price-amount { grid-column:2; grid-row:1 / span 3; align-self:center; font-size:14px; }
 .v-price .v-price-single .v-price-action { grid-column:3; grid-row:1 / span 3; align-self:center; }
 .v-price button.v-price-book { width:36px!important; min-width:36px!important; }
 .v-price .v-price-multiple tr.v-price-row { grid-template-columns:minmax(0,1fr) minmax(0,1fr) 36px; gap:10px; }
 .v-price .v-price-multiple .v-price-name { grid-column:1 / 3; }
 .v-price .v-price-multiple .v-price-unit { grid-column:1 / 3; }
 .v-price .v-price-multiple .v-price-amount { text-align:left; white-space:normal; }
 .v-price .v-price-multiple .v-price-amount::before { content:attr(data-label); display:block; margin-bottom:4px; font-size:11px; font-weight:400; color:var(--vp-muted); }
 .v-price .v-price-multiple .v-price-action { grid-column:3; grid-row:1 / span 3; align-self:center; }
 .v-price .v-price-cta { flex-direction:column; align-items:stretch; padding:20px; gap:16px; margin-top:20px; }
 .v-price .v-price-cta-title { font-size:18px; }
 .v-price button.v-price-cta-button { width:100%; }
 .v-price .v-price-list-head { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); padding:0; }
 .v-price .v-price-list .price__item { padding:12px 0; gap:8px; }
 .v-price .v-price-list .price__text_container { gap:4px 10px; }
 .v-price .v-price-list .price__text_container > a, .v-price .v-price-list .price__value { font-size:14px; }
}
@media (prefers-reduced-motion:no-preference) {
 .v-price .v-price-row, .v-price .price__item, .v-price button { transition:background-color .16s ease; }
}

/* Typography correction: the legacy .flex utility has display:flex!important. */
.v-price .v-price-list .price__text_container {
  display:grid!important;
  justify-content:normal;
}
.v-price .v-price-list .price__text_container > a {
  justify-self:stretch;
  text-align:left!important;
  padding-right:0;
  font-weight:700!important;
}
.v-price .v-price-table .v-price-row .v-price-name {
  text-align:left!important;
  font-weight:700!important;
}
.v-price .v-price-list .price__text_container > a *,
.v-price .v-price-table .v-price-row .v-price-name * {
  text-align:inherit!important;
  font-weight:inherit!important;
}
