/* Cheval Royal — scoped Canvas 7 feature design.
   Keep existing Kentico widget identifiers, form names and JS hooks unchanged. */

/* Features/_ViewStart supplies the shared scope, including new feature pages. */
.canvas7.cr-features :where(.form-control,.form-select) {
  border-color:var(--cr7-line);
  border-radius:var(--cr7-radius-sm);
  font-family:var(--cnvs-body-font);
}
.canvas7.cr-features :where(.form-control,.form-select):focus-visible {
  outline:2px solid var(--cr7-primary);
  outline-offset:2px;
}
.canvas7.cr-features :where(.card,.modal-content) {
  border-color:var(--cr7-line);
  border-radius:var(--cr7-radius);
}
.canvas7.cr-feature-wifi {
  background:var(--cr7-surface);
}
.canvas7.cr-feature-wifi .portal-card {
  border:1px solid var(--cr7-line);
  border-radius:var(--cr7-radius);
  box-shadow:var(--cr7-shadow);
}
/* Standalone tools and the captive portal need compact application headings. */
.canvas7:is(.cr-feature-standalone,.cr-feature-wifi) h1 {
  font-size:clamp(1.5rem,4vw,2rem);
  line-height:1.2;
}
.canvas7:is(.cr-feature-standalone,.cr-feature-wifi) h2 {
  font-size:1.5rem;
  line-height:1.3;
}
.canvas7.cr-feature-standalone .fullpage-toolbar a {
  color:var(--cr7-text);
  background:var(--cr7-paper);
  border-color:var(--cr7-line);
  border-radius:var(--cr7-radius-sm);
}
.canvas7.cr-feature-standalone .fullpage-toolbar a:focus-visible {
  outline:2px solid var(--cr7-primary);
  outline-offset:2px;
}

/* The base theme gives direct sections marketing-sized padding; the checkout
   progress bar explicitly requests pt-0, which must win over that default. */
.canvas7.cr-feature-checkout #main-content > :where(section,.section):nth-child(even):not([class*=bg-]),
.canvas7.cr-feature-search #main-content > :where(section,.section):nth-child(even):not([class*=bg-]),
.canvas7.cr-feature-event #main-content > :where(section,.section):nth-child(even):not([class*=bg-]) {
  background: transparent;
}
/* Preserve Bootstrap/Crafto spacing utilities without coupling to CSS layer support. */
.canvas7.cr-feature-checkout #main-content > section.pt-0,
.canvas7.cr-feature-event #main-content > section.pt-0 { padding-top: 0; }

/* Search — no leftover demo-theme assets, readable branded hero and form. */
.canvas7.cr-feature-search .cr-feature-banner {
  padding-block: clamp(32px, 4vw, 56px) !important;
  background: linear-gradient(135deg, var(--cr7-ink), var(--cr7-ink-soft)) !important;
  color: var(--cr7-paper);
}
.canvas7.cr-feature-search .cr-feature-banner :where(h1,p,a,li) {color:var(--cr7-paper);}
.canvas7.cr-feature-search .cr-feature-banner h1 {font-size:clamp(28px,3vw,40px);line-height:1.2;}
.canvas7 .cr-empty-state .icon-feather-search {width:fit-content;margin-inline:auto;}
.canvas7.cr-feature-search .cr-feature-banner a:hover {color:var(--cr7-accent);}
.canvas7.cr-feature-search .search-result-image {object-fit:cover;min-height:100%;}
.canvas7.cr-feature-search #search-results-container .card {border-radius:var(--cr7-radius);}
.canvas7.cr-feature-search input[type=search] {width:100%;padding-right:3.5rem;}

/* Event ticket buttons use the same red brand tokens as other CTAs. */
.canvas7.cr-feature-event .cr-event-ticket-cta {
  background:var(--cr7-primary) !important;
  border:1px solid var(--cr7-primary) !important;
  color:var(--cr7-paper) !important;
  box-shadow:0 10px 28px rgb(200 16 46 / 22%);
}
.canvas7.cr-feature-event .cr-event-ticket-cta:is(:hover,:focus-visible) {
  background:var(--cr7-primary-dark) !important;
  border-color:var(--cr7-primary-dark) !important;
}
.canvas7.cr-feature-event .cr-event-best-value {
  border-color:var(--cr7-primary) !important;
  background:color-mix(in srgb,var(--cr7-primary) 5%,white);
}

