.isola-page,.isola-news-archive,.isola-single{padding-top:var(--header-h)}
.isola-page-hero{position:relative;overflow:hidden;padding:102px 0 94px;background:var(--paper)}.isola-page-hero__inner{position:relative;z-index:2}.isola-page-hero h1{max-width:900px;margin:0;font-size:clamp(48px,7vw,88px);font-weight:400;line-height:1.08;letter-spacing:.005em}.isola-page-hero__lead{max-width:620px;margin:30px 0 0;font-size:14px;line-height:2.15}.isola-page-hero--image{min-height:66vh;display:flex;align-items:flex-end;padding:100px 0 76px;color:#fff;background-image:var(--page-hero);background-size:cover;background-position:center}.isola-page-hero__shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(12,22,19,.62),rgba(12,22,19,.12) 70%,rgba(12,22,19,.18))}.isola-page-hero--image .isola-breadcrumbs{opacity:.75}
.isola-page-content{padding:110px 0 150px}.isola-page-content h2,.isola-entry h2{margin:2.8em 0 1em;font-size:clamp(28px,3.3vw,38px);font-weight:400;line-height:1.55;letter-spacing:.03em}.isola-page-content h3,.isola-entry h3{margin:2.3em 0 .9em;font-size:22px;font-weight:400;line-height:1.6}.isola-page-content h4,.isola-entry h4{margin:2em 0 .7em;font-size:17px;font-weight:400}.isola-page-content table{width:100%;border-collapse:collapse;margin:36px 0 70px;border-top:1px solid var(--line)}.isola-page-content th,.isola-page-content td{padding:21px 12px;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}.isola-page-content th{width:28%;font-weight:400;font-size:13px}.isola-page-content iframe{max-width:100%}.isola-page-content .wp-block-image{margin:52px 0}.isola-page-content .wp-block-columns{gap:42px;margin-top:52px;margin-bottom:52px}.isola-page-content .wp-block-button__link{border-radius:0!important;padding:15px 30px!important;background:var(--ink)!important;color:#fff!important;font-family:var(--sans);font-size:10px;letter-spacing:.15em}.isola-page-content input:not([type=checkbox]):not([type=radio]):not([type=submit]),.isola-page-content textarea,.isola-page-content select{width:100%;max-width:100%;padding:14px 12px;border:0;border-bottom:1px solid rgba(45,48,47,.32);border-radius:0;background:transparent;color:var(--ink)}.isola-page-content textarea{min-height:160px}.isola-page-content input[type=submit],.isola-page-content button[type=submit]{appearance:none;border:1px solid var(--ink);border-radius:0;padding:14px 28px;background:transparent;color:var(--ink);font-family:var(--sans);font-size:10px;letter-spacing:.16em;cursor:pointer;transition:.25s}.isola-page-content input[type=submit]:hover,.isola-page-content button[type=submit]:hover{background:var(--ink);color:#fff}.wpcf7-form p{margin-bottom:28px}.wpcf7-spinner{vertical-align:middle}.isola-404{padding:150px 0}.isola-404 h1{font-size:60px;font-weight:400}
@media(max-width:767px){.isola-page-hero{padding:70px 0 64px}.isola-page-hero h1{font-size:43px}.isola-page-hero__lead{margin-top:22px;font-size:13px}.isola-page-hero--image{min-height:58vh;padding:72px 0 52px}.isola-page-content{padding:72px 0 104px}.isola-page-content h2,.isola-entry h2{font-size:28px}.isola-page-content th,.isola-page-content td{display:block;width:100%;padding:10px 0}.isola-page-content th{padding-top:24px;border-bottom:0;font-size:11px;color:var(--muted)}.isola-page-content .wp-block-columns{gap:24px;margin-top:36px;margin-bottom:36px}}

/* ==========================================================
   beta.5 — long-form / property pages
========================================================== */
.isola-breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:0 0 36px;font-family:var(--sans);font-size:9px;line-height:1.5;letter-spacing:.13em;text-transform:uppercase}.isola-breadcrumbs a{opacity:.72}.isola-breadcrumbs a:hover{opacity:1}.isola-breadcrumbs span[aria-current="page"]{opacity:.52;max-width:48ch;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.isola-entry>:first-child{margin-top:0}.isola-entry p{margin:0 0 1.55em}.isola-entry ul,.isola-entry ol{margin:1.6em 0;padding-left:1.35em}.isola-entry li+li{margin-top:.55em}.isola-entry hr{border:0;border-top:1px solid var(--line);margin:76px 0}.isola-entry blockquote{margin:64px 0;padding:4px 0 4px 34px;border-left:1px solid var(--ink);font-size:20px;line-height:1.9}.isola-entry figcaption{margin-top:10px;font-family:var(--sans);font-size:9px;line-height:1.7;letter-spacing:.08em;color:var(--muted)}.isola-entry iframe[src*="google.com/maps"],.isola-entry iframe[src*="maps.google"]{width:100%!important;height:auto!important;aspect-ratio:16/8;border:0!important}.isola-entry .wp-block-gallery{gap:12px}.isola-entry .wp-block-gallery img{height:100%!important;object-fit:cover}.isola-entry .wp-block-separator{border-color:var(--line)}
.isola-parent-about .isola-page-content{background:#fff}.isola-parent-about .isola-page-hero h1{text-transform:none}.isola-parent-about .isola-entry{width:min(100%,900px);margin-inline:auto}.isola-parent-about .isola-entry h2{margin-top:3.4em;padding-top:18px;border-top:1px solid var(--line)}.isola-parent-about .isola-entry h2:first-child{margin-top:0}.isola-parent-about .isola-entry h6{margin:10px 0 30px;font-size:12px;font-weight:400;letter-spacing:.08em;color:var(--muted)}
.isola-page--company .isola-entry table{font-size:14px}.isola-page--company .isola-entry h3{padding-bottom:12px;border-bottom:1px solid var(--line);font-family:var(--sans);font-size:11px;letter-spacing:.18em}.isola-page--contact .isola-shell--content,.isola-page--reservation .isola-shell--content{width:min(820px,calc(100% - 80px))}.isola-page--contact .isola-entry,.isola-page--reservation .isola-entry{padding:54px 56px;background:var(--paper)}
@media(max-width:767px){.isola-breadcrumbs{margin-bottom:26px;gap:7px;font-size:8px}.isola-entry hr{margin:52px 0}.isola-entry blockquote{margin:44px 0;padding-left:20px;font-size:17px}.isola-entry iframe[src*="google.com/maps"],.isola-entry iframe[src*="maps.google"]{aspect-ratio:4/3}.isola-parent-about .isola-entry h2{margin-top:2.8em}.isola-page--contact .isola-shell--content,.isola-page--reservation .isola-shell--content{width:calc(100% - 40px)}.isola-page--contact .isola-entry,.isola-page--reservation .isola-entry{padding:34px 20px}}

/* ==========================================================
   beta.6 — property template / long page finish
========================================================== */
.isola-page-hero--property .isola-page-hero__inner{padding-right:min(12vw,150px)}
.isola-page-hero__location{margin:24px 0 0;padding-top:18px;border-top:1px solid currentColor;max-width:360px;font-size:12px;line-height:1.6;letter-spacing:.08em;opacity:.82}
.isola-property-page .isola-page-content{padding-bottom:118px}
.isola-property-page .isola-entry>.wp-block-image.alignwide,.isola-property-page .isola-entry>.wp-block-gallery.alignwide{width:min(1120px,calc(100vw - 80px));max-width:none;margin-left:50%;transform:translateX(-50%)}
.isola-property-page .isola-entry>.wp-block-image.alignfull,.isola-property-page .isola-entry>.wp-block-gallery.alignfull{width:100vw;max-width:none;margin-left:50%;transform:translateX(-50%)}
.isola-property-related{padding:110px 0 130px;background:var(--paper)}
.isola-property-related__head{display:grid;grid-template-columns:1fr minmax(260px,380px);gap:70px;align-items:end;margin-bottom:52px}
.isola-property-related__head h2{margin:0;font-size:clamp(36px,4.6vw,58px);font-weight:400;line-height:1.18}
.isola-property-related__head>p{margin:0;font-size:13px;line-height:2}
.isola-property-related__list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.isola-property-related__card{display:block;background:#fff}
.isola-property-related__card figure{aspect-ratio:4/3;background:#c7cbc5;background-image:var(--related-image);background-size:cover;background-position:center;overflow:hidden;transition:filter .3s ease,transform .45s cubic-bezier(.2,.65,.3,1)}
.isola-property-related__card:hover figure{filter:brightness(.94)}
.isola-property-related__card>div{display:grid;grid-template-columns:1fr auto;gap:8px 18px;padding:22px 22px 24px;border-top:1px solid var(--line)}
.isola-property-related__card span{grid-column:1/3;font-family:var(--sans);font-size:8px;letter-spacing:.15em;color:var(--muted)}
.isola-property-related__card strong{font-size:18px;font-weight:400;line-height:1.55}
.isola-property-related__card i{font-style:normal;align-self:center}
@media(max-width:767px){
  .isola-page-hero--property .isola-page-hero__inner{padding-right:0}
  .isola-page-hero--property{min-height:54vh}
  .isola-page-hero__location{margin-top:18px;padding-top:14px;font-size:11px}
  .isola-property-page .isola-page-content{padding-bottom:78px}
  .isola-property-page .isola-entry>.wp-block-image.alignwide,.isola-property-page .isola-entry>.wp-block-gallery.alignwide{width:100vw;margin-left:50%}
  .isola-property-related{padding:76px 0 90px}
  .isola-property-related__head{grid-template-columns:1fr;gap:16px;margin-bottom:34px}
  .isola-property-related__head h2{font-size:34px}
  .isola-property-related__head>p{font-size:12.5px}
  .isola-property-related__list{grid-template-columns:1fr;gap:18px}
  .isola-property-related__card{display:grid;grid-template-columns:42% 1fr;min-height:132px}
  .isola-property-related__card figure{aspect-ratio:auto;min-height:132px}
  .isola-property-related__card>div{grid-template-columns:1fr auto;align-content:center;padding:16px}
  .isola-property-related__card strong{font-size:16px}
}

/* ==========================================================
   beta.114 — KOURI mobile header-to-FV connection
   Cancel the shared subpage top offset only on KOURI.
========================================================== */
@media(max-width:767px){
  body:not(.home) main#top.isola-page--kouri-2{
    margin-top:0 !important;
    padding-top:0 !important;
  }
}

/* ==========================================================
   beta.112 — KOURI reservation container safety
   The KOURI body is authored as Custom HTML. Keep its bottom
   reservation CTA inside a reliable viewport-safe container.
========================================================== */
body:not(.home) main#top.isola-page--kouri-2 .isola-destination-reservation__inner{
  width:min(1180px,calc(100% - 80px)) !important;
  max-width:1180px !important;
  margin-right:auto !important;
  margin-left:auto !important;
  padding-right:0 !important;
  padding-left:0 !important;
  box-sizing:border-box !important;
}

/* ==========================================================
   beta.113 — KOURI FV / GALLERY vertical spacing
   Reduce only the excessive desktop space before GALLERY.
========================================================== */
@media(min-width:768px){
  body:not(.home) main#top.isola-page--kouri-2 #isola-kouri-v1 .ikv-gallery{
    padding-top:clamp(64px,6vw,96px) !important;
  }
}
@media(max-width:767px){
  body:not(.home) main#top.isola-page--kouri-2 .isola-destination-reservation__inner{
    width:calc(100% - 40px) !important;
    max-width:none !important;
  }
}

/* ==========================================================
   beta.107 — destination reservation to footer flow
========================================================== */
.isola-destination-reservation{
  margin:0;
  padding:118px 0 112px;
  background:#27322d;
  color:#ece9e1;
}
.isola-destination-reservation__inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,380px);
  gap:70px;
  align-items:end;
}
.isola-destination-reservation__label{
  margin:0 0 20px;
  font-family:var(--sans);
  font-size:9px;
  line-height:1.5;
  letter-spacing:.26em;
}
.isola-destination-reservation h2{
  max-width:720px;
  margin:0 0 22px;
  color:inherit;
  font-size:clamp(42px,5.5vw,72px);
  font-weight:400;
  line-height:1.08;
}
.isola-destination-reservation__copy>p:last-child{
  margin:0;
  color:rgba(236,233,225,.72);
  font-size:13px;
  line-height:2;
}
.isola-destination-reservation__link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px 0;
  border-top:1px solid rgba(255,255,255,.2);
  border-bottom:1px solid rgba(255,255,255,.62);
  font-family:var(--sans);
  font-size:10px;
  letter-spacing:.2em;
}
.isola-destination-reservation__link i{
  font-size:17px;
  font-style:normal;
  transition:transform .25s ease;
}
.isola-destination-reservation__link:hover i{transform:translateX(5px)}
@media(max-width:767px){
  .isola-destination-reservation{
    padding:84px 0 78px;
  }
  .isola-destination-reservation__inner{
    grid-template-columns:1fr;
    gap:42px;
  }
  .isola-destination-reservation h2{
    max-width:310px;
    font-size:42px;
  }
  .isola-destination-reservation__copy>p:last-child{
    font-size:12px;
  }
}


