.ppr-image-protection-notice {
  position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translateX(-50%);
  z-index:2147483647;max-width:calc(100vw - 32px);box-sizing:border-box;padding:13px 22px;
  color:#fff;background:#192d56;border:1px solid #a3bfea;border-radius:999px;
  box-shadow:0 8px 30px rgba(0,0,0,.3);font:600 15px/1.5 var(--pr-body-font,system-ui,sans-serif);
  text-align:center;pointer-events:none;
}
.ppr-image-protection-notice[hidden] {display:none!important;}
/* Photos remain descriptive through alt text, without visible caption overlays. */
body.ppr-page-refined :is(figcaption,.wp-caption-text,.wp-element-caption) {display:none!important;}
/* Keep the native required checkbox behavior, with a clear control and focus ring. */
body.ppr-page-refined #main-content label.form-consent {display:flex!important;align-items:flex-start!important;gap:14px!important;min-height:44px;padding-block:8px;cursor:pointer;}
body.ppr-page-refined #main-content input[type="checkbox"][name="privacy_consent"] {
  appearance:none!important;-webkit-appearance:none!important;box-sizing:border-box;
  display:inline-grid!important;place-content:center;flex:0 0 26px!important;
  width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;
  margin:2px 0 0!important;padding:0!important;border:2px solid #c2d8ff!important;border-radius:5px!important;
  background:#142841!important;box-shadow:0 0 0 1px rgba(194,216,255,.15)!important;cursor:pointer;
}
body.ppr-page-refined #main-content input[type="checkbox"][name="privacy_consent"]:checked {background:#3c6eac!important;border-color:#e2eeff!important;}
body.ppr-page-refined #main-content input[type="checkbox"][name="privacy_consent"]:checked::after {content:"";display:block;width:7px;height:13px;border:solid #fff;border-width:0 3px 3px 0;transform:translateY(-1px) rotate(45deg);}
body.ppr-page-refined #main-content input[type="checkbox"][name="privacy_consent"]:focus-visible {outline:3px solid #e9c987!important;outline-offset:4px;}
/* Static hero: one responsive photograph, no image animation or frame prefetch. */
body.ppr-static-home .hero-media > .ppr-static-home-photo {
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%;
  animation:none!important;transform:none!important;will-change:auto;
}
/* Number and title form one compact line in all six amenities cards. */
body.ppr-page-refined.ppr-refine-amenities .amenities-feature-grid {gap:16px!important;}
body.ppr-page-refined.ppr-refine-amenities .amenities-feature-grid .villa-detail-card {
  display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;gap:12px!important;
  align-content:start!important;align-items:start!important;min-height:0!important;
}
body.ppr-page-refined.ppr-refine-amenities .amenities-feature-grid .feature-icon {
  grid-column:1;grid-row:1;font-size:18px!important;line-height:1.3!important;margin:0!important;color:#bdd5ff!important;
}
body.ppr-page-refined.ppr-refine-amenities #main-content .amenities-feature-grid h3 {
  grid-column:2;grid-row:1;font-family:var(--pr-heading-font)!important;font-size:18px!important;font-weight:600!important;
  line-height:1.3!important;letter-spacing:-.015em!important;margin:0!important;padding:0!important;
  white-space:nowrap!important;text-wrap:nowrap!important;overflow-wrap:normal!important;min-width:0;
}
body.ppr-page-refined.ppr-refine-amenities .amenities-feature-grid p {grid-column:1/-1;margin:0!important;}
body.ppr-page-refined.ppr-refine-amenities .amenities-feature-grid .villa-detail-symbol {display:none!important;}
/* Match the homepage's compact section rhythm in the island guide. */
body.ppr-page-refined.ppr-refine-island main > .section {padding-block:32px!important;}
body.ppr-page-refined.ppr-refine-island :is(.story-grid,.planning-split,.location-card) {gap:24px!important;}
body.ppr-page-refined.ppr-refine-island .section-intro {gap:16px 24px!important;margin-bottom:24px!important;}
body.ppr-page-refined.ppr-refine-island :is(.planning-grid,.island-guide-grid) {gap:16px!important;}
/* Ferry direction controls share the site's glass-blue action style. */
body.ppr-page-refined #ppr-ferry-booking {
  box-sizing:border-box;width:min(calc(100% - var(--ppr-gutter,24px)*2),1180px);padding:32px;
}
body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-direction-tabs {background:transparent;border:0;padding:0;gap:12px;}
body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-direction {
  color:#fff!important;background:radial-gradient(ellipse at 25% 0,rgba(201,225,255,.19),transparent 65%),linear-gradient(135deg,#365f9b,#1a365e)!important;
  border:1px solid #a3bfea!important;border-radius:999px!important;
  box-shadow:inset 0 1px 0 rgba(228,239,255,.16),0 8px 22px rgba(1,10,19,.24)!important;
  min-height:48px;font-size:15px!important;font-weight:600!important;line-height:1.4!important;padding:12px 20px!important;white-space:nowrap;
}
body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-direction.is-active,
body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-direction:hover {
  background:linear-gradient(135deg,#4476b9,#244b80)!important;
  color:#fff!important;border-color:#9bbcf0!important;box-shadow:inset 0 1px 0 rgba(235,245,255,.24),0 0 0 1px rgba(155,188,240,.14)!important;
}
body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-route {padding:22px 20px;min-height:164px;gap:14px;}
body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-route-title {
  display:flex!important;flex-direction:row!important;align-items:center!important;flex-wrap:nowrap!important;gap:6px!important;
  font-size:20px!important;line-height:1.3!important;letter-spacing:-.025em!important;white-space:nowrap!important;overflow-wrap:normal!important;
}
body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-route-title > span {display:inline!important;font-size:inherit!important;white-space:nowrap!important;}
body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-route-direction {display:inline!important;font-size:.8em!important;color:#bdd5ff!important;}
/* Give the top-right direct-booking action a clearly visible glass-blue fill. */
body.ppr-page-refined :is(.ppr-luxe-header a.ppr-luxe-book, .fd-hero .fd-buttons a.ppr-luxe-book) {
  color:#fff!important;background:radial-gradient(ellipse at 25% 0,rgba(201,225,255,.19),transparent 65%),linear-gradient(135deg,#365f9b,#1a365e)!important;
  border:1px solid #a3bfea!important;box-shadow:inset 0 1px rgba(240,248,255,.28),0 6px 20px rgba(1,9,24,.28)!important;
  text-shadow:none!important;font-weight:600!important;
}
body.ppr-page-refined :is(.ppr-luxe-header a.ppr-luxe-book, .fd-hero .fd-buttons a.ppr-luxe-book):hover,
body.ppr-page-refined :is(.ppr-luxe-header a.ppr-luxe-book, .fd-hero .fd-buttons a.ppr-luxe-book):focus-visible {
  color:#fff!important;background:linear-gradient(135deg,#4476b9,#244b80)!important;border-color:#d6e6ff!important;
}
body.ppr-page-refined :is(.ppr-luxe-header a.ppr-luxe-book, .fd-hero .fd-buttons a.ppr-luxe-book) .ppr-luxe-arrow {
  color:#fff!important;border-color:rgba(211,231,255,.7)!important;background:rgba(8,25,52,.28)!important;
}
body.ppr-page-refined.ppr-refine-location #main-content [aria-labelledby="pier-transfer-title"] h3 {font-size:26px!important;line-height:1.3!important;}
body.ppr-page-refined.ppr-refine-location #main-content [aria-labelledby="pier-transfer-title"] .island-guide-grid {grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px!important;}
@media(max-width:1068px) {
  body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-routes {grid-template-columns:1fr!important;}
  body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-route {min-height:112px;}
}
@media(max-width:960px) {
  body.ppr-page-refined.ppr-refine-location #main-content [aria-labelledby="pier-transfer-title"] .island-guide-grid {grid-template-columns:1fr!important;}
  body.ppr-static-home .hero {display:flex!important;flex-direction:column!important;align-items:stretch!important;padding-top:84px!important;min-height:0!important;}
  body.ppr-static-home .hero::before {display:none!important;}
  body.ppr-static-home .hero .hero-media {order:2;position:relative!important;inset:auto!important;width:calc(100% - 32px)!important;height:clamp(280px,92vw,480px)!important;margin:0 16px!important;border-radius:20px!important;overflow:hidden;opacity:1!important;}
  body.ppr-static-home .hero .hero-inner {display:contents!important;}
  body.ppr-static-home .hero .hero-copy {order:1;box-sizing:border-box;width:calc(100% - 32px)!important;max-width:none!important;margin:0 16px!important;padding-block:28px!important;}
  body.ppr-static-home .hero .hero-stats {order:3;align-self:center;width:calc(100% - 32px)!important;max-width:none!important;margin:24px 16px 36px!important;}
  body.ppr-page-refined.ppr-refine-island main > .section {padding-block:24px!important;}
}
@media(max-width:600px) {
  body.ppr-page-refined #ppr-ferry-booking {padding:22px 16px;}
  body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-direction-tabs {grid-template-columns:1fr!important;}
  body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-route-title {font-size:18px!important;}
  body.ppr-page-refined.ppr-refine-amenities #main-content .amenities-feature-grid h3 {font-size:17px!important;}
}
@media(max-width:360px) {
  body.ppr-page-refined.ppr-refine-amenities .amenities-feature-grid {gap:12px!important;}
  body.ppr-page-refined.ppr-refine-amenities .amenities-feature-grid .villa-detail-card {grid-template-columns:24px minmax(0,1fr)!important;gap:8px!important;}
  body.ppr-page-refined.ppr-refine-amenities #main-content .amenities-feature-grid h3 {font-size:16px!important;}
  body.ppr-page-refined #ppr-ferry-booking .ppr-ferry-route-title {font-size:17px!important;}
}

/* Use a compact title row for the numbered cards across the public pages. */
body.ppr-page-refined #main-content .villa-options-grid h3 {
  font-size:26px!important;line-height:1.25!important;letter-spacing:-.015em!important;
  max-width:none!important;text-wrap:balance!important;margin-bottom:14px!important;
}
body.ppr-page-refined #main-content :is(.villa-detail-card, .fd-drink-grid > article, [aria-labelledby="recommended-arrival"] .planning-card, [aria-labelledby="arrival-routes"] .planning-card, [aria-labelledby="event-calendar-title"] .planning-card) {
  display:grid!important;grid-template-columns:var(--ppr-title-number,28px) minmax(0,1fr)!important;
  grid-template-rows:auto!important;grid-auto-rows:auto!important;
  gap:14px var(--ppr-title-gap,10px)!important;align-content:start!important;align-items:start!important;min-height:0!important;padding:24px!important;
}
body.ppr-page-refined.pr-public-site #main-content .fd-drink-grid > article {padding:0!important;}
body.ppr-page-refined #main-content :is(.villa-detail-card, .fd-drink-grid > article, [aria-labelledby="recommended-arrival"] .planning-card, [aria-labelledby="arrival-routes"] .planning-card, [aria-labelledby="event-calendar-title"] .planning-card) > :is(.feature-icon,.hero-stat-number,.planning-number,.fd-number) {
  grid-column:1;grid-row:1;font-size:18px!important;line-height:1.3!important;margin:0!important;padding:0!important;color:#bdd5ff!important;
}
body.ppr-page-refined #main-content :is(.villa-detail-card, .fd-drink-grid > article, [aria-labelledby="recommended-arrival"] .planning-card, [aria-labelledby="arrival-routes"] .planning-card, [aria-labelledby="event-calendar-title"] .planning-card) > h3 {
  grid-column:2;grid-row:1;min-width:0;min-height:0!important;height:auto!important;max-width:none!important;
  font-size:18px!important;line-height:1.3!important;letter-spacing:-.015em!important;
  margin:0!important;padding:0!important;white-space:nowrap!important;text-wrap:nowrap!important;
}
body.ppr-page-refined #main-content :is(.villa-detail-card, .fd-drink-grid > article, [aria-labelledby="recommended-arrival"] .planning-card, [aria-labelledby="arrival-routes"] .planning-card, [aria-labelledby="event-calendar-title"] .planning-card) > p {
  grid-column:1/-1;grid-row:auto!important;margin:0!important;
}
body.ppr-page-refined #main-content :is([aria-labelledby="recommended-arrival"], [aria-labelledby="arrival-routes"], [aria-labelledby="event-calendar-title"]) .planning-card > :is(a,.button-row) {grid-column:1/-1;}
body.ppr-page-refined #main-content .villa-detail-card > .villa-detail-symbol {display:none!important;}
/* Give the full questions room to remain readable on a single line. */
body.ppr-page-refined #main-content .pr-location-faq-grid {grid-template-columns:1fr!important;gap:20px!important;}
body.ppr-page-refined #main-content .pr-location-faq-item h3 {font-size:20px!important;line-height:1.3!important;margin:0 0 10px!important;white-space:nowrap!important;text-wrap:nowrap!important;}
body.ppr-page-refined #main-content .pr-location-faq-item p {max-width:850px;}
@media(max-width:1068px) {
  body.ppr-page-refined #main-content :is(.villa-detail-grid,.fd-drink-grid) {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:760px) {
  body.ppr-page-refined #main-content :is(.villa-detail-grid,.fd-drink-grid) {grid-template-columns:1fr!important;}
  body.ppr-page-refined #main-content :is(.villa-detail-card, [aria-labelledby="recommended-arrival"] .planning-card, [aria-labelledby="arrival-routes"] .planning-card, [aria-labelledby="event-calendar-title"] .planning-card) {padding:18px!important;}
}
@media(max-width:600px) {
  body.ppr-page-refined #main-content .villa-options-grid h3 {font-size:22px!important;}
  body.ppr-page-refined #main-content .villa-options-grid > .planning-card {padding:18px!important;}
  body.ppr-page-refined #main-content :is(.villa-detail-card, .fd-drink-grid > article, [aria-labelledby="recommended-arrival"] .planning-card, [aria-labelledby="arrival-routes"] .planning-card, [aria-labelledby="event-calendar-title"] .planning-card) > h3 {font-size:16px!important;}
  body.ppr-page-refined #main-content .pr-location-faq-item h3 {font-size:14px!important;}
}
@media(max-width:360px) {
  body.ppr-page-refined #main-content .villa-options-grid h3 {font-size:20px!important;}
  body.ppr-page-refined {--ppr-title-number:22px;--ppr-title-gap:8px;}
  body.ppr-page-refined #main-content .pr-location-faq-item h3 {font-size:12px!important;}
}


