/* Existing Carveoo tokens, native markup and contextual frames remain authoritative.
 * The supplied .cv-client-page marketing composition and native wp-admin are excluded.
 */
body.cv-context-public:not(:has(.cv-client-page)),
body.cv-guest-ui:is(.cv-context-neutral,.cv-context-guest){
 --cv-sand:#f7f2e8;--cv-border:#e8e2d6;
 background-color:var(--cv-sand);
}
body.cv-context-public .page__text{font-family:Manrope,system-ui,sans-serif;line-height:1.75;overflow-wrap:break-word}
body.cv-context-public .page__text>main.wp-block-group{
 box-sizing:border-box;max-width:920px;margin-inline:auto;padding:40px!important;
}
body.cv-context-public .page__text h1,
body.cv-context-public.woocommerce-shop :is(.woocommerce-products-header__title,.page-title){
 font:750 clamp(28px,3vw,40px)/1.25 Manrope,system-ui,sans-serif!important;
 letter-spacing:-.025em;color:var(--cv-ink);margin:0 0 24px;
}
body.cv-context-public .page__text :is(h2,h3){
 font-family:Manrope,system-ui,sans-serif!important;line-height:1.35!important;
 letter-spacing:-.02em;color:var(--cv-ink);
}
body.cv-context-public .page__text h2{font-size:24px!important;margin-block:32px 16px}
body.cv-context-public .page__text h3{font-size:20px!important;margin-block:24px 12px}
body.cv-context-public .page__text :is(p,li){line-height:1.75}
body.cv-context-public .page__text a{color:var(--cv-teal);text-underline-offset:3px}
/* Keep the same existing dialog and event target; expose its single globe directly. */
:is(.cv-market-header,.cv-context-header) .cv-preferences-entry>.cv-preferences-globe{display:inline-flex!important}
:is(.cv-market-header,.cv-context-header) .cv-preferences-mobile-menu{display:none!important}
/* Native results retain their query, fields, filters and cards. An actually empty
 * sticky-sidebar placeholder must not reserve a blank column.
 */
body.cv-context-discovery:not(.home) .hp-page{max-width:1440px;margin-inline:auto;padding:32px 40px;box-sizing:border-box}
body.cv-context-discovery:not(.home) .hp-page>.hp-row{margin-inline:0}
body.cv-context-discovery .hp-page__sidebar:is(:empty,:has(.inner-wrapper-sticky:empty)):not(:has(form,input,select,button,a,nav,p,h2,h3,img)){display:none}
body.cv-context-discovery:not(.home) .hp-row:has(>.hp-page__sidebar .inner-wrapper-sticky:empty):not(:has(>.hp-page__sidebar :is(form,input,select,button,a,nav,p,h2,h3,img)))>.hp-page__content,
body.cv-context-discovery:not(.home) .hp-row:has(>.hp-page__sidebar:empty)>.hp-page__content{
 flex:1 1 100%!important;width:100%!important;max-width:100%!important;min-width:0;padding-inline:0;
}
body.cv-context-discovery:not(.home) .hp-page__topbar::before{
 font:700 clamp(25px,2.5vw,34px)/1.3 Manrope,system-ui,sans-serif!important;
 letter-spacing:-.025em;overflow-wrap:normal;
}
body.cv-context-discovery .hp-listing--view-block{min-width:0;border-color:var(--cv-border);box-shadow:none}
body.cv-context-discovery .hp-listing--view-block .hp-listing__title{font:650 18px/1.4 Manrope,system-ui,sans-serif!important;overflow-wrap:normal}
body.cv-context-discovery .hp-listing--view-block .hp-listing__title a{font:inherit!important}
body.cv-context-discovery .hp-listing--view-block .hp-listing__image{border-radius:16px 16px 0 0;overflow:hidden}
body.cv-context-discovery .hp-listing--view-block .hp-listing__image img{aspect-ratio:4/3;object-fit:cover}
body.cv-context-discovery .hp-listing--view-block .woocommerce-Price-amount{white-space:nowrap;font-variant-numeric:tabular-nums}
/* The existing empty storefront is still an existing page; fix its theme row,
 * typography and notice, without changing products or its empty-state wording.
 */