/* ==========================================================
   beta.37 — subpage hero spacing
========================================================== */
@media(max-width:767px){
  .isola-page,
  .isola-news-archive,
  .isola-single{
    padding-top:70px !important;
  }

  .isola-page-hero{
    padding:54px 0 58px !important;
  }

  .isola-page-hero .isola-breadcrumbs{
    margin-bottom:22px;
  }

  .isola-page-hero h1{
    font-size:clamp(42px,13vw,58px);
    line-height:1.02;
  }

  .isola-page-hero__lead{
    margin-top:22px;
    font-size:13px;
    line-height:2;
  }
}


/* ==========================================================
   beta.40 — unified subpage title system
   Quiet, compact, consistent across all child pages.
========================================================== */
.isola-page-hero{
  padding:86px 0 80px !important;
  background:#f7f5f0;
}

.isola-page-hero__inner{
  max-width:none;
}

.isola-page-hero .isola-breadcrumbs{
  margin-bottom:32px;
}

.isola-page-hero .isola-eyebrow{
  margin:0 0 18px;
  font-family:var(--sans);
  font-size:9px;
  line-height:1;
  letter-spacing:.24em;
  color:var(--muted);
}

.isola-page-hero h1{
  max-width:780px;
  margin:0;
  font-size:clamp(48px,5.8vw,70px) !important;
  font-weight:400;
  line-height:1.02 !important;
  letter-spacing:.01em;
}

.isola-page-hero__subtitle{
  margin:16px 0 0;
  font-family:var(--sans);
  font-size:11px;
  line-height:1.5;
  letter-spacing:.12em;
  color:var(--muted);
}

.isola-page-hero__lead{
  max-width:660px;
  margin:28px 0 0 !important;
  font-size:13.5px !important;
  line-height:2 !important;
}

/* Image/property pages keep imagery, but use the same title scale. */
.isola-page-hero--image{
  min-height:60vh;
  padding:88px 0 70px !important;
}

.isola-page-hero--image .isola-page-hero__subtitle,
.isola-page-hero--image .isola-page-hero__lead,
.isola-page-hero--image .isola-eyebrow{
  color:inherit;
}

/* Content begins sooner; avoid the large dead zone below the title. */
.isola-page-content{
  padding-top:86px;
}

/* NEWS archive follows the same system. */
.isola-news-archive .isola-page-hero{
  padding:86px 0 80px !important;
}

/* Single NEWS article: restrained title size too. */
.isola-single__head h1{
  font-size:clamp(38px,5.2vw,62px);
  line-height:1.12;
  font-weight:400;
}

@media(max-width:767px){
  .isola-page,
  .isola-news-archive,
  .isola-single{
    padding-top:70px !important;
  }

  .isola-page-hero,
  .isola-news-archive .isola-page-hero{
    padding:46px 0 54px !important;
  }

  .isola-page-hero .isola-breadcrumbs{
    margin-bottom:24px;
  }

  .isola-page-hero .isola-eyebrow{
    margin-bottom:15px;
    font-size:8.5px;
  }

  .isola-page-hero h1{
    max-width:100%;
    font-size:clamp(40px,11.5vw,50px) !important;
    line-height:1.04 !important;
    overflow-wrap:anywhere;
  }

  .isola-page-hero__subtitle{
    margin-top:12px;
    font-size:10px;
    letter-spacing:.1em;
  }

  .isola-page-hero__lead{
    max-width:34em;
    margin-top:22px !important;
    font-size:12.5px !important;
    line-height:1.95 !important;
  }

  .isola-page-hero--image{
    min-height:52vh;
    padding:56px 0 48px !important;
  }

  .isola-page-content{
    padding-top:64px;
  }

  .isola-single__head h1{
    font-size:36px;
    line-height:1.16;
  }
}


/* ==========================================================
   beta.41 — HARD OVERRIDE child-page title scale
   This block intentionally comes last and uses stronger selectors
   because older page CSS was overriding beta.40.
========================================================== */
body:not(.home) main .isola-page-hero,
body:not(.home) .isola-page .isola-page-hero,
body:not(.home) .isola-news-archive .isola-page-hero{
  min-height:0 !important;
  height:auto !important;
  padding:44px 0 48px !important;
  margin:0 !important;
}

