.whatsapp-float{display:none!important}.facts{grid-template-columns:repeat(5,minmax(0,1fr))!important}.fact{min-width:0}.fact strong{font-size:2rem}.booking-with-calendar{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:28px;align-items:start}.booking-with-calendar .availability-section{padding:0;grid-column:1}.booking-with-calendar .quote-form{grid-column:2;position:sticky;top:110px}.booking-with-calendar .calendar-months{grid-template-columns:1fr}.booking-with-calendar .calendar-month:nth-child(2){display:none}.google-map-section{max-width:1440px;margin:auto}.google-map-section h2{margin-bottom:28px}.google-map-section iframe{width:100%;height:480px;border:0;border-radius:24px;box-shadow:0 18px 50px rgba(18,31,43,.12)}.google-reviews-section{background:#f5f5f4}.reviews-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:30px}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.reviews-grid article{background:white;border-radius:14px;padding:34px;box-shadow:0 12px 30px rgba(20,30,45,.08)}.reviews-grid article div{color:#f4aa00;letter-spacing:3px;font-size:1.2rem}.reviews-grid article p{line-height:1.7;color:#556176}.reviews-grid article strong{color:#172640}@media(max-width:980px){.facts{grid-template-columns:repeat(2,1fr)!important}.booking-with-calendar{grid-template-columns:1fr}.booking-with-calendar .availability-section,.booking-with-calendar .quote-form{grid-column:1;position:static}.reviews-grid{grid-template-columns:1fr}.reviews-heading{align-items:start;flex-direction:column}.google-map-section iframe{height:360px}}
.editable-hero-photo{position:relative;isolation:isolate;background-size:cover;background-position:center;color:#fff}.editable-hero-photo:before{content:"";position:absolute;inset:0;background:rgba(7,18,35,var(--hero-shade,.45));z-index:-1}.editable-hero-photo h1,.editable-hero-photo>p{color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.card-no{display:none!important}
.legal-content{max-width:1050px}.faq-list{display:grid;gap:14px}.faq-list details{background:#fff;border:1px solid #e7e2dc;border-radius:14px;padding:0 24px}.faq-list summary{cursor:pointer;font-weight:700;color:#172640;padding:22px 36px 22px 0;position:relative;list-style:none}.faq-list summary:after{content:"+";position:absolute;right:0;font-size:1.4rem;color:#7d009c}.faq-list details[open] summary:after{content:"−"}.faq-list details p{color:#566176;line-height:1.75;margin:0;padding:0 0 24px}.terms-body{background:#fff;border:1px solid #e7e2dc;border-radius:18px;padding:38px;color:#566176;line-height:1.8}.terms-body h2{color:#172640;margin-top:28px}.footer-legal-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px}.footer-legal-links a{color:inherit;text-decoration:underline;text-underline-offset:4px}@media(max-width:700px){.terms-body{padding:22px}}
.facts{grid-template-columns:repeat(2,minmax(0,1fr))!important}.fact:first-child strong{font-size:1.35rem;line-height:1.15}.facts .fact+.fact{border-left:0}.facts .fact:nth-child(even){border-left:1px solid var(--line)}.facts .fact:nth-child(n+3){border-top:1px solid var(--line)}
@media(max-width:980px){.facts{grid-template-columns:repeat(2,1fr)!important}}
.apartment-gallery-direct{padding-top:40px!important}.apartment-gallery-direct h2{margin-bottom:28px}
.booking-with-calendar{grid-template-columns:minmax(0,1.6fr) minmax(340px,.7fr)}
.booking-with-calendar .calendar-months{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.booking-with-calendar .calendar-month:nth-child(2){display:block}
.booking-with-calendar .calendar-month{padding:14px 12px;border-radius:14px}
.booking-with-calendar .calendar-month h3{font-size:1rem;margin:4px 0 10px}
.booking-with-calendar .weekdays,.booking-with-calendar .calendar-days{gap:4px}
.booking-with-calendar .weekdays span{padding:4px 0;font-size:.68rem}
.booking-with-calendar .calendar-days span{aspect-ratio:auto;height:42px;border-radius:6px;font-size:.78rem}
@media(max-width:980px){.booking-with-calendar .calendar-months{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.booking-with-calendar .calendar-months{grid-template-columns:1fr}.booking-with-calendar .calendar-month:nth-child(2){display:none}}

/* Mobile layout: keep the calendar and enquiry form inside the viewport. */
@media(max-width:700px){
  html,body{max-width:100%;overflow-x:hidden}
  .inner-section{padding-left:18px!important;padding-right:18px!important}
  .booking-with-calendar{display:block;width:100%;min-width:0}
  .booking-with-calendar .availability-section,.booking-with-calendar .quote-form{width:100%;min-width:0;margin:0}
  .booking-with-calendar .calendar-heading{align-items:center;flex-wrap:wrap}
  .booking-with-calendar .calendar-heading h2{font-size:clamp(1.9rem,10vw,2.7rem);overflow-wrap:anywhere}
  .booking-with-calendar .calendar-heading>div{display:flex;gap:8px}
  .booking-with-calendar .calendar-heading button{width:42px;height:42px;flex:0 0 42px}
  .booking-with-calendar .calendar-month{width:100%;padding:14px 10px}
  .booking-with-calendar .calendar-days span{height:auto;min-height:38px;font-size:.78rem}
  .booking-with-calendar .calendar-legend{gap:14px;margin-bottom:34px}
  .booking-with-calendar .quote-form{padding:28px 20px!important}
  .booking-with-calendar .quote-form h2{font-size:2.25rem;line-height:1.1}
  .booking-with-calendar .form-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px;width:100%}
  .booking-with-calendar .form-grid>*{grid-column:1!important;width:100%!important;min-width:0;max-width:100%}
  .booking-with-calendar input,.booking-with-calendar select,.booking-with-calendar textarea{font-size:16px!important}
  .property-card{padding:20px 18px}
  .property-card h2{font-size:clamp(1.75rem,8vw,2.25rem);line-height:1.15}
  .property-card .amenity-grid{gap:12px}
  .site-header{padding-left:16px!important;padding-right:54px!important}
  .site-header .brand>img:first-child{width:145px!important;max-width:42vw;height:auto}
  .site-header .header-license{width:70px!important;height:20px!important;margin-left:18px}
  .site-header .language-switcher{right:52px;top:28px;gap:1px;margin:0}
  .site-header .language-switcher button{padding:6px 4px;font-size:10px}
  .site-header .menu-toggle{right:10px}
}

/* Homepage Google reviews */
.google-reviews-section .reviews-heading{text-align:center;display:block;max-width:720px;margin:0 auto 36px}
.google-reviews-section .reviews-heading h2{margin-bottom:14px}
.reviews-intro{color:#647081;line-height:1.7}
.write-review-link{display:inline-block;margin-top:10px;color:#6e039a;border-bottom:1px solid currentColor;padding-bottom:4px;font-weight:600}
.google-reviews-section .reviews-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.reviews-more{display:block;margin:30px auto 0;border:1px solid #6e039a;border-radius:999px;background:#6e039a;color:#fff;padding:13px 24px;font:600 14px Inter,Arial;cursor:pointer}
.reviews-more[hidden],.review-extra[hidden]{display:none!important}
@media(max-width:700px){.google-reviews-section .reviews-grid{grid-template-columns:1fr}.google-reviews-section{padding-left:18px!important;padding-right:18px!important}}

/* Reviews belong only to the About page. This also neutralizes any older
   cached script or the legacy static transfer review block. */
.inner-section.reviews{display:none!important}
.google-reviews-section{display:none!important}
main:has(#contact-us)>.google-reviews-section{display:block!important}

/* Larger, more readable desktop header. */
@media(min-width:901px){
  .site-header .nav{font-size:18px!important;gap:34px!important}
  .site-header .nav>a:not(.nav-cta){font-size:18px!important;font-weight:500!important}
  .site-header .language-switcher button{font-size:13px!important;padding:8px 7px!important}
  .site-header .brand>img:first-child{width:210px!important}
}
.reviews-loading,.reviews-unavailable{grid-column:1/-1;text-align:center;padding:30px;color:#647081}
.google-reviews-section a.reviews-more{text-decoration:none;text-align:center;width:max-content}

/* Permanent licence strip on every inner page */
.site-trust-bar{margin-top:130px;min-height:54px;padding:17px 8%;display:flex;justify-content:center;gap:4vw;background:#fff;border-bottom:1px solid #eee;text-transform:uppercase;letter-spacing:.13em;font-size:10px;color:#555;position:relative;z-index:2}.site-trust-bar span+span{border-left:1px solid #e4e4e4;padding-left:4vw}.site-trust-bar+.page-hero,.site-trust-bar+main .page-hero{margin-top:0!important}.header-license{display:none!important}
.about-highlights{background:#f4f6f5;text-align:center;padding-top:80px!important;padding-bottom:80px!important}.about-highlights h2{max-width:760px;margin:0 auto 38px}.about-highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.about-highlight-grid article{background:#fff;border-radius:16px;padding:34px;box-shadow:0 12px 28px rgba(20,30,45,.07)}.about-highlight-grid h3{margin:0 0 14px;color:#1a093f;font-size:20px}.about-highlight-grid p{margin:0;line-height:1.7;color:#606b7a}
.whatsapp-choice-modal{position:fixed;inset:0;z-index:10000;background:rgba(8,10,18,.62);display:grid;place-items:center;padding:20px}.whatsapp-choice-card{position:relative;width:min(460px,100%);background:#fff;border-radius:18px;padding:34px;box-shadow:0 24px 70px rgba(0,0,0,.3)}.whatsapp-choice-card h2{margin:0 35px 24px 0;color:#1a093f;font-size:25px}.whatsapp-choice-buttons{display:grid;gap:12px}.whatsapp-choice-buttons a{justify-content:center;background:#25d366;border-radius:12px}.whatsapp-choice-close{position:absolute;right:18px;top:14px;border:0;background:transparent;font-size:30px;cursor:pointer;color:#555}
@media(max-width:900px){.site-trust-bar{margin-top:95px;padding:14px 20px;justify-content:flex-start;overflow:hidden;white-space:nowrap}.site-trust-bar span:not(:first-child){display:none}.about-highlight-grid{grid-template-columns:1fr}}

/* Direct Google review call-to-action */
.google-review-cta{background:linear-gradient(180deg,#f7f7f6 0%,#ffffff 100%);padding-top:72px!important;padding-bottom:72px!important}
.google-review-card{max-width:850px;margin:0 auto;text-align:center;background:#fff;border:1px solid rgba(23,38,64,.09);border-radius:24px;padding:54px 42px;box-shadow:0 20px 55px rgba(20,30,45,.10)}
.google-review-brand{display:inline-flex;align-items:center;gap:9px;font-size:1.15rem;font-weight:600;color:#3c4043;margin-bottom:22px}
.google-g{font-size:1.7rem;font-weight:700;color:#4285f4;font-family:Arial,sans-serif}
.google-review-card h2{max-width:700px;margin:8px auto 14px}
.google-review-card .reviews-intro{max-width:680px;margin:0 auto;color:#5b6678;line-height:1.75}
.google-review-stars{margin:24px 0 28px;color:#f4aa00;letter-spacing:6px;font-size:1.55rem}
.google-review-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;background:#6e039a;color:#fff!important;text-decoration:none!important;border-radius:999px;padding:15px 28px;font-weight:600;box-shadow:0 10px 25px rgba(110,3,154,.22);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.google-review-button:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(110,3,154,.28);background:#59027d}
@media(max-width:700px){.google-review-cta{padding-top:44px!important;padding-bottom:44px!important}.google-review-card{padding:38px 22px;border-radius:18px}.google-review-stars{font-size:1.3rem;letter-spacing:4px}.google-review-button{width:100%;padding:15px 18px}}

.header-social-links{display:flex;align-items:center;gap:7px;margin-left:auto}.header-social-links a{width:32px;height:32px;border:1px solid rgba(35,19,54,.16);border-radius:50%;display:grid;place-items:center;background:#fff;color:#241535;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.header-social-links a:hover{transform:translateY(-2px);border-color:#7800a8;box-shadow:0 5px 16px rgba(40,0,60,.13)}.header-social-links svg,.header-social-links img{width:17px;height:17px;object-fit:contain}.header-social-links svg{fill:currentColor}.header-social-links svg rect,.header-social-links svg circle{fill:none;stroke:currentColor;stroke-width:2}.header-social-links .social-icon-cut{fill:#fff}.social-letter{font-size:17px;font-weight:800;line-height:1}@media(max-width:900px){.header-social-links{order:3;margin-left:0}.header-social-links a{width:30px;height:30px}}

.price-summary{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);border-radius:14px;padding:14px 16px;color:#fff}.price-summary>div{display:flex;justify-content:space-between;gap:20px;padding:5px 0}.price-summary .total{border-top:1px solid rgba(255,255,255,.25);margin-top:7px;padding-top:11px;font-size:1.08rem}.price-summary .discount,.price-summary .valid{color:#a9f0c8}.price-summary .invalid{color:#ffd0d0}.price-summary small{display:block;margin-top:8px}

/* v22.4.1 header branding, licence and apartment sleeping layout */
.site-header .brand{display:flex!important;align-items:center!important;min-width:180px;min-height:54px}
.site-header .brand>img:first-child{display:block!important;width:190px!important;max-width:28vw;height:auto!important;object-fit:contain}
.site-header .header-license{display:block!important;width:auto!important;height:42px!important;max-width:95px!important;object-fit:contain;margin-left:18px;flex:0 0 auto}
.sleeping-layout{margin:24px 0 10px;padding:18px 20px;border-left:4px solid #7800a8;background:#f7f3f9;line-height:1.7;color:#4d5360;border-radius:0 10px 10px 0}
@media(max-width:900px){.site-header .brand{min-width:0}.site-header .brand>img:first-child{width:145px!important;max-width:40vw}.site-header .header-license{height:30px!important;max-width:65px!important;margin-left:8px}.sleeping-layout{padding:15px 16px}}

/* v22.4.2: four boat experiences and blog/mobile refinements */
.service-grid .service-card[data-trip="dolphin"]{grid-column:auto}.service-grid .service-card{border-radius:18px;overflow:hidden;box-shadow:0 12px 30px rgba(20,30,45,.09)}
@media(max-width:700px){.service-grid{gap:18px}.service-photo{height:235px}.service-copy{padding:24px 20px}.service-copy h3{font-size:25px}.service-copy .button{width:100%;text-align:center}.nav a[href^="blog.php"]{display:block}}

/* v22.4.4 unified public header and blog */
.site-header{position:fixed;display:grid!important;grid-template-columns:210px 1fr auto;align-items:center;min-height:130px;padding:34px 4% 18px!important}
.site-header .brand{grid-column:1;grid-row:1/3;align-self:center;z-index:4}.site-header .brand img{display:block;width:178px;max-width:100%;height:auto}
.header-licence-status{grid-column:2/4;grid-row:1;display:flex;justify-content:center;align-items:center;gap:24px;text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:#5d6475;white-space:nowrap}
.header-licence-status strong{font-weight:600}.header-licence-status span+strong,.header-licence-status strong+span{border-left:1px solid #ddd;padding-left:24px}
.site-header .nav{grid-column:2;grid-row:2;justify-self:center}.site-header .blog-lang{grid-column:3;grid-row:2;justify-self:end}
.header-license{display:none!important}
.blog-hero{margin-top:130px!important;min-height:430px!important;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.88) 34%,rgba(255,255,255,.08) 72%),url('assets/blog/blog-hero.jpg') center/cover!important;text-align:left!important;align-items:flex-start!important;padding:90px 7%!important}
.blog-hero:before{display:none}.blog-hero-copy{max-width:510px}.blog-hero h1{margin:0 0 18px!important;font-size:clamp(42px,5vw,68px)!important}.blog-hero p:not(.eyebrow){font-size:18px;line-height:1.65}
.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important}.blog-card h2{font-family:Inter,Arial,sans-serif!important;font-size:24px!important;font-weight:650!important}.blog-image{min-height:235px!important}.blog-card-copy{padding:1.45rem!important}
@media(max-width:1100px){.site-header{grid-template-columns:180px 1fr auto}.header-licence-status{gap:13px;font-size:8px}.header-licence-status span+strong,.header-licence-status strong+span{padding-left:13px}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:900px){.site-header{display:flex!important;height:96px!important;min-height:96px;padding:0 20px!important}.site-header .brand{display:block}.site-header .brand img{width:145px}.header-licence-status{position:absolute;left:180px;right:65px;top:18px;justify-content:center;gap:8px;font-size:7px;overflow:hidden}.header-licence-status span:first-child,.header-licence-status span:last-child{display:none}.header-licence-status strong{border:0!important;padding:0!important}.blog-hero{margin-top:96px!important;min-height:380px!important;padding:110px 25px 55px!important}.blog-lang{right:62px!important;top:54px!important}.blog-grid{grid-template-columns:1fr!important}}
@media(max-width:520px){.header-licence-status{left:154px;right:58px}.blog-hero{background-position:62% center!important}.blog-hero-copy{background:rgba(255,255,255,.84);padding:24px;border-radius:18px}.blog-card h2{font-size:21px!important}}

/* v22.5 Stable: shared header controls on every page */
.site-header .header-social-links{grid-column:3;grid-row:2;justify-self:end;margin-right:132px;margin-left:12px;z-index:8}
.site-header .language-switcher{grid-column:3;grid-row:2;justify-self:end;position:static!important;margin:0;z-index:9;display:flex;gap:5px}
.site-header .language-switcher button{border:1px solid rgba(35,19,54,.16);background:#fff;border-radius:999px;min-width:36px;height:34px;padding:0 8px;cursor:pointer;color:#241535}
.site-header .language-switcher button.active{border-color:#7800a8;color:#7800a8;font-weight:700}
@media(max-width:1100px) and (min-width:901px){.site-header .header-social-links{margin-right:118px}.site-header .language-switcher button{min-width:32px;padding:0 6px}}
@media(max-width:900px){.site-header .header-social-links{position:absolute;right:184px;top:52px;margin:0;display:flex!important}.site-header .language-switcher{position:absolute!important;right:62px;top:52px;display:flex!important}.site-header .language-switcher button{min-width:31px;height:30px;font-size:10px!important;padding:0 5px!important}}
@media(max-width:620px){.site-header .header-social-links{right:168px;top:54px}.site-header .header-social-links a{width:28px;height:28px}.site-header .language-switcher{right:56px;top:54px}.site-header .language-switcher button{min-width:28px;height:28px}}
/* v22.5.1 reliable header tools */
.site-header .header-tools{grid-column:3;grid-row:2;justify-self:end;display:flex;align-items:center;gap:12px;z-index:30;white-space:nowrap}
.site-header .header-tools .header-social-links{position:static!important;margin:0!important;display:flex!important;align-items:center;gap:7px}
.site-header .header-tools .language-switcher{position:static!important;margin:0!important;display:flex!important;align-items:center;gap:5px}
.site-header .header-tools .header-social-links a{width:34px;height:34px;border:1px solid rgba(35,19,54,.16);border-radius:50%;display:grid;place-items:center;background:#fff;color:#241535;text-decoration:none}
.site-header .header-tools .header-social-links svg,.site-header .header-tools .header-social-links img{width:17px;height:17px;object-fit:contain;fill:currentColor}
.site-header .header-tools .header-social-links svg rect,.site-header .header-tools .header-social-links svg circle{fill:none;stroke:currentColor;stroke-width:2}
.site-header .header-tools .header-social-links .cut{fill:#fff;stroke:none}
.site-header .header-tools .header-social-links span{font-size:15px;font-weight:800;color:inherit}
.site-header .header-tools .language-switcher button{border:1px solid rgba(35,19,54,.16);background:#fff;border-radius:999px;min-width:36px;height:34px;padding:0 8px;cursor:pointer;color:#241535;font-size:12px;font-weight:600}
.site-header .header-tools .language-switcher button.active{border-color:#7800a8;color:#7800a8;font-weight:800}
@media(max-width:1100px) and (min-width:901px){.site-header .header-tools{gap:8px}.site-header .header-tools .language-switcher button{min-width:31px;padding:0 5px}.site-header .header-tools .header-social-links a{width:31px;height:31px}}
@media(max-width:900px){.site-header .header-tools{position:absolute;right:58px;top:50px;display:flex!important;gap:7px}.site-header .header-tools .header-social-links{gap:4px}.site-header .header-tools .header-social-links a{width:28px;height:28px}.site-header .header-tools .language-switcher{gap:2px}.site-header .header-tools .language-switcher button{min-width:28px;height:28px;padding:0 4px;font-size:10px!important}}
@media(max-width:520px){.site-header .header-tools{right:52px;max-width:calc(100vw - 190px)}.site-header .header-tools .header-social-links a{width:26px;height:26px}.site-header .header-tools .language-switcher button{min-width:25px;width:25px;height:26px;padding:0;font-size:9px!important}}
