@import url('https://fonts-api.wp.com/css?family=Roboto:600&display=swap');
div#new-layout-Form .luxride_mptbm_booking .mpStyle .mptb-tab-container {
    padding: 14px;
    background: #fff !important;
		border-radius:14px;
	box-shadow: 0 18px 42px -28px rgba(24, 26, 31, 0.45);
}
div#new-layout-Form .luxride_mptbm_booking .mpStyle ._dLayout.mptbm_search_area {
    box-shadow: none;
}
div#new-layout-Form ul.mptb-tabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch;
    gap: 0 !important;
    margin: 0 0 14px !important;
    padding: 4px !important;
    list-style: none !important;
    background: #F3F4F6 !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    overflow: hidden;
}
div#new-layout-Form ul.mptb-tabs li.tab-link{
    flex: 1 1 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 11px 8px !important;
    height: auto !important;
    min-height: 42px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1.2 !important;
    white-space: nowrap;
    color: #4B4B55 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 9px !important;
    box-shadow: none !important;
    cursor: pointer;
    transition: background-color .18s ease, color .18s ease;
	
}
div#new-layout-Form ul.mptb-tabs li.tab-link.current{
color: #fff !important;
    background: var(--driveguard-red, #E24A49) !important;
	box-shadow: none !important;
padding: 0px 13px 0 !important;
}
div#site-content div#new-layout-Form ._dLayout.mptbm_search_area {
    padding: 0px 13px 0px !important;
}
div#new-layout-Form ul.mptb-tabs li.tab-link:hover{

color: #181A1F !important;
    background: rgba(255, 255, 255, 0.72) !important;
}

div#new-layout-Form .dg-booking-vertical .mptbm_search_area{
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    padding: 12px 14px 16px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0;
}

div#new-layout-Form .mpForm {
    display: grid !important;
    flex: unset;
    justify-content: unset !important;
    -webkit-justify-content: unset !important;
    width: 100% !important;
}
.extra-link li.elementor-icon-list-item a {
    color: #d9514c;
    display: contents;
}
div#site-content div#new-layout-Form .inputList.justifyBetween._fdColumn span {
    display: none !important;
    height: 0px !important;
}
div#site-content div#new-layout-Form .tabsContentNext .mptb-tabs-content-wrap .mpForm .inputList.justifyBetween._fdColumn button#mptbm_get_vehicle {
    width: 100% !important;
    max-width: 100% !important;
}
div#site-content div#new-layout-Form .tabsContentNext .mptb-tabs-content-wrap .mpForm .inputList.justifyBetween._fdColumn {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100%;
}

div#new-layout-Form .mpForm.dg-daily-form {
    padding-top: 9px !important;
}

div#site-content .inputList.dg-daily-action::before{
	display:none;
}
div#site-content div#new-layout-Form .inputList.dg-daily-action button.dg-daily-book._themeButton_fullWidth {
    width: 100% !important;
    max-width: 100% !important;
}
div#site-content div#new-layout-Form .inputList.dg-daily-action {
    width: 100% !important;
    max-width: 100% !important;
}
div#new-layout-Form .luxride_mptbm_booking {
    max-width: 414px !important;
    width: 100% !important;
}
.faq-texter strong a{
    font-weight:700;
}
.faq-texter strong {
    font-weight:700;
}

.price-option-indicator {
    height: 45px;
}

#new-layout-Form .mptbm_search_area_header{
	display: none;
}
#new-layout-Form .mptbm_form_details_area{
	padding: 0;
}

/* #site-content #new-layout-Form .formControl{
	height: 52px !important;
	padding: 0 36px 0 42px !important;
	background: #f5f6f8 !important;
	border: 1px solid 1px solid #e8eaed !important;
	border-radius: 10px;
} */

.single-fleet [data-elementor-type="single-post"]{
	padding-inline: 0;
}

.single #site-content .elementor-widget-text-editor ul{
	margin: 0 0 30px;
	padding: 0;
	list-style: none;
}

.single .elementor-widget-text-editor ul li{
	margin: 0 0 8px;
	font-size: 15px;
	color: #626262;
}

.single .elementor-widget-text-editor ul li:before{
	margin: 0 10px 0 0;
	font-family: FontAwesome;
	font-size: 18px;
	color: #cc4452;
	font-weight: 700;
	content: "\f105";
}



#site-content .post-breadcrumb li:last-child span{
	font-weight: 400;
}

.post-breadcrumb ul li.elementor-icon-list-item a{
	color: var( --e-global-color-secondary );
}

.post-breadcrumb ul li.elementor-icon-list-item a[rel="tag"]:not(:first-child){
	display: none;
}

.post-breadcrumb .elementor-icon-list-text:empty{
	display: none;
}


/* feet Form css */
.single-fleet div#new-layout-Form .formControl {
    min-height: 52px !important;
    height: 52px !important;
    padding: 0 36px 0 42px !important;
    background-color: #f5f6f8 !important;
    border-radius: 10px !important;
    border: 1px #E8EAED solid !important;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-transform: none;
}