body:not(.home) main .isola-page-hero .isola-shell,
body:not(.home) .isola-page .isola-page-hero .isola-shell{
  width:calc(100% - 64px) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body:not(.home) main .isola-page-hero .isola-breadcrumbs{
  margin:0 0 20px !important;
  font-size:9px !important;
  line-height:1.4 !important;
}

body:not(.home) main .isola-page-hero .isola-eyebrow{
  margin:0 0 12px !important;
  font-size:9px !important;
  line-height:1 !important;
  letter-spacing:.24em !important;
}

body:not(.home) main .isola-page-hero h1,
body:not(.home) .isola-page .isola-page-hero h1,
body:not(.home) .isola-news-archive .isola-page-hero h1{
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  font-size:clamp(42px,5vw,62px) !important;
  line-height:1.02 !important;
  letter-spacing:.005em !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}

body:not(.home) main .isola-page-hero__subtitle{
  margin:10px 0 0 !important;
  font-size:10px !important;
  line-height:1.5 !important;
  letter-spacing:.12em !important;
}

body:not(.home) main .isola-page-hero__lead{
  max-width:640px !important;
  margin:20px 0 0 !important;
  font-size:13px !important;
  line-height:1.9 !important;
}

body:not(.home) main .isola-page-content{
  padding-top:52px !important;
}

@media(max-width:767px){
  body:not(.home) main .isola-page-hero,
  body:not(.home) .isola-page .isola-page-hero,
  body:not(.home) .isola-news-archive .isola-page-hero{
    padding:38px 0 42px !important;
  }

  body:not(.home) main .isola-page-hero .isola-shell,
  body:not(.home) .isola-page .isola-page-hero .isola-shell{
    width:calc(100% - 64px) !important;
  }

  body:not(.home) main .isola-page-hero .isola-breadcrumbs{
    margin-bottom:18px !important;
    font-size:8px !important;
  }

  body:not(.home) main .isola-page-hero .isola-eyebrow{
    margin-bottom:11px !important;
    font-size:8px !important;
  }

  body:not(.home) main .isola-page-hero h1,
  body:not(.home) .isola-page .isola-page-hero h1,
  body:not(.home) .isola-news-archive .isola-page-hero h1{
    font-size:clamp(36px,10vw,44px) !important;
    line-height:1.04 !important;
  }

  body:not(.home) main .isola-page-hero__subtitle{
    margin-top:9px !important;
    font-size:9px !important;
  }

  body:not(.home) main .isola-page-hero__lead{
    margin-top:18px !important;
    font-size:12px !important;
    line-height:1.85 !important;
  }

  body:not(.home) main .isola-page-content{
    padding-top:44px !important;
  }
}

/* Reduce the first in-page section headline so it no longer competes with page title. */
@media(max-width:767px){
  body:not(.home) .isola-page-content .isola-display,
  body:not(.home) .isola-page-content h2.isola-display{
    font-size:clamp(34px,9vw,44px) !important;
    line-height:1.06 !important;
  }
}


/* ==========================================================
   beta.42 — clearly smaller child-page title system
   User reported beta.41 still looked unchanged, so this block
   intentionally makes the difference obvious.
========================================================== */
body:not(.home) .isola-page-hero{
  min-height:0 !important;
  height:auto !important;
  padding:42px 0 46px !important;
  background:#f7f5f0 !important;
}

body:not(.home) .isola-page-hero .isola-shell{
  width:min(1180px, calc(100% - 64px)) !important;
}

body:not(.home) .isola-page-hero .isola-breadcrumbs{
  margin:0 0 14px !important;
  font-size:8px !important;
  line-height:1.4 !important;
}

body:not(.home) .isola-page-hero .isola-eyebrow{
  margin:0 0 10px !important;
  font-size:8px !important;
  line-height:1 !important;
  letter-spacing:.22em !important;
}

body:not(.home) .isola-page-hero h1{
  max-width:100% !important;
  margin:0 !important;
  font-size:clamp(40px, 4.5vw, 56px) !important;
  line-height:1.03 !important;
  letter-spacing:0 !important;
}

body:not(.home) .isola-page-hero__subtitle{
  margin:10px 0 0 !important;
  font-size:10px !important;
  line-height:1.5 !important;
}

body:not(.home) .isola-page-hero__lead{
  max-width:42em !important;
  margin:16px 0 0 !important;
  font-size:12px !important;
  line-height:1.85 !important;
}

body:not(.home) .isola-page-content{
  padding-top:42px !important;
}

/* First section headline below the hero should also be quieter. */
body:not(.home) .isola-page-content .isola-display,
body:not(.home) .isola-page-content h2.isola-display{
  font-size:clamp(34px, 4vw, 48px) !important;
  line-height:1.08 !important;
}

@media (max-width: 767px){
  body:not(.home) .isola-page,
  body:not(.home) .isola-news-archive,
  body:not(.home) .isola-single{
    padding-top:70px !important;
  }

  body:not(.home) .isola-page-hero,
  body:not(.home) .isola-news-archive .isola-page-hero{
    padding:28px 0 34px !important;
  }

  body:not(.home) .isola-page-hero .isola-shell{
    width:calc(100% - 32px) !important;
  }

  body:not(.home) .isola-page-hero .isola-breadcrumbs{
    margin:0 0 10px !important;
    font-size:7px !important;
    letter-spacing:.12em !important;
  }

  body:not(.home) .isola-page-hero .isola-eyebrow{
    margin:0 0 8px !important;
    font-size:7px !important;
    letter-spacing:.20em !important;
  }

  body:not(.home) .isola-page-hero h1{
    font-size:32px !important;
    line-height:1.04 !important;
    letter-spacing:0 !important;
  }

  body:not(.home) .isola-page-hero__subtitle{
    margin-top:8px !important;
    font-size:8.5px !important;
    line-height:1.5 !important;
  }

  body:not(.home) .isola-page-hero__lead{
    margin-top:14px !important;
    font-size:11px !important;
    line-height:1.8 !important;
  }

  body:not(.home) .isola-page-content{
    padding-top:34px !important;
  }

  body:not(.home) .isola-page-content .isola-display,
  body:not(.home) .isola-page-content h2.isola-display{
    font-size:30px !important;
    line-height:1.08 !important;
  }
}


/* ==========================================================
   beta.43 — NEW COMPACT SUBPAGE HEADER
   Structural redesign: no duplicated English eyebrow.
========================================================== */
body:not(.home) .isola-page-hero{
  min-height:0 !important;
  height:auto !important;
  padding:38px 0 42px !important;
  background:#f7f5f0 !important;
}

body:not(.home) .isola-page-hero .isola-shell{
  width:min(1180px, calc(100% - 64px)) !important;
}

body:not(.home) .isola-page-hero .isola-breadcrumbs{
  margin:0 0 20px !important;
  font-size:8px !important;
  letter-spacing:.13em !important;
}

body:not(.home) .isola-page-titlebar{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:28px !important;
  padding:0 0 16px !important;
  border-bottom:1px solid rgba(45,48,47,.18) !important;
}

body:not(.home) .isola-page-titlebar h1{
  margin:0 !important;
  padding:0 !important;
  max-width:none !important;
  font-size:42px !important;
  line-height:1 !important;
  font-weight:400 !important;
  letter-spacing:.01em !important;
}

body:not(.home) .isola-page-titlebar .isola-page-hero__subtitle{
  flex:0 0 auto !important;
  margin:0 0 2px !important;
  font-family:var(--sans) !important;
  font-size:10px !important;
  line-height:1.4 !important;
  letter-spacing:.12em !important;
  color:var(--muted) !important;
  white-space:nowrap !important;
}

body:not(.home) .isola-page-hero__lead{
  max-width:640px !important;
  margin:22px 0 0 !important;
  font-size:12px !important;
  line-height:1.9 !important;
}

body:not(.home) .isola-page-content{
  padding-top:44px !important;
}

@media(max-width:767px){
  body:not(.home) .isola-page-hero{
    padding:22px 0 26px !important;
  }

  body:not(.home) .isola-page-hero .isola-shell{
    width:calc(100% - 32px) !important;
  }

  body:not(.home) .isola-page-hero .isola-breadcrumbs{
    margin-bottom:14px !important;
    font-size:7px !important;
  }

  body:not(.home) .isola-page-titlebar{
    align-items:flex-end !important;
    gap:14px !important;
    padding-bottom:12px !important;
  }

  body:not(.home) .isola-page-titlebar h1{
    font-size:28px !important;
    line-height:1 !important;
  }

  body:not(.home) .isola-page-titlebar .isola-page-hero__subtitle{
    margin-bottom:1px !important;
    font-size:8px !important;
    letter-spacing:.08em !important;
  }

  body:not(.home) .isola-page-hero__lead{
    margin-top:16px !important;
    font-size:11px !important;
    line-height:1.8 !important;
  }

  body:not(.home) .isola-page-content{
    padding-top:32px !important;
  }

  /* Reduce duplicate-looking first content headline */
  body:not(.home) .isola-page-content .isola-display,
  body:not(.home) .isola-page-content h2.isola-display{
    font-size:28px !important;
    line-height:1.08 !important;
  }
}


/* ==========================================================
   beta.44 — COMPACT EDITORIAL SUBPAGE HEADER
   A real design change, not another size tweak.
========================================================== */
body:not(.home) .isola-page-hero{
  min-height:0 !important;
  height:auto !important;
  padding:34px 0 36px !important;
  background:#f7f5f0 !important;
}

body:not(.home) .isola-page-hero .isola-shell{
  width:min(1180px, calc(100% - 64px)) !important;
}

body:not(.home) .isola-page-hero .isola-breadcrumbs{
  margin:0 0 22px !important;
  font-size:8px !important;
  letter-spacing:.13em !important;
}

body:not(.home) .isola-page-titlebar--compact{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  align-items:end !important;
  gap:28px !important;
  padding:0 0 18px !important;
  border-bottom:1px solid rgba(45,48,47,.20) !important;
}

body:not(.home) .isola-page-titlebar__main{
  display:block !important;
}

body:not(.home) .isola-page-titlebar__label{
  margin:0 0 8px !important;
  font-family:var(--sans) !important;
  font-size:8px !important;
  line-height:1 !important;
  letter-spacing:.24em !important;
  color:var(--muted) !important;
}

body:not(.home) .isola-page-titlebar--compact h1{
  margin:0 !important;
  padding:0 !important;
  max-width:none !important;
  font-size:34px !important;
  line-height:1 !important;
  font-weight:400 !important;
  letter-spacing:.035em !important;
}

body:not(.home) .isola-page-titlebar--compact .isola-page-hero__subtitle{
  margin:0 0 2px !important;
  font-family:var(--sans) !important;
  font-size:10px !important;
  line-height:1.4 !important;
  letter-spacing:.08em !important;
  color:var(--muted) !important;
  white-space:nowrap !important;
}

body:not(.home) .isola-page-hero__lead{
  max-width:620px !important;
  margin:18px 0 0 !important;
  font-size:12px !important;
  line-height:1.9 !important;
}

/* Remove the large blank band before the first content section. */
body:not(.home) .isola-page-content{
  padding-top:18px !important;
}

/* Keep the first content block visually subordinate to the page header. */
body:not(.home) .isola-page-content .isola-display,
body:not(.home) .isola-page-content h2.isola-display{
  font-size:40px !important;
  line-height:1.08 !important;
}

@media(max-width:767px){
  body:not(.home) .isola-page-hero{
    padding:18px 0 22px !important;
  }

  body:not(.home) .isola-page-hero .isola-shell{
    width:calc(100% - 32px) !important;
  }

  body:not(.home) .isola-page-hero .isola-breadcrumbs{
    margin-bottom:16px !important;
    font-size:7px !important;
  }

  body:not(.home) .isola-page-titlebar--compact{
    grid-template-columns:1fr auto !important;
    gap:12px !important;
    padding-bottom:12px !important;
  }

  body:not(.home) .isola-page-titlebar__label{
    margin-bottom:6px !important;
    font-size:7px !important;
  }

  body:not(.home) .isola-page-titlebar--compact h1{
    font-size:24px !important;
    line-height:1 !important;
    letter-spacing:.04em !important;
  }

  body:not(.home) .isola-page-titlebar--compact .isola-page-hero__subtitle{
    margin-bottom:1px !important;
    font-size:8px !important;
    letter-spacing:.06em !important;
  }

  body:not(.home) .isola-page-hero__lead{
    margin-top:14px !important;
    font-size:10.5px !important;
    line-height:1.8 !important;
  }

  body:not(.home) .isola-page-content{
    padding-top:12px !important;
  }

  body:not(.home) .isola-page-content .isola-display,
  body:not(.home) .isola-page-content h2.isola-display{
    font-size:28px !important;
    line-height:1.08 !important;
  }
}


/* ==========================================================
   beta.45 — UNIFIED CHILD PAGE TITLE POSITION
========================================================== */
body:not(.home) .isola-page-hero{
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:46px 0 52px !important;
  background:#f7f5f0 !important;
}

body:not(.home) .isola-page-hero .isola-shell{
  box-sizing:border-box !important;
  width:min(1180px, calc(100% - 80px)) !important;
  max-width:1180px !important;
  margin:0 auto !important;
  padding:0 !important;
}

body:not(.home) .isola-page-hero .isola-breadcrumbs{
  margin:0 0 28px !important;
  padding:0 !important;
  font-size:8px !important;
  line-height:1.4 !important;
  letter-spacing:.13em !important;
}

body:not(.home) .isola-page-titlebar--unified{
  display:block !important;
  margin:0 !important;
  padding:0 0 20px !important;
  border-bottom:1px solid rgba(45,48,47,.18) !important;
}

body:not(.home) .isola-page-titlebar--unified .isola-page-titlebar__label{
  margin:0 0 10px !important;
  padding:0 !important;
  font-family:var(--sans) !important;
  font-size:8px !important;
  line-height:1 !important;
  letter-spacing:.24em !important;
  color:var(--muted) !important;
}

body:not(.home) .isola-page-titlebar--unified h1{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  font-size:clamp(42px,5.2vw,68px) !important;
  font-weight:400 !important;
  line-height:1.02 !important;
  letter-spacing:.005em !important;
  white-space:normal !important;
  word-break:keep-all !important;
}

body:not(.home) .isola-page-titlebar--unified .isola-page-hero__subtitle{
  display:block !important;
  margin:12px 0 0 !important;
  padding:0 !important;
  font-family:var(--sans) !important;
  font-size:10px !important;
  line-height:1.5 !important;
  letter-spacing:.08em !important;
  color:var(--muted) !important;
}

body:not(.home) .isola-page-hero__lead{
  max-width:660px !important;
  margin:22px 0 0 !important;
  font-size:12px !important;
  line-height:1.9 !important;
}

body:not(.home) .isola-page-content{
  padding-top:56px !important;
}

@media(max-width:767px){
  body:not(.home) .isola-page,
  body:not(.home) .isola-news-archive,
  body:not(.home) .isola-single{
    padding-top:70px !important;
  }

  body:not(.home) .isola-page-hero{
    padding:28px 0 34px !important;
  }

  body:not(.home) .isola-page-hero .isola-shell{
    width:calc(100% - 64px) !important;
    margin:0 auto !important;
    padding:0 !important;
  }

  body:not(.home) .isola-page-hero .isola-breadcrumbs{
    margin:0 0 22px !important;
    font-size:7px !important;
  }

  body:not(.home) .isola-page-titlebar--unified{
    padding-bottom:16px !important;
  }

  body:not(.home) .isola-page-titlebar--unified .isola-page-titlebar__label{
    margin-bottom:8px !important;
    font-size:7px !important;
  }

  body:not(.home) .isola-page-titlebar--unified h1{
    font-size:40px !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
  }

  body:not(.home) .isola-page-titlebar--unified .isola-page-hero__subtitle{
    margin-top:10px !important;
    font-size:9px !important;
  }

  body:not(.home) .isola-page-hero__lead{
    margin-top:18px !important;
    font-size:11px !important;
    line-height:1.85 !important;
  }

  body:not(.home) .isola-page-content{
    padding-top:46px !important;
  }
}

@media(max-width:380px){
  body:not(.home) .isola-page-titlebar--unified h1{
    font-size:36px !important;
  }
}


/* ==========================================================
   beta.46 — STAY internal hero -> compact intro section
   The global child-page title is now the page title.
   #isola-stay .isola-stay-hero is intentionally subordinate.
========================================================== */
body #isola-stay .isola-stay-hero{
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:72px 40px 78px !important;
  background:#f7f5f0 !important;
}