/* Checkout — preserve step states and validation while improving narrow screens. */
.canvas7.cr-feature-checkout .checkout-progress {
  border:1px solid var(--cr7-line);
  border-radius:var(--cr7-radius);
  background:var(--cr7-surface);
  gap:.5rem;
}
.canvas7.cr-feature-checkout .checkout-step {min-width:0;}
.canvas7.cr-feature-checkout .checkout-step.active .step-label {color:var(--cr7-primary) !important;}
.canvas7.cr-feature-checkout .checkout-step.completed .step-label {color:var(--cr7-text) !important;}
@media(max-width:767.98px) {
  .canvas7.cr-feature-checkout .checkout-progress {padding:1rem .5rem !important;gap:.25rem;}
  .canvas7.cr-feature-checkout .checkout-progress .step-connector {min-width:4px;margin-inline:0 !important;}
  .canvas7.cr-feature-checkout .checkout-progress .step-label {font-size:.65rem;line-height:1.25;overflow-wrap:anywhere;}
  .canvas7.cr-feature-checkout .checkout-progress .step-icon {width:32px;height:32px;}
  .canvas7.cr-feature-search .cr-feature-banner {padding-block:32px !important;}
}
@media(prefers-reduced-motion:reduce) {
 .canvas7.cr-feature-event .cr-event-ticket-cta {transition:none;}
}

/* Pass 13 — customer and operations UI. Scope all selectors to the body feature
   class so existing Kentico editor widgets and public marketing sections retain
   their current visuals. CSS only: no dashboard event hooks or payment states. */
.canvas7:is(.cr-feature-account,.cr-feature-operations) #main-content > :where(section,.section):nth-child(even):not([class*=bg-]) {
  background: transparent;
}
.canvas7:is(.cr-feature-account,.cr-feature-operations) #main-content > section:not(:first-child) {
  padding-block: clamp(1.5rem,3.5vw,3.25rem);
}
.canvas7:is(.cr-feature-account,.cr-feature-operations) #main-content > section:first-child:is(.account-hero,.account-page-gradient) {
  padding-block: clamp(3.5rem,6vw,5.5rem) clamp(2.5rem,4vw,3.5rem);
  background-color: var(--cr7-ink);
  color: var(--cr7-paper);
}
.canvas7:is(.cr-feature-account,.cr-feature-operations) #main-content > section:first-child:is(.account-hero,.account-page-gradient) :where(h1,h2,h3,p) {
  color: var(--cr7-paper);
}
/* Navigation: preserve Bootstrap's tab semantics and existing data-bs targets. */
.canvas7.cr-feature-account .dashboard-tabs {
  display:flex;flex-wrap:wrap;gap:.4rem;
  border-bottom:1px solid var(--cr7-line);padding-bottom:.5rem;
}
.canvas7.cr-feature-account .dashboard-tabs .nav-link {
  min-height:44px;border:1px solid transparent;border-radius:var(--cr7-radius-sm);
  color:var(--cr7-text);font-weight:650;padding:.65rem 1rem;
}
.canvas7.cr-feature-account .dashboard-tabs .nav-link:is(.active,[aria-selected=true]) {
  color:var(--cr7-primary);background:var(--cr7-paper);
  border-color:var(--cr7-line);box-shadow:0 4px 16px rgb(9 11 16 / 7%);
}
/* The Vite bundle forces .nav-link.active to black with !important (header nav rule);
   re-assert the brand red for account dashboard tabs. */