.single-fleet div#new-layout-Form span.far.fa-calendar-alt.mptbm_left_icon {
    left: 11px !important;
	bottom: 1px !important;
}
.single-fleet div#new-layout-Form span.far.fa-clock.mptbm_left_icon {
    left: 11px;
    bottom: 1px !important;
}

.post-sidebar-widget:before{
	width: 2px;
	height: 45px;
	background: #E24A49;
	border: none;
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: -1px;
}

.post-sidebar-widget .elementor-widget-wp-widget-categories h5{
	display: none;
}
#site-content .post-sidebar-widget ul{
	margin: 0;
	padding: 0;
	list-style: none;	
}

.post-sidebar-widget ul li{
	margin: 0 0 15px;
	padding: 0 0 15px;
	border-bottom: 1px solid #e8e8e8;	
}
.post-sidebar-widget ul li:last-child{
	margin: 0;
	padding: 0;
	border: none;
}

.post-sidebar-widget ul li a{
	font-family: var(--e-global-typography-0ba1f32-font-family);
	font-size: 15px;	
}
.post-sidebar-widget ul li a:hover{
	color: #E24A49;
}

.post-sidebar-widget ul li:before{
	margin: 0 10px 0 0;
	font-family: FontAwesome;
	font-size: 18px;
	color: #cc4452;
	font-weight: 700;
	content: "\f105";
}

.post-sidebar-widget .tagcloud{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.post-sidebar-widget .elementor-widget-wp-widget-tag_cloud a{
	padding: 10px 12px;
	border: 1px solid #e8e8e8;
	display: inline-block;
	font-family: var(--e-global-typography-0ba1f32-font-family);	
	font-size: 15px !important;
	color: #424242 ;
}

.post-sidebar-widget .elementor-widget-wp-widget-tag_cloud a:hover{
	border-color: #E24A49;
	color: #E24A49;
}

.single-post .auto-container{
	max-width: 100%;
}

.single-post [data-elementor-type="single-post"]{
	padding-inline: 0;
}


.single-post-info a{
	font-family: "Source Sans Pro", Sans-serif;
}


.single-post-info .elementor-post-info li:nth-child(3){
	width: 220px;	
	flex: 0 0 auto;
	min-width: 0;
	display: flex;
	flex-wrap: nowrap;
}

.single-post-info .elementor-inline-item span.elementor-post-info__terms-list{
	display: flex;
	flex-wrap: wrap;
	font-size: 0;
}



.single-post-info a.elementor-post-info__terms-list-item{
	margin: 0 5px 0 0;
	font-size: 15px;
}
.single-post-info a.elementor-post-info__terms-list-item:after{
	content: " ,";
}

.single-post-info a.elementor-post-info__terms-list-item:nth-child(4):after{
	display: none;
}


.single-post-info .elementor-post-info li:nth-child(3) .elementor-post-info__terms-list-item:nth-of-type(n+5) {
    display: none;
}
.single-post .elementor-widget-text-editor h3 {
    font-weight: 300;
}
span.color-change {
    color: #d9514c;
}
.cookie-notice .inner_box {
    background-color: #fff !important;
    border: 1px #dfe0e4 solid;
}
.cookie-notice .inner_box p {
    color: #000;
	  font-size:16px;
}
.cookie-notice .inner_box button#accept-cookies {
    border-color: #000;
    color: #000;
}
div#cookie-notice {
    width: 35% !important;
}
.cookie-notice .d-flex {
    justify-content: space-between;
    gap: 20px;
}
    .pricing-options-widget {
    background: #1c1c1c;
    padding: 0 30px 10px 30px;
}
.pricing-options-widget ul {
    margin: 0px;
    list-style: none;
    padding: 0px;
}
.pricing-options-widget ul li:first-child {
    padding: 30px 0 30px 45px;
}
.pricing-options-widget ul li{
    padding: 30px 0 30px 45px;
}
.pricing-options-widget ul li i {
    font-size: 34px;
    color: #fff;
    top: 31px;
    left: 0;
    position: absolute;
}
.pricing-options-widget ul li {
 font-size: 16px;
    line-height: 1;
    text-align: left;
    display: inline-grid;
    width: 100%;
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    border-color: #3B3B3B;
    margin-bottom: 0px;
}
.pricing-options-widget ul li:last-child {
    border: none;
    margin-bottom: 0px !important;
}
.pricing-options-widget ul li strong {
    color: #fff;
    margin-bottom: 5px;
}
.pricing-options-widget ul {
    padding-left: 0px !important;
}
section.woocommerce-customer-details {
    display: none;
}
/* Thanku page css start */
.woocommerce-order ul li {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}
p.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received {
    color: #fff;
    background: #0d8700;
    padding: 20px;
    text-align: center;
}
section.woocommerce-order-details table thead tr th {
    padding: 20px !important;
}
h2.woocommerce-order-details__title {
    font-weight: bold !important;
}
table.woocommerce-table tbody tr.woocommerce-table__line-item td {
    padding: 20px;
}
@media only screen and (min-width:768px) and (max-width:1024px){
div#hero-form div#new-layout-Form {
    order: unset;
}
	div#new-layout-Form .inputList {
    width: 100%;
    max-width: 100%;
}
	.dg-booking-page .dg-booking-form-col{
		order:0!important;
	}
		.banner-heading h1.elementor-heading-title {
    margin-bottom: 0px;
}
}
@media only screen and (max-width:767px){
	div#hero-form div#new-layout-Form {
    order: unset;
}
	div#new-layout-Form .luxride_mptbm_booking{
		width:100% !important;
		max-width:100% !important;
	}
		.dg-booking-page .dg-booking-form-col{
		order:0!important;
	}
	
	.single-fleet [data-elementor-type="single-post"]{
	padding-inline: 25px;
}
	
	.single-post [data-elementor-type="single-post"]{
	padding-inline: 25px;
}
		.banner-heading h1.elementor-heading-title {
    margin-bottom: 0px;
}
	div#cookie-notice {
    width: 90% !important;
}
	.cookie-notice .inner_box p {
    text-align: center;
}
	.cookie-notice .d-flex {
    gap: 0px;
}
	ul.woocommerce-order-overview.woocommerce-thankyou-order-details.order_details {
    padding-left: 0px;
}

}