body #isola-stay .isola-stay-hero__inner{
  width:min(760px,100%) !important;
  max-width:760px !important;
  margin:0 auto !important;
}

body #isola-stay .isola-stay-hero__eyebrow{
  margin:0 0 18px !important;
  font-size:9px !important;
  line-height:1.4 !important;
  letter-spacing:.24em !important;
}

body #isola-stay .isola-stay-hero__title{
  max-width:620px !important;
  margin:0 !important;
  font-size:clamp(30px,3.2vw,40px) !important;
  line-height:1.55 !important;
  letter-spacing:.07em !important;
}

body #isola-stay .isola-stay-hero__lead{
  margin:14px 0 0 !important;
  font-size:13px !important;
  line-height:1.7 !important;
  letter-spacing:.06em !important;
}

/* Bring the next STAY section closer to the intro. */
body #isola-stay .isola-stay-intro{
  padding-top:76px !important;
}

@media(max-width:767px){
  body #isola-stay .isola-stay-hero{
    padding:58px 24px 64px !important;
  }

  body #isola-stay .isola-stay-hero__inner{
    width:100% !important;
    max-width:none !important;
  }

  body #isola-stay .isola-stay-hero__eyebrow{
    margin-bottom:16px !important;
    font-size:8px !important;
    letter-spacing:.22em !important;
  }

  body #isola-stay .isola-stay-hero__title{
    font-size:27px !important;
    line-height:1.58 !important;
    letter-spacing:.055em !important;
  }

  body #isola-stay .isola-stay-hero__lead{
    margin-top:12px !important;
    font-size:12px !important;
  }

  body #isola-stay .isola-stay-intro{
    padding-top:62px !important;
  }
}


/* ==========================================================
   beta.47 — STAY intro refinement
   Make the old internal hero feel like an editorial intro,
   not a second hero/title block.
========================================================== */
body #isola-stay .isola-stay-hero{
  padding:50px 40px 54px !important;
}

body #isola-stay .isola-stay-hero__inner{
  width:min(700px,100%) !important;
  max-width:700px !important;
}

body #isola-stay .isola-stay-hero__eyebrow{
  display:none !important;
}

body #isola-stay .isola-stay-hero__title{
  max-width:560px !important;
  font-size:clamp(26px,2.8vw,34px) !important;
  line-height:1.5 !important;
  letter-spacing:.055em !important;
}

body #isola-stay .isola-stay-hero__lead{
  margin-top:12px !important;
  font-size:12px !important;
  line-height:1.65 !important;
  letter-spacing:.05em !important;
}

/* reduce the visual gap between the shared page header and STAY intro */
body:not(.home) .isola-page--stay .isola-page-content{
  padding-top:28px !important;
}

body #isola-stay .isola-stay-intro{
  padding-top:54px !important;
}