.canvas7.cr-feature-account .dashboard-tabs .nav-link.active {color:var(--cr7-primary) !important;}
.canvas7.cr-feature-account .dashboard-tabs .nav-link:hover:not(.active) {
  background:var(--cr7-surface);
}
/* Operational dashboards: compact surfaces without altering dynamic section visibility. */
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) {min-width:0;}
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.card,.border-radius-6px) {
  border-radius:var(--cr7-radius-sm);
}
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table-responsive) {
  max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table) {
  margin-bottom:0;font-variant-numeric:tabular-nums;
}
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table) :where(th,td) {
  padding:.8rem .9rem;vertical-align:middle;
}
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table) th {
  background:var(--cr7-surface);color:var(--cr7-text);font-weight:700;
}
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table) tbody tr:hover {
  background:rgb(22 184 196 / 5%);
}
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.badge) {
  font-weight:650;line-height:1.35;white-space:normal;
}
.canvas7.cr-feature-operations .planner-nav-link {
  display:flex;align-items:center;gap:.3rem;min-height:44px;
  border-radius:var(--cr7-radius-sm);padding:.5rem .75rem;
  text-decoration:none;
}
.canvas7.cr-feature-operations .planner-nav-link:is(.active,:hover) {
  color:var(--cr7-primary) !important;background:var(--cr7-surface);
}
.canvas7.cr-feature-operations .modal-dialog {max-width:min(var(--bs-modal-width, 800px),calc(100vw - 1rem));margin-inline:auto;}
.canvas7.cr-feature-operations .modal-content {border:1px solid var(--cr7-line);border-radius:var(--cr7-radius);}
.canvas7.cr-feature-operations .modal-header {padding:1rem 1.25rem;}
.canvas7.cr-feature-operations .modal-footer {gap:.5rem;padding:1rem 1.25rem;}
.canvas7.cr-feature-operations .modal-body {min-width:0;overflow-wrap:anywhere;}
.canvas7.cr-feature-operations :where(.modal-body,.admin-section,.planner-tab-section) :where(input,select,textarea) {max-width:100%;}
@media(max-width:767.98px) {
  .canvas7:is(.cr-feature-account,.cr-feature-operations) #main-content > section:first-child:is(.account-hero,.account-page-gradient) {padding-block:3rem 2rem;}
  .canvas7.cr-feature-account .dashboard-tabs {flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;}
  .canvas7.cr-feature-account .dashboard-tabs .nav-link {white-space:nowrap;}
  .canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table) :where(th,td) {padding:.65rem .75rem;}
  .canvas7.cr-feature-operations .modal-body.p-40px {padding:1.25rem !important;}
  .canvas7.cr-feature-operations .modal-header,.canvas7.cr-feature-operations .modal-footer {padding:.85rem 1rem;}
}
@media print {
  .canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table-responsive) {overflow:visible;}
  .canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table) {font-size:10pt;}
}

/* Pass 14 — customer account pages opt in individually so account-only treatments
   do not bleed into the public builder or shared partials. */
.canvas7.cr-feature-account .account-hero,
.canvas7.cr-feature-account .cr-contracts-hero {
  background:linear-gradient(135deg,var(--cr7-ink),var(--cr7-ink-soft));
  color:var(--cr7-paper);
}
.canvas7.cr-feature-account .account-hero :where(h1,h2,p),
.canvas7.cr-feature-account .cr-contracts-hero :where(h1,h2,p) {color:var(--cr7-paper);}
.canvas7.cr-feature-account #main-content :where(input.form-control,select.form-control,textarea.form-control) {
  min-height:44px;border:1px solid var(--cr7-line) !important;
  border-radius:var(--cr7-radius-sm);background:var(--cr7-paper) !important;
  max-width:100%;
}
.canvas7.cr-feature-account #main-content textarea.form-control {min-height:110px;}
.canvas7.cr-feature-account #main-content :where(input.form-control,select.form-control,textarea.form-control):focus-visible {
  border-color:var(--cr7-primary) !important;
  box-shadow:0 0 0 3px rgb(200 16 46 / 15%);
  outline:0;
}
.canvas7.cr-feature-account #main-content :where(input.form-control,select.form-control,textarea.form-control):is(:disabled,[readonly]) {
  background:var(--cr7-surface) !important;
}
.canvas7.cr-feature-account #main-content .table-responsive {max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
.canvas7.cr-feature-account #main-content :where(.table,.table-responsive) {font-variant-numeric:tabular-nums;}
.canvas7.cr-feature-account #main-content .table :where(th,td) {vertical-align:middle;}
.canvas7.cr-feature-account #main-content :where(.box-shadow-extra-large.border-radius-6px) {
  border:1px solid var(--cr7-line);border-radius:var(--cr7-radius);box-shadow:0 12px 38px rgb(9 11 16 / 6%);
}
.canvas7.cr-feature-account #main-content .icon-box--red {background:rgb(200 16 46 / 9%);color:var(--cr7-primary);}
@media(max-width:575.98px) {
  .canvas7.cr-feature-account #main-content .box-shadow-extra-large.border-radius-6px.p-6 {padding:1.25rem !important;}
  .canvas7.cr-feature-account #main-content .table :where(th,td) {padding:.65rem .75rem;}
}