/* Use the shared booking action style for the two food-delivery hero actions. */
body.ppr-refine-food .fd-hero .fd-buttons a.ppr-luxe-book { white-space:nowrap; }
body.ppr-refine-food .fd-hero .fd-buttons a.fd-primary::before {
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 7h14l1 14H4L5 7Z'/%3E%3Cpath d='M8 8V6a4 4 0 0 1 8 0v2'/%3E%3C/svg%3E") center/contain no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 7h14l1 14H4L5 7Z'/%3E%3Cpath d='M8 8V6a4 4 0 0 1 8 0v2'/%3E%3C/svg%3E") center/contain no-repeat!important;
}
body.ppr-refine-food .fd-hero .fd-buttons a.fd-secondary::before {
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Cpath d='M9 6h12M9 12h12M9 18h12M3 6h1M3 12h1M3 18h1'/%3E%3C/svg%3E") center/contain no-repeat!important;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Cpath d='M9 6h12M9 12h12M9 18h12M3 6h1M3 12h1M3 18h1'/%3E%3C/svg%3E") center/contain no-repeat!important;
}
/* Preserve both faces and the handover instead of cropping the wide image to portrait. */
body.ppr-refine-food .fd-hero-photo {height:auto!important;aspect-ratio:auto!important;border-radius:24px!important;}
body.ppr-refine-food .fd-hero-photo img {display:block;height:auto!important;aspect-ratio:1672/941;object-fit:contain!important;}
body.ppr-refine-food .fd-hero-photo::after {display:none!important;}
body.ppr-refine-food .fd-hero-photo figcaption {position:static!important;padding:12px 18px;background:#12213e;font-family:var(--pr-body-font)!important;font-size:14px!important;}
@media(min-width:961px) {body.ppr-refine-food .fd-hero-grid {grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:32px!important;}}
@media(max-width:600px) {body.ppr-refine-food .fd-hero .fd-buttons {flex-direction:column;align-items:stretch;}body.ppr-refine-food .fd-hero .fd-buttons a.ppr-luxe-book {width:100%;}}