/* Booking form label (all booking widgets) */
.luxride_mptbm_booking.enable_tabs .mptb-tab-container::before { content: "Book online \00B7  fixed price"; display: block; font-family: "Roboto", sans-serif; font-size: 12.5px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #6B6B75; line-height: 24px; margin: 6px 0 10px 6px; }

/* ============================================================
   Driveguard fleet photography - ONE place for every city page
   (Lucerne layout: .dg-route-banner, .dg-final-cta, .dg-fleet-card).
   When the photo-shoot images are in the Media Library, set the six
   URLs in :root below. Until then nothing changes on the site.
   Banner and CTA: overrides the Elementor background of every page
   that uses the layout (fallback = the current stock photos), so the
   photo is changed here, not page by page.
   Fleet cards: the white cut-outs stay; on desktop hover the real
   photo of that class fades in over the cut-out (3:2 photos fit the
   cut-out box exactly). Touch devices: no hover, nothing changes.
   ============================================================ */
:root {
  /* --dg-photo-banner: url("https://driveguard.ch/wp-content/uploads/2026/10/driveguard-mercedes-fleet-zurich-airport.jpg"); */
  /* --dg-photo-cta:    url("https://driveguard.ch/wp-content/uploads/2026/10/driveguard-mercedes-fleet-chauffeurs.jpg"); */
  --dg-photo-e:   none; /* Mercedes E-Class */
  --dg-photo-s:   none; /* Mercedes S-Class */
  --dg-photo-v:   none; /* Mercedes V-Class */
  --dg-photo-lux: none; /* Mercedes V-Class Lux */
}
.dg-route-banner { background-image: var(--dg-photo-banner, url("https://driveguard.ch/wp-content/uploads/2025/04/DG-Limousine-service-in-Zurich-Switzerland.jpeg")) !important; }
.dg-final-cta { background-image: var(--dg-photo-cta, url("https://driveguard.ch/wp-content/uploads/2026/01/my-chauffeur.jpg")) !important; }
.dg-fleet-card > .elementor-widget-image { position: relative; }
.dg-fleet-card > .elementor-widget-image::after { content: ""; position: absolute; inset: 0; background-position: center; background-size: cover; background-repeat: no-repeat; opacity: 0; transition: opacity .45s ease; pointer-events: none; }
.dg-fleet-card-e > .elementor-widget-image::after { background-image: var(--dg-photo-e); }
.dg-fleet-card-s > .elementor-widget-image::after { background-image: var(--dg-photo-s); }
.dg-fleet-card-v > .elementor-widget-image::after { background-image: var(--dg-photo-v); }
.dg-fleet-card-lux > .elementor-widget-image::after { background-image: var(--dg-photo-lux); }
@media (hover: hover) and (min-width: 1025px) {
  .dg-fleet-card:hover > .elementor-widget-image::after { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .dg-fleet-card > .elementor-widget-image::after { transition: none; }
}


/* Booking widget fills its column on every page */
.dg-booking-form-col > .elementor-widget.dg-booking-form,
.dg-booking-form-col > .e-con-inner > .elementor-widget.dg-booking-form{width:100%!important;max-width:100%!important;align-self:stretch!important}
.dg-booking-form-col .luxride_mptbm_booking{--dg-booking-card-max:100%;width:100%!important;max-width:100%!important}

/* Fleet card price badge: compact, rounded corners (all fleet cards, Cristina 10 Oct) */
.dg-fleet-price.elementor-widget{align-self:flex-start!important;width:auto!important;max-width:calc(100% - 16px)!important}
.dg-fleet-price.elementor-widget > .elementor-widget-container{display:inline-block!important;padding:7px 13px 8px!important;border-radius:10px!important;background-color:#E24A49!important;box-shadow:0 6px 14px -8px rgba(226,74,73,.6)!important}
.dg-fleet-price .position_p_relative a{font-size:14px!important;line-height:1.3!important;font-weight:600!important}
.dg-fleet-price .position_p_relative a span{font-size:12.5px!important;font-weight:400!important;opacity:.92}

/* Service-page hero: price card to trust items 40 px on phones and tablets (Cristina 10 Oct) */
@media (max-width:1024px){.dg-h2-hero.e-con > .elementor-element.dg-h2-trust-w{margin-top:8px!important}}

/* Booking results: show the full car photo on phones */
@media (max-width: 768px) {
  body .mptbm_transport_search_area .mptbm_vehicle_image,
  body .mptbm_transport_search_area .mp_sticky_depend_area.mptbm_view_list .mptbm_vehicle_image,
  body .mptbm_transport_search_area .mp_sticky_depend_area.mptbm_view_grid .mptbm_vehicle_image {
    height: auto !important;
  }
  body .mptbm_transport_search_area .mptbm_vehicle_image .bg_image_area,
  body .mptbm_transport_search_area .mptbm_vehicle_image .bg_image_area > div,
  body .mptbm_transport_search_area .mp_sticky_depend_area.mptbm_view_list .mptbm_vehicle_image .bg_image_area,
  body .mptbm_transport_search_area .mp_sticky_depend_area.mptbm_view_list .mptbm_vehicle_image .bg_image_area > div,
  body .mptbm_transport_search_area .mp_sticky_depend_area.mptbm_view_grid .mptbm_vehicle_image .bg_image_area,
  body .mptbm_transport_search_area .mp_sticky_depend_area.mptbm_view_grid .mptbm_vehicle_image .bg_image_area > div {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: 3 / 2;
  }
  body .mptbm_transport_search_area .mptbm_vehicle_image .bg_image_area > div,
  body .mptbm_transport_search_area .mp_sticky_depend_area.mptbm_view_list .mptbm_vehicle_image .bg_image_area > div,
  body .mptbm_transport_search_area .mp_sticky_depend_area.mptbm_view_grid .mptbm_vehicle_image .bg_image_area > div {
    background-size: contain !important;
    background-position: center center !important;
    transform: none !important;
  }
}


/* Service-page hero on phones (Oct 2026): clean photo at the top, long soft fade into the dark, breadcrumb + H1 start on the fading bottom of the photo, then lead and price card. All 9 service pages (.dg-h2-hero). */
@media (max-width:767px){
  body .dg-h2-hero.e-con{--dg-sp-photo:80vw;padding-top:calc(var(--dg-sp-photo) - 66px)!important}
  body .dg-h2-hero.e-con::before{background:linear-gradient(180deg,rgba(15,17,21,0) 0,rgba(15,17,21,0) calc(var(--dg-sp-photo) - 140px),rgba(15,17,21,.4) calc(var(--dg-sp-photo) - 92px),rgba(15,17,21,.75) calc(var(--dg-sp-photo) - 50px),rgba(15,17,21,.93) calc(var(--dg-sp-photo) - 16px),#0F1115 var(--dg-sp-photo),#0F1115 100%)!important}
  body .dg-h2-hero .dg-h2-crumbs-w,body .dg-h2-hero .dg-hero-h1 .elementor-heading-title,body .dg-h2-hero .dg-h2-lead,body .dg-h2-hero .dg-h2-lead p{text-shadow:0 1px 14px rgba(0,0,0,.55)}
}

/* == Destination page hero (dgx) – all destination pages, edit here only == */
body .dgx-hero{--dgx-red:#E24A49;--dgx-red-h:#C93C3B;--dgx-ink:#0B0C0F;--dgx-wa:#108546;--dgx-wa-h:#0B6E39;position:relative!important;isolation:isolate;overflow:hidden!important;display:block!important;padding:0!important;margin:0!important;color:#fff;background-color:#0B0C0F!important;background-size:cover!important;background-position:70% 70%!important;background-repeat:no-repeat!important;font-family:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif}
body .dgx-hero *,body .dgx-hero *::before,body .dgx-hero *::after{box-sizing:border-box}
body .dgx-hero::before{content:"";position:absolute;inset:0;z-index:0;background-image:inherit;background-size:cover;background-position:70% 70%;background-repeat:no-repeat;transform:scale(1.045);animation:dgxZoom 14s ease-out forwards;pointer-events:none}
body .dgx-hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(11,12,15,.95) 0%,rgba(11,12,15,.86) 30%,rgba(11,12,15,.42) 58%,rgba(11,12,15,.3) 74%,rgba(11,12,15,.62) 100%),linear-gradient(0deg,rgba(11,12,15,.75) 0%,rgba(11,12,15,0) 34%),linear-gradient(180deg,rgba(11,12,15,.5) 0%,rgba(11,12,15,0) 22%)}
@keyframes dgxZoom{to{transform:scale(1)}}
@keyframes dgxUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
body .dgx-hero svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:none}
body .dgx-hero .dgx-in{position:relative!important;z-index:1;max-width:1340px!important;width:100%!important;margin:0 auto!important;padding:76px 40px 84px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 430px;gap:72px!important;align-items:center;min-height:min(80vh,700px)}
body .dgx-hero .dgx-copy{display:block!important;padding:0!important;margin:0!important;width:auto!important;max-width:none!important}
body .dgx-hero .dgx-in>.elementor-element,body .dgx-hero .dgx-copy>.elementor-element{margin:0!important;width:auto!important;max-width:none!important}
body .dgx-hero .dgx-copy>.elementor-element{animation:dgxUp .7s cubic-bezier(.2,.7,.2,1) both}
body .dgx-hero .dgx-copy>.elementor-element:nth-child(2){animation-delay:.06s}body .dgx-hero .dgx-copy>.elementor-element:nth-child(3){animation-delay:.12s}body .dgx-hero .dgx-copy>.elementor-element:nth-child(4){animation-delay:.18s}body .dgx-hero .dgx-copy>.elementor-element:nth-child(5){animation-delay:.24s}
body .dgx-hero .dgx-card-w{animation:dgxUp .8s .15s cubic-bezier(.2,.7,.2,1) both}
body .dgx-hero .dgx-crumbs{font-size:13.5px;line-height:1.4;color:rgba(255,255,255,.62);margin:0 0 22px}
body .dgx-hero .dgx-crumbs a{color:rgba(255,255,255,.92)!important;text-decoration:none!important}body .dgx-hero .dgx-crumbs a:hover{color:#fff!important;text-decoration:underline!important}
body .dgx-hero .dgx-crumbs i{font-style:normal;margin:0 7px;opacity:.45}
body .dgx-hero .dgx-copy>.dgx-h1{margin:0 0 22px!important}
body .dgx-hero .dgx-h1 .elementor-heading-title{font-family:"DM Sans",system-ui,sans-serif!important;font-style:italic!important;font-weight:700!important;font-size:clamp(38px,3.8vw,60px)!important;line-height:1.05!important;letter-spacing:-.018em!important;text-transform:none!important;color:#fff!important;margin:0!important;max-width:650px;text-wrap:balance}
body .dgx-hero .dgx-copy>.dgx-lead{margin:0 0 30px!important;color:rgba(255,255,255,.86)!important}
body .dgx-hero .dgx-lead p{font-size:19px!important;line-height:1.55!important;color:rgba(255,255,255,.86)!important;max-width:560px!important;margin:0!important}
body .dgx-hero .dgx-route{display:flex;align-items:center;gap:18px;max-width:580px;padding:16px 20px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(255,255,255,.07);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);margin:0 0 22px}
body .dgx-hero .dgx-stop{display:grid;line-height:1.2;white-space:nowrap}
body .dgx-hero .dgx-stop b{font-size:17px;font-weight:700;color:#fff}
body .dgx-hero .dgx-stop small{font-size:12.5px;color:rgba(255,255,255,.62)}
body .dgx-hero .dgx-stop.end{text-align:right}
body .dgx-hero .dgx-line{position:relative;flex:1;min-width:70px;height:2px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.4) 0 6px,transparent 6px 12px)}
body .dgx-hero .dgx-line::before,body .dgx-hero .dgx-line::after{content:"";position:absolute;top:50%;width:9px;height:9px;border-radius:50%;transform:translateY(-50%)}
body .dgx-hero .dgx-line::before{left:-3px;background:#fff}
body .dgx-hero .dgx-line::after{right:-3px;background:var(--dgx-red);box-shadow:0 0 0 5px rgba(226,74,73,.25)}
body .dgx-hero .dgx-dot{position:absolute;top:50%;left:6%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:var(--dgx-red);color:#fff;display:grid;place-items:center;box-shadow:0 6px 16px rgba(226,74,73,.45);animation:dgxDrive 7s cubic-bezier(.45,.05,.35,1) infinite}
body .dgx-hero .dgx-dot svg{width:15px;height:15px;stroke-width:2.1}
@keyframes dgxDrive{0%{left:6%;opacity:0}8%{opacity:1}68%{left:94%;opacity:1}82%,100%{left:94%;opacity:0}}
body .dgx-hero .dgx-time{padding-left:18px;border-left:1px solid rgba(255,255,255,.16);font-size:12.5px;color:rgba(255,255,255,.62);line-height:1.3;white-space:nowrap}
body .dgx-hero .dgx-time b{display:block;color:#fff;font-size:16px;font-weight:700}
body .dgx-hero ul.dgx-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0!important;padding:0!important;list-style:none!important}
body .dgx-hero .dgx-chips li{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:999px;background:rgba(11,12,15,.5);border:1px solid rgba(255,255,255,.15);font-size:13.5px;line-height:1.2;font-weight:500;color:#fff!important;margin:0!important}
body .dgx-hero .dgx-chips li::before{display:none!important}
body .dgx-hero .dgx-chips svg{width:15px;height:15px;color:var(--dgx-red);stroke-width:2.2}
body .dgx-hero .dgx-chips li.g svg{fill:#F5B301;color:#F5B301}
body .dgx-hero .dgx-card{position:relative;background:#fff;color:var(--dgx-ink);border-radius:24px;padding:28px 28px 22px;box-shadow:0 50px 90px -30px rgba(0,0,0,.6),0 2px 10px rgba(0,0,0,.1);font-family:"DM Sans",system-ui,sans-serif;text-align:left}
body .dgx-hero .dgx-card p{margin:0}
body .dgx-hero .dgx-kick{font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:#6B6B75!important;margin:0 0 8px!important}
body .dgx-hero .dgx-dest{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:700;color:var(--dgx-ink)!important;margin:0 0 18px!important;line-height:1.3}
body .dgx-hero .dgx-dest svg{width:18px;height:18px;color:var(--dgx-red)}
body .dgx-hero .dgx-dest .a{display:inline-flex;color:#9A9AA3}body .dgx-hero .dgx-dest .a svg{width:16px;height:16px;color:#9A9AA3}
body .dgx-hero .dgx-seg{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px;background:#F2F3F5;border-radius:13px;margin:0 0 12px}
body .dgx-hero .dgx-seg button{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;font:600 13px/1.2 "DM Sans",system-ui,sans-serif;padding:11px 2px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:10px;color:#3B3B40;transition:background .2s,color .2s}
body .dgx-hero .dgx-seg button:hover{color:var(--dgx-ink)}
body .dgx-hero .dgx-seg button:focus-visible{outline:3px solid #2E6FD8;outline-offset:2px}
body .dgx-hero .dgx-seg button[aria-pressed=true]{background:var(--dgx-ink);color:#fff;box-shadow:0 3px 8px rgba(0,0,0,.18)}
body .dgx-hero .dgx-pax{display:flex;gap:16px;font-size:13px;color:#6B6B75!important;margin:0 0 18px!important}
body .dgx-hero .dgx-pax>span{display:inline-flex;align-items:center;gap:6px}
body .dgx-hero .dgx-pax svg{width:15px;height:15px}
body .dgx-hero .dgx-price{display:flex;align-items:baseline;gap:8px;line-height:1;margin:0 0 8px!important;color:var(--dgx-ink)!important}
body .dgx-hero .dgx-price small{font-size:20px;font-weight:700}
body .dgx-hero .dgx-price b{font-size:56px;font-weight:800;letter-spacing:-.025em;font-variant-numeric:tabular-nums}
body .dgx-hero .dgx-note{font-size:13.5px;color:#6B6B75!important;margin:0 0 18px!important}
body .dgx-hero ul.dgx-inc{list-style:none!important;margin:0 0 20px!important;padding:16px 0 0!important;border-top:1px solid #ECECEF;display:grid;grid-template-columns:1fr 1fr;gap:9px 14px;font-size:13.5px;line-height:1.3;color:#2B2B30}
body .dgx-hero .dgx-inc li{display:flex;gap:8px;align-items:center;margin:0!important;color:#2B2B30!important}
body .dgx-hero .dgx-inc li::before{display:none!important}
body .dgx-hero .dgx-inc svg{width:16px;height:16px;color:#1A9A4B;stroke-width:2.6}
body .dgx-hero .dgx-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
body .dgx-hero a.dgx-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:54px;border-radius:999px;font:700 15.5px/1 "DM Sans",system-ui,sans-serif;text-decoration:none!important;transition:background .2s,transform .2s,box-shadow .2s}
body .dgx-hero a.dgx-btn:hover{transform:translateY(-1px)}
body .dgx-hero a.dgx-btn svg{width:20px;height:20px;stroke-width:2}
body .dgx-hero a.dgx-wa{background:var(--dgx-wa);color:#fff!important}body .dgx-hero a.dgx-wa:hover{background:var(--dgx-wa-h);box-shadow:0 10px 22px -8px rgba(16,133,70,.6)}
body .dgx-hero a.dgx-red{background:var(--dgx-red);color:#fff!important}body .dgx-hero a.dgx-red:hover{background:var(--dgx-red-h);box-shadow:0 10px 22px -8px rgba(226,74,73,.6)}
body .dgx-hero .dgx-foot{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 20px;margin-top:16px;font-size:13px}
body .dgx-hero .dgx-foot a{display:inline-flex;align-items:center;gap:6px;color:#424242!important;text-decoration:none!important;font-weight:600;min-height:32px}
body .dgx-hero .dgx-foot svg{width:15px;height:15px;color:#6B6B75}
@media (prefers-reduced-motion:reduce){body .dgx-hero,body .dgx-hero *,body .dgx-hero::before{animation:none!important;transition:none!important}body .dgx-hero::before{transform:none}}
@media (max-width:1100px){body .dgx-hero .dgx-in{grid-template-columns:minmax(0,1fr) 400px;gap:44px!important;padding:64px 28px 72px!important}}
@media (max-width:900px){body .dgx-hero .dgx-in{grid-template-columns:1fr;min-height:0}body .dgx-hero .dgx-card{max-width:560px}}
@media (max-width:767px){
body .dgx-hero{background-size:100% auto!important;background-position:center top!important}
body .dgx-hero::before{display:none}
body .dgx-hero::after{background:linear-gradient(180deg,rgba(11,12,15,.15) 0,rgba(11,12,15,0) 19vw,rgba(11,12,15,0) 45vw,rgba(11,12,15,.5) 67vw,rgba(11,12,15,.9) 86vw,#0B0C0F 101vw,#0B0C0F 100%)}
body .dgx-hero .dgx-in{display:flex!important;flex-direction:column;gap:0!important;padding:calc(108vw - 104px) 18px 36px!important;min-height:0}
body .dgx-hero .dgx-copy{display:contents!important}
body .dgx-hero .dgx-crumbs-w,body .dgx-hero .dgx-route-w{display:none!important}
body .dgx-hero .dgx-copy>.dgx-h1{order:1;margin:0 0 14px!important}
body .dgx-hero .dgx-h1 .elementor-heading-title{font-size:clamp(32px,9.4vw,40px)!important;line-height:1.07!important}
body .dgx-hero .dgx-copy>.dgx-lead{order:2;margin:0 0 24px!important}
body .dgx-hero .dgx-lead p{font-size:17px!important}
body .dgx-hero .dgx-in>.dgx-card-w{order:3;margin:0 0 20px!important}
body .dgx-hero .dgx-chips-w{order:4}
body .dgx-hero .dgx-card{padding:22px 18px 18px;border-radius:20px}
body .dgx-hero .dgx-chips{gap:8px}
body .dgx-hero .dgx-chips li{font-size:12.5px;padding:8px 12px}
body .dgx-hero .dgx-price b{font-size:48px}
body .dgx-hero .dgx-seg button{font-size:12px;padding:11px 0}
body .dgx-hero ul.dgx-inc{font-size:13px;gap:8px 10px}
body .dgx-hero a.dgx-btn{height:52px;font-size:15px}
}
body .dgx-hero .dgx-price em{font-style:normal;font-size:17px;font-weight:600;color:#6B6B75;margin-left:2px}
body .dgx-hero .dgx-extra{font-size:13.5px;font-weight:600;color:#2B2B30!important;margin:-8px 0 18px!important}
body .dgx-hero .dgx-seg.dgx-seg3{grid-template-columns:repeat(3,1fr)}
/* == /Destination page hero (dgx) == */

/* Service-page intro block full width on desktop (Cristina, 19 Oct 2026): lifts the 900 px cap on .dg-hero-copy that each service page's own CSS (style#dg-h2-css) sets. Tablet and mobile unchanged. */
@media (min-width:1025px){
body .dg-hero > .e-con-inner > .dg-hero-copy.dg-hero-copy{max-width:none!important}
}

/* Service-page section intros, notes and foot lines full width on desktop (Cristina, 19 Oct 2026). Each service page's own CSS (HTML widget) caps these at 620–1040 px; lifted here in one place so every page, current and future, runs its left-aligned text to the container edge. Tablet and mobile unchanged. */
@media (min-width:1025px){
body .dg-za .dg-za-sec-head,
body .dg-pd .dg-pd-head, body .dg-pd .dg-pd-foot, body .dg-pd .dg-pd-inc-note,
body .dg-ic .dg-ic-sec-head, body .dg-ic .dg-ic-fleet-foot,
body .dg-bc .dg-bc-sec-head, body .dg-bc .dg-bc-fleet-note, body .dg-bc .dg-bc-foot, body .dg-bc .dg-bc-bk-note,
body .dg-sk .dg-sk-sec-head, body .dg-sk .dg-sk-note,
body .dg-ev .dg-ev-sec-head, body .dg-ev .dg-ev-fleet-note, body .dg-ev .dg-ev-group-lead, body .dg-ev .dg-ev-cal-foot, body .dg-ev .dg-ev-vip-note,
body .dg-wd .dg-wd-sec-head, body .dg-wd .dg-wd-fleet-note, body .dg-wd .dg-wd-board-foot, body .dg-wd .dg-wd-wk-note{max-width:none!important}
}

/* == Booking steps (dg-steps): one look for the "How to book / how it works" steps on every service and destination page (Cristina, 19 Oct 2026). Vertical list, 44 px red number, one grey line running through all the numbers, bold title + text. Edit here only, never per page; this block overrides the page-level timeline CSS (3-column grids, horizontal lines, animated bars). == */
/* A. code-built step lists on the service pages (HTML widgets: ol.dg-*-tl, ol.dg-wd-steps) */
body ol[class*="dg-"][class*="-tl"], body ol.dg-wd-steps{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:24px 0!important;margin:8px 0 0!important;padding:0!important;list-style:none!important}
body ol[class*="dg-"][class*="-tl"]::before, body ol.dg-wd-steps::before, body .dg-pd-tl-wrap::before{content:none!important;display:none!important}
body [class*="dg-"][class*="-tl-bar"]{display:none!important}
body ol[class*="dg-"][class*="-tl"] > li, body ol.dg-wd-steps > li{position:relative!important;display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;column-gap:18px!important;row-gap:4px!important;align-items:start!important;align-content:start!important;margin:0!important;padding:0!important}
body ol[class*="dg-"][class*="-tl"] > li::after, body ol.dg-wd-steps > li::after{content:"";position:absolute;left:21px;top:48px;bottom:-20px;width:2px;background:#E3E4E8;border-radius:2px}
body ol[class*="dg-"][class*="-tl"] > li:last-child::after, body ol.dg-wd-steps > li:last-child::after{display:none}
body ol[class*="dg-"][class*="-tl"] > li > span[class*="-dot"], body ol.dg-wd-steps > li > .dg-wd-steps-n{grid-row:1/3!important;grid-column:1!important;width:44px!important;height:44px!important;border-radius:50%!important;background:#d03535!important;color:#fff!important;display:grid!important;place-items:center!important;font-weight:700!important;font-size:16px!important;line-height:1!important;border:0!important;box-shadow:none!important;position:relative!important;z-index:1!important;transform:none!important;margin:0!important;padding:0!important}
body ol[class*="dg-"][class*="-tl"] > li > h3, body ol.dg-wd-steps > li > h3{grid-column:2!important;min-height:44px!important;display:flex!important;align-items:center!important;margin:0!important;font-size:18px!important;line-height:1.3!important;font-weight:700!important;color:#070707!important}
body ol[class*="dg-"][class*="-tl"] > li > p, body ol.dg-wd-steps > li > p{grid-column:2!important;margin:0!important;font-size:15.5px!important;line-height:1.6!important;color:#424242!important}
/* B. Elementor-built step lists (destination pages, Airport Transfers, Davos WEF): the container whose rows are a number heading followed by a text editor */
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child){position:relative!important;display:flex!important;flex-direction:column!important;gap:24px!important;margin-top:8px!important;padding:0!important}
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child) > .e-con{position:relative!important;display:grid!important;grid-template-columns:44px minmax(0,1fr)!important;gap:0 18px!important;align-items:start!important;padding:0!important;margin:0!important;width:100%!important;max-width:none!important;min-height:44px!important}
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child) > .e-con::after{content:"";position:absolute;left:21px;top:48px;bottom:-20px;width:2px;background:#E3E4E8;border-radius:2px}
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child) > .e-con:last-child::after{display:none}
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child) > .e-con > .elementor-widget-heading:first-child{width:44px!important;height:44px!important;min-width:44px!important;max-width:44px!important;border-radius:50%!important;background:#d03535!important;padding:0!important;margin:0!important;display:grid!important;place-items:center!important;border:0!important;box-shadow:none!important;position:relative!important;z-index:1!important;box-sizing:border-box!important}
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child) > .e-con > .elementor-widget-heading:first-child .elementor-heading-title{font-size:16px!important;font-weight:700!important;line-height:1!important;color:#fff!important;text-align:center!important;margin:0!important;padding:0!important}
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child) > .e-con > .elementor-widget-text-editor{grid-column:2!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;min-height:44px!important;display:flex!important;align-items:flex-start!important;padding-top:10px!important;font-size:15.5px!important;line-height:1.6!important;color:#424242!important}
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child) > .e-con > .elementor-widget-text-editor > .elementor-widget-container{width:100%}
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child) > .e-con > .elementor-widget-text-editor p{margin:0!important;font-size:15.5px!important;line-height:1.6!important;color:#424242!important}
body .dg-booking-page .dg-booking-copy > .e-con:has(> .e-con > .elementor-widget-heading:first-child + .elementor-widget-text-editor:last-child) > .e-con > .elementor-widget-text-editor p:first-child > strong:first-child{display:flex;align-items:center;min-height:44px;margin:-10px 0 4px;font-size:18px;line-height:1.3;font-weight:700;color:#070707}
/* == /Booking steps (dg-steps) == */

/* Service-page hero overlay, desktop (Cristina, 19 Oct 2026): the lighter overlay of the destination pages, so the new wide fleet photo stays visible between the copy and the price card. Approved 19 Oct and applied to all service pages. Tablet and phone unchanged. */
@media (min-width:1025px){
body .dg-h2-hero.e-con::before{background:linear-gradient(90deg, rgba(11,12,15,.95) 0%, rgba(11,12,15,.86) 30%, rgba(11,12,15,.42) 58%, rgba(11,12,15,.3) 74%, rgba(11,12,15,.62) 100%), linear-gradient(0deg, rgba(11,12,15,.75) 0%, rgba(11,12,15,0) 34%), linear-gradient(180deg, rgba(11,12,15,.5) 0%, rgba(11,12,15,0) 22%)!important}
}

/* Service-page hero trust chips one per row on desktop (Cristina, 19 Oct 2026). Phone and tablet keep the wrapped row. */
@media (min-width:1025px){
body .dg-h2-trust-w ul.dg-h2-trust{flex-direction:column;align-items:flex-start;flex-wrap:nowrap}
}

/* Service-page trust strip right under the hero (Cristina, 20 Oct 2026): breathing room above and below the strip so it does not stick to the hero. */
body .dg-h2-hero + .e-con{padding-top:56px!important;padding-bottom:0!important}
@media (max-width:767px){
body .dg-h2-hero + .e-con{padding-top:24px!important;padding-bottom:8px!important}
}
