/* ============================================================
   SUMMER CI — Dark Mode
   Triggered by: data-theme="summer" (set by Webflow inline script)
   ============================================================ */

[data-theme="summer"] body {
  background-color: #2B2B2B !important;
  color: #ffffff !important;
}

[data-theme="summer"] h1,
[data-theme="summer"] h2,
[data-theme="summer"] h3,
[data-theme="summer"] h4,
[data-theme="summer"] h5,
[data-theme="summer"] h6,
[data-theme="summer"] .heading-style-h1,
[data-theme="summer"] .heading-style-h5,
[data-theme="summer"] .blue-span {
  color: #ffffff !important;
}

/* Navigation stays black */
[data-theme="summer"] .width-nav,
[data-theme="summer"] .width-nav a,
[data-theme="summer"] .width-nav div {
  color: #000000 !important;
}

/* Hide car event block in summer + grand touring */
[data-theme="summer"] .block-car-event,
[data-theme="grand-touring"] .block-car-event {
  display: none !important;
}

/* summer-only visibility */
.summer-only {
  display: none !important;
}
[data-theme="summer"] .summer-only {
  display: block !important;
}

/* Yellow buttons */
[data-theme="summer"] .button.is-icon,
[data-theme="summer"] .submit-booking-link {
  background-color: #FFFF54 !important;
  border-color: #FFFF54 !important;
  color: #000000 !important;
}
[data-theme="summer"] .button.is-icon svg path,
[data-theme="summer"] .submit-booking-link svg path {
  stroke: #000000 !important;
}

/* Share button */
[data-theme="summer"] .share-label {
  color: #ffffff !important;
}
[data-theme="summer"] .share-icon-svg {
  stroke: #ffffff !important;
}
[data-theme="summer"] .share-icon-circle {
  background-color: rgba(255,255,255,0.1) !important;
}

/* Misc text */
[data-theme="summer"] .grey-small {
  color: #ffffff !important;
}

/* Selection cards (white bg, text stays black) */
[data-theme="summer"] .card-select-trainform,
[data-theme="summer"] .card-select-trainform .block_under-training,
[data-theme="summer"] .card-select-trainform h5,
[data-theme="summer"] .card-select-trainform div {
  color: #000000 !important;
}

/* Header image */
[data-theme="summer"] .header5_background-image {
  content: url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69305ee98f6542c251e6b87e_417_ESC_Portimao_97I4644_HH%201.png') !important;
  object-fit: cover !important;
}

