:root{
  --jet-deep:var(--deep,#31061c);
  --jet-wine:var(--wine,#5b0a2d);
  --jet-pink:var(--pink,#f52280);
  --jet-pink-2:var(--pink-2,#ff61aa);
  --jet-cream:var(--cream,#fff7fb);
  --jet-ink:var(--ink,#25101b);
  --jet-muted:var(--muted,#765967);
}

.jet-page{
  background:linear-gradient(180deg,#fff7fb 0%,#fff 43%,#fff5fa 100%);
  color:var(--jet-ink);
}

/* Keep the Jet Ski page header identical to the rest of the public site. */
.jet-page .site-header{
  color:#fff;
  background:#190414;
  border-bottom:1px solid rgba(246,37,130,.72);
  box-shadow:0 8px 30px rgba(7,0,5,.34);
  backdrop-filter:blur(14px);
}
.jet-page .main-nav a{color:#fff}
.jet-page .main-nav a:hover,
.jet-page .main-nav a.active{color:#ff5ca4;border-color:#ff2c82}
.jet-page .main-nav .nav-reservation{
  color:#fff;
  background:linear-gradient(135deg,#ff3d93,#d90a65);
}
.jet-page .menu-toggle{color:#fff}

.jet-hero{
  min-height:700px;
  display:grid;
  grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);
  align-items:center;
  gap:42px;
  padding:68px max(5vw,28px) 115px;
  position:relative;
  overflow:hidden;
  color:#fff;
  background:
    radial-gradient(circle at 16% 24%,rgba(255,72,157,.28),transparent 34%),
    radial-gradient(circle at 82% 18%,rgba(255,105,174,.2),transparent 28%),
    linear-gradient(135deg,#260318 0%,#5b082f 52%,#31051f 100%);
}
.jet-hero::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.26;
  background-image:
    radial-gradient(circle at 20% 30%,rgba(255,255,255,.6) 0 1px,transparent 1.5px),
    radial-gradient(circle at 75% 20%,rgba(255,255,255,.32) 0 1px,transparent 1.5px);
  background-size:70px 70px,110px 110px;
}
.jet-hero::after{
  content:"";
  position:absolute;
  inset:auto 0 0;
  height:170px;
  pointer-events:none;
  background:linear-gradient(to bottom,transparent,#fff7fb);
}
.jet-hero-copy,.jet-hero-art{position:relative;z-index:1;min-width:0}
.jet-eyebrow{
  display:inline-flex;
  letter-spacing:.18em;
  text-transform:uppercase;
  font-size:12px;
  font-weight:900;
  color:#ff83ba;
}
.jet-hero h1{
  font-size:clamp(56px,8vw,112px);
  line-height:.86;
  margin:18px 0 24px;
  letter-spacing:-.055em;
  text-transform:uppercase;
  text-shadow:0 8px 25px rgba(0,0,0,.3);
}
.jet-hero-copy>p{
  font-size:clamp(18px,2vw,23px);
  line-height:1.65;
  max-width:680px;
  color:#f8d8e7;
}
.jet-rate-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:34px 0}
.jet-rate-row article{
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,103,172,.42);
  border-radius:20px;
  padding:18px;
  backdrop-filter:blur(8px);
  box-shadow:0 14px 30px rgba(20,0,12,.16);
}
.jet-rate-row span,.jet-rate-row strong{display:block}
.jet-rate-row span{font-size:12px;color:#ffd3e6}
.jet-rate-row strong{font-size:28px;margin-top:7px;color:#fff}
.jet-actions{display:flex;gap:12px;flex-wrap:wrap}
.jet-primary,.jet-secondary,.jet-submit{
  border:0;
  border-radius:999px;
  padding:15px 24px;
  font-weight:900;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}
.jet-primary,.jet-submit{
  background:linear-gradient(135deg,#ff2f88,#d90a65);
  color:#fff;
  box-shadow:0 14px 32px rgba(235,22,116,.35);
}
.jet-primary:hover,.jet-submit:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(235,22,116,.44)}
.jet-secondary{border:1px solid rgba(255,255,255,.42);color:#fff;background:rgba(255,255,255,.06)}
.jet-secondary:hover{background:rgba(255,255,255,.12)}

.jet-hero-art{
  min-height:590px;
  border:1px solid rgba(255,103,172,.48);
  border-radius:34px;
  background:
    linear-gradient(90deg,rgba(39,3,23,.66),transparent 28%,transparent 74%,rgba(39,3,23,.54)),
    linear-gradient(0deg,rgba(39,3,23,.9),transparent 45%),
    url("assets/jetski-background.webp") center/cover no-repeat;
  box-shadow:0 36px 90px rgba(20,0,12,.5);
  overflow:hidden;
}
.jet-hero-art::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  box-shadow:inset 70px 0 90px -65px #31051f,inset -70px 0 90px -65px #31051f,inset 0 -110px 100px -55px #31051f;
}

.jet-info-grid{
  width:min(1180px,calc(100% - 36px));
  margin:-45px auto 75px;
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.jet-info-grid article{
  background:#fff;
  border:1px solid #efd3df;
  border-radius:25px;
  padding:28px;
  box-shadow:0 18px 45px rgba(76,8,40,.11);
}
.jet-info-grid span{font-weight:900;color:#e41e74}
.jet-info-grid h2{margin:10px 0 8px;font-size:22px;color:#31061c}
.jet-info-grid p{margin:0;color:var(--jet-muted);line-height:1.6}

.jet-booking-shell{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto 80px;
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:35px;
  align-items:start;
}
.jet-booking-copy{
  color:#fff;
  border:1px solid rgba(255,74,155,.44);
  border-radius:30px;
  padding:38px;
  position:sticky;
  top:116px;
  background:linear-gradient(145deg,#5d0933,#280318);
  box-shadow:0 22px 55px rgba(45,4,24,.2);
}
.jet-booking-copy h2{font-size:42px;margin:12px 0}
.jet-booking-copy p,.jet-booking-copy li{color:#f2cddd;line-height:1.65}
.jet-booking-copy ul{padding-left:20px}
.jet-booking-form{
  background:#fff;
  border:1px solid #efd3df;
  border-radius:30px;
  padding:34px;
  box-shadow:0 22px 55px rgba(76,8,40,.1);
}
.jet-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.jet-booking-form label{display:grid;gap:7px;font-weight:800;font-size:13px;color:#3b1627}
.jet-booking-form input,.jet-booking-form select,.jet-booking-form textarea{
  width:100%;box-sizing:border-box;border:1px solid #e5c5d2;border-radius:14px;padding:13px 14px;font:inherit;color:#28151e;background:#fffafd;
}
.jet-booking-form input:focus,.jet-booking-form select:focus,.jet-booking-form textarea:focus{outline:2px solid rgba(245,34,128,.22);border-color:#f52280}
.jet-booking-form textarea{resize:vertical;margin-top:16px}
.jet-waiver{display:flex!important;grid-template-columns:auto 1fr!important;align-items:flex-start;margin:18px 0;font-weight:600!important;line-height:1.5}
.jet-waiver input{width:auto;margin-top:4px}
.jet-submit{width:100%;font-size:16px;cursor:pointer}
.jet-submit:disabled{opacity:.6}
.jet-message{min-height:22px;color:#8b2047;font-weight:700}
.jet-confirmation{background:#fff0f6;border:1px solid #f0bfd3;border-radius:20px;padding:22px}
.jet-confirmation span{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:#b3165d}
.jet-confirmation h3{font-size:32px;margin:6px 0;color:#4a0828}
.jet-confirmation div{display:flex;gap:10px;flex-wrap:wrap}
.jet-confirmation a{background:linear-gradient(135deg,#ff2f88,#d90a65);color:#fff;border-radius:999px;padding:10px 15px;text-decoration:none;font-weight:800}

.jet-safety{
  width:min(1180px,calc(100% - 36px));
  margin:0 auto 90px;
  color:#fff;
  border:1px solid rgba(255,74,155,.4);
  border-radius:32px;
  padding:40px;
  background:linear-gradient(135deg,#2c031a,#70103f 56%,#3b0525);
  box-shadow:0 22px 55px rgba(45,4,24,.2);
}
.jet-safety h2{font-size:42px;margin:10px 0 28px}
.jet-safety-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.jet-safety-grid article{background:rgba(255,255,255,.07);border:1px solid rgba(255,116,177,.3);border-radius:18px;padding:20px}
.jet-safety-grid b{font-size:17px}
.jet-safety-grid p{color:#f2cddd;line-height:1.5}

.jet-page .site-footer{border-top:1px solid #efd3df;color:#755461}

@media(max-width:980px){
  .jet-hero{grid-template-columns:1fr;padding-top:45px}
  .jet-hero-art{min-height:430px}
  .jet-booking-shell{grid-template-columns:1fr}
  .jet-booking-copy{position:static}
  .jet-safety-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .jet-page .main-nav{
    background:#39051f;
    border:1px solid rgba(255,72,157,.35);
    border-top:0;
  }
  .jet-page .main-nav a{color:#fff}
}
@media(max-width:680px){
  .jet-hero{min-height:auto;padding:46px 18px 120px}
  .jet-hero h1{font-size:56px}
  .jet-rate-row,.jet-info-grid,.jet-form-grid,.jet-safety-grid{grid-template-columns:1fr}
  .jet-hero-art{min-height:360px;background-position:58% center}
  .jet-info-grid{margin-top:-55px}
  .jet-booking-form,.jet-booking-copy,.jet-safety{padding:24px;border-radius:22px}
  .jet-actions a{width:100%}
  .jet-page .site-footer{display:block;text-align:center}
}