@media(max-width:767px){
  body #isola-stay .isola-stay-hero{
    padding:38px 24px 42px !important;
  }

  body #isola-stay .isola-stay-hero__title{
    font-size:24px !important;
    line-height:1.5 !important;
    letter-spacing:.045em !important;
  }

  body #isola-stay .isola-stay-hero__lead{
    margin-top:10px !important;
    font-size:11px !important;
  }

  body:not(.home) .isola-page--stay .isola-page-content{
    padding-top:22px !important;
  }

  body #isola-stay .isola-stay-intro{
    padding-top:48px !important;
  }
}




/* ==========================================================
   beta.68 — DESTINATIONS intro hierarchy / ACTUAL CONTENT FIX
   The page content is custom HTML, not a Gutenberg wp-block-group.
   Target the first editorial block generically and force a clear
   hierarchy below the shared PAGE title.
========================================================== */

/* Reduce the large gap before the editorial intro */
body:not(.home) .isola-page--destinations .isola-page-content{
  padding-top:48px !important;
}

/* First content wrapper/card after the page title */
body:not(.home) .isola-page--destinations .isola-entry > :first-child{
  margin-top:0 !important;
}

/* Catch common custom HTML wrappers inside the first content block */
body:not(.home) .isola-page--destinations .isola-entry > :first-child,
body:not(.home) .isola-page--destinations .isola-entry > :first-child > div:first-child,
body:not(.home) .isola-page--destinations .isola-entry > section:first-child,
body:not(.home) .isola-page--destinations .isola-entry > div:first-child{
  box-sizing:border-box !important;
}

/* The first editorial H2 = "Choose your Island." */
body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type{
  max-width:680px !important;
  margin-top:0 !important;
  margin-bottom:20px !important;
  padding:0 !important;
  font-size:38px !important;
  line-height:1.14 !important;
  letter-spacing:0 !important;
}

/* Small DESTINATIONS label immediately before the H2 */
body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type ~ p{
  max-width:580px !important;
}

/* Paragraph immediately following the intro H2 */
body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type + p{
  margin-top:0 !important;
  font-size:13px !important;
  line-height:1.9 !important;
  letter-spacing:.04em !important;
}

/* If the intro uses an eyebrow class, keep it compact */
body:not(.home) .isola-page--destinations .isola-entry .isola-eyebrow:first-of-type{
  margin-bottom:18px !important;
  font-size:9px !important;
  letter-spacing:.22em !important;
}

/* Reduce oversized internal vertical padding on the first editorial block.
   Covers custom HTML wrappers without affecting destination cards below. */
body:not(.home) .isola-page--destinations .isola-entry > section:first-child,
body:not(.home) .isola-page--destinations .isola-entry > div:first-child{
  padding-top:48px !important;
  padding-bottom:48px !important;
}