/* Pass 14 — restaurant menu Page Builder widget: apply at widget boundary only;
   existing editor layout/background settings and content bindings are retained. */
.canvas7 .cr-widget--restaurant-menu {position:relative;isolation:isolate;overflow:hidden;}
.canvas7 .cr-widget--restaurant-menu .cr-menu-ornament {
  position:absolute;width:clamp(70px,11vw,165px);aspect-ratio:1;border-radius:50%;
  border:2px solid currentColor;opacity:.12;pointer-events:none;z-index:-1;
}
.canvas7 .cr-widget--restaurant-menu .cr-menu-ornament--start {inset:1.5rem auto auto -3rem;}
.canvas7 .cr-widget--restaurant-menu .cr-menu-ornament--end {inset:auto -3rem 1.5rem auto;}
.canvas7 .cr-widget--restaurant-menu .cr-menu-category-badge,
.canvas7 .cr-widget--restaurant-menu .cr-menu-featured-badge,
.canvas7 .cr-widget--restaurant-menu .cr-menu-price-highlight {background:var(--cr7-primary);color:var(--cr7-paper);}
.canvas7 .cr-widget--restaurant-menu :where(.pricing-table-style-11,.pricing-table-style-12) {max-width:100%;}
.canvas7 .cr-widget--restaurant-menu :where(.menu-item-image,.menu-item-image-sm) {object-fit:cover;aspect-ratio:1;}
.canvas7 .cr-widget--restaurant-menu :where(.pricing-table-style-11,.pricing-table-style-12) li {min-width:0;}
.canvas7 .cr-widget--restaurant-menu :where(.pricing-table-style-11,.pricing-table-style-12) li .item {overflow-wrap:anywhere;}
@media(max-width:575.98px) {
  .canvas7 .cr-widget--restaurant-menu .cr-menu-ornament {width:70px;}
  .canvas7 .cr-widget--restaurant-menu :where(.pricing-table-style-11,.pricing-table-style-12) {padding-inline:0 !important;}
}
@media(prefers-reduced-motion:reduce) {
  .canvas7 .cr-widget--restaurant-menu [data-anime] {animation:none !important;transition:none !important;}
}

/* Pass 15 — opt-in feature layouts and accessible operational interaction. */
.canvas7:is(.cr-feature-checkout,.cr-feature-search,.cr-feature-event,.cr-feature-account,.cr-feature-operations) #main-content > section {min-width:0;}
.canvas7:is(.cr-feature-checkout,.cr-feature-search,.cr-feature-event,.cr-feature-account,.cr-feature-operations) #main-content > section:focus-within {scroll-margin-top:6rem;}
.canvas7.cr-feature-account #main-content :where(a,button,input,select,textarea,[role="button"]):focus-visible,
.canvas7.cr-feature-operations #main-content :where(a,button,input,select,textarea,[role="button"]):focus-visible,
.canvas7.cr-feature-checkout #main-content :where(a,button,input,select,textarea,[role="button"]):focus-visible {
 outline:2px solid var(--cr7-primary);outline-offset:3px;
}
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table-responsive,.modal-body) {overscroll-behavior-x:contain;}
.canvas7.cr-feature-operations :where(.admin-section,.planner-tab-section) :where(.table-responsive) :where(th,td) {overflow-wrap:normal;}
.canvas7.cr-feature-operations .modal-dialog {max-height:calc(100dvh - 1rem);}
.canvas7.cr-feature-operations .modal-content {max-height:calc(100dvh - 1rem);}
.canvas7.cr-feature-operations .modal-body {overflow-y:auto;}
@media(max-width:575.98px) {
 .canvas7.cr-feature-operations .modal-dialog {margin:.5rem auto;}
 .canvas7.cr-feature-operations .modal-header,
 .canvas7.cr-feature-operations .modal-footer {padding:.75rem 1rem;}
 .canvas7.cr-feature-account #main-content .table-responsive {scrollbar-width:thin;}
}
@media(prefers-reduced-motion:reduce) {
 .canvas7:is(.cr-feature-checkout,.cr-feature-search,.cr-feature-event,.cr-feature-account,.cr-feature-operations) #main-content :where(*, *::before, *::after) {scroll-behavior:auto;}
}
/* Text-only banner cards need a contrast surface over CMS background images. */
.canvas7 .cr-section--banner .interactive-banner-style-08 figure:not(:has(img)) {
  background: rgb(9 11 16 / 82%);
  border-radius: var(--cr7-radius);
}
.canvas7 .xcb-booking-widget .booking-header .booking-title { color: var(--cr7-paper) !important; }

