/* WTT AirROI v3.2.1 final Book Your Stay visual bridge.
   Source of truth copied from Booking Engine v0.10.420 review shortcode:
   html body .wtp-review-shortcode-app-v420 .wtp-review-slide-card
   border:2px solid transparent + white/soft-blue padding-box + navy->blue border-box gradient.
   This file is intentionally loaded AFTER the base AirROI CSS and uses scoped !important rules. */

html body .wtt-airroi-estimator,
html body .wtt-airroi-launcher,
html body .wtt-modal{
  --wtp-navy:#021b3a;
  --wtp-navy-soft:#083a70;
  --wtp-blue:#00c2ff;
  --wtp-hover:#00eaff;
  --wtp-green:#6dff8b;
  --wtp-card-bg:linear-gradient(135deg,#ffffff 0%,#f8fcff 58%,#eef7ff 100%);
  --wtp-card-bg-hover:linear-gradient(135deg,#ffffff 0%,#f8fcff 48%,#e7f6ff 100%);
  --wtp-border-grad:linear-gradient(135deg,var(--wtp-navy,#021b3a),var(--wtp-navy-soft,#083a70),var(--wtp-blue,#00c2ff));
  --wtp-border-grad-hover:linear-gradient(135deg,var(--wtp-blue,#00c2ff),var(--wtp-navy-soft,#083a70),var(--wtp-navy,#021b3a));
  --wtp-text:#17395d;
  --wtp-muted:#5f7d99;
  --wtp-line:#d7e6f2;
  --wtp-line-soft:#e6eef5;
  color:var(--wtp-text)!important;
  box-sizing:border-box!important;
}

html body .wtt-airroi-estimator *,
html body .wtt-airroi-launcher *,
html body .wtt-modal *{
  box-sizing:border-box!important;
}

/* Keep the working v3.1.6 full-width layout. */
html body .wtt-airroi-estimator .wtt-layout,
html body .wtt-airroi-estimator.wtt-airroi-estimator--no-side .wtt-layout,
html body .wtt-modal .wtt-airroi-estimator .wtt-layout,
html body .wtt-modal .wtt-airroi-estimator.wtt-airroi-estimator--no-side .wtt-layout{
  display:grid!important;
  grid-template-columns:1fr!important;
  width:100%!important;
  max-width:100%!important;
  gap:16px!important;
}

html body .wtt-airroi-estimator .wtt-main,
html body .wtt-modal .wtt-airroi-estimator .wtt-main,
html body .wtt-airroi-estimator .wtt-airroi-form,
html body .wtt-modal .wtt-airroi-estimator .wtt-airroi-form{
  display:grid!important;
  grid-template-columns:1fr!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

html body .wtt-airroi-estimator .wtt-side,
html body .wtt-modal .wtt-airroi-estimator .wtt-side{
  display:none!important;
}

html body .wtt-airroi-estimator .wtt-card,
html body .wtt-modal .wtt-airroi-estimator .wtt-card,
html body .wtt-airroi-estimator .wtt-section,
html body .wtt-modal .wtt-airroi-estimator .wtt-section,
html body .wtt-airroi-estimator .wtt-results-grid,
html body .wtt-modal .wtt-airroi-estimator .wtt-results-grid,
html body .wtt-airroi-estimator .wtt-results-main,
html body .wtt-modal .wtt-airroi-estimator .wtt-results-main,
html body .wtt-airroi-estimator .wtt-results-side,
html body .wtt-modal .wtt-airroi-estimator .wtt-results-side{
  width:100%!important;
  max-width:100%!important;
}

html body .wtt-airroi-estimator .wtt-results-grid,
html body .wtt-modal .wtt-airroi-estimator .wtt-results-grid,
html body .wtt-airroi-estimator .wtt-results-main,
html body .wtt-modal .wtt-airroi-estimator .wtt-results-main,
html body .wtt-airroi-estimator .wtt-results-side,
html body .wtt-modal .wtt-airroi-estimator .wtt-results-side{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:18px!important;
}

/* Exact booking shortcode gradient-card border treatment. */
html body .wtt-airroi-launcher .wtt-launcher-card,
html body .wtt-airroi-estimator .wtt-shell,
html body .wtt-modal .wtt-modal-dialog,
html body .wtt-airroi-estimator .wtt-card,
html body .wtt-modal .wtt-airroi-estimator .wtt-card,
html body .wtt-airroi-estimator .wtt-section,
html body .wtt-modal .wtt-airroi-estimator .wtt-section,
html body .wtt-airroi-estimator .wtt-row,
html body .wtt-modal .wtt-airroi-estimator .wtt-row,
html body .wtt-airroi-estimator .wtt-mini-row,
html body .wtt-modal .wtt-airroi-estimator .wtt-mini-row,
html body .wtt-airroi-estimator .wtt-perc-card,
html body .wtt-modal .wtt-airroi-estimator .wtt-perc-card,
html body .wtt-airroi-estimator .wtt-scenario-card,
html body .wtt-modal .wtt-airroi-estimator .wtt-scenario-card,
html body .wtt-airroi-estimator .wtt-mini-table,
html body .wtt-modal .wtt-airroi-estimator .wtt-mini-table{
  border:2px solid transparent!important;
  background:var(--wtp-card-bg) padding-box,var(--wtp-border-grad) border-box!important;
  box-shadow:0 16px 38px rgba(2,27,58,.13),0 0 0 1px rgba(255,255,255,.72) inset!important;
  box-sizing:border-box!important;
}

html body .wtt-airroi-launcher .wtt-launcher-card:hover,
html body .wtt-airroi-estimator .wtt-card:hover,
html body .wtt-modal .wtt-airroi-estimator .wtt-card:hover,
html body .wtt-airroi-estimator .wtt-section:hover,
html body .wtt-modal .wtt-airroi-estimator .wtt-section:hover{
  background:var(--wtp-card-bg-hover) padding-box,var(--wtp-border-grad-hover) border-box!important;
  box-shadow:0 20px 44px rgba(2,27,58,.18),0 0 0 1px rgba(255,255,255,.80) inset!important;
}

html body .wtt-airroi-estimator .wtt-shell{
  padding:clamp(18px,2.2vw,30px)!important;
  border-radius:30px!important;
  overflow:visible!important;
}

html body .wtt-modal .wtt-airroi-estimator .wtt-shell{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}

/* Heading colours: booking-style blue labels/headings with navy main text. */
html body .wtt-airroi-estimator .wtt-eyebrow,
html body .wtt-airroi-launcher .wtt-eyebrow,
html body .wtt-modal .wtt-eyebrow,
html body .wtt-airroi-estimator .wtt-kicker,
html body .wtt-modal .wtt-kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-height:28px!important;
  padding:6px 10px!important;
  border:1px solid rgba(0,194,255,.28)!important;
  border-radius:999px!important;
  background:rgba(0,194,255,.10)!important;
  color:var(--wtp-blue)!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.055em!important;
  line-height:1!important;
  text-transform:uppercase!important;
}

html body .wtt-airroi-estimator h3,
html body .wtt-airroi-launcher h3,
html body .wtt-modal .wtt-airroi-estimator h3{
  margin:10px 0 0!important;
  color:var(--wtp-navy)!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
}

html body .wtt-airroi-estimator .wtt-card h4,
html body .wtt-modal .wtt-airroi-estimator .wtt-card h4,
html body .wtt-airroi-estimator .wtt-section h4,
html body .wtt-modal .wtt-airroi-estimator .wtt-section h4,
html body .wtt-airroi-estimator .wtt-card h5,
html body .wtt-modal .wtt-airroi-estimator .wtt-card h5,
html body .wtt-airroi-estimator .wtt-section h5,
html body .wtt-modal .wtt-airroi-estimator .wtt-section h5{
  color:var(--wtp-blue)!important;
  font-weight:950!important;
  letter-spacing:-.018em!important;
}

html body .wtt-airroi-estimator .wtt-header-copy,
html body .wtt-airroi-estimator .wtt-subtle,
html body .wtt-airroi-estimator .wtt-disclaimer,
html body .wtt-airroi-estimator .wtt-coordinate-help,
html body .wtt-airroi-launcher p,
html body .wtt-modal .wtt-airroi-estimator .wtt-header-copy,
html body .wtt-modal .wtt-airroi-estimator .wtt-subtle,
html body .wtt-modal .wtt-airroi-estimator .wtt-disclaimer,
html body .wtt-modal .wtt-airroi-estimator .wtt-coordinate-help{
  color:var(--wtp-muted)!important;
  font-weight:750!important;
  line-height:1.45!important;
}

html body .wtt-airroi-estimator .wtt-card-head,
html body .wtt-modal .wtt-airroi-estimator .wtt-card-head,
html body .wtt-airroi-estimator .wtt-section-head,
html body .wtt-modal .wtt-airroi-estimator .wtt-section-head{
  padding-bottom:12px!important;
  border-bottom:1px solid var(--wtp-line-soft)!important;
}

/* Form fields match booking widget cards. */
html body .wtt-airroi-estimator .wtt-field label,
html body .wtt-modal .wtt-airroi-estimator .wtt-field label{
  color:var(--wtp-navy)!important;
  font-size:.93rem!important;
  font-weight:950!important;
}

html body .wtt-airroi-estimator .wtt-field input,
html body .wtt-airroi-estimator .wtt-field select,
html body .wtt-modal .wtt-airroi-estimator .wtt-field input,
html body .wtt-modal .wtt-airroi-estimator .wtt-field select{
  min-height:46px!important;
  border:1px solid var(--wtp-line)!important;
  border-radius:14px!important;
  background:#ffffff!important;
  color:var(--wtp-navy)!important;
  box-shadow:none!important;
}

html body .wtt-airroi-estimator .wtt-field input:focus,
html body .wtt-airroi-estimator .wtt-field select:focus,
html body .wtt-modal .wtt-airroi-estimator .wtt-field input:focus,
html body .wtt-modal .wtt-airroi-estimator .wtt-field select:focus{
  border-color:var(--wtp-blue)!important;
  box-shadow:0 0 0 3px rgba(0,194,255,.14)!important;
  outline:none!important;
}

html body .wtt-airroi-estimator .wtt-field input[readonly],
html body .wtt-modal .wtt-airroi-estimator .wtt-field input[readonly]{
  background:#eef7ff!important;
  color:#365b78!important;
}

/* Buttons copied from booking engine action buttons. */
html body .wtt-airroi-estimator .wtt-btn-primary,
html body .wtt-airroi-launcher .wtt-btn-primary,
html body .wtt-modal .wtt-btn-primary,
html body .wtt-airroi-estimator button[type="submit"].wtt-btn-primary,
html body .wtt-modal button[type="submit"].wtt-btn-primary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:0 20px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#021b3a,#083a70,#00c2ff)!important;
  color:#ffffff!important;
  font-size:14px!important;
  font-weight:950!important;
  line-height:1!important;
  text-decoration:none!important;
  cursor:pointer!important;
  box-shadow:0 12px 26px rgba(0,194,255,.22)!important;
}

html body .wtt-airroi-estimator .wtt-btn-primary:hover,
html body .wtt-airroi-launcher .wtt-btn-primary:hover,
html body .wtt-modal .wtt-btn-primary:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 16px 32px rgba(2,27,58,.24)!important;
}

html body .wtt-airroi-estimator .wtt-btn-secondary,
html body .wtt-modal .wtt-btn-secondary{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:42px!important;
  padding:0 16px!important;
  border:2px solid transparent!important;
  border-radius:999px!important;
  background:var(--wtp-card-bg) padding-box,var(--wtp-border-grad) border-box!important;
  color:var(--wtp-navy)!important;
  font-size:14px!important;
  font-weight:950!important;
  box-shadow:0 10px 22px rgba(2,27,58,.10)!important;
}

/* Latitude/longitude stays hidden unless the button is clicked. */
html body .wtt-airroi-estimator .wtt-coordinate-field[hidden],
html body .wtt-modal .wtt-airroi-estimator .wtt-coordinate-field[hidden]{
  display:none!important;
}

html body .wtt-airroi-estimator .wtt-coordinates-action,
html body .wtt-modal .wtt-airroi-estimator .wtt-coordinates-action{
  align-items:flex-start!important;
}

html body .wtt-airroi-estimator .wtt-coordinates-toggle,
html body .wtt-modal .wtt-airroi-estimator .wtt-coordinates-toggle{
  justify-self:start!important;
}

/* Status and notes. */
html body .wtt-airroi-estimator .wtt-status,
html body .wtt-modal .wtt-airroi-estimator .wtt-status,
html body .wtt-airroi-estimator .wtt-note,
html body .wtt-modal .wtt-airroi-estimator .wtt-note{
  border:1px solid var(--wtp-line)!important;
  border-radius:16px!important;
  background:#f6fbff!important;
  color:var(--wtp-muted)!important;
  font-weight:850!important;
}

html body .wtt-airroi-estimator .wtt-status.is-success,
html body .wtt-modal .wtt-airroi-estimator .wtt-status.is-success{
  background:rgba(109,255,139,.14)!important;
  border-color:rgba(15,104,64,.25)!important;
  color:#0f6840!important;
}

html body .wtt-airroi-estimator .wtt-status.is-error,
html body .wtt-modal .wtt-airroi-estimator .wtt-status.is-error{
  background:#fff8e7!important;
  border-color:#ffd889!important;
  color:#6b4b00!important;
}

/* Modal positioning: full-width content, lower than header, close to bottom. */
html body .wtt-modal{
  position:fixed!important;
  inset:0!important;
  z-index:2147483647!important;
  display:none!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding:54px 16px 12px!important;
}

html body .wtt-modal:not([hidden]){
  display:flex!important;
}

html body .wtt-modal .wtt-modal-backdrop{
  position:fixed!important;
  inset:0!important;
  background:rgba(2,27,58,.72)!important;
  backdrop-filter:blur(8px)!important;
}

html body .wtt-modal .wtt-modal-dialog{
  position:relative!important;
  z-index:1!important;
  width:min(1320px,calc(100vw - 32px))!important;
  max-width:min(1320px,calc(100vw - 32px))!important;
  max-height:calc(100dvh - 66px)!important;
  overflow:auto!important;
  margin:0!important;
  border-radius:30px!important;
}

html body .wtt-modal .wtt-modal-body{
  padding:clamp(18px,2vw,30px)!important;
}

html body .wtt-modal .wtt-modal-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  z-index:3!important;
  width:44px!important;
  height:44px!important;
  border:0!important;
  border-radius:999px!important;
  background:linear-gradient(135deg,#021b3a,#083a70,#00c2ff)!important;
  color:#ffffff!important;
  font-size:24px!important;
  font-weight:950!important;
  box-shadow:0 14px 28px rgba(2,27,58,.22)!important;
}

html body .wtt-modal .wtt-airroi-estimator .wtt-header{
  padding-right:54px!important;
}

/* Results should keep the same card treatment, not dark old styling. */
html body .wtt-airroi-estimator .wtt-scenario-card,
html body .wtt-modal .wtt-airroi-estimator .wtt-scenario-card{
  color:var(--wtp-text)!important;
}
html body .wtt-airroi-estimator .wtt-scenario-card h5,
html body .wtt-modal .wtt-airroi-estimator .wtt-scenario-card h5,
html body .wtt-airroi-estimator .wtt-scenario-card strong,
html body .wtt-modal .wtt-airroi-estimator .wtt-scenario-card strong{
  color:var(--wtp-blue)!important;
}
html body .wtt-airroi-estimator .wtt-scenario-card span,
html body .wtt-modal .wtt-airroi-estimator .wtt-scenario-card span{
  color:var(--wtp-muted)!important;
}

@media (min-width:861px){
  html body .wtt-modal .wtt-airroi-estimator .wtt-field.span-3,
  html body .wtt-airroi-estimator .wtt-field.span-3{grid-column:span 3!important;}
  html body .wtt-modal .wtt-airroi-estimator .wtt-field.span-4,
  html body .wtt-airroi-estimator .wtt-field.span-4{grid-column:span 4!important;}
  html body .wtt-modal .wtt-airroi-estimator .wtt-field.span-6,
  html body .wtt-airroi-estimator .wtt-field.span-6{grid-column:span 6!important;}
  html body .wtt-modal .wtt-airroi-estimator .wtt-field.span-12,
  html body .wtt-airroi-estimator .wtt-field.span-12{grid-column:span 12!important;}
}

@media (max-width:860px){
  html body .wtt-modal{padding:46px 10px 10px!important;}
  html body .wtt-modal .wtt-modal-dialog{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 56px)!important;border-radius:24px!important;}
  html body .wtt-airroi-estimator .wtt-card,
  html body .wtt-modal .wtt-airroi-estimator .wtt-card{border-radius:24px!important;padding:16px!important;}
  html body .wtt-airroi-estimator .wtt-field.span-3,
  html body .wtt-airroi-estimator .wtt-field.span-4,
  html body .wtt-airroi-estimator .wtt-field.span-6,
  html body .wtt-airroi-estimator .wtt-field.span-12,
  html body .wtt-modal .wtt-airroi-estimator .wtt-field.span-3,
  html body .wtt-modal .wtt-airroi-estimator .wtt-field.span-4,
  html body .wtt-modal .wtt-airroi-estimator .wtt-field.span-6,
  html body .wtt-modal .wtt-airroi-estimator .wtt-field.span-12{grid-column:span 12!important;}
}

@media (max-width:640px){
  html body .wtt-modal{padding:0!important;}
  html body .wtt-modal .wtt-modal-dialog{width:100%!important;max-width:100%!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;}
  html body .wtt-modal .wtt-modal-body{padding:18px!important;}
  html body .wtt-modal .wtt-airroi-estimator .wtt-header{padding-right:50px!important;}
  html body .wtt-airroi-estimator .wtt-coordinates-toggle,
  html body .wtt-modal .wtt-airroi-estimator .wtt-coordinates-toggle{width:100%!important;}
}
