/* Jet Ski Cape Town additions (24 Oct 2026). Loaded after theme.css via $SITE['extra_css'].
   URLs are RELATIVE (../jetski/...) so they also work under a path prefix such as /staging-jetski/. */

/* header: Kevin's white logo; slightly smaller on phones */
.logo img{height:var(--logo-height);width:auto;max-width:62vw;object-fit:contain}
@media (max-width:700px){:root{--logo-height:40px}}
.site-footer{background:var(--color-footer-bg)}

/* home slider: WebP via image-set, smaller files on phones (JPG inline style stays as the fallback) */
.page-home .hero__slide::before{background:linear-gradient(180deg,rgba(11,37,69,.55),rgba(11,37,69,.15) 45%,rgba(11,37,69,.55))}
.page-home .hero__slide:nth-child(1){background-image:image-set(url(../jetski/slider-topdown-wake-16x9-1280.webp) type("image/webp"),url(../jetski/slider-topdown-wake-16x9-1280.jpg) type("image/jpeg"))!important}
.page-home .hero__slide:nth-child(2){background-image:image-set(url(../jetski/hero-table-mountain-16x9-1152.webp) type("image/webp"),url(../jetski/hero-table-mountain-16x9-1152.jpg) type("image/jpeg"))!important}
.page-home .hero__slide:nth-child(3){background-image:image-set(url(../jetski/jetski-table-mountain-spray-16x9-1152.webp) type("image/webp"),url(../jetski/jetski-table-mountain-spray-16x9-1152.jpg) type("image/jpeg"))!important}
@media (min-width:1400px){.page-home .hero__slide:nth-child(1){background-image:image-set(url(../jetski/slider-topdown-wake-16x9-1920.webp) type("image/webp"),url(../jetski/slider-topdown-wake-16x9-1920.jpg) type("image/jpeg"))!important}}
/* slide 1: the wake runs across the middle and the open water is at the bottom, so the image is scaled up a little and
   anchored to its bottom edge (wake moves up, the water band grows) and the caption sits low and left over the open water */