/* Utility pages opt in via _ViewStart; marketing titles keep their own scale. */
.canvas7.cr-feature-utility #main-content > section {padding-block:40px;background:var(--cr7-paper);}
.canvas7.cr-feature-utility #main-content h1 {font-size:clamp(28px,3vw,36px);line-height:1.2;}
.canvas7.cr-feature-utility #main-content h2 {font-size:clamp(22px,2.2vw,28px);line-height:1.3;}
.canvas7.cr-feature-utility #main-content .card:hover {transform:none;}
.canvas7:is(.cr-feature-utility,.cr-feature-catalog) #main-content .form-check {
  display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;
  align-items:start;padding-left:0;min-height:44px;
}
.canvas7:is(.cr-feature-utility,.cr-feature-catalog) #main-content .form-check-input {
  width:20px;height:20px;min-width:0;min-height:0;padding:0;margin:3px 0 0;
  border-color:var(--cr7-muted);accent-color:var(--cr7-primary);
}
.canvas7:is(.cr-feature-utility,.cr-feature-catalog) #main-content .form-check-input[type=radio] {border-radius:50%;}
.canvas7:is(.cr-feature-utility,.cr-feature-catalog) #main-content .form-check-input:checked {background-color:var(--cr7-primary);border-color:var(--cr7-primary);}
.canvas7:is(.cr-feature-utility,.cr-feature-catalog) #main-content .form-check-label {display:block;width:auto;min-width:0;font-size:15px;line-height:1.5;}
.canvas7:is(.cr-feature-utility,.cr-feature-catalog) #main-content .form-check-label strong {display:inline;}
.canvas7:is(.cr-feature-utility,.cr-feature-catalog) #main-content .form-check > [data-valmsg-for] {grid-column:2;}
.canvas7.cr-feature-utility #main-content .btn {display:inline-flex;align-items:center;justify-content:center;gap:6px;width:max-content;max-width:100%;min-height:46px;padding:12px 20px;font-size:14px;line-height:1.4;white-space:nowrap;}
.canvas7.cr-feature-utility #main-content .btn > i {flex:none;width:auto;}
.canvas7.cr-feature-utility #main-content .form-control {font-size:16px;}

/* Host-only adaptation: keep booking handlers and step state unchanged. */
.canvas7 .xcb-booking-widget {
  --booking-primary:var(--cr7-primary);--booking-primary-hover:var(--cr7-primary-dark);
  --booking-primary-light:color-mix(in srgb,var(--cr7-primary) 8%,var(--cr7-paper));
  --booking-font-family:var(--cnvs-body-font);
  --xcb-accent:var(--cr7-primary);--xcb-accent-strong:var(--cr7-primary-dark);
  --xcb-accent-soft:var(--booking-primary-light);--xcb-font:var(--cnvs-body-font);
}
.canvas7 .xcb-booking-widget .booking-header {background:linear-gradient(135deg,var(--cr7-ink),var(--cr7-ink-soft));}
.canvas7 .xcb-booking-widget .booking-steps-progress {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:16px 8px;overflow:visible;}
.canvas7 .xcb-booking-widget .booking-steps-progress .step {width:auto;min-width:0;padding:0 2px;}
.canvas7 .xcb-booking-widget .booking-steps-progress .step-title {font-size:12px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;text-align:center;}
.canvas7 .xcb-booking-widget .booking-steps-progress .step-number {font-size:13px;width:28px;height:28px;}
.canvas7 .xcb-booking-widget .booking-steps-progress .step.active {background:var(--booking-primary-light);}
.canvas7 .xcb-booking-widget .booking-steps-progress .step.active .step-number {box-shadow:0 0 0 4px var(--booking-primary-light);}
.canvas7 .xcb-booking-widget :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select) {
  border:1px solid var(--cr7-line);border-radius:var(--cr7-radius-sm);background:var(--cr7-paper);color:var(--cr7-text);font-size:16px;min-height:48px;
  /* Legacy widget imports force border:none; draw the Canvas boundary without another important rule. */
  box-shadow:inset 0 0 0 1px var(--cr7-line);
}
.canvas7 .xcb-booking-widget :is(input,select):focus-visible {outline:3px solid var(--cr7-accent);outline-offset:2px;}