body.cv-context-public.woocommerce-shop>.row{margin-inline:0}
body.cv-context-public.woocommerce-shop>.row>main{float:none;width:100%;max-width:1000px;margin-inline:auto;padding:40px;box-sizing:border-box}
body.cv-context-public.woocommerce-shop .woocommerce-info{background:#fff;border:1px solid var(--cv-border);border-left:3px solid var(--cv-teal);border-radius:12px;color:var(--cv-ink)}
body.cv-context-public.woocommerce-shop .woocommerce-info::before{color:var(--cv-teal)}
/* Existing operational embeds inherit the same Host section hierarchy when
 * nested inside reservation cards, rather than the theme's large page titles.
 */
body.cv-context-host .cv-host-reservation .cv-rental-operations h2{font-size:20px!important;line-height:1.4!important}
body.cv-context-host :is(.cv-host-handover,.cv-booking-selections)>h3{font-size:18px!important;line-height:1.4!important;margin:0 0 16px}
body.cv-guest-ui .cv-rental-operations h2{font-size:20px!important;line-height:1.4!important}
body.cv-guest-ui .cv-booking-selections>h3{font-size:18px!important;line-height:1.4!important;margin:0 0 16px}
/* The existing Woo account shortcode has no hp-page wrapper. Keep its native
 * account navigation and responsive table inside the shared Guest gutters.
 */
body.cv-guest-ui.woocommerce-account:not(.woocommerce-view-order)>.page__text{box-sizing:border-box;width:100%;max-width:1280px;margin-inline:auto;padding:32px 16px}
body.cv-guest-ui.woocommerce-account>.page__text>.woocommerce>div>.hp-row,
body.cv-guest-ui.woocommerce-account>.page__text>.woocommerce>.hp-row{margin-inline:0}
body.cv-guest-ui .woocommerce-orders-table{background:#fff;border:1px solid var(--cv-border);border-collapse:separate;border-spacing:0;border-radius:16px}
body.cv-guest-ui .woocommerce-orders-table__cell-order-actions{padding-right:12px!important}
body.cv-guest-ui.woocommerce-account .woocommerce-MyAccount-content{min-width:0;overflow-wrap:anywhere}
body.cv-guest-ui.woocommerce-dashboard>.page__text{padding-inline:32px}
body:is(.cv-guest-ui,.cv-context-host) .hp-status--wc-processing>span{color:#775921!important;background:#fbf5e9;border-color:#ecdfbd!important}
body.cv-guest-ui .woocommerce-orders-table .woocommerce-button.view{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;border:1px solid var(--cv-border);border-radius:10px;background:#fff;color:var(--cv-ink);font:600 14px/1.4 Manrope,system-ui,sans-serif;box-shadow:none}
/* Shared, lightweight feedback only. Existing disabled states remain native. */
body:is(.cv-context-discovery,.cv-context-detail,.cv-context-public,.cv-context-guest,.cv-context-neutral,.cv-context-host) :is(.cv-host-button,.cv-host-secondary,.carveoo-card-cta a,.cv-context-utilities a):focus-visible{
 outline:3px solid var(--cv-teal);outline-offset:3px;
}
@media(prefers-reduced-motion:no-preference){
 :is(.cv-context-header,.cv-market-header) :is(a,button),.cv-host-button,.cv-host-secondary,.carveoo-card-cta a{transition:background-color 140ms ease,color 140ms ease,border-color 140ms ease}
}
@media(max-width:767px){
 .cv-context-header:not(.cv-native-checkout-header) .cv-context-header__row{min-height:72px;padding:12px 16px;gap:8px 12px}
 .cv-context-header:not(.cv-native-checkout-header) :is(.cv-context-brand,.cv-context-brand img){width:112px;max-width:112px;flex-basis:112px}
 .cv-context-header:not(.cv-native-checkout-header) .cv-context-header__identity{font-size:11px;padding-left:12px}
 .cv-context-header:not(.cv-native-checkout-header) .cv-context-utilities{width:auto;min-width:0;margin-left:auto;gap:4px}
 .cv-context-header:not(.cv-native-checkout-header) .cv-context-utilities a{padding:6px;font-size:12px}
 body.cv-context-public .page__text>main.wp-block-group{padding:28px 20px!important}
 body.cv-context-public .page__text h2{font-size:22px!important}
 body.cv-context-public.woocommerce-shop>.row>main{padding:28px 20px}
 body.cv-context-discovery:not(.home) .hp-page{padding:24px 20px}
 body.cv-guest-ui.woocommerce-account:not(.woocommerce-view-order)>.page__text{padding:24px 4px}
 body.cv-guest-ui.woocommerce-dashboard>.page__text{padding-inline:20px}
 body.cv-guest-ui .hp-booking--view-block .hp-listing__footer{flex-wrap:wrap;gap:12px;align-items:center}
 body.cv-guest-ui .hp-booking--view-block .hp-listing__footer>.hp-listing__attributes--primary{flex:0 0 100%;width:100%;margin:0}
 body.cv-guest-ui .hp-booking--view-block .hp-listing__actions--primary{flex:0 0 100%;width:100%;justify-content:space-between;gap:16px}
 body.cv-guest-ui .hp-booking--view-block .hp-listing__action--pay{display:inline-flex;align-items:center;min-height:44px;flex:1 1 auto;min-width:0;white-space:normal;line-height:1.5}
 body.cv-guest-ui .hp-booking--view-block .hp-listing__action--message{flex-shrink:0;margin-left:0}
}
@media(max-width:359px){
 .cv-market-header .cv-market-topbar,.cv-market-header .cv-market-search-row{width:calc(100% - 32px)!important;margin-inline:auto!important}
 .cv-market-header .cv-market-topbar{gap:8px!important}
 .cv-market-header .cv-market-brand{width:112px!important;flex:0 0 112px!important}
 .cv-market-header .cv-market-brand__image{max-width:112px!important}
}
