/* ORIGO Booking — editorial, two-column layout. Visual-only; availability & payments remain handled by app.js. */
body.page-prenota .booking-wizard-v9 {padding:44px 0 100px!important;min-height:0!important;background:#f6f5f2}
body.page-prenota .booking-v9-head {max-width:980px!important;text-align:left!important;margin:0 auto 33px!important;padding:0 20px}
body.page-prenota .booking-v9-head .eyebrow {font-size:11px;letter-spacing:.19em;color:#596474}
body.page-prenota .booking-v9-head h1 {font-size:clamp(39px,4.4vw,65px)!important;line-height:1.04;letter-spacing:-.062em;margin:12px 0 13px!important}
body.page-prenota .booking-v9-head p {font-size:15px!important;line-height:1.65;max-width:640px;margin:0!important}
body.page-prenota .booking-v9-shell {display:grid!important;grid-template-columns:minmax(0,1fr) 324px!important;gap:24px!important;align-items:start!important;max-width:1240px!important;width:min(calc(100% - 44px),1240px)!important;min-height:0!important;margin:0 auto!important}
body.page-prenota .origo-booking-flow {min-width:0;display:grid;gap:18px}
body.page-prenota .origo-booking-flow>.booking-v9-stage {display:block!important;grid-row:auto!important;grid-column:auto!important;min-width:0;opacity:1!important;animation:none!important}
body.page-prenota .booking-v9-card {border-radius:19px!important;border:1px solid #e3e3df!important;box-shadow:0 7px 32px rgba(20,25,34,.024)!important;background:#fff!important;padding:29px!important}
body.page-prenota .booking-v9-stage-head {margin:0 0 22px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:0!important}
body.page-prenota .booking-v9-stage-head .eyebrow {font-size:10px!important;letter-spacing:.14em;color:#838992}
body.page-prenota .booking-v9-stage-head h2 {font-size:clamp(23px,2.5vw,29px)!important;letter-spacing:-.05em!important;line-height:1.12!important;margin:7px 0!important}
body.page-prenota .booking-v9-stage-head p {font-size:12px!important;max-width:600px!important;line-height:1.6!important;color:#6d747f!important;margin:1px 0 0!important}
body.page-prenota .booking-v9-stage-head .booking-v9-back {display:none!important}
body.page-prenota .booking-v9-services {display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:11px!important;overflow:visible!important}
body.page-prenota .booking-wizard-v9 .booking-service {position:relative;min-width:0!important;min-height:215px!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;text-align:left!important;background:#fff;border:1px solid #dfe1e4!important;border-radius:14px!important;padding:19px 16px!important;box-shadow:none!important;transition:background .18s,border-color .18s!important;cursor:pointer}
body.page-prenota .booking-service .booking-v9-service-top {display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:7px!important}
body.page-prenota .booking-v9-service-name {font-size:15px!important;line-height:1.2!important;letter-spacing:-.03em}
body.page-prenota .booking-v9-price {display:inline-flex!important;padding:5px 7px!important;background:#f3f3f1!important;color:#242b33!important;font-size:13px!important;letter-spacing:-.02em!important;line-height:1.1!important}
body.page-prenota .booking-v9-time {display:flex!important;gap:5px!important;align-items:baseline!important;margin:18px 0 9px!important}
body.page-prenota .booking-v9-time strong {font-size:24px!important;letter-spacing:-.05em!important;font-weight:780!important;line-height:1.15!important}
body.page-prenota .booking-v9-time span {font-size:12px!important;letter-spacing:0!important;text-transform:none!important;font-weight:500!important}
body.page-prenota .booking-wizard-v9 .booking-service p {display:block!important;margin:0!important;font-size:11.5px!important;line-height:1.55!important;color:#737982!important;min-height:48px!important}
body.page-prenota .booking-v12-features {display:none!important}
body.page-prenota .booking-service.is-active {background:#151820!important;border-color:#151820!important;color:#fff!important}
body.page-prenota .booking-service.is-active .booking-v9-price {background:#303640!important;color:#fff!important}
body.page-prenota .booking-service.is-active p {color:#d1d5dc!important}
body.page-prenota .booking-service.is-active .booking-v9-time span {color:#c4cad1!important}
body.page-prenota .booking-service:not(.is-active):hover {border-color:#6d7685!important;background:#fbfbfa!important}
body.page-prenota .origo-booking-card-label {display:block;position:absolute;bottom:14px;right:13px;padding:4px 8px;border-radius:99px;font-size:9px;letter-spacing:.03em;font-weight:800;background:#eaf0e7;color:#25372c}
body.page-prenota .booking-service.is-active .origo-booking-card-label {background:#d4e4ca;color:#18251b}
body.page-prenota .origo-booking-dedicated-block {margin-top:19px;padding:18px 20px;background:#f8f8f6;border:1px solid #e5e5e1;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:18px}
body.page-prenota .origo-booking-dedicated-kicker {font-size:9px;letter-spacing:.15em;font-weight:800;color:#838b95;text-transform:uppercase}
body.page-prenota .origo-booking-dedicated-block h3 {font-size:17px;letter-spacing:-.035em;margin:7px 0 5px;color:#181d25}
body.page-prenota .origo-booking-dedicated-block p {font-size:11px;line-height:1.5;color:#757d86;margin:0;max-width:270px}
body.page-prenota .oc-v3-dedicated-option {width:auto!important;flex:0 0 auto;min-height:0!important;margin:0!important;border-radius:11px!important;padding:12px 14px!important;background:#fff!important;border-color:#dfe0e2!important;gap:15px!important}
body.page-prenota .oc-v3-dedicated-option strong {font-size:12px!important}
body.page-prenota .oc-v3-dedicated-option em {font-size:9px!important}
body.page-prenota .oc-v3-dedicated-option.is-active {background:#151820!important;color:#fff!important}
/* Calendar first; time pills below — wide, no empty dashboard column */
body.page-prenota .booking-v11-service-line {margin:0 0 15px!important}
body.page-prenota .booking-v11-service-line strong {font-size:11px!important;color:#69717b;font-weight:600!important}
body.page-prenota .booking-v11-availability {display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:16px!important;min-height:0!important}
body.page-prenota .booking-v11-panel {background:#fcfcfb!important;padding:20px!important;border-radius:15px!important;border-color:#e5e6e7!important}
body.page-prenota .booking-v11-panel--times {padding:0!important;background:#fff!important;overflow:hidden!important}
body.page-prenota .booking-v11-panel-head {margin-bottom:18px!important}
body.page-prenota .booking-v11-panel-title span {font-size:10px!important}
body.page-prenota .booking-v11-panel-title strong {font-size:16px!important}
body.page-prenota .booking-v11-date-list {gap:8px!important}
body.page-prenota .booking-v11-date {min-height:67px!important;border-radius:11px!important;padding:9px 3px!important;background:#fff!important}
body.page-prenota .booking-v11-date:disabled {background:#f7f7f5!important;opacity:.45!important}
body.page-prenota .booking-v11-date.is-selected {background:#151820!important;border-color:#151820!important;color:#fff!important;opacity:1!important}
body.page-prenota .booking-v11-date .dom {font-size:19px!important}
body.page-prenota .booking-v11-panel--times .booking-v11-panel-head {padding:18px 20px 14px!important;margin:0!important}
body.page-prenota .booking-v11-time-groups {padding:10px 15px 14px!important;display:block!important;max-height:none!important;overflow:visible!important}
body.page-prenota .booking-v13-agenda-section {padding:0!important;margin:0 0 11px!important}
body.page-prenota .booking-v13-agenda-heading {padding:9px 5px!important}
body.page-prenota .booking-v13-agenda-list {border:0!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
body.page-prenota .booking-v11-time.booking-v13-time-row {min-width:0!important;min-height:57px!important;padding:9px 10px!important;border:1px solid #e1e3e5!important;border-radius:10px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:4px!important;background:#fbfbfa!important;text-align:left!important}
body.page-prenota .booking-v13-time-copy {display:flex;flex-direction:column;gap:1px!important}
body.page-prenota .booking-v13-time-copy strong {font-size:15px!important}
body.page-prenota .booking-v13-time-copy small {font-size:9px!important}
body.page-prenota .booking-v13-time-badge {display:none!important}
body.page-prenota .booking-v13-time-arrow {font-size:13px!important}
body.page-prenota .booking-v11-time.booking-v13-time-row.is-selected {background:#151820!important;border-color:#151820!important;color:#fff!important}
body.page-prenota .booking-v11-time.booking-v13-time-row:hover:not(.is-selected) {border-color:#9fa5af!important;background:#f2f3f1!important}
body.page-prenota .booking-v11-fast-note {padding:11px 19px!important;font-size:10px!important}
/* no skeleton placeholders */
body.page-prenota .oc-v3-booking-placeholder {min-height:0!important;padding:24px 29px!important;border:1px dashed #d8dadc!important;border-radius:16px!important;background:#fafaf8!important}
body.page-prenota .oc-v3-booking-placeholder h2 {font-size:20px!important;margin:4px 0 6px!important}
body.page-prenota .oc-v3-booking-placeholder p {margin:0!important}
body.page-prenota .booking-v9-stage:has(.booking-form-panel:not([hidden])) .oc-v3-booking-placeholder {display:none!important}
body.page-prenota .booking-form-panel[hidden] {display:none!important}
body.page-prenota .booking-v10-checkout-layout {display:block!important}
body.page-prenota .booking-v10-main {display:grid!important;grid-template-columns:1fr!important;gap:16px!important}
body.page-prenota .booking-v10-form-block {padding:19px!important;border-radius:13px!important;background:#fcfcfb!important;margin:0!important}
body.page-prenota .booking-v9-grid {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
body.page-prenota .booking-v9-grid .full {grid-column:1/-1!important}
body.page-prenota .origo-booking-form-actions {padding-top:8px;display:grid;gap:10px}
body.page-prenota .origo-booking-form-actions button {width:100%;min-height:51px;border-radius:12px!important}
body.page-prenota .origo-booking-form-actions p {font-size:11px;line-height:1.5;color:#747b83;margin:0}
body.page-prenota .booking-v9-status {margin:0!important;min-height:0!important;grid-column:auto!important}
/* Order panel, always visible */
body.page-prenota .origo-booking-aside {min-width:0;position:sticky;top:95px;background:#171a20;color:#fff;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(20,25,34,.08)}
body.page-prenota .origo-booking-aside-inner {padding:28px 25px}
body.page-prenota .origo-booking-aside-eyebrow {font-size:10px;letter-spacing:.14em;color:#abb5c1;font-weight:850}
body.page-prenota .origo-booking-aside h2 {font-size:26px;line-height:1.08;letter-spacing:-.05em;margin:9px 0 25px;color:#fff}
body.page-prenota .origo-booking-aside-line {display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:12px 0;border-top:1px solid rgba(255,255,255,.15);font-size:12px}
body.page-prenota .origo-booking-aside-line span {color:#acb2bb}
body.page-prenota .origo-booking-aside-line strong {text-align:right;font-size:12px;font-weight:700;color:#fff;max-width:56%;line-height:1.45}
body.page-prenota .origo-booking-aside-total {display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid rgba(255,255,255,.28);padding:20px 0 22px;margin-top:4px}
body.page-prenota .origo-booking-aside-total span {color:#d3d7de;font-size:12px}
body.page-prenota .origo-booking-aside-total strong {font-size:31px;letter-spacing:-.06em;color:#fff}
body.page-prenota .origo-booking-aside-action {width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:10px;min-height:51px;padding:12px 15px;background:#e1eccf;border:0;border-radius:11px;font:inherit;font-size:12px;font-weight:800;color:#1c291b;cursor:pointer;transition:background .16s}
body.page-prenota .origo-booking-aside-action:hover {background:#f0f6e8}
body.page-prenota .origo-booking-aside-action:focus-visible {outline:3px solid #c1d2ff;outline-offset:4px}
body.page-prenota .origo-booking-aside-note {font-size:11px;color:#c5cbd1;line-height:1.55;margin:12px 0 20px}
body.page-prenota .origo-booking-aside-trust {display:flex;align-items:flex-start;gap:8px;font-size:10px;color:#adb4be;line-height:1.45;margin:8px 0}
body.page-prenota .origo-booking-aside-trust span {color:#d9ebc9;font-size:13px;font-weight:800}
body.page-prenota .booking-v9-stage[data-booking-stage="2"]>.booking-v9-card {min-height:0!important}
/* Dedicated lead path retains its own form; no checkout sidebar is shown. */
body.page-prenota.is-dedicated .origo-booking-aside {display:none!important}
body.page-prenota.is-dedicated .booking-v9-shell {grid-template-columns:minmax(0,1fr)!important;max-width:990px!important}
body.page-prenota.is-dedicated .origo-booking-flow {grid-template-columns:1fr 1fr!important;align-items:start}
body.page-prenota.is-dedicated .origo-booking-flow>.booking-v9-stage:first-child {grid-column:1/-1!important}
body.page-prenota.is-dedicated .origo-booking-flow>.booking-v9-stage[data-booking-stage="2"] {grid-column:1!important}
body.page-prenota.is-dedicated .origo-booking-flow>.booking-v9-stage[data-booking-stage="3"] {grid-column:2!important}
body.page-prenota.is-dedicated .oc-v3-dedicated-info {display:block!important}
body.page-prenota.is-dedicated .oc-v3-dedicated-form {display:block!important}
body.page-prenota.is-dedicated .oc-v3-booking-placeholder {display:none!important}
body.page-prenota.is-dedicated .origo-booking-dedicated-block {border-color:#a0a6ac}
@media(max-width:1120px){
  body.page-prenota .booking-v9-shell {grid-template-columns:minmax(0,1fr) 288px!important;gap:16px!important}
  body.page-prenota .booking-v9-card {padding:22px!important}
  body.page-prenota .origo-booking-aside-inner {padding:24px 19px}
  body.page-prenota .booking-wizard-v9 .booking-service {padding:15px 12px!important}
  body.page-prenota .booking-v13-agenda-list {grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:800px){
  body.page-prenota .booking-v9-shell {display:flex!important;flex-direction:column!important;max-width:690px!important;width:min(calc(100% - 28px),690px)!important}
  body.page-prenota .origo-booking-flow {width:100%}
  body.page-prenota .origo-booking-aside {width:100%;position:static;order:2}
  body.page-prenota .booking-v9-services {grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body.page-prenota .origo-booking-dedicated-block {flex-wrap:wrap}
  body.page-prenota.is-dedicated .origo-booking-flow {grid-template-columns:1fr!important}
  body.page-prenota.is-dedicated .origo-booking-flow>.booking-v9-stage {grid-column:1/-1!important}
}
@media(max-width:580px){
  body.page-prenota .booking-wizard-v9 {padding-top:27px!important}
  body.page-prenota .booking-v9-head {text-align:left!important;padding:0 18px!important;margin:0 auto 22px!important}
  body.page-prenota .booking-v9-head h1 {font-size:39px!important}
  body.page-prenota .booking-v9-services {grid-template-columns:1fr!important;gap:9px!important}
  body.page-prenota .booking-wizard-v9 .booking-service {min-height:0!important;padding:17px!important}
  body.page-prenota .booking-v9-time {margin:8px 0!important}
  body.page-prenota .booking-wizard-v9 .booking-service p {min-height:0!important;padding-right:66px}
  body.page-prenota .origo-booking-card-label {bottom:11px}
  body.page-prenota .booking-v9-card {padding:18px!important}
  body.page-prenota .origo-booking-dedicated-block {padding:16px!important}
  body.page-prenota .oc-v3-dedicated-option {width:100%!important}
  body.page-prenota .booking-v11-panel {padding:12px!important}
  body.page-prenota .booking-v11-date-list {gap:4px!important}
  body.page-prenota .booking-v11-date {min-height:49px!important;padding:7px 2px!important}
  body.page-prenota .booking-v11-date .dom {font-size:16px!important}
  body.page-prenota .booking-v13-agenda-list {grid-template-columns:repeat(2,minmax(0,1fr))}
  body.page-prenota .booking-v9-grid {grid-template-columns:1fr!important}
  body.page-prenota .booking-v9-grid .full {grid-column:1!important}
  body.page-prenota .oc-v3-booking-placeholder {padding:19px!important}
  body.page-prenota .origo-booking-aside-inner {padding:24px}
}

body.page-prenota .booking-v11-date-list>.booking-v11-empty {grid-column:1/-1!important;}