/* Catalog keeps its product/filter markup but uses a compact feature composition. */
.canvas7.cr-feature-catalog #main-content section {padding-block:32px;background:var(--cr7-paper);}
.canvas7.cr-feature-catalog #main-content .cr-catalog-header {padding-block:40px;background:var(--cr7-ink);color:var(--cr7-paper);}
.canvas7.cr-feature-catalog .cr-catalog-header h1 {font-size:clamp(28px,3vw,40px);line-height:1.2;}
.canvas7.cr-feature-catalog .cr-catalog-card {border:1px solid var(--cr7-line);border-radius:var(--cr7-radius);overflow:hidden;}
.canvas7.cr-feature-catalog .cr-catalog-card .product-image img {height:160px;object-fit:cover;}
.canvas7.cr-feature-catalog .cr-catalog-placeholder {height:160px;display:grid;place-items:center;background:var(--cr7-surface);color:var(--cr7-primary);border-bottom:1px solid var(--cr7-line);}
.canvas7.cr-feature-catalog .cr-catalog-placeholder span {font-family:var(--cnvs-primary-font);font-size:16px;font-weight:700;letter-spacing:.03em;}
.canvas7.cr-feature-catalog .cr-catalog-card h6 {font-size:16px;line-height:1.4;}
.canvas7.cr-feature-catalog .col-lg-3 :is(h5,h6) {font-size:18px;line-height:1.4;}
@media(max-width:767.98px) {
  .canvas7.cr-feature-catalog .cr-catalog-card {display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;}
  .canvas7.cr-feature-catalog .cr-catalog-card .product-image img {height:112px;}
  .canvas7.cr-feature-catalog .cr-catalog-placeholder {height:112px;padding:12px;text-align:center;border:0;}
  .canvas7.cr-feature-catalog .cr-catalog-placeholder span {font-size:13px;}
  .canvas7.cr-feature-catalog .cr-catalog-card .cr-catalog-card-body {padding:14px;}
  .canvas7.cr-feature-catalog .cr-catalog-card .product-overlay {display:none;}
  .canvas7.cr-feature-catalog .cr-catalog-card .btn {min-height:44px;min-width:44px;}
}

/* Compact consent presentation; all consent actions remain on the existing form. */
.canvas7 .cr-cookie-banner .cookie-message {
  position:static;width:100%;max-width:none;padding:16px 20px;
  background:var(--cr7-ink);color:var(--cr7-paper);border-radius:0;
  border-top:1px solid var(--cr7-line);box-shadow:var(--cr7-shadow);
}
.canvas7 .cr-cookie-banner {position:sticky;bottom:0;z-index:1050;}
.canvas7 .cr-cookie-banner h6 {font-size:18px;line-height:1.3;margin-bottom:6px;}
.canvas7 .cr-cookie-banner .cookie-description {font-size:14px;line-height:1.5;margin-bottom:12px;}
.canvas7 .cr-cookie-banner .cr-cookie-actions {display:flex;gap:12px;}
.canvas7 .cr-cookie-banner .cr-cookie-actions .btn {flex:1;min-height:44px;margin:0;padding:10px 12px;border-radius:999px;font-size:12px;line-height:1.4;}
@media(max-width:767.98px) {
  .canvas7 .cr-cookie-banner .cookie-message {padding:12px 16px;}
  .canvas7 .cr-cookie-banner .cookie-description {font-size:13px;line-height:1.45;}
}
@media(min-width:768px) {
  .canvas7 .cr-cookie-banner .cookie-message {display:grid !important;grid-template-columns:minmax(0,1fr) minmax(300px,420px);column-gap:32px;padding:16px max(24px,calc((100vw - 1320px)/2));}
  .canvas7 .cr-cookie-banner h6,.canvas7 .cr-cookie-banner .cookie-description {grid-column:1;}
  .canvas7 .cr-cookie-banner .cookie-description {margin-bottom:0;}
  .canvas7 .cr-cookie-banner .cr-cookie-actions {grid-column:2;grid-row:1/3;align-items:center;}
}