.page-home .hero__slide:nth-child(1){align-items:flex-end;background-size:auto 122%;background-position:center bottom}
@media (min-aspect-ratio:2/1){.page-home .hero__slide:nth-child(1){background-size:cover}}
.page-home .hero__slide:nth-child(1)::before{background:linear-gradient(180deg,rgba(11,37,69,.45),rgba(11,37,69,0) 30%,rgba(11,37,69,0) 55%,rgba(11,37,69,.6))}
.page-home .hero__slide:nth-child(1) .hero__caption{text-align:left;padding-bottom:64px}
.page-home .hero__slide:nth-child(1) .hero__kicker{color:#fff;opacity:.9}
.page-home .hero__slide:nth-child(1) .hero__title{margin-bottom:22px}
@media (max-width:700px){
  .page-home .hero__slide:nth-child(1){background-image:image-set(url(../jetski/slider-topdown-wake-16x9-960.webp) type("image/webp"),url(../jetski/slider-topdown-wake-16x9-960.jpg) type("image/jpeg"))!important}
  .page-home .hero__slide:nth-child(2){background-image:image-set(url(../jetski/hero-table-mountain-16x9-960.webp) type("image/webp"),url(../jetski/hero-table-mountain-16x9-960.jpg) type("image/jpeg"))!important}
  .page-home .hero__slide:nth-child(3){background-image:image-set(url(../jetski/jetski-table-mountain-spray-16x9-960.webp) type("image/webp"),url(../jetski/jetski-table-mountain-spray-16x9-960.jpg) type("image/jpeg"))!important}
  .page-home .hero__slide:nth-child(1){background-image:image-set(url(../jetski/slider-topdown-wake-16x9-1280.webp) type("image/webp"),url(../jetski/slider-topdown-wake-16x9-1280.jpg) type("image/jpeg"))!important;background-size:auto 150%;background-position:82% bottom}
  .page-home .hero__slide:nth-child(1) .hero__caption{padding-bottom:60px}
  .hero__title{font-size:38px}
}
.hero__kicker{color:#2EC4B6;font-weight:700}
.hero--inner{background-position:center 60%}
.hero--inner{background-image:image-set(url(../jetski/hero-table-mountain-banner-1152.webp) type("image/webp"),url(../jetski/hero-table-mountain-banner-1152.jpg) type("image/jpeg"))!important}
@media (max-width:700px){.hero--inner{background-image:image-set(url(../jetski/hero-table-mountain-banner-768.webp) type("image/webp"),url(../jetski/hero-table-mountain-banner-768.jpg) type("image/jpeg"))!important}}

/* figure (post image) */
.section--figure{padding-bottom:0}
.figure{margin:0}.figure img{width:100%;height:auto;border-radius:14px;margin:0;box-shadow:0 10px 30px rgba(11,37,69,.12)}

/* "For Booking" phone band */
.section--cta-phone{background:var(--color-navy);color:#fff;padding:28px 0}
.cta-phone{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:center}
.cta-phone__label{font:700 15px var(--font-nav);text-transform:uppercase;letter-spacing:2px;color:#2EC4B6}
.cta-phone__num{font:800 28px var(--font-heading);color:#fff}
.cta-phone__num:hover{color:var(--color-accent)}

/* gallery: 4 across, 2 on phones */
.gallery picture{display:contents}
.section--gallery .gallery{grid-template-columns:repeat(4,1fr);gap:12px}
.gallery__item{border-radius:10px}
.gallery__overlay{background:rgba(11,37,69,.55)}
@media (max-width:700px){.section--gallery .gallery{grid-template-columns:repeat(2,1fr);gap:8px}}

/* image + text feature (yacht charter pairing) */
.section--feature{background:#f3f7fa}
.feature{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}
.feature__media img{width:100%;height:auto;border-radius:14px;display:block;box-shadow:0 10px 30px rgba(11,37,69,.15)}
.feature__body .section-kicker,.feature__body .section-title{text-align:left}
.feature__body p{font-size:18px}
@media (max-width:860px){.feature{grid-template-columns:1fr;gap:24px}}

/* enquiry form */
.section--enquiry{position:relative;color:#fff;background:var(--color-navy) var(--enquiry-bg,none) center/cover no-repeat;scroll-margin-top:20px}
.section--enquiry::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(11,37,69,.94),rgba(11,37,69,.8) 55%,rgba(0,152,154,.55))}
.enquiry{position:relative;display:grid;grid-template-columns:1fr 1.25fr;gap:48px;align-items:start}
.enquiry .section-kicker,.enquiry .section-title{text-align:left;color:#fff}.enquiry .section-kicker{color:#2EC4B6}
.enquiry__price{font:800 22px var(--font-heading);color:var(--color-accent);margin:0 0 .6em}
.enquiry .contact-info{margin:1.2em 0 0}.enquiry .contact-info__label{color:#2EC4B6}.enquiry .contact-info a{color:#fff}
.enquiry__panel{background:#fff;color:var(--color-text);border-radius:16px;padding:28px;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.enquiry__form{display:grid;gap:14px}
.enquiry__form label{display:grid;gap:6px;font:700 14px var(--font-nav);color:var(--color-heading)}
.enquiry__form small{font-weight:400;color:var(--color-muted)}
.enquiry__form input,.enquiry__form select,.enquiry__form textarea{font:400 16px var(--font-body);padding:11px 12px;border:1px solid #c9d4de;border-radius:8px;width:100%;background:#fff;color:var(--color-heading)}
.enquiry__form input:focus,.enquiry__form select:focus,.enquiry__form textarea:focus{outline:2px solid var(--color-primary);border-color:var(--color-primary)}
.enquiry__form [aria-invalid="true"]{border-color:#c0392b;background:#fff6f5}
.enquiry__row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.enquiry__row--2{grid-template-columns:1fr 1fr}
.enquiry__err{margin:0;color:#c0392b;font:400 13px var(--font-body)}
.enquiry__alert{background:#fff4ec;border-left:4px solid var(--color-accent);padding:10px 14px;margin:0 0 14px;color:#7a3b12;border-radius:6px}
.enquiry__alert p{margin:0}
.enquiry__hp{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}
.enquiry__submit{border:0;border-radius:30px;padding:14px 34px;justify-self:start;background:var(--color-accent)}
.enquiry__submit:hover{background:var(--color-navy)}
.enquiry__done{text-align:center;padding:30px 10px}
.enquiry__done h3{color:var(--color-heading);margin:.4em 0}
.enquiry__done p{font-size:18px;margin:0}
.enquiry__tick{display:inline-flex;width:64px;height:64px;border-radius:50%;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-size:34px}
@media (max-width:860px){.enquiry{grid-template-columns:1fr;gap:24px}.enquiry__row{grid-template-columns:1fr 1fr}.enquiry__row--2{grid-template-columns:1fr}.enquiry__panel{padding:20px}}

/* social icons the shared theme doesn't have yet (instagram, X/twitter, linkedin); same mask technique as theme.css */
.ico-instagram{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.2c3.2 0 3.6 0 4.8.1 3.3.1 4.8 1.7 4.9 4.9.1 1.3.1 1.6.1 4.8s0 3.6-.1 4.8c-.1 3.2-1.7 4.8-4.9 4.9-1.3.1-1.6.1-4.8.1s-3.6 0-4.8-.1c-3.3-.1-4.8-1.7-4.9-4.9C2.2 15.6 2.2 15.2 2.2 12s0-3.6.1-4.8C2.4 3.9 3.9 2.4 7.2 2.3 8.4 2.2 8.8 2.2 12 2.2zM12 0C8.7 0 8.3 0 7.1.1 2.7.3.3 2.7.1 7.1 0 8.3 0 8.7 0 12s0 3.7.1 4.9c.2 4.4 2.6 6.8 7 7 1.2.1 1.6.1 4.9.1s3.7 0 4.9-.1c4.4-.2 6.8-2.6 7-7 .1-1.2.1-1.6.1-4.9s0-3.7-.1-4.9c-.2-4.4-2.6-6.8-7-7C15.7 0 15.3 0 12 0zm0 5.8a6.2 6.2 0 1 0 0 12.4 6.2 6.2 0 0 0 0-12.4zM12 16a4 4 0 1 1 0-8 4 4 0 0 1 0 8zm6.4-11.8a1.4 1.4 0 1 0 0 2.9 1.4 1.4 0 0 0 0-2.9z'/%3E%3C/svg%3E")}
.ico-twitter{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.9 1.2h3.7l-8 9.2L24 22.8h-7.4l-5.8-7.6-6.6 7.6H.5l8.6-9.8L0 1.2h7.6l5.2 6.9 6.1-6.9zm-1.3 19.4h2L6.5 3.3H4.3l13.3 17.3z'/%3E%3C/svg%3E")}
.ico-linkedin{--i:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.4 20.5h-3.6v-5.6c0-1.3 0-3-1.8-3s-2.1 1.4-2.1 2.9v5.7H9.4V9h3.4v1.6c.5-.9 1.6-1.8 3.4-1.8 3.6 0 4.3 2.4 4.3 5.5v6.2zM5.3 7.4a2.1 2.1 0 1 1 0-4.1 2.1 2.1 0 0 1 0 4.1zM7.1 20.5H3.6V9h3.5v11.5zM22.2 0H1.8C.8 0 0 .8 0 1.7v20.6c0 .9.8 1.7 1.8 1.7h20.4c1 0 1.8-.8 1.8-1.7V1.7C24 .8 23.2 0 22.2 0z'/%3E%3C/svg%3E")}

/* Footer: no "Follow Us" heading when there are no social links (24 Oct 2026). A tagline left on its own lines up with
   the first row of the other columns (heading line + 12px padding + 2px rule + 20px margin); stacked mobile unchanged. */
@media (min-width:601px){.footer__col>.footer__tagline:first-child{margin-top:calc(var(--fs-footer-h) * 1.2 + 34px)}}