/* ==========================================================
   MOBILE
========================================================== */
@media(max-width:767px){

  body:not(.home) .isola-page--destinations .isola-page-content{
    padding-top:30px !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry > section:first-child,
  body:not(.home) .isola-page--destinations .isola-entry > div:first-child{
    padding-top:34px !important;
    padding-bottom:36px !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type{
    max-width:none !important;
    margin-bottom:16px !important;
    font-size:32px !important;
    line-height:1.16 !important;
    letter-spacing:-.01em !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry .isola-eyebrow:first-of-type{
    margin-bottom:14px !important;
    font-size:8px !important;
    line-height:1 !important;
    letter-spacing:.22em !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type + p{
    font-size:12px !important;
    line-height:1.85 !important;
    letter-spacing:.035em !important;
  }
}

@media(max-width:390px){
  body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type{
    font-size:30px !important;
  }
}




/* ==========================================================
   beta.70 — DESTINATIONS intro HARD FIX
   Compact the first editorial block by targeting the actual first
   content section and its immediate wrappers, regardless of custom HTML.
========================================================== */

/* Pull the content section closer to the page title */
body:not(.home) .isola-page--destinations .isola-page-content{
  padding-top:20px !important;
}

/* First editorial block: kill oversized min-height / spacing */
body:not(.home) .isola-page--destinations .isola-entry > :first-child,
body:not(.home) .isola-page--destinations .isola-entry > :first-child > div,
body:not(.home) .isola-page--destinations .isola-entry > :first-child > div > div{
  min-height:0 !important;
  height:auto !important;
}

/* Force the first block itself compact */
body:not(.home) .isola-page--destinations .isola-entry > :first-child{
  padding-top:26px !important;
  padding-bottom:26px !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}

/* Any immediate inner wrapper should not recreate the huge vertical space */
body:not(.home) .isola-page--destinations .isola-entry > :first-child > div{
  padding-top:0 !important;
  padding-bottom:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}

/* Eyebrow */
body:not(.home) .isola-page--destinations .isola-entry .isola-eyebrow:first-of-type,
body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type ~ .isola-eyebrow{
  margin-top:0 !important;
  margin-bottom:10px !important;
}

/* Intro title */
body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type{
  margin-top:0 !important;
  margin-bottom:12px !important;
  font-size:32px !important;
  line-height:1.16 !important;
  letter-spacing:-.01em !important;
}

/* First descriptive paragraph */
body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type + p{
  margin-top:0 !important;
  margin-bottom:0 !important;
  font-size:12px !important;
  line-height:1.8 !important;
}

/* In case the copy is wrapped in another div, compress paragraph margins there too */
body:not(.home) .isola-page--destinations .isola-entry > :first-child p{
  margin-top:0 !important;
}

body:not(.home) .isola-page--destinations .isola-entry > :first-child p:last-child{
  margin-bottom:0 !important;
}

/* Bring first destination image/card directly after intro */
body:not(.home) .isola-page--destinations .isola-entry > :nth-child(2){
  margin-top:0 !important;
  padding-top:0 !important;
}

@media(max-width:767px){
  body:not(.home) .isola-page--destinations .isola-page-content{
    padding-top:12px !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry > :first-child{
    padding-top:18px !important;
    padding-bottom:20px !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry > :first-child > div,
  body:not(.home) .isola-page--destinations .isola-entry > :first-child > div > div{
    padding-top:0 !important;
    padding-bottom:0 !important;
    margin-top:0 !important;
    margin-bottom:0 !important;
    min-height:0 !important;
    height:auto !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry .isola-eyebrow:first-of-type{
    margin-bottom:8px !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type{
    margin-bottom:10px !important;
    font-size:30px !important;
    line-height:1.16 !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry h2:first-of-type + p{
    font-size:11.5px !important;
    line-height:1.75 !important;
  }
}

/* ==========================================================
   beta.74 — CHILD PAGE TITLE / CONTENT RHYTHM
   Tighten the handoff from the shared child-page title area to
   the first body section across all fixed pages.
========================================================== */

/* Shared title area: keep the title generous, but remove the
   excessive blank band below it. */
body:not(.home) .isola-page .isola-page-hero{
  padding-bottom:30px !important;
}

/* Shared body start: use one consistent bridge on every child page. */
body:not(.home) .isola-page .isola-page-content{
  padding-top:30px !important;
}

/* The first editorial element should never add another top margin. */
body:not(.home) .isola-page .isola-entry > :first-child{
  margin-top:0 !important;
}

/* NEWS is rendered by a dedicated intro instead of .isola-entry. */
body:not(.home) .isola-page--news .isola-news-page-intro{
  margin-top:0 !important;
}

/* STAY has a legacy internal intro block. Pull that intro toward the
   shared page title so it reads as body copy, not as a second hero. */
body:not(.home) .isola-page--stay .isola-page-content{
  padding-top:24px !important;
}
body:not(.home) .isola-page--stay #isola-stay .isola-stay-hero{
  padding-top:24px !important;
  padding-bottom:38px !important;
}

/* DESTINATIONS also starts with a custom editorial wrapper. */
body:not(.home) .isola-page--destinations .isola-page-content{
  padding-top:24px !important;
}
body:not(.home) .isola-page--destinations .isola-entry > :first-child{
  padding-top:12px !important;
}

@media(max-width:767px){
  body:not(.home) .isola-page .isola-page-hero{
    padding-bottom:22px !important;
  }

  body:not(.home) .isola-page .isola-page-content{
    padding-top:22px !important;
  }

  body:not(.home) .isola-page--stay .isola-page-content,
  body:not(.home) .isola-page--destinations .isola-page-content{
    padding-top:18px !important;
  }

  body:not(.home) .isola-page--stay #isola-stay .isola-stay-hero{
    padding-top:18px !important;
    padding-bottom:30px !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry > :first-child{
    padding-top:10px !important;
  }
}

/* ==========================================================
   beta.75 — CHILD PAGE TITLE / BODY GAP HARD FIX
   Final override. Keep the page heading elegant but make the
   handoff into content visibly tighter on every child page.
========================================================== */
body:not(.home) .isola-page .isola-page-hero{
  padding-bottom:16px !important;
}

body:not(.home) .isola-page .isola-page-titlebar--unified{
  padding-bottom:14px !important;
}

body:not(.home) .isola-page .isola-page-content{
  padding-top:16px !important;
}

body:not(.home) .isola-page .isola-entry > :first-child,
body:not(.home) .isola-page .isola-news-page-intro{
  margin-top:0 !important;
}

/* Custom intro pages must not recreate the removed gap. */
body:not(.home) .isola-page--stay .isola-page-content,
body:not(.home) .isola-page--destinations .isola-page-content{
  padding-top:12px !important;
}

body:not(.home) .isola-page--stay #isola-stay .isola-stay-hero{
  padding-top:12px !important;
  padding-bottom:34px !important;
}

body:not(.home) .isola-page--destinations .isola-entry > :first-child{
  padding-top:8px !important;
}

@media(max-width:767px){
  body:not(.home) .isola-page .isola-page-hero{
    padding-bottom:12px !important;
  }

  body:not(.home) .isola-page .isola-page-titlebar--unified{
    padding-bottom:12px !important;
  }

  body:not(.home) .isola-page .isola-page-content{
    padding-top:12px !important;
  }

  body:not(.home) .isola-page--stay .isola-page-content,
  body:not(.home) .isola-page--destinations .isola-page-content{
    padding-top:8px !important;
  }

  body:not(.home) .isola-page--stay #isola-stay .isola-stay-hero{
    padding-top:8px !important;
    padding-bottom:26px !important;
  }

  body:not(.home) .isola-page--destinations .isola-entry > :first-child{
    padding-top:6px !important;
  }
}

/* ==========================================================
   beta.76 — GLOBAL CHILD-PAGE BACKGROUND RHYTHM
   Page title = warm paper / body start = warm white.
   This creates a clear visual handoff on every child page
   without adding extra divider lines.
========================================================== */

:root{
  --isola-subpage-title-bg:#f7f5f0;
  --isola-subpage-body-bg:#fffdfa;
}

/* 1) Shared page-title field */
body:not(.home) .isola-page .isola-page-hero:not(.isola-page-hero--image){
  background:var(--isola-subpage-title-bg) !important;
}

/* 2) Every child page begins on a clearly different field. */
body:not(.home) .isola-page .isola-page-content{
  background:var(--isola-subpage-body-bg) !important;
}

/* 3) The first editorial block must not visually merge back into
      the title field. This also catches Gutenberg groups/sections
      that previously used the same paper color as the page hero. */
body:not(.home) .isola-page .isola-entry > :first-child,
body:not(.home) .isola-page .isola-entry > .wp-block-group:first-child,
body:not(.home) .isola-page .isola-entry > .wp-block-cover:first-child,
body:not(.home) .isola-page .isola-entry > section:first-child,
body:not(.home) .isola-page .isola-news-page-intro{
  background-color:transparent !important;
}

/* Gutenberg can place the color on an inner group. Keep only the
   very first introduction field clean; later designed sections are untouched. */
body:not(.home) .isola-page .isola-entry > .wp-block-group:first-child > .wp-block-group__inner-container,
body:not(.home) .isola-page .isola-entry > :first-child > .wp-block-group__inner-container{
  background-color:transparent !important;
}

/* 4) ABOUT-family pages had a legacy pure-white override. Use the
      same warm white as all other child pages for consistency. */
body:not(.home) .isola-parent-about .isola-page-content{
  background:var(--isola-subpage-body-bg) !important;
}

/* 5) CONTACT / RESERVATION keep their form card, but the page field
      around it is warm white so the title/body transition is visible. */
body:not(.home) .isola-page--contact .isola-page-content,
body:not(.home) .isola-page--reservation .isola-page-content{
  background:var(--isola-subpage-body-bg) !important;
}

/* 6) STAY's internal intro formerly repeated the title background.
      Make the first internal section part of the body field. */
body:not(.home) .isola-page--stay #isola-stay .isola-stay-hero{
  background:transparent !important;
}

/* 7) Keep the transition clean: no additional separator line between
      hero and body. The titlebar's own fine rule remains sufficient. */
body:not(.home) .isola-page .isola-page-content{
  border-top:0 !important;
}

@media(max-width:767px){
  /* On mobile the color change itself is the divider. A little white
     breathing room makes the shift visible immediately after the lead. */
  body:not(.home) .isola-page .isola-page-content{
    padding-top:18px !important;
  }

  body:not(.home) .isola-page--stay .isola-page-content,
  body:not(.home) .isola-page--destinations .isola-page-content{
    padding-top:14px !important;
  }

  body:not(.home) .isola-page--stay #isola-stay .isola-stay-hero{
    padding-top:18px !important;
  }
}

/* ==========================================================
   beta.77 — CHILD PAGE FIRST-SECTION FIELD / CACHE FIX
   The previous visual change was being masked because the asset
   version constant still reported beta.73. beta.77 bumps the
   actual enqueue version and defines one clear subpage rhythm:
   title field = paper, first body field = warm white.
========================================================== */

:root{
  --isola-subpage-title-bg:#f7f5f0;
  --isola-subpage-body-bg:#fffdfa;
}

/* Shared PAGE header field */
body:not(.home) .isola-page .isola-page-hero:not(.isola-page-hero--image){
  background:var(--isola-subpage-title-bg) !important;
}

/* Body field begins immediately after the PAGE header. */
body:not(.home) .isola-page .isola-page-content,
body:not(.home) .isola-page .isola-page-content > .isola-shell,
body:not(.home) .isola-page .isola-page-content > .isola-shell--content{
  background:var(--isola-subpage-body-bg) !important;
}

/* The first editorial block must inherit the body field rather than
   drawing another beige card inside it. This is intentionally limited
   to the first top-level content block. */
body:not(.home) .isola-page .isola-entry > :first-child,
body:not(.home) .isola-page .isola-entry > :first-child > div,
body:not(.home) .isola-page .isola-entry > :first-child > div > div,
body:not(.home) .isola-page .isola-entry > .wp-block-group:first-child,
body:not(.home) .isola-page .isola-entry > .wp-block-group:first-child > .wp-block-group__inner-container,
body:not(.home) .isola-page .isola-news-page-intro{
  background-color:transparent !important;
  box-shadow:none !important;
}

/* If the first block carries a Gutenberg background utility class,
   neutralise the field only; typography and spacing remain intact. */
body:not(.home) .isola-page .isola-entry > :first-child.has-background,
body:not(.home) .isola-page .isola-entry > :first-child .has-background:first-child{
  background-color:transparent !important;
}

/* STAY uses a dedicated internal hero rather than the generic first block. */
body:not(.home) .isola-page--stay #isola-stay .isola-stay-hero{
  background:transparent !important;
}

/* Keep CONTACT / RESERVATION form cards, but make their surrounding
   page field warm white. */
body:not(.home) .isola-page--contact .isola-page-content,
body:not(.home) .isola-page--reservation .isola-page-content{
  background:var(--isola-subpage-body-bg) !important;
}

/* No artificial rule between the two fields; the colour shift is enough. */
body:not(.home) .isola-page .isola-page-content{
  border-top:0 !important;
}

@media(max-width:767px){
  body:not(.home) .isola-page .isola-page-content{
    padding-top:18px !important;
  }

  body:not(.home) .isola-page--stay .isola-page-content,
  body:not(.home) .isola-page--destinations .isola-page-content{
    padding-top:14px !important;
  }
}

/* ==========================================================
   beta.78 — GLOBAL SUBPAGE COLOR SEPARATION
   The reliable fix is to separate the PAGE header field itself
   from editorial sections, instead of trying to neutralise every
   possible Gutenberg/custom inner background.
========================================================== */
:root{
  --isola-subpage-title-bg:#edf1ee;
  --isola-subpage-body-bg:#fffdfa;
}

/* All standard child-page title areas: a quiet green-grey paper tone. */
body:not(.home) .isola-page .isola-page-hero:not(.isola-page-hero--image),
body:not(.home) .isola-news-archive .isola-page-hero:not(.isola-page-hero--image){
  background:#edf1ee !important;
}

/* The body field stays warm white. Existing designed inner sections may
   keep their own ivory backgrounds, which now contrast with the title. */
body:not(.home) .isola-page .isola-page-content,
body:not(.home) .isola-news-archive .isola-page-content{
  background:#fffdfa !important;
}

/* Keep the handoff clean and quiet. */
body:not(.home) .isola-page .isola-page-content,
body:not(.home) .isola-news-archive .isola-page-content{
  border-top:0 !important;
}

/* ==========================================================
   beta.79 — SUBPAGE HEADER + FIRST SECTION RHYTHM
   Restore the PAGE header to the same warm paper tone as the
   site header, then make the first editorial section pure white.
========================================================== */
:root{
  --isola-subpage-title-bg:#f7f5f0;
  --isola-subpage-first-bg:#ffffff;
}

/* Header / PAGE title: same warm paper family as before. */
body:not(.home) .isola-page .isola-page-hero:not(.isola-page-hero--image),
body:not(.home) .isola-news-archive .isola-page-hero:not(.isola-page-hero--image){
  background:var(--isola-subpage-title-bg) !important;
}

/* The child-page content field begins in white. */
body:not(.home) .isola-page .isola-page-content,
body:not(.home) .isola-news-archive .isola-page-content{
  background:var(--isola-subpage-first-bg) !important;
  border-top:0 !important;
}

/* First editorial section: force its own field to white, including
   the common Gutenberg/custom wrappers that may carry an ivory bg. */
body:not(.home) .isola-page .isola-entry > :first-child,
body:not(.home) .isola-page .isola-entry > :first-child > div,
body:not(.home) .isola-page .isola-entry > :first-child > div > div,
body:not(.home) .isola-page .isola-entry > .wp-block-group:first-child,
body:not(.home) .isola-page .isola-entry > .wp-block-group:first-child > .wp-block-group__inner-container,
body:not(.home) .isola-page .isola-entry > :first-child.has-background,
body:not(.home) .isola-page .isola-entry > :first-child .has-background:first-child,
body:not(.home) .isola-page .isola-news-page-intro,
body:not(.home) .isola-page--stay #isola-stay .isola-stay-hero{
  background:#ffffff !important;
  background-color:#ffffff !important;
  box-shadow:none !important;
}

/* ABOUT-family pages: keep the first editorial field clean white. */
body:not(.home) .isola-parent-about .isola-page-content{
  background:#ffffff !important;
}


/* ==========================================================
   beta.80 — CHILD PAGE: PURE WHITE FIRST CONTENT SECTION
   Final rule: header + PAGE hero retain the original warm paper.
   The first content field immediately below the hero is pure white.
   No inner beige/card background is allowed in that first field.
========================================================== */
body:not(.home) .isola-page .isola-page-hero:not(.isola-page-hero--image),
body:not(.home) .isola-news-archive .isola-page-hero:not(.isola-page-hero--image){
  background:#f7f5f0 !important;
}

body:not(.home) .isola-page > .isola-page-content,
body:not(.home) .isola-news-archive > .isola-page-content{
  background:#ffffff !important;
  background-color:#ffffff !important;
  border-top:0 !important;
}

/* Standard page content: make the actual first editorial field white,
   including nested Gutenberg groups/covers/columns that previously
   rendered as the ivory card visible on ABOUT. */
body:not(.home) .isola-page > .isola-page-content > .isola-shell,
body:not(.home) .isola-page > .isola-page-content > .isola-shell--content,
body:not(.home) .isola-page > .isola-page-content .isola-entry,
body:not(.home) .isola-page > .isola-page-content .isola-entry > :first-child,
body:not(.home) .isola-page > .isola-page-content .isola-entry > :first-child > .wp-block-group__inner-container,
body:not(.home) .isola-page > .isola-page-content .isola-entry > .wp-block-group:first-child,
body:not(.home) .isola-page > .isola-page-content .isola-entry > .wp-block-group:first-child > .wp-block-group__inner-container,
body:not(.home) .isola-page > .isola-page-content .isola-entry > .wp-block-cover:first-child,
body:not(.home) .isola-page > .isola-page-content .isola-entry > .wp-block-columns:first-child,
body:not(.home) .isola-page > .isola-page-content .isola-news-page-intro,
body:not(.home) .isola-page--stay > .isola-page-content #isola-stay .isola-stay-hero{
  background:#ffffff !important;
  background-color:#ffffff !important;
  box-shadow:none !important;
}

/* If WordPress has written a background via inline style on the first
   editorial wrapper, override only that first field. */
body:not(.home) .isola-page > .isola-page-content .isola-entry > :first-child[style*="background"],
body:not(.home) .isola-page > .isola-page-content .isola-entry > :first-child.has-background{
  background:#ffffff !important;
  background-color:#ffffff !important;
}


/* ==========================================================
   beta.81 — FIRST EDITORIAL SECTION: TRUE WHITE FIELD
   Runtime JS identifies the first real editorial block (ignoring
   style/script helper nodes) and marks any nested element that is
   actually painting a background. This fixes custom HTML/Gutenberg
   blocks whose beige field is not the literal :first-child.
========================================================== */
body:not(.home) .isola-page > .isola-page-content,
body:not(.home) .isola-page > .isola-page-content > .isola-shell,
body:not(.home) .isola-page > .isola-page-content .isola-entry{
  background-color:#ffffff !important;
}

body:not(.home) .isola-page .isola-first-editorial-section,
body:not(.home) .isola-page .isola-first-editorial-section.isola-first-editorial-bg,
body:not(.home) .isola-page .isola-first-editorial-section .isola-first-editorial-bg{
  background-color:#ffffff !important;
}

/* Gutenberg colour helpers inside section 1 */
body:not(.home) .isola-page .isola-first-editorial-section .has-background,
body:not(.home) .isola-page .isola-first-editorial-section [class*="has-"][class*="-background-color"]{
  background-color:#ffffff !important;
}

/* Keep the original header / PAGE title field unchanged. */
body:not(.home) .isola-page .isola-page-hero:not(.isola-page-hero--image){
  background:#f7f5f0 !important;
}


/* ==========================================================
   beta.85 — MEDIA NUMBERING / DESTINATIONS STANDARD
   Image corner numbering is unified across child pages:
   transparent field, 1px white outline, white type.
   This rule intentionally comes after the beta.81 first-section
   white treatment so badges can never become white-filled boxes.
========================================================== */
body:not(.home) .isola-page .isola-media-number{
  position:absolute !important;
  z-index:6 !important;
  top:24px !important;
  left:24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:58px !important;
  height:58px !important;
  min-width:58px !important;
  min-height:58px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(255,255,255,.95) !important;
  border-radius:0 !important;
  background:transparent !important;
  background-color:transparent !important;
  box-shadow:none !important;
  color:#fff !important;
  font-family:var(--sans) !important;
  font-size:11px !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:.14em !important;
  text-indent:.14em !important;
  text-align:center !important;
  opacity:1 !important;
  pointer-events:none !important;
}

/* Ensure the media wrapper can anchor the badge. */
body:not(.home) .isola-page figure:has(> .isola-media-number),
body:not(.home) .isola-page [class*="visual"]:has(.isola-media-number),
body:not(.home) .isola-page [class*="image"]:has(.isola-media-number),
body:not(.home) .isola-page [class*="photo"]:has(.isola-media-number),
body:not(.home) .isola-page [class*="media"]:has(.isola-media-number){
  position:relative;
}

/* Never let section-1 background normalization paint a badge. */
body:not(.home) .isola-page .isola-media-number.isola-first-editorial-bg,
body:not(.home) .isola-page .isola-first-editorial-section .isola-media-number{
  background:transparent !important;
  background-color:transparent !important;
}

@media(max-width:767px){
  body:not(.home) .isola-page .isola-media-number{
    top:16px !important;
    left:16px !important;
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    min-height:52px !important;
    font-size:10px !important;
  }
}

/* ==========================================================
   beta.86 — CONTACT / AREA → PROPERTY ROUTING FORM
========================================================== */
.isola-page--contact .isola-contact-page-content{background:#fff!important}
.isola-contact-page-content .isola-entry{max-width:760px}
.isola-contact-intro{margin:0 0 64px;padding:0 0 42px;border-bottom:1px solid var(--line)}
.isola-contact-intro h2{margin:0 0 22px;font-size:clamp(38px,5vw,58px);font-weight:400;line-height:1.2;letter-spacing:.01em}
.isola-contact-intro>p:last-child{margin:0;color:var(--muted);font-size:14px;line-height:2}
.isola-contact-form{display:grid;gap:44px}
.isola-contact-routing{display:grid;gap:32px;margin:0 0 12px;padding:40px;border:1px solid var(--line);background:#faf9f6}
.isola-contact-routing legend{padding:0 14px;font-family:var(--sans);font-size:11px;letter-spacing:.2em;color:#536d72}
.isola-contact-field{display:grid;gap:12px}
.isola-contact-field label{font-size:17px;line-height:1.5;letter-spacing:.06em}
.isola-contact-field label em{margin-left:8px;color:#536d72;font-family:var(--sans);font-size:9px;font-style:normal;letter-spacing:.12em}
.isola-contact-field input,.isola-contact-field textarea,.isola-contact-field select{width:100%;border:1px solid rgba(45,48,47,.22);border-radius:0;background:#fff;color:var(--ink);outline:0;transition:border-color .25s,box-shadow .25s}
.isola-contact-field input,.isola-contact-field select{height:62px;padding:0 18px}
.isola-contact-field textarea{min-height:220px;padding:16px 18px;resize:vertical}
.isola-contact-field input:focus,.isola-contact-field textarea:focus,.isola-contact-field select:focus{border-color:#536d72;box-shadow:0 0 0 1px #536d72}
.isola-select-wrap{position:relative}.isola-select-wrap:after{content:"⌄";position:absolute;right:18px;top:50%;transform:translateY(-55%);pointer-events:none;font-family:var(--sans);font-size:15px}.isola-select-wrap select{appearance:none;padding-right:48px}.isola-select-wrap select:disabled{color:#9a9c99;background:#f4f3ef}
.isola-contact-consent{display:flex;gap:12px;align-items:flex-start;font-size:12px;line-height:1.8;color:var(--muted)}.isola-contact-consent input{width:16px;height:16px;margin-top:4px;accent-color:#536d72}
.isola-contact-submit{display:flex;align-items:center;justify-content:space-between;width:100%;padding:20px 0;border:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;font-family:var(--sans);font-size:11px;letter-spacing:.2em}.isola-contact-submit i{font-family:var(--serif);font-size:20px;font-style:normal;transition:transform .25s}.isola-contact-submit:hover i{transform:translateX(5px)}
.isola-contact-notice{margin:0 0 46px;padding:18px 20px;border:1px solid var(--line);font-size:13px;line-height:1.8}.isola-contact-notice.is-success{background:#f4f7f5}.isola-contact-notice.is-error{background:#fbf5f3}
@media(max-width:767px){.isola-contact-intro{margin-bottom:48px;padding-bottom:32px}.isola-contact-intro h2{font-size:38px}.isola-contact-form{gap:38px}.isola-contact-routing{gap:26px;padding:30px 20px}.isola-contact-field label{font-size:16px}.isola-contact-field input,.isola-contact-field select{height:58px}.isola-contact-field textarea{min-height:200px}}


/* ==========================================================
   beta.93 — CONTACT mobile facility picker
   Long property names break before [ ... ] on mobile only.
========================================================== */
.isola-facility-mobile{display:none}
@media(max-width:767px){
  .isola-contact-facility-field .isola-facility-native{display:none}
  .isola-facility-mobile{display:grid;gap:8px}
  .isola-facility-mobile-placeholder{margin:0;padding:18px;border:1px solid rgba(45,48,47,.18);background:#f4f3ef;color:#9a9c99;font-size:14px;line-height:1.6}
  .isola-facility-choice{width:100%;margin:0;padding:14px 16px;border:1px solid rgba(45,48,47,.20);border-radius:0;background:#fff;color:var(--ink);text-align:left;font:inherit;line-height:1.45;appearance:none;cursor:pointer}
  .isola-facility-choice .isola-facility-main,.isola-facility-choice .isola-facility-sub{display:block}
  .isola-facility-choice .isola-facility-main{font-size:15px;letter-spacing:.03em}
  .isola-facility-choice .isola-facility-sub{margin-top:3px;color:#536d72;font-family:var(--sans);font-size:11px;letter-spacing:.08em}
  .isola-facility-choice.is-selected{border-color:#536d72;box-shadow:inset 0 0 0 1px #536d72;background:#faf9f6}
}


/* ==========================================================
   beta.96 — CONTACT completion state
   A calm, branded thank-you screen replaces the form after send.
========================================================== */
.isola-contact-complete{
  max-width:760px;
  margin:0 auto;
  padding:34px 0 28px;
}
.isola-contact-complete .isola-eyebrow{
  margin:0 0 34px;
}
.isola-contact-complete h2{
  margin:0 0 52px;
  color:var(--ink);
  font-family:var(--serif);
  font-size:clamp(46px,7vw,76px);
  font-weight:400;
  line-height:1.04;
  letter-spacing:-.02em;
}
.isola-contact-complete-copy{
  max-width:620px;
  margin:0 0 64px;
  padding-top:34px;
  border-top:1px solid var(--line);
}
.isola-contact-complete-copy p{
  margin:0 0 20px;
  color:var(--muted);
  font-size:15px;
  line-height:2;
  letter-spacing:.04em;
}
.isola-contact-complete-copy p:first-child{
  color:var(--ink);
  font-size:18px;
}
.isola-contact-complete-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  padding:20px 0;
  border-top:1px solid var(--ink);
  border-bottom:1px solid var(--ink);
  color:var(--ink);
  text-decoration:none;
  font-family:var(--sans);
  font-size:11px;
  letter-spacing:.2em;
}
.isola-contact-complete-link i{
  font-family:var(--serif);
  font-size:20px;
  font-style:normal;
  transition:transform .25s ease;
}
.isola-contact-complete-link:hover i{transform:translateX(5px)}
@media(max-width:767px){
  .isola-contact-complete{padding:18px 0 18px}
  .isola-contact-complete .isola-eyebrow{margin-bottom:28px}
  .isola-contact-complete h2{margin-bottom:42px;font-size:48px;line-height:1.08}
  .isola-contact-complete-copy{margin-bottom:52px;padding-top:28px}
  .isola-contact-complete-copy p{font-size:14px;line-height:1.95}
  .isola-contact-complete-copy p:first-child{font-size:17px}
}

/* ==========================================================
   beta.97 — RESERVATION ROUTING
   AREA → PROPERTY → BOOKING
========================================================== */
.isola-page--reservation .isola-reservation-page-content{background:#fff!important}
.isola-page--reservation .isola-entry{max-width:860px}
.isola-reservation-guide{padding:6px 0 20px}
.isola-reservation-intro{margin:0 0 54px;padding:0 0 38px;border-bottom:1px solid var(--line)}
.isola-reservation-intro .isola-eyebrow{margin:0 0 22px}
.isola-reservation-intro h2{margin:0 0 22px;font-family:var(--serif);font-size:clamp(42px,6vw,68px);font-weight:400;line-height:1.08;letter-spacing:-.02em}
.isola-reservation-intro>p:last-child{margin:0;color:var(--muted);font-size:14px;line-height:2}
.isola-reservation-flow{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 48px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.isola-reservation-step{display:flex;gap:14px;align-items:center;padding:18px 14px;color:#a4a7a3;transition:color .3s,background .3s}
.isola-reservation-step+.isola-reservation-step{border-left:1px solid var(--line)}
.isola-reservation-step.is-active{color:#536d72;background:#faf9f6}
.isola-reservation-step__num{font-family:var(--sans);font-size:10px;letter-spacing:.16em}
.isola-reservation-step__text{display:grid;gap:3px}.isola-reservation-step__text b{font-family:var(--sans);font-size:10px;font-weight:400;letter-spacing:.16em}.isola-reservation-step__text small{font-size:11px;letter-spacing:.04em}
.isola-reservation-fields{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:0 0 48px;padding:40px;border:1px solid var(--line);background:#faf9f6}
.isola-reservation-result{margin:0 0 34px;padding:42px 40px;border:1px solid rgba(83,109,114,.32);background:#fff;opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease}
.isola-reservation-result.is-visible{opacity:1;transform:none}
.isola-reservation-result__type{margin:0 0 20px;color:#536d72;font-family:var(--sans);font-size:10px;letter-spacing:.2em}
.isola-reservation-result__name{margin:0 0 18px;font-family:var(--serif);font-size:clamp(30px,5vw,44px);font-weight:400;line-height:1.18}
.isola-reservation-result__copy{margin:0 0 30px;color:var(--muted);font-size:13px;line-height:1.9}
.isola-reservation-result__link{display:flex;align-items:center;justify-content:space-between;width:100%;padding:19px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);color:var(--ink);text-decoration:none;font-family:var(--sans);font-size:11px;letter-spacing:.16em}
.isola-reservation-result__link i{font-family:var(--serif);font-size:20px;font-style:normal;transition:transform .25s}.isola-reservation-result__link:hover i{transform:translateX(5px)}
.isola-reservation-note{margin:0;color:#929591;font-size:10px;line-height:1.8;letter-spacing:.04em}
.isola-reservation-facility-mobile{display:none}
@media(max-width:767px){
  .isola-page--reservation .isola-entry{padding:34px 20px}
  .isola-reservation-intro{margin-bottom:42px;padding-bottom:30px}.isola-reservation-intro h2{font-size:43px}.isola-reservation-intro>p:last-child{font-size:13px}
  .isola-reservation-flow{grid-template-columns:1fr;margin-bottom:34px}.isola-reservation-step{padding:13px 12px}.isola-reservation-step+.isola-reservation-step{border-left:0;border-top:1px solid var(--line)}
  .isola-reservation-fields{grid-template-columns:1fr;gap:26px;margin-bottom:34px;padding:28px 20px}
  .isola-reservation-facility-field .isola-reservation-facility-native{display:none}
  .isola-reservation-facility-mobile{display:grid;gap:8px}
  .isola-reservation-result{padding:32px 22px}.isola-reservation-result__name{font-size:34px}
}

/* ==========================================================
   beta.105 — destination mobile hero connection
   Remove only the mobile content gap after the fixed header.
   Desktop layout remains unchanged.
========================================================== */
@media(max-width:767px){
  .isola-page--kouri-2 > .isola-page-content,
  .isola-page--amami > .isola-page-content,
  .isola-page--awaji > .isola-page-content{
    margin-top:0 !important;
    padding-top:0 !important;
  }
}

/* ==========================================================
   beta.106 — destination mobile wrapper reset
   Remove the remaining mobile-only gap from every wrapper
   between the fixed-header offset and the destination hero.
========================================================== */
@media(max-width:767px){
  body:not(.home) main#top.isola-page--kouri-2 > article.isola-page-content,
  body:not(.home) main#top.isola-page--amami > article.isola-page-content,
  body:not(.home) main#top.isola-page--awaji > article.isola-page-content,
  body:not(.home) main#top.isola-page--kouri-2 > article.isola-page-content > .isola-shell--content,
  body:not(.home) main#top.isola-page--amami > article.isola-page-content > .isola-shell--content,
  body:not(.home) main#top.isola-page--awaji > article.isola-page-content > .isola-shell--content,
  body:not(.home) main#top.isola-page--kouri-2 .isola-entry,
  body:not(.home) main#top.isola-page--amami .isola-entry,
  body:not(.home) main#top.isola-page--awaji .isola-entry,
  body:not(.home) main#top.isola-page--kouri-2 #isola-kouri-v1,
  body:not(.home) main#top.isola-page--amami #isola-amami-v1,
  body:not(.home) main#top.isola-page--awaji #isola-awaji-v1,
  body:not(.home) main#top.isola-page--kouri-2 #isola-kouri-v1 > .ikv-hero{
    margin-top:0 !important;
    padding-top:0 !important;
  }
}