/* Main product card */
[data-theme="summer"] .card-booking-preis {
  background-image: linear-gradient(to bottom, rgba(61,61,61,0) 0%, rgba(61,61,61,0) 22%, #3D3D3D 38%),
    url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69304d0816e4041fbc2c0914_128_ESC_SWE_Gr10__MG_7621_WG%201.png') !important;
  background-position: top center !important;
  background-size: 100% auto !important;
  background-repeat: no-repeat !important;
  background-color: #3D3D3D !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.1) !important;
}

@media (max-width: 767px) {
  [data-theme="summer"] .card-booking-preis {
    background-image: linear-gradient(#3d3d3d00, #3D3D3D 25%),
      url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69304d0816e4041fbc2c0914_128_ESC_SWE_Gr10__MG_7621_WG%201.png') !important;
    padding-top: 90px !important;
  }
}

/* Product cards dark */
[data-theme="summer"] .card-white-price {
  background-color: #3D3D3D !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,0.1) !important;
}

/* Form inputs */
[data-theme="summer"] .input-esc,
[data-theme="summer"] select.select-field {
  background-color: #4D4D4D !important;
  color: #ffffff !important;
  border-color: #666666 !important;
}

/* Select arrow */
[data-theme="summer"] select.select-field {
  background-image: url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69305d59c27a10f19b739592_Arrow%2021.svg') !important;
  background-repeat: no-repeat !important;
  background-position: right 10px center !important;
}

/* Stepper */
[data-theme="summer"] .stepper {
  border-color: #FFFF54 !important;
  color: #ffffff !important;
}
[data-theme="summer"] .stepper .inc svg path {
  fill: #FFFF54 !important;
}
[data-theme="summer"] .stepper .dec svg path {
  fill: #B2B4BD !important;
}

/* Price display */
[data-theme="summer"] .item-price-display,
[data-theme="summer"] .price-double-driver div {
  color: #ffffff !important;
}

/* Price block top border */
[data-theme="summer"] .block-left_price {
  border-top-color: #ffffff !important;
}

/* Overflow bg */
[data-theme="summer"] .overflow-bg {
  background-color: #2B2B2B !important;
}

/* Footer */
[data-theme="summer"] .footer1_component {
  background-color: #B2B4BD !important;
}

/* Summer selection & headlines */
.select-summer,
.summer-headline {
  display: none !important;
}
[data-theme="summer"] .select-summer,
[data-theme="summer"] .summer-headline {
  display: block !important;
}

/* Hide default form in summer initially */
[data-theme="summer"] .w-form {
  display: none;
  margin-bottom: 3rem !important;
}


/* ============================================================
   GRAND TOURING CI — Light Beige Theme, Red Accents
   Triggered by: data-theme="grand-touring" (set by event.js)
   ============================================================ */

[data-theme="grand-touring"] body {
  background-color: #E6E5DF !important;
  color: #1a1a1a !important;
}
/* Headlines only inside .section-experience */
[data-theme="grand-touring"] .section-experience h1,
[data-theme="grand-touring"] .section-experience h2,
[data-theme="grand-touring"] .section-experience h3,
[data-theme="grand-touring"] .section-experience h4,
[data-theme="grand-touring"] .section-experience h5,
[data-theme="grand-touring"] .section-experience h6,
[data-theme="grand-touring"] .section-experience .heading-style-h1,
[data-theme="grand-touring"] .section-experience .heading-style-h5,
[data-theme="grand-touring"] .section-experience .blue-span {
  color: #1a1a1a !important;
}

/* Buttons: red (#D54938) */
[data-theme="grand-touring"] .button.is-icon,
[data-theme="grand-touring"] .submit-booking-link {
  background-color: #D54938 !important;
  border-color: #D54938 !important;
  color: #ffffff !important;
}
[data-theme="grand-touring"] .button.is-icon svg path,
[data-theme="grand-touring"] .submit-booking-link svg path {
  stroke: #ffffff !important;
}

/* Stepper: red */
[data-theme="grand-touring"] .stepper {
  border-color: #D54938 !important;
  color: #1a1a1a !important;
}
[data-theme="grand-touring"] .stepper .inc svg path {
  fill: #D54938 !important;
}
[data-theme="grand-touring"] .stepper .dec svg path {
  fill: #B2B4BD !important;
}

/* Header image */
[data-theme="grand-touring"] .header5_background-image {
  content: url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69c3d67e73ef447cddcd63e7_417_ESC_Portimao_97I4644_HH%201%20(1).png') !important;
  object-fit: cover !important;
}

/* Main product card */
[data-theme="grand-touring"] .card-booking-preis {
  background-image: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 22%, #ffffff 38%),
    url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69c3e467e53d6dd6804d0bac_128_ESC_SWE_Gr10__MG_7621_WG%203.png') !important;
  background-position: top center !important;
  background-size: 100% auto !important;
  background-repeat: no-repeat !important;
  background-color: #ffffff !important;
  color: #1a1a1a !important;
  border-color: rgba(0,0,0,0.1) !important;
}

/* Mobile: fix image height and push text below it */
@media (max-width: 767px) {
  [data-theme="grand-touring"] .card-booking-preis {
    background-image: linear-gradient(#ffffff00, #ffffff 25%), url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69c3e467e53d6dd6804d0bac_128_ESC_SWE_Gr10__MG_7621_WG%203.png') !important;
    padding-top: 90px !important;
  }
}

/* Section experience */
[data-theme="grand-touring"] .section-experience {
  background-color: #E6E5DF !important;
}

/* Product cards light */
[data-theme="grand-touring"] .card-white-price {
  background-color: #ffffff !important;
  color: #1a1a1a !important;
  border-color: rgba(0,0,0,0.1) !important;
}

/* Form inputs */
[data-theme="grand-touring"] .input-esc,
[data-theme="grand-touring"] select.select-field {
  background-color: #ffffff !important;
  color: #1a1a1a !important;
  border-color: #cccccc !important;
}

/* Price display */
[data-theme="grand-touring"] .item-price-display,
[data-theme="grand-touring"] .price-double-driver div {
  color: #1a1a1a !important;
}

/* Price block top border */
[data-theme="grand-touring"] .block-left_price {
  border-top-color: #D54938 !important;
}

/* Overflow bg */
[data-theme="grand-touring"] .overflow-bg {
  background-color: #E6E5DF !important;
}

/* Share elements */
[data-theme="grand-touring"] .share-label {
  color: #1a1a1a !important;
}
[data-theme="grand-touring"] .share-icon-svg {
  stroke: #1a1a1a !important;
}

/* Misc text */
[data-theme="grand-touring"] .grey-small {
  color: #555555 !important;
}

/* Navigation stays black */
[data-theme="grand-touring"] .width-nav,
[data-theme="grand-touring"] .width-nav a,
[data-theme="grand-touring"] .width-nav div {
  color: #000000 !important;
}

/* summer-only elements still show on GT */
[data-theme="grand-touring"] .summer-only {
  display: block !important;
}


/* ============================================================
   CORVETTE CI — Inherits Summer Dark Mode, Images Only
   Triggered by: .is-corvette-event on <html> (set by inline head script)
   or body.is-corvette-event (set by event.js, kept for JS compat)
   ============================================================ */

[data-theme="summer"].is-corvette-event .header5_background-image,
[data-theme="summer"] body.is-corvette-event .header5_background-image {
  content: url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69c3d81b8ad1832a845d00c7_145_ESC_HORI_MG_6069_HH%203%20(1).png') !important;
  object-fit: cover !important;
}

/* Product card image */
[data-theme="summer"].is-corvette-event .card-booking-preis,
[data-theme="summer"] body.is-corvette-event .card-booking-preis {
  background-image: linear-gradient(to bottom, rgba(61,61,61,0) 0%, rgba(61,61,61,0) 22%, #3D3D3D 38%),
    url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69c5063a3ccdeca82d69e895_Trackdays_4.png') !important;
  background-position: top center !important;
  background-size: 100% auto !important;
  background-repeat: no-repeat !important;
  background-color: #3D3D3D !important;
}

@media (max-width: 767px) {
  [data-theme="summer"].is-corvette-event .card-booking-preis,
  [data-theme="summer"] body.is-corvette-event .card-booking-preis {
    background-image: linear-gradient(#3d3d3d00, #3D3D3D 25%),
      url('https://cdn.prod.website-files.com/681b596f260db552a54098c1/69c5063a3ccdeca82d69e895_Trackdays_4.png') !important;
    padding-top: 90px !important;
  }
}


/* ============================================================
   UTILITY STYLES
   Loading dots, form errors, etc.
   ============================================================ */

.w-dyn-empty {
  display: none !important;
}

/* Loading dots animation */
.loading-indicator {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.loading-indicator .text {
  margin-right: 8px;
}
.dots-container {
  display: flex;
}
.dot {
  width: 8px;
  height: 8px;
  background-color: #888;
  border-radius: 50%;
  margin: 0 3px;
  animation: dot-bounce 1.2s infinite ease-in-out;
}
.dot:nth-child(2) { animation-delay: -0.1s; }
.dot:nth-child(3) { animation-delay: -0.2s; }

@keyframes dot-bounce {
  0%, 80%, 100% { transform: translateY(0); opacity: 0.6; }
  40% { transform: translateY(-6px); opacity: 1; }
}

/* Form validation */
.is-error {
  border-color: #e40000 !important;
  box-shadow: 0 0 0 2px rgba(228,0,0,.25);
}
.form-errors {
  background: #ffecec;
  border: 1px solid #e40000;
  color: #b00000;
  padding: 16px 20px;
  border-radius: 8px;
  margin-bottom: 24px;
}
.form-errors ul { margin: 8px 0 0 22px; padding: 0; }

.submit-booking-link.is-disabled {
  opacity: .4;
  cursor: default !important;
}
