@import url('fonts.css');
:root{--ink:#152c3d;--blue:#247be7;--teal:#1561bb;--muted:#526675;--line:#dbe3e9;--paper:#f4f7fa;--yellow:#ffcd42}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;font:16px/1.6 'DM Sans',sans-serif;color:var(--ink);background:white}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}a,button,input,select{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--blue)}header{max-width:1280px;margin:auto;padding:16px 40px;display:flex;justify-content:space-between;align-items:center;gap:25px}.brand-logo{width:230px;height:auto;display:block}.brand{flex-shrink:0}nav{display:flex;gap:10px}nav a{font-size:15px;font-weight:700;border-radius:24px;padding:10px 18px}nav a:hover{background:var(--paper)}.nav-cta{background:var(--ink);color:white;border-radius:26px;padding:11px 23px;font-size:14px;font-weight:700}.nav-cta:hover{background:var(--blue)}main>section:not(.about){max-width:1200px;margin-left:auto;margin-right:auto}h1,h2,h3{font-family:'Manrope',sans-serif;letter-spacing:-.045em;line-height:1.18;margin:0;font-weight:800}h1{font-size:clamp(36px,4.4vw,57px)}h1 em{font-style:normal;color:var(--blue)}h2{font-size:29px}h3{font-size:24px}.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:700;color:var(--teal);margin:0 0 14px}.discover-top{text-align:center;padding:35px 20px 29px}.lead{color:var(--muted);font-size:18px;margin:15px 0 24px}.category-browse{display:flex;gap:28px;justify-content:center;flex-wrap:wrap;margin:0 0 22px}.category-browse button{display:flex;align-items:center;gap:8px;border:0;border-bottom:2px solid transparent;background:none;padding:8px 0;font-size:15px;font-weight:700;color:var(--ink)}.category-browse button>span{font-size:22px;line-height:1}.category-browse button:hover,.category-browse button.selected{border-bottom-color:var(--blue);color:var(--teal)}.filters{display:grid;grid-template-columns:1fr 1fr 1.3fr auto;border:1px solid #c9d4dd;border-radius:40px;background:#fff;padding:10px 11px 10px 22px;max-width:960px;margin:auto;box-shadow:0 4px 18px #152c3d12;align-items:center;text-align:left}.filters label{font-size:12px;font-weight:700;color:var(--muted);padding:0 17px;border-right:1px solid var(--line)}.filters label:first-child{padding-left:4px}.filters label.keyword{border:0}.filters select,.filters input{display:block;width:100%;font-size:14px;line-height:1.5;padding:3px 18px 4px 0;border:0;background:white;color:var(--ink);min-height:29px}.filters button{background:var(--blue);border:0;padding:14px 30px;border-radius:30px;color:white;font-weight:700;font-size:15px;min-height:50px}.filters button:hover{background:var(--teal)}.intro{position:relative;min-height:355px;overflow:hidden;border-radius:14px;color:white;background:#116678}.intro-photo{position:absolute;inset:0}.intro-photo img{height:100%;width:100%;object-fit:cover;object-position:center 58%}.intro-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#06394cdd,#06394c55 65%,#06394c11)}.intro-copy{position:relative;padding:36px 40px;max-width:580px;z-index:1}.intro-copy h2{font-size:46px;letter-spacing:-.045em;line-height:1.12}.intro-copy p{max-width:380px;font-size:17px;line-height:1.6;margin:15px 0 20px}.hero-tag{display:inline-block;padding:6px 10px;border-radius:4px;background:var(--yellow);color:var(--ink);font-size:11px;font-weight:800;letter-spacing:.06em;margin-bottom:18px}.hero-link{display:inline-block;background:white;color:var(--ink);font-size:14px;font-weight:700;padding:11px 20px;border-radius:24px}.hero-link:hover{background:var(--yellow)}.credit{position:absolute;bottom:13px;right:17px;color:white;font-size:12px;z-index:1}.directory,.category-section,.islands{padding:44px 0 0}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:0 0 23px}.section-heading p{margin:8px 0 0;color:var(--muted);font-size:16px}.text-link{font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.text-link:hover{color:var(--blue)}.result-bar{display:flex;justify-content:space-between;align-items:center;margin:0 0 18px}.result-bar p{color:var(--muted);font-size:14px;margin:0}.clear{border:0;background:none;font-size:14px;color:var(--teal);text-decoration:underline;text-underline-offset:4px}.results{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card{min-height:270px;border:1px solid var(--line);border-radius:12px;padding:23px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 8px 25px #152c3d0d}.card-top{margin-bottom:15px}.category-label{font-size:12px;color:var(--teal);font-weight:700}.card h3{font-size:22px;line-height:1.25}.location{font-size:13px;color:var(--muted);margin:10px 0}.description{font-size:15px;line-height:1.6;color:var(--muted);margin:0 0 20px}.card button{margin-top:auto;align-self:flex-start;color:var(--teal);font-size:14px;font-weight:700;background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:4px}.empty{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:30px;text-align:center}.empty[hidden]{display:none}.empty-label{display:block;color:var(--teal);font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:12px}.empty p{max-width:530px;margin:12px auto 0;font-size:16px;color:var(--muted)}.empty button,.dialog-done{background:var(--ink);color:white;border:0;border-radius:24px;padding:12px 20px;margin-top:20px;font-size:14px;font-weight:600}.category-grid,.island-links{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.category-tile{min-height:252px;display:flex;flex-direction:column;text-align:left;border:0;border-radius:12px;padding:23px;color:var(--ink);position:relative;transition:transform .2s}.category-tile:hover{transform:translateY(-4px)}.tile-number{font-size:12px;letter-spacing:.12em;font-weight:700;margin-bottom:35px}.tile-title{font:800 29px/1.13 'Manrope',sans-serif;letter-spacing:-.04em}.tile-label{font-size:14px;font-weight:600;margin-top:auto;padding-top:24px}.tile-stay{background:#e1eeff}.tile-food{background:#fff0b9}.tile-do{background:#d7f3e9}.tile-shop{background:#f4e6fa}.category-tile.selected{outline:3px solid var(--blue);outline-offset:3px}.island-links button{min-height:200px;border:1px solid var(--line);background:white;border-radius:12px;padding:22px;text-align:left;color:var(--ink);display:flex;flex-direction:column;transition:background .2s,border-color .2s}.island-links button:hover{background:#edf5ff;border-color:var(--blue)}.island-number{color:var(--teal);font-size:12px;letter-spacing:.1em}.island-links strong{font:800 22px/1.2 'Manrope',sans-serif;letter-spacing:-.03em;margin:23px 0 20px}.island-links small{font-size:14px;color:var(--muted);margin-top:auto}.about{max-width:1200px;margin:45px auto 0;background:#edf5ff;padding:35px 40px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:55px;border-radius:12px}.about h2{font-size:33px}.about p:not(.eyebrow){color:var(--muted);margin:0 0 20px;line-height:1.75}.about .hero-link{background:var(--ink);color:white}.about .hero-link:hover{background:var(--blue)}footer{max-width:1280px;margin:30px auto 0;padding:30px 40px;display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid var(--line)}footer .brand-logo{width:200px}footer p{font-size:14px;color:var(--muted)}footer>a:last-child{font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:4px}dialog{width:min(600px,92vw);max-height:85vh;overflow:auto;padding:42px;border:0;border-radius:14px;color:var(--ink);box-shadow:0 20px 80px #152c3d22}dialog::backdrop{background:#152c3d99;backdrop-filter:blur(4px)}dialog h2{font-size:30px;margin:20px 0}dialog p{color:var(--muted)}dialog .close{position:absolute;right:18px;top:10px;background:none;border:0;font-size:30px;color:var(--ink)}body:has(dialog[open]){overflow:hidden}@media(max-width:1280px){main>section:not(.discover-top){margin-left:40px;margin-right:40px}}@media(max-width:1000px){.category-browse{gap:18px}.category-browse button{font-size:14px}.results{grid-template-columns:repeat(2,1fr)}.category-grid,.island-links{grid-template-columns:repeat(2,1fr)}.category-tile{min-height:230px}.island-links button{min-height:190px}.about{gap:30px}.nav-cta{display:none}.filters{grid-template-columns:1fr 1fr 1.15fr auto}.filters label{padding:0 10px}.filters button{padding:14px 22px}}@media(max-width:650px){header{padding:12px 20px;gap:15px}.brand-logo{width:178px}nav a{padding:7px 10px;font-size:13px}nav a:not(.active){display:none}.discover-top{padding:25px 20px 20px}.discover-top .eyebrow{font-size:10px}h1{font-size:37px}.lead{font-size:16px;margin:12px 0 19px}.category-browse{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;gap:23px;margin-bottom:19px;padding-bottom:5px}.category-browse button{white-space:nowrap;flex-shrink:0;font-size:14px}.filters{grid-template-columns:1fr 1fr;gap:12px 0;border-radius:17px;padding:15px;box-shadow:0 3px 12px #152c3d0c}.filters label:nth-child(2){border:0}.filters label.keyword{grid-column:1/-1;border-top:1px solid var(--line);padding:11px 4px 0}.filters button{grid-column:1/-1;margin:0}main>section:not(.discover-top){margin-left:20px;margin-right:20px}.intro{min-height:325px;border-radius:10px}.intro-copy{padding:27px 24px}.intro-copy h2{font-size:35px}.intro-copy p{font-size:16px}.credit{font-size:10px}.directory,.category-section,.islands{padding-top:32px}h2{font-size:25px}.section-heading{gap:10px;align-items:flex-start}.section-heading>.text-link{font-size:12px;white-space:normal;text-align:right;max-width:75px}.section-heading p{font-size:15px}.results{grid-template-columns:1fr}.empty{padding:24px 18px}.empty h3{font-size:22px}.category-grid,.island-links{gap:12px}.category-tile{padding:17px;min-height:228px}.tile-title{font-size:24px}.tile-label{font-size:13px}.island-links button{padding:17px;min-height:195px}.island-links strong{font-size:19px}.island-links small{font-size:13px}.about{grid-template-columns:1fr;padding:28px 23px;gap:20px}.about h2{font-size:29px}footer{padding:25px 20px;flex-wrap:wrap;gap:20px}footer p{display:none}footer .brand-logo{width:175px}dialog{padding:35px 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.directory{padding-top:14px;padding-bottom:36px}.directory .section-heading{margin-bottom:17px}.intro{margin-top:8px}.category-section{padding-top:36px}
/* User-supplied photography with the search placed over the slideshow. */
main>.slideshow-hero{max-width:none;margin:0!important;border-radius:0;position:relative;isolation:isolate;background:#10384c;min-height:460px;padding:54px 40px 76px;display:flex;align-items:center;justify-content:center;color:white;overflow:hidden}.hero-slides{position:absolute;inset:0;z-index:-2}.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.2s ease}.hero-slide.is-active{opacity:1}.slideshow-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0a263652,#0a263640 40%,#0a26367a)}.hero-search-content{width:100%;max-width:1100px}.slideshow-hero .eyebrow{color:#fff;text-shadow:0 2px 8px #09213166}.slideshow-hero h1{color:white;text-shadow:0 3px 24px #082b3c66}.slideshow-hero h1 em{color:#fff0bc}.slideshow-hero .lead{color:white;text-shadow:0 2px 8px #082b3c99}.slideshow-hero .category-browse button{color:white;text-shadow:0 1px 6px #082b3c99}.slideshow-hero .category-browse button:hover,.slideshow-hero .category-browse button.selected{border-bottom-color:#fff0bc;color:#fff0bc}.slideshow-hero .filters{box-shadow:0 12px 40px #09213126;border-color:#fff}.slideshow-controls{position:absolute;bottom:18px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:13px}.slideshow-controls>button{border:1px solid #ffffff99;color:white;background:#092c4399;border-radius:20px;min-height:36px;min-width:36px;font-size:24px;line-height:1}.slideshow-controls #slide-pause{font-size:12px;min-height:36px;padding:0 13px}.slide-dots{display:flex;align-items:center;gap:0}.slide-dots button{background:none;border:0;padding:12px 7px;min-width:24px;min-height:36px}.slide-dots button:before{content:'';display:block;width:7px;height:7px;background:#ffffff88;border-radius:50%}.slide-dots button[aria-pressed=true]:before{background:white;box-shadow:0 0 0 3px #ffffff33}.directory{padding-top:34px}.slideshow-controls button:hover{background:#113c56}.slide-dots button:hover{background:transparent}.slideshow-hero .filters label{color:var(--muted)}@media(max-width:650px){main>.slideshow-hero{padding:30px 20px 70px;min-height:560px}.slideshow-hero h1{font-size:37px}.slideshow-hero .category-browse{margin-bottom:16px}.slideshow-hero .filters{border-radius:17px}.slideshow-hero .lead{margin-bottom:15px}.hero-slide{object-position:50% center}.slideshow-controls{gap:6px;bottom:15px}.slideshow-controls #slide-pause{font-size:12px;padding:0 9px}.slide-dots button{padding:12px 5px;min-width:20px}}@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}
.guidebook-section{padding-top:42px}.home-guide{display:grid;grid-template-columns:260px 1fr;gap:45px;border:1px solid var(--line);border-radius:14px;padding:30px;background:var(--paper);align-items:center}.guide-cover-placeholder{width:100%;min-height:210px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:25px;background:white;border:1px dashed #b6c8d5;padding:30px;text-align:center}.guide-cover-placeholder img{max-width:100%;width:215px;height:auto}.guide-cover-placeholder span{font-size:13px;color:var(--muted)}.home-guide h3{font-size:27px}.home-guide p:not(.eyebrow){color:var(--muted)}.guide-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.guide-primary{display:inline-block;background:var(--ink);color:white;border-radius:24px;padding:12px 23px;font-weight:600;font-size:14px}.guide-primary:hover{background:var(--blue)}.guide-status{font-size:13px;color:var(--muted);line-height:1.7}.guide-main{max-width:1200px;margin:auto;padding:20px 0}.guide-main>section{margin:0!important}.breadcrumbs{font-size:14px;color:var(--muted);margin:0 0 30px}.breadcrumbs a{text-decoration:underline}.product-section{display:grid;grid-template-columns:1fr 1.1fr;gap:70px;padding-bottom:45px}.product-cover{background:var(--paper);border-radius:14px;padding:40px;display:flex;align-items:center;justify-content:center}.product-cover .guide-cover-placeholder{min-height:400px}.product-cover>img{width:auto;height:auto;max-width:100%;max-height:540px;box-shadow:0 12px 35px #152c3d18}.product-info h1{font-size:43px}.product-info>p:not(.eyebrow){color:var(--muted);margin:20px 0}.purchase-panel{margin:28px 0;padding:25px;border:1px solid var(--line);border-radius:12px}.purchase-panel h2{font-size:21px}.purchase-panel #guide-price{font-size:25px;font-weight:700;margin:14px 0 6px}.purchase-panel #guide-shipping{font-size:14px;color:var(--muted)}.paypal-checkout{display:inline-block;background:#ffc439;color:#102a3b;border:0;border-radius:24px;padding:13px 23px;font-size:15px;font-weight:700;margin-top:8px}.paypal-checkout:disabled{opacity:.65;cursor:not-allowed}.paypal-checkout[hidden]{display:none}.guide-selector{display:block;font-size:14px;font-weight:600}.guide-selector[hidden]{display:none}.guide-selector select{display:block;margin-top:10px;border:1px solid var(--line);padding:10px;max-width:100%}.reader-section{padding:40px 0;border-top:1px solid var(--line)}.reader-empty{padding:55px 25px;text-align:center;background:var(--paper);border:1px solid var(--line);border-radius:12px}.reader-empty p{color:var(--muted)}.reader-toolbar,.reader-footer{display:flex;gap:15px;align-items:center;justify-content:center;padding:15px;flex-wrap:wrap;background:#edf3f7}.reader-toolbar button,.reader-footer button{background:white;border:1px solid var(--line);border-radius:6px;font-size:14px;padding:9px 14px}.reader-toolbar button:disabled{opacity:.45;cursor:not-allowed}.reader-toolbar span{font-size:14px;min-width:100px;text-align:center}.page-stage{min-height:300px;background:#dce6ec;display:flex;align-items:center;justify-content:center;padding:25px;overflow:hidden;perspective:1200px}.page-stage img{display:block;max-width:100%;max-height:75vh;object-fit:contain;box-shadow:0 10px 35px #152c3d22}.page-stage img.turning{animation:page-turn .35s ease}.page-stage img[hidden]{display:none}.reader-footer{font-size:14px}.reader-footer input{width:65px;margin-left:8px;padding:7px;border:1px solid var(--line);border-radius:5px}.flipbook:fullscreen{background:#dce6ec;overflow:auto}.flipbook:fullscreen .page-stage img{max-height:78vh}.flipbook[hidden],.reader-empty[hidden]{display:none}@keyframes page-turn{from{opacity:.3;transform:rotateY(-12deg) translateX(10px)}to{opacity:1;transform:none}}@media(max-width:1280px){.guide-main{margin:0 40px}}@media(max-width:750px){.home-guide{grid-template-columns:1fr;gap:25px;padding:23px}.home-guide .guide-cover-placeholder{max-width:300px;margin:auto}.product-section{grid-template-columns:1fr;gap:25px}.product-cover{padding:25px}.product-cover .guide-cover-placeholder{min-height:240px}.product-info h1{font-size:34px}.guide-main{margin:0 20px}.page-stage{padding:15px}.reader-toolbar{gap:8px}.reader-section .section-heading p{font-size:15px}.guidebook-section{padding-top:35px}}@media(prefers-reduced-motion:reduce){.page-stage img.turning{animation:none}}
.home-guide-cover{display:block;text-align:center}.home-guide-cover img{display:block;width:auto;max-width:100%;max-height:320px;margin:auto;box-shadow:0 8px 22px #152c3d20}.home-guide .guide-status{margin-bottom:0}
/* Full-width hero, independent of the page content gutters. */
main > section.discover-top.slideshow-hero {
  width: 100%;
  max-width: none;
  margin-left: 0 !important;
  margin-right: 0 !important;
  border-radius: 0;
}
main > section.discover-top.slideshow-hero .hero-slides,
main > section.discover-top.slideshow-hero .hero-slide {
  width: 100%;
  height: 100%;
}
main > section.discover-top.slideshow-hero .hero-slide {
  object-fit: cover;
}
.listing-photo{display:block;width:calc(100% + 46px);max-width:none;margin:-23px -23px 21px;aspect-ratio:4/3;object-fit:cover;border-radius:11px 11px 0 0}.detail-photo{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:9px;margin:0 0 22px}.card{overflow:hidden}.card .description{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.guide-collection-banner{position:relative;overflow:hidden;border-radius:14px;min-height:365px;display:flex;align-items:center;isolation:isolate;background:#123f55}.collection-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.guide-collection-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#082c42e8,#082c42b3 48%,#082c4215);z-index:-1}.collection-copy{padding:42px;max-width:590px;color:white}.collection-copy .eyebrow{color:#e4efff}.collection-copy h2{font-size:42px;color:white}.collection-copy>p:not(.eyebrow){max-width:410px;line-height:1.7}.collection-copy .guide-primary{background:white;color:var(--ink)}.collection-copy .guide-primary:hover{background:var(--yellow)}.collection-copy .collection-note{font-size:13px;color:#e4efff;margin-bottom:0}.guide-collection-heading{padding:0 0 35px;border-bottom:1px solid var(--line);margin-bottom:35px!important}.guide-collection-heading h1{font-size:42px}.guide-collection-heading>p:not(.eyebrow){color:var(--muted)}.guide-main>.product-section{padding-top:35px}@media(max-width:650px){.collection-copy{padding:30px 24px}.collection-copy h2{font-size:33px}.guide-collection-banner{min-height:360px}.guide-collection-heading h1{font-size:34px}}
.guide-cover-collection{padding-top:45px;padding-bottom:15px}.guide-cover-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px;align-items:start;padding-top:10px}.cover-slot{min-width:0}.cover-slot>img,.cover-pending{display:block;width:100%;aspect-ratio:396/612;object-fit:contain;background:#f2f5f7}.available-guide>img{box-shadow:0 7px 18px #152c3d16;transition:transform .2s,box-shadow .2s}.available-guide:hover>img{transform:translateY(-4px);box-shadow:0 11px 24px #152c3d22}.cover-slot h3{font-size:16px;line-height:1.4;margin:14px 0 3px;letter-spacing:-.02em}.cover-slot p{font-size:13px;color:var(--muted);line-height:1.5;margin:8px 0 0}.cover-pending{display:flex;align-items:center;justify-content:center;text-align:center;padding:15px;border:1px dashed #c8d4de;color:var(--muted);font-size:13px}.guide-cover-collection>.guide-status{margin-top:24px}.guide-cover-collection .section-heading>.guide-primary{white-space:nowrap}@media(max-width:900px){.guide-cover-row{gap:14px}.cover-pending{font-size:12px;padding:8px}}@media(max-width:650px){.guide-cover-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 14px}.guide-cover-collection .section-heading{flex-wrap:wrap}.guide-cover-collection .section-heading>.guide-primary{padding:10px 18px}.cover-slot h3{font-size:14px}.cover-slot p{font-size:12px}}
.island-menu{position:relative;align-self:center}.island-menu summary{padding:10px 18px;cursor:pointer;font-size:15px;font-weight:700;list-style:none;border-radius:24px}.island-menu summary::-webkit-details-marker{display:none}.island-menu summary:hover,.island-menu[open] summary{background:var(--paper)}.island-menu-panel{position:absolute;top:100%;left:-70px;min-width:470px;display:grid;grid-template-columns:1fr 1fr;padding:16px;gap:3px;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 35px #152c3d20;z-index:20}.island-menu-panel a{font-size:14px;padding:9px 12px;border-radius:5px;line-height:1.4}.island-menu-panel .all-islands{grid-column:1/-1;border-bottom:1px solid var(--line);border-radius:0;margin-bottom:7px}.island-page,.island-hub{max-width:1200px;margin:auto}.island-page-heading{padding:25px 0 30px}.island-page-heading h1{font-size:45px;max-width:900px}.island-page-heading>p:last-child{color:var(--muted);font-size:18px;margin-bottom:0}.island-search{padding:25px;background:var(--paper);border:1px solid var(--line);border-radius:14px}.island-search .category-browse{margin-bottom:20px}.island-search .filters{max-width:none}.island-search select:disabled{opacity:1;color:var(--ink);cursor:default}.island-page-links{display:flex;gap:30px;align-items:center;padding:10px 0 25px}.island-destination-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-bottom:35px}.island-destination{padding:25px;border:1px solid var(--line);border-radius:12px;min-height:205px;display:flex;flex-direction:column;transition:background .2s,border-color .2s}.island-destination:hover{background:#edf5ff;border-color:var(--blue)}.island-destination>span{font-size:12px;color:var(--teal)}.island-destination h2{font-size:23px;margin:20px 0;line-height:1.25}.island-destination p{font-size:14px;color:var(--muted);margin-top:auto;margin-bottom:0}@media(max-width:1280px){.island-page,.island-hub{margin:0 40px}.island-page>section,.island-hub>section{margin-left:0!important;margin-right:0!important}}@media(max-width:900px){.island-destination-grid{grid-template-columns:repeat(2,1fr)}.island-menu-panel{left:-200px;min-width:410px}}@media(max-width:650px){header nav{gap:0}.island-menu summary{font-size:13px;padding:7px 10px}.island-menu-panel{position:fixed;top:90px;left:20px;right:20px;min-width:0;max-height:70vh;overflow:auto;grid-template-columns:1fr}.island-menu-panel a{display:block!important}.island-page,.island-hub{margin:0 20px}.island-page-heading h1{font-size:34px}.island-search{padding:17px}.island-search .category-browse{margin-bottom:15px}.island-page-links{flex-wrap:wrap;gap:20px}.island-destination-grid{gap:12px}.island-destination{padding:18px;min-height:200px}.island-destination h2{font-size:20px}.island-destination p{font-size:13px}}
/* Modern homepage refinement. */
body:has(.slideshow-hero){background:#fff}body:has(.slideshow-hero) > header{padding-top:14px;padding-bottom:14px}body:has(.slideshow-hero) > header nav a.active{background:#edf5ff;color:var(--teal)}body:has(.slideshow-hero) > header .brand-logo{width:210px}body:has(.slideshow-hero) > header .nav-cta{background:var(--blue);box-shadow:0 4px 14px #247be71a}body:has(.slideshow-hero) > header .nav-cta:hover{background:var(--teal)}
main > section.discover-top.slideshow-hero{min-height:475px;padding-top:48px;padding-bottom:75px}.slideshow-hero:before{background:linear-gradient(180deg,#082b3c30,#082b3c48 45%,#082b3c77)}.hero-search-content h1{font-size:clamp(40px,4.5vw,64px);font-weight:800;letter-spacing:-.055em}.slideshow-hero .lead{font-size:18px;margin:13px 0 25px}.slideshow-hero .eyebrow{letter-spacing:.2em;font-size:11px}.slideshow-hero .category-browse{gap:7px;margin-bottom:22px}.slideshow-hero .category-browse button{border:1px solid #ffffff55;border-radius:22px;padding:8px 17px;font-size:14px;background:#12344944;text-shadow:none;backdrop-filter:blur(8px);transition:background .2s,border-color .2s}.slideshow-hero .category-browse button:hover,.slideshow-hero .category-browse button.selected{background:white;border-color:white;color:var(--ink)}.slideshow-hero .filters{padding:13px;border-radius:18px;box-shadow:0 16px 55px #09213133;max-width:1000px}.slideshow-hero .filters label{padding:0 22px}.slideshow-hero .filters label:first-child{padding-left:12px}.slideshow-hero .filters input,.slideshow-hero .filters select{font-size:15px;padding-top:5px;padding-bottom:5px}.slideshow-hero .filters button{border-radius:11px;padding:16px 32px}.slideshow-controls>button{border-color:#ffffff55;backdrop-filter:blur(8px)}
body:has(.slideshow-hero) .directory{padding-top:44px;padding-bottom:12px}body:has(.slideshow-hero) .section-heading h2{font-size:30px;letter-spacing:-.045em}body:has(.slideshow-hero) .section-heading p{margin-top:7px;font-size:15px}body:has(.slideshow-hero) .result-bar{border-top:1px solid var(--line);padding-top:15px;margin-bottom:23px}body:has(.slideshow-hero) .results{gap:24px}body:has(.slideshow-hero) .card{border:1px solid #e5ebef;border-radius:16px;box-shadow:0 4px 16px #152c3d05;padding:21px;transition:transform .25s,box-shadow .25s}body:has(.slideshow-hero) .card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #152c3d13}body:has(.slideshow-hero) .listing-photo{width:calc(100% + 42px);margin:-21px -21px 20px;border-radius:15px 15px 0 0}body:has(.slideshow-hero) .category-label{font-size:11px;display:inline-block;background:#edf5ff;padding:6px 9px;border-radius:7px;line-height:1.5}body:has(.slideshow-hero) .card h3{font-size:21px;line-height:1.3;letter-spacing:-.035em}body:has(.slideshow-hero) .card .location{font-size:13px;line-height:1.6}body:has(.slideshow-hero) .card .description{font-size:14px;line-height:1.7;margin-bottom:22px}body:has(.slideshow-hero) .card button{background:var(--paper);border:1px solid #e6edf2;border-radius:9px;padding:10px 14px;color:var(--ink);text-decoration:none;align-self:stretch;text-align:center;transition:background .2s,color .2s}body:has(.slideshow-hero) .card button:hover{background:var(--ink);color:white}
body:has(.slideshow-hero) .category-section{padding-top:44px}body:has(.slideshow-hero) .category-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:15px}body:has(.slideshow-hero) .category-tile{border-radius:14px;padding:20px;min-height:213px;border:1px solid #152c3d08}body:has(.slideshow-hero) .tile-number{margin-bottom:26px;font-size:11px;opacity:.7}body:has(.slideshow-hero) .tile-title{font-size:23px}body:has(.slideshow-hero) .tile-label{font-size:13px;font-weight:700;padding-top:22px}body:has(.slideshow-hero) .tile-stay{background:#e8f1ff}body:has(.slideshow-hero) .tile-food{background:#fff0bb}body:has(.slideshow-hero) .tile-do{background:#e0f4ee}body:has(.slideshow-hero) .tile-shop{background:#f0eafa}
body:has(.slideshow-hero) .guide-cover-collection{padding-top:52px;padding-bottom:10px}body:has(.slideshow-hero) .guide-cover-collection .guide-cover-row{padding:27px 0 20px;border-top:1px solid var(--line);gap:28px}body:has(.slideshow-hero) .guide-cover-collection .cover-pending{background:#f7f9fb;border-color:#d5dfe6;border-radius:5px}body:has(.slideshow-hero) .guide-cover-collection .available-guide img{border-radius:3px}body:has(.slideshow-hero) .guide-cover-collection>.guide-status{margin-top:4px}body:has(.slideshow-hero) .about{margin-top:40px;border-radius:18px;padding:40px;background:var(--ink);color:white}body:has(.slideshow-hero) .about .eyebrow{color:#a6caff}body:has(.slideshow-hero) .about p:not(.eyebrow){color:#ccd9e3}body:has(.slideshow-hero) .about .hero-link{background:white;color:var(--ink)}body:has(.slideshow-hero) footer{padding-top:35px;padding-bottom:35px;margin-top:40px}
@media(max-width:1000px){body:has(.slideshow-hero) .category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}body:has(.slideshow-hero) .category-tile{min-height:195px}body:has(.slideshow-hero) .guide-cover-collection .guide-cover-row{gap:18px}.slideshow-hero .filters label{padding:0 12px}.slideshow-hero .category-browse button{padding:7px 13px}}@media(max-width:650px){body:has(.slideshow-hero) > header .brand-logo{width:175px}main>section.discover-top.slideshow-hero{padding:32px 20px 73px;min-height:555px}.hero-search-content h1{font-size:38px}.slideshow-hero .lead{font-size:16px;margin-bottom:19px}.slideshow-hero .category-browse{gap:9px;overflow-x:auto;padding-bottom:6px}.slideshow-hero .category-browse button{font-size:13px;padding:7px 12px}.slideshow-hero .filters label{padding:0 10px}.slideshow-hero .filters label.keyword{padding:13px 10px 0}.slideshow-hero .filters button{padding:13px 20px}body:has(.slideshow-hero) .directory{padding-top:32px}body:has(.slideshow-hero) .section-heading h2{font-size:25px}body:has(.slideshow-hero) .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}body:has(.slideshow-hero) .category-tile{min-height:205px;padding:19px}body:has(.slideshow-hero) .category-section{padding-top:34px}body:has(.slideshow-hero) .guide-cover-collection{padding-top:36px}body:has(.slideshow-hero) .guide-cover-collection .guide-cover-row{gap:24px 15px}body:has(.slideshow-hero) .about{padding:30px 24px;margin-top:30px}}
.island-map{padding:35px 0 25px;border-top:1px solid var(--line);margin-top:25px!important}.island-map iframe{display:block;width:100%;height:420px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}.map-note{font-size:13px;color:var(--muted);margin-top:12px}.map-note a{text-decoration:underline;text-underline-offset:3px}.island-map h2{font-size:27px}@media(max-width:650px){.island-map iframe{height:330px}.island-map h2{font-size:24px}.island-map .section-heading{flex-wrap:wrap}.island-map .section-heading>.text-link{max-width:none;text-align:left;font-size:14px}}
body:has(.island-photo-hero) .island-page{max-width:none;margin:0}.island-page>section.island-photo-hero{max-width:none;width:100%;margin:0!important;position:relative;isolation:isolate;overflow:hidden;min-height:490px;background:#123b51;color:white;padding:32px max(40px,calc((100% - 1200px)/2)) 40px}.island-hero-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center}.island-photo-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#092e48c9,#092e4866),linear-gradient(0deg,#092e4855,transparent)}.island-hero-content{width:100%;max-width:1200px;margin:auto}.island-photo-hero .breadcrumbs{color:#edf5ff;margin:0 0 32px;font-size:13px}.island-photo-hero h1{text-transform:uppercase;font-size:clamp(45px,7.3vw,105px);letter-spacing:-.045em;line-height:1.04;font-weight:800;max-width:1200px;text-wrap:balance;text-shadow:0 3px 22px #092e4833}.island-hero-subtitle{font-size:22px;line-height:1.5;margin:18px 0 30px;color:white}.island-hero-search{padding-top:20px;border-top:1px solid #ffffff88}.island-hero-search .category-browse{justify-content:flex-start;margin-bottom:20px;gap:25px}.island-hero-search .category-browse button{color:white}.island-hero-search .category-browse button:hover,.island-hero-search .category-browse button.selected{color:#fff0bc;border-color:#fff0bc}.island-hero-search .filters{max-width:none;border-radius:10px;box-shadow:0 15px 35px #092e4822;padding:13px;background:#fff}.island-hero-search .filters button{border-radius:6px}.island-hero-search .filters label{color:var(--muted)}.island-page>.directory,.island-page>.island-map,.island-page>.island-page-links{max-width:1200px;margin-left:auto!important;margin-right:auto!important}.island-page>.directory{padding-top:40px}@media(max-width:1280px){.island-page>.directory,.island-page>.island-map,.island-page>.island-page-links{margin-left:40px!important;margin-right:40px!important}}@media(max-width:650px){.island-page>section.island-photo-hero{padding:24px 20px 30px;min-height:600px}.island-photo-hero h1{font-size:clamp(38px,10vw,60px);overflow-wrap:normal}.island-photo-hero .breadcrumbs{margin-bottom:25px;font-size:12px}.island-hero-subtitle{font-size:18px;margin:16px 0 22px}.island-hero-search .category-browse{gap:22px;margin-bottom:15px;padding-bottom:6px}.island-hero-search .filters label.keyword{padding-top:12px}.island-page>.directory,.island-page>.island-map,.island-page>.island-page-links{margin-left:20px!important;margin-right:20px!important}}
.island-map.island-overview{display:grid;grid-template-columns:1fr 1.2fr;gap:55px;align-items:center;padding-top:40px;padding-bottom:35px}.island-description h2{font-size:34px;line-height:1.2;margin-bottom:20px}.island-description>p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.8;margin-bottom:24px}.island-map-column{min-width:0}.island-map-column iframe{height:360px}.island-map-column .map-note{margin-bottom:0}@media(max-width:900px){.island-map.island-overview{gap:30px;grid-template-columns:1fr 1fr}.island-description h2{font-size:28px}}@media(max-width:650px){.island-map.island-overview{grid-template-columns:1fr;gap:25px}.island-description>p:not(.eyebrow){font-size:16px}.island-map-column iframe{height:320px}}
.homepage-islands{padding:38px 0 28px;border-bottom:1px solid var(--line)}.homepage-islands .section-heading{align-items:center}.homepage-islands .eyebrow{margin-bottom:9px}.homepage-islands .section-heading p:not(.eyebrow){max-width:700px;line-height:1.7}.homepage-islands .guide-primary{white-space:nowrap}.home-island-links{display:flex;flex-wrap:wrap;gap:10px}.home-island-links a{border:1px solid #d5e0e9;background:#f5f9fc;border-radius:25px;padding:9px 16px;font-size:14px;font-weight:600;transition:background .2s,border-color .2s,color .2s}.home-island-links a:hover{background:var(--blue);border-color:var(--blue);color:white}@media(max-width:650px){.homepage-islands{padding:30px 0 25px}.homepage-islands .section-heading{flex-direction:column;align-items:flex-start;gap:16px}.home-island-links{gap:8px}.home-island-links a{padding:8px 13px;font-size:13px}}
/* Taller homepage and island photography. */
main > section.discover-top.slideshow-hero {
  min-height: 650px;
  padding-top: 80px;
  padding-bottom: 105px;
}
.island-page > section.island-photo-hero {
  min-height: 650px;
  display: flex;
  align-items: center;
  padding-top: 55px;
  padding-bottom: 65px;
}
@media (max-width: 650px) {
  main > section.discover-top.slideshow-hero {
    min-height: 660px;
    padding-top: 55px;
    padding-bottom: 90px;
  }
  .island-page > section.island-photo-hero {
    min-height: 690px;
    padding-top: 40px;
    padding-bottom: 45px;
  }
}
.before-go-section{padding-top:45px}.before-go-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.before-go-card{position:relative;aspect-ratio:1;display:block;overflow:hidden;border-radius:10px;background:var(--ink)}.before-go-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.before-go-card:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#061e30cc)}.before-go-card span{position:absolute;bottom:22px;left:22px;right:15px;z-index:1;color:white;font:800 27px/1.15 'Manrope',sans-serif;letter-spacing:-.035em}.before-go-card:hover img{transform:scale(1.04)}.homepage-banner-space{width:100%;max-width:970px;min-height:120px;margin:38px auto 0;padding:20px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;border:1px dashed #c7d3dd;background:#f7f9fb;color:var(--muted);text-align:center}.homepage-banner-space span{font-size:14px;font-weight:600}.homepage-banner-space small{font-size:12px}.before-go-main{max-width:1200px;margin:auto}.before-go-intro{padding:25px 0 35px}.before-go-intro h1{font-size:48px}.before-go-intro>p:last-child{color:var(--muted);font-size:18px}.before-go-topic{display:grid;grid-template-columns:1fr 1.2fr;gap:45px;padding:35px 0;border-top:1px solid var(--line);align-items:center}.before-go-topic>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.before-go-topic h2{font-size:32px}.before-go-topic p,.before-go-topic li{color:var(--muted)}.before-go-topic ul{padding-left:22px;line-height:1.8;margin-bottom:25px}.before-go-topic li{margin-bottom:9px}@media(max-width:1280px){.before-go-main{margin:0 40px}.before-go-main>section{margin-left:0!important;margin-right:0!important}}@media(max-width:850px){.before-go-card span{font-size:22px;bottom:17px;left:17px}.before-go-grid{gap:14px}}@media(max-width:650px){.before-go-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.before-go-card span{font-size:22px}.homepage-banner-space{margin-top:28px;min-height:100px}.before-go-main{margin:0 20px}.before-go-intro h1{font-size:36px}.before-go-topic{grid-template-columns:1fr;gap:23px}.before-go-topic h2{font-size:28px}.before-go-section{padding-top:32px}}
/* Compact listing cards link directly to individual business pages. */
body:has(.slideshow-hero) .results{grid-template-columns:repeat(4,minmax(0,1fr))}.listing-link{min-height:0;display:flex;flex-direction:column;text-decoration:none}.listing-link h3{margin:0 0 8px}.listing-link .location{margin:0 0 7px;font-size:14px}.listing-category{font-size:13px;line-height:1.6;color:var(--teal);margin:0;font-weight:600}.listing-link:hover h3{color:var(--teal)}.business-main{max-width:1200px;margin:auto;padding:25px 0 45px}.business-heading{padding:0 0 25px}.business-heading h1{font-size:44px;max-width:1000px}.business-heading>p:last-child{font-size:18px;color:var(--muted)}.business-layout{display:grid;grid-template-columns:1.8fr 1fr;gap:40px;align-items:start}.business-main-photo{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;margin-bottom:30px}.business-story h2{font-size:28px;margin-bottom:18px}.business-story>p{color:var(--muted);line-height:1.85}.business-contact-panel{border:1px solid var(--line);border-radius:14px;padding:28px;background:var(--paper)}.business-contact-panel h2{font-size:24px}.business-contact-panel>p{color:var(--muted)}.business-contact{display:block;border:1px solid var(--line);background:white;border-radius:9px;padding:12px 15px;font-size:15px;font-weight:600;margin-bottom:12px}.business-contact:hover{background:var(--ink);color:white}.business-contact-panel>.text-link{display:inline-block;margin-top:15px}@media(max-width:1280px){.business-main{margin:0 40px}.business-main>section{margin-left:0!important;margin-right:0!important}}@media(max-width:1000px){body:has(.slideshow-hero) .results{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){body:has(.slideshow-hero) .results{grid-template-columns:1fr}.business-main{margin:0 20px}.business-heading h1{font-size:33px}.business-layout{grid-template-columns:1fr;gap:25px}.business-contact-panel{padding:23px}}
.hero-guide-cover{position:absolute;right:max(50px,calc((100% - 1300px)/2));bottom:30px;width:125px;display:block;z-index:3;transform:rotate(15deg);transform-origin:center;transition:translate .2s,filter .2s}.hero-guide-cover img{display:block;width:100%;height:auto;box-shadow:0 9px 25px #061e3070;border-radius:2px}.hero-guide-cover:hover{translate:0 -7px;filter:brightness(1.04)}.hero-guide-cover:focus-visible{outline:3px solid white;outline-offset:8px}.guide-collection-main{max-width:1200px;margin:auto;padding:25px 0 40px}.guide-collection-intro{padding-bottom:5px}.guide-collection-intro h1{font-size:44px}.guide-collection-intro>p:not(.eyebrow){color:var(--muted)}.guide-collection-main .guide-cover-collection{padding-top:25px}.guide-collection-main .guide-cover-row{padding-top:20px}.guide-collection-main>.guide-cover-collection .section-heading>div{display:none}@media(max-width:1280px){.guide-collection-main{margin:0 40px}.guide-collection-main>section{margin-left:0!important;margin-right:0!important}}@media(max-width:900px){.hero-guide-cover{width:100px;right:40px;bottom:25px}}@media(max-width:650px){main>section.discover-top.slideshow-hero{padding-bottom:190px;min-height:760px}.hero-guide-cover{width:90px;right:30px;bottom:66px}.guide-collection-main{margin:0 20px}.guide-collection-intro h1{font-size:35px}}
/* Shared footer on every page. */
body footer.site-footer{display:block;max-width:none;margin:55px 0 0;padding:0;background:#101b25;color:#fff;border:0}.footer-main{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.2fr .8fr 1.2fr;gap:65px;padding:45px 40px}.footer-guide-brand img{display:block;width:230px;max-width:100%;height:auto;background:white;padding:9px;border-radius:4px}.site-footer h2{font-family:'Manrope',sans-serif;font-size:17px;line-height:1.5;letter-spacing:0;font-weight:700;margin:0 0 17px}.site-footer .footer-main p{display:block;color:#c5d0db;font-size:14px;line-height:1.8;margin:13px 0}.footer-links a{display:block;color:#c5d0db;font-size:14px;line-height:1.8;padding:4px 0}.footer-designer a{overflow-wrap:anywhere}.site-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}.footer-bottom{max-width:1200px;margin:auto;display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff22;padding:20px 0}.site-footer .footer-bottom p{display:block;font-size:12px;color:#b8c7d4;margin:0}.site-footer .footer-designer h2{color:#fff}.site-footer .footer-designer p:last-child{margin-bottom:0}@media(max-width:1280px){.footer-bottom{margin-left:40px;margin-right:40px}}@media(max-width:800px){.footer-main{gap:30px;grid-template-columns:1fr 1fr}.footer-guide-brand{grid-column:1/-1}}@media(max-width:650px){.footer-main{padding:32px 20px;grid-template-columns:1fr;gap:28px}.footer-guide-brand{grid-column:auto}.footer-bottom{margin:0 20px;flex-direction:column;gap:10px;padding:18px 0}.site-footer .footer-main p{display:block}body:has(.slideshow-hero) footer.site-footer{padding:0;margin-top:40px}}
.contact-main{max-width:1200px;margin:auto;padding:25px 0 45px}.contact-intro{padding-bottom:35px}.contact-intro h1{font-size:45px}.contact-intro>p:last-child{font-size:18px;color:var(--muted)}.contact-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;border-top:1px solid var(--line);padding-top:35px}.contact-details>h2,.contact-form-panel>h2{font-size:30px;margin-bottom:27px}.contact-group{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.contact-group h3{font-size:19px;margin-bottom:15px}.contact-group p{font-size:16px;color:var(--muted);line-height:1.8}.contact-group a{color:var(--teal);font-weight:600;overflow-wrap:anywhere}.contact-form-panel{padding:30px;background:var(--paper);border:1px solid var(--line);border-radius:14px}.contact-form-panel label{display:block;font-size:14px;font-weight:600;margin-bottom:19px}.contact-form-panel input,.contact-form-panel textarea{display:block;width:100%;padding:12px;border:1px solid #c7d4de;border-radius:7px;background:white;margin-top:7px;color:var(--ink);font-size:16px}.contact-form-panel textarea{resize:vertical}.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form-panel .optional{color:var(--muted);font-weight:400}.contact-form-note{font-size:14px;color:var(--muted);line-height:1.7}.contact-form-panel button{border:0;cursor:pointer}.contact-form-panel #contact-status{font-size:14px;color:var(--muted);line-height:1.7}.contact-form-panel #contact-email-fallback[hidden]{display:none}@media(max-width:1280px){.contact-main{margin:0 40px}.contact-main>section{margin-left:0!important;margin-right:0!important}}@media(max-width:750px){.contact-layout{grid-template-columns:1fr;gap:30px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:15px 25px}.contact-details>h2{grid-column:1/-1}.contact-group{margin:0;padding-bottom:20px}.contact-main{margin:0 20px}.contact-intro h1{font-size:34px}.contact-form-panel{padding:23px}.contact-form-row{grid-template-columns:1fr;gap:0}}@media(max-width:400px){.contact-details{grid-template-columns:1fr}}
/* Tourism editorial direction: expansive imagery and restrained blue typography. */
body:has(.slideshow-hero) > header{max-width:none;padding:18px 5%;background:white}body:has(.slideshow-hero) > header .brand-logo{width:225px}body:has(.slideshow-hero) > header nav a{font-weight:500;border-radius:0;font-size:14px}body:has(.slideshow-hero) > header nav a.active{background:none;color:var(--blue);border-bottom:1px solid var(--blue)}body:has(.slideshow-hero) > header .nav-cta{background:none;border:1px solid var(--blue);color:var(--blue);border-radius:0;box-shadow:none}main>section.discover-top.slideshow-hero{min-height:720px;padding-top:85px;padding-bottom:115px}.hero-search-content h1{font-size:clamp(48px,6vw,86px);font-weight:500;letter-spacing:-.055em}.hero-search-content h1 em{font-style:italic;color:white;font-weight:400}.slideshow-hero .eyebrow{font-weight:500;font-size:12px;letter-spacing:.24em}.slideshow-hero .lead{font-size:20px;font-weight:400}.slideshow-hero:before{background:linear-gradient(180deg,#06284018,#06284038 48%,#06284088)}.slideshow-hero .category-browse{gap:24px}.slideshow-hero .category-browse button{border:0;border-radius:0;background:none;backdrop-filter:none;font-size:14px;padding:7px 0;border-bottom:1px solid #ffffff88}.slideshow-hero .category-browse button:hover,.slideshow-hero .category-browse button.selected{background:none;color:white;border-bottom-color:white}.slideshow-hero .filters{border-radius:0;padding:16px;box-shadow:0 10px 35px #06284015}.slideshow-hero .filters button{border-radius:0;font-weight:500}.hero-guide-cover{bottom:35px;right:5%;width:145px}body:has(.slideshow-hero) .section-heading h2{font-size:37px;font-weight:500;letter-spacing:-.045em}body:has(.slideshow-hero) .section-heading p{font-size:16px}.homepage-islands{padding-top:55px;padding-bottom:40px}.homepage-islands .eyebrow{font-weight:500;letter-spacing:.2em}.home-island-links{gap:12px 25px}.home-island-links a{border:0;border-bottom:1px solid #c8d7e2;border-radius:0;padding:10px 0;background:none;font-weight:500;color:var(--teal)}.home-island-links a:hover{background:none;color:var(--ink);border-color:var(--ink)}.homepage-islands .guide-primary{background:none;border:1px solid var(--blue);color:var(--blue);border-radius:0;font-weight:500}body:has(.slideshow-hero) .directory{padding-top:45px}body:has(.slideshow-hero) .card{border-radius:0;border:0;box-shadow:none;padding:0}body:has(.slideshow-hero) .card:hover{box-shadow:none;transform:translateY(-3px)}body:has(.slideshow-hero) .listing-photo{width:100%;margin:0 0 18px;border-radius:0}body:has(.slideshow-hero) .card h3{font-size:21px;font-weight:600}.listing-category{font-weight:400}body:has(.slideshow-hero) .before-go-section{padding-top:55px}.before-go-card{border-radius:0;aspect-ratio:4/5}.before-go-card span{font-size:29px;font-weight:500;bottom:25px;left:23px}.homepage-banner-space{background:white}body:has(.slideshow-hero) .about{background:#edf5fb;color:var(--ink);border-radius:0;padding:50px;margin-top:55px}.about h2{font-weight:500!important}body:has(.slideshow-hero) .about .eyebrow{color:var(--teal)}body:has(.slideshow-hero) .about p:not(.eyebrow){color:var(--muted)}body:has(.slideshow-hero) .about .hero-link{border:1px solid var(--blue);color:var(--blue);background:none;border-radius:0}.island-photo-hero h1{font-weight:600}.island-photo-hero .island-hero-subtitle{font-weight:400}.island-hero-search .filters{border-radius:0}.island-hero-search .filters button{border-radius:0}.island-description h2{font-weight:500}.island-map-column iframe{border-radius:0}@media(max-width:650px){body:has(.slideshow-hero) > header .brand-logo{width:175px}main>section.discover-top.slideshow-hero{min-height:780px;padding:45px 20px 190px}.hero-search-content h1{font-size:47px}.slideshow-hero .lead{font-size:17px}.slideshow-hero .category-browse{gap:22px}.hero-guide-cover{width:95px;bottom:65px;right:30px}body:has(.slideshow-hero) .section-heading h2{font-size:30px}.before-go-card span{font-size:24px;left:16px;bottom:18px}body:has(.slideshow-hero) .about{padding:30px 24px}.homepage-islands{padding-top:35px}}
.listing-photo-pending{display:flex!important;align-items:center;justify-content:center;background:#edf3f7;color:var(--muted);font-size:13px;aspect-ratio:4/3}.business-photo-pending{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:var(--paper);color:var(--muted);border:1px dashed var(--line);margin-bottom:30px;font-size:15px}
/* Consistent boxes for the complete business directory. */
body:has(.slideshow-hero) .results .listing-link{border:1px solid #dce5ec;border-radius:10px;padding:18px;background:white;overflow:hidden}body:has(.slideshow-hero) .results .listing-link .listing-photo{width:calc(100% + 36px);margin:-18px -18px 18px;border-radius:9px 9px 0 0}body:has(.slideshow-hero) .results .listing-link:hover{box-shadow:0 9px 24px #152c3d10}
.hero-search-content h1.welcome-script{font-family:'Caveat','Brush Script MT',cursive;font-size:clamp(56px,7vw,102px);font-weight:500;letter-spacing:-.02em;line-height:1.2;color:white;text-shadow:0 3px 20px #082b3c66;padding:8px 0 12px;text-wrap:balance}@media(max-width:650px){.hero-search-content h1.welcome-script{font-size:clamp(48px,11vw,65px);line-height:1.15;padding-bottom:10px}}
.directory-main{max-width:1200px;margin:auto;padding:25px 0 40px}.directory-intro{padding-bottom:25px}.directory-intro h1{font-size:42px}.directory-search{padding:25px;background:var(--paper);border:1px solid var(--line)}.directory-search .filters{max-width:none}.directory-main>.directory{padding-top:35px}body[data-home=true] .result-bar #clear{display:none}body[data-home=true] .directory .result-bar p{font-size:14px}@media(max-width:1280px){.directory-main{margin:0 40px}.directory-main>section{margin-left:0!important;margin-right:0!important}}@media(max-width:650px){.directory-main{margin:0 20px}.directory-intro h1{font-size:32px}.directory-search{padding:15px}}

/* Homepage search over photography */
body[data-home="true"] .slideshow-hero .filters{background:rgba(255,255,255,.2);backdrop-filter:none;grid-template-columns:1fr 1fr auto}body[data-home="true"] .slideshow-hero .filters label{color:#fff}body[data-home="true"] .slideshow-hero .filters select{background:transparent;color:#fff}body[data-home="true"] .slideshow-hero .filters select option,body[data-home="true"] .slideshow-hero .filters select optgroup{background:#fff;color:#172f3d}@media(max-width:650px){body[data-home="true"] .slideshow-hero .filters{grid-template-columns:1fr}body[data-home="true"] .slideshow-hero .filters button{width:100%}}

/* Smaller branding and white navigation dropdown */
header .brand-logo,body:has(.slideshow-hero) > header .brand-logo{width:170px}header .island-menu-panel,header .island-menu summary:hover,header .island-menu[open] summary{background:#fff}@media(max-width:650px){header .brand-logo,body:has(.slideshow-hero) > header .brand-logo{width:140px}}

.welcome-introduction{padding:55px 0 15px}.welcome-introduction h2{font-size:clamp(28px,3vw,38px);font-weight:500;margin-bottom:22px}.welcome-introduction>p:not(.eyebrow){max-width:1000px;color:var(--muted);font-size:18px;line-height:1.8;margin:0 0 18px}.welcome-introduction .text-link{display:inline-block;margin-top:5px}@media(max-width:650px){.welcome-introduction{padding-top:35px}.welcome-introduction>p:not(.eyebrow){font-size:16px}}

/* Rounded homepage search controls */
body[data-home="true"] .slideshow-hero .filters{background:rgba(255,255,255,.5);border-radius:22px}body[data-home="true"] .slideshow-hero .filters label{color:var(--ink)}body[data-home="true"] .slideshow-hero .filters select{color:var(--ink);border-radius:12px}body[data-home="true"] .slideshow-hero .filters button{border-radius:14px}

/* Consistent directory search across the website */
body #filters.filters{background:rgba(255,255,255,.5);border:1px solid #c9d4dd;border-radius:22px;padding:16px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;max-width:960px;margin-left:auto;margin-right:auto;backdrop-filter:none}
body #filters.filters label{color:var(--ink);padding:0 17px;border-right:1px solid var(--line)}body #filters.filters label:first-child{padding-left:4px}
body #filters.filters select{background:transparent;color:var(--ink);border-radius:12px;font-size:15px;padding:5px 18px 5px 0;width:100%}body #filters.filters select option,body #filters.filters select optgroup{background:#fff;color:var(--ink)}
body #filters.filters button{border-radius:14px;background:var(--blue);color:#fff;padding:16px 32px;font-weight:500}body #filters.filters button:hover{background:var(--teal)}
@media(max-width:650px){body #filters.filters{grid-template-columns:1fr;gap:12px}body #filters.filters label,body #filters.filters label:first-child{padding:8px 10px;border-right:0}body #filters.filters button{width:100%}}

.welcome-introduction{display:flow-root}.anniversary-badge{float:right;width:120px;height:auto;margin:0 0 20px 32px}@media(max-width:650px){.anniversary-badge{width:85px;margin:0 0 15px 18px}}

.island-menu-group{display:flex;flex-direction:column;align-self:start}.island-menu-panel .island-area-link{padding:6px 12px 6px 27px;font-size:13px;color:var(--muted)}.island-menu-panel .island-area-link:hover{color:var(--blue)}

/* Full-width floating islands menu */
header{position:relative;z-index:40}header .island-menu{position:static}
header .island-menu-panel{position:absolute;top:100%;left:calc((100% - 100vw)/2);right:auto;width:100vw;min-width:0;max-height:75vh;overflow-y:auto;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:start;gap:10px 18px;padding:28px max(30px,calc((100vw - 1200px)/2));background:#fff;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:0 18px 30px #152c3d25;z-index:50}
header .island-menu-panel .all-islands{grid-column:1/-1;margin-bottom:8px}header .island-menu-panel>a,header .island-menu-group>a:first-child{font-weight:600}header .island-menu-panel a{display:block;padding:8px 10px}header .island-menu-panel .island-area-link{font-size:13px;padding:5px 10px 5px 18px;font-weight:400}
@media(max-width:1000px){header .island-menu-panel{grid-template-columns:repeat(4,minmax(0,1fr));padding:22px 25px;gap:10px}}
@media(max-width:650px){header .island-menu-panel{position:absolute;top:100%;left:calc((100% - 100vw)/2);right:auto;grid-template-columns:repeat(2,minmax(0,1fr));width:100vw;padding:18px 15px;max-height:70vh}}

.island-photo-hero .island-hero-subtitle{font-family:"Caveat","Brush Script MT",cursive;font-weight:400;font-size:clamp(28px,3vw,40px);line-height:1.3}.island-photo-hero .island-hero-search{border-top:0}

.island-photo-hero .island-hero-subtitle{font-family:"Allura","Brush Script MT",cursive;font-weight:400;font-size:clamp(32px,3.5vw,46px);line-height:1.35}

.business-contact-panel a:has(.contact-icon){display:inline-flex;align-items:center;gap:10px}.contact-icon{width:21px;height:21px;flex-shrink:0;color:var(--blue)}

.business-contact-panel a:has(.contact-icon){display:inline-flex;align-items:center;gap:10px}.contact-icon{width:21px;height:21px;flex-shrink:0;color:var(--blue)}

.business-social-links{display:flex;gap:12px;margin:22px 0}.business-social-links a{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;color:var(--blue);background:#fff}.business-social-links svg{width:21px;height:21px}.business-social-links a:hover{background:var(--blue);color:white}

/* Compact three-photo business gallery */
.business-photo-gallery{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:14px;margin-bottom:28px;max-width:720px}.business-photo-primary{min-width:0}.business-photo-gallery .business-main-photo{display:block;width:100%;height:300px;object-fit:cover;border-radius:12px;margin:0}.business-extra-photos{display:grid;grid-template-rows:1fr 1fr;gap:14px}.business-extra-photo{min-height:0;border-radius:12px;overflow:hidden}.photo-placeholder{display:flex!important;align-items:center;justify-content:center;background:#f0f5f8;border:1px dashed #bdcbd5;color:var(--muted);font-size:14px;text-align:center;padding:16px}.business-extra-photo img{width:100%;height:100%;object-fit:cover}@media(max-width:650px){.business-photo-gallery{grid-template-columns:1fr}.business-photo-gallery .business-main-photo{height:240px}.business-extra-photos{grid-template-columns:1fr 1fr;grid-template-rows:130px;gap:12px}}

.island-page>.island-gallery{max-width:1200px;margin:45px auto!important}.island-gallery h2{font-weight:500;font-size:34px}.island-gallery-intro{color:var(--muted);margin:14px 0 24px}.island-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.island-gallery-slot{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;border:1px dashed #bdcbd5;border-radius:14px;background:#f0f5f8;color:var(--muted);font-size:14px;overflow:hidden}.island-gallery-slot img{width:100%;height:100%;object-fit:cover}@media(max-width:1280px){.island-page>.island-gallery{margin:40px 40px!important}}@media(max-width:650px){.island-page>.island-gallery{margin:35px 20px!important}.island-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.island-gallery h2{font-size:28px}.island-gallery-slot{font-size:12px;text-align:center;padding:8px}}

/* Soft blue header tint across all pages */
body > header,body:has(.slideshow-hero) > header{background:rgba(36,123,231,.2)}

body > header,body:has(.slideshow-hero) > header{max-width:none;width:100%;margin:0;padding-left:5%;padding-right:5%}.footer-guide-brand img{background:transparent}

.location:has(.location-pin),.business-location{display:flex;align-items:flex-start;gap:7px}.location-pin{width:18px;height:21px;flex:0 0 18px;color:var(--blue);margin-top:2px}

.island-page>.island-facts{max-width:1200px;margin:35px auto!important;padding:30px;background:#edf5fc;border:1px solid var(--line);border-radius:18px}.island-facts h2{font-weight:500;margin-bottom:20px}.island-facts-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}.island-facts ul{padding-left:20px;margin:0;columns:2;column-gap:35px}.island-facts li{break-inside:avoid;padding-bottom:12px;color:var(--muted)}.island-facts h3{margin-bottom:16px;font-size:23px}@media(max-width:1280px){.island-page>.island-facts{margin:35px 40px!important}}@media(max-width:650px){.island-page>.island-facts{margin:25px 20px!important;padding:22px}.island-facts ul{columns:1}.island-facts-columns{grid-template-columns:1fr}}

/* Seamless, aligned business photo galleries */
.business-photo-gallery{gap:0;border-radius:12px;overflow:hidden;align-items:stretch}.business-photo-primary{height:300px}.business-photo-gallery .business-main-photo{height:100%;border-radius:0}.business-extra-photos{height:300px;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:0}.business-extra-photo{border-radius:0;height:100%;padding:0}.business-extra-photo img{display:block;width:100%;height:100%;object-fit:cover}.business-photo-gallery .photo-placeholder{border:0}@media(max-width:650px){.business-photo-primary{height:240px}.business-extra-photos{height:130px;grid-template-rows:minmax(0,1fr);gap:0}}

/* Small, even spacing between aligned gallery photos */
.business-photo-gallery{gap:10px}.business-extra-photos{gap:10px}

/* Anniversary branding shared by every page */
body > header,body:has(.slideshow-hero) > header{background:#fff;border-bottom:3px solid #143b5a;padding-top:14px;padding-bottom:14px;gap:18px}.header-brand-anniversary{display:flex;align-items:center;gap:16px;flex-shrink:0}.header-anniversary{display:flex;align-items:center;gap:9px;max-width:185px}.header-anniversary img{width:49px;height:auto;flex-shrink:0}.header-anniversary span{font-family:"Allura","Brush Script MT",cursive;font-weight:400;font-size:21px;line-height:1.15;color:#143b5a}.header-brand-anniversary .brand-logo{width:155px}
@media(max-width:1100px){.header-brand-anniversary{gap:10px}.header-anniversary{max-width:145px}.header-anniversary span{font-size:19px}.header-anniversary img{width:40px}.header-brand-anniversary .brand-logo{width:140px}}
@media(max-width:650px){.header-brand-anniversary{width:100%;justify-content:center}.header-anniversary{max-width:160px}.header-anniversary span{font-size:20px}body > header,body:has(.slideshow-hero) > header{flex-wrap:wrap}.header-brand-anniversary .brand-logo{width:140px}}

.header-anniversary{max-width:none;flex-shrink:0}.header-anniversary span{white-space:nowrap;font-size:20px}@media(max-width:1100px){.header-anniversary{max-width:none}.header-anniversary span{font-size:18px}header{flex-wrap:wrap}}@media(max-width:650px){.header-brand-anniversary{flex-wrap:wrap}.header-anniversary{max-width:none}.header-anniversary span{font-size:18px}}

.before-go-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.before-go-card span{font-size:clamp(18px,2vw,27px);left:16px;bottom:20px}@media(max-width:1000px){.before-go-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.before-go-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.advertise-banner{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:35px auto 0;max-width:1100px;padding:25px 35px;border-radius:14px;color:white;background:linear-gradient(110deg,#123b5a,#087f8c);box-shadow:0 8px 25px #123b5a18}.advertise-kicker{font-size:11px;letter-spacing:.14em}.advertise-banner h2{font-size:28px!important;color:#fff;margin:5px 0}.advertise-banner p{margin:5px 0;font-size:15px}.advertise-banner-button{background:#ffcd42;color:#123b5a;border-radius:9px;padding:13px 18px;font-weight:600;white-space:nowrap}.advertising-choice{background:#edf5fc;color:#143b5a;border:1px solid #143b5a;border-radius:9px;padding:11px 17px;cursor:pointer}.advertising-choice[aria-pressed=true]{background:#143b5a;color:#fff}@media(max-width:650px){.advertise-banner{flex-direction:column;align-items:flex-start;padding:24px}.advertise-banner h2{font-size:24px!important}.advertise-banner-button{white-space:normal}}

.advertising-section{padding-top:20px}.advertise-banner-photo{max-width:none;margin:0;overflow:hidden;padding:0 25px 0 0;gap:25px}.advertise-photo{width:230px;height:175px;object-fit:cover;align-self:stretch}.advertise-banner-photo>div{flex:1;padding:20px 0}@media(max-width:850px){.advertise-photo{width:170px}.advertise-banner-photo{flex-wrap:wrap;padding:0 20px 20px}.advertise-banner-photo .advertise-photo{margin-left:-20px}.advertise-banner-photo .advertise-banner-button{margin-left:auto}}@media(max-width:650px){.advertise-banner-photo{padding:0 0 24px;gap:15px}.advertise-banner-photo .advertise-photo{width:100%;height:180px;margin:0}.advertise-banner-photo>div{padding:0 24px}.advertise-banner-photo .advertise-banner-button{margin:0 24px}}

.advertise-banner-video{display:grid;grid-template-columns:3fr 1fr;padding:0;gap:0;max-width:none;margin:0;min-height:220px}.advertise-video-area{position:relative;display:flex;align-items:center;min-height:220px;overflow:hidden}.advertise-video-area video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.advertise-video-area:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#092e48cc,#092e4844)}.advertise-video-copy{position:relative;z-index:1;padding:30px}.advertise-video-cta{display:flex;align-items:center;justify-content:center;padding:15px}.advertise-video-cta .advertise-banner-button{white-space:normal;text-align:center}@media(max-width:650px){.advertise-banner-video{grid-template-columns:1fr}.advertise-video-copy{padding:24px}.advertise-video-cta{padding:20px}}

.advertise-video-area .advertise-background-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

/* Full-width Before You Go feature */
body[data-home="true"] main>section.before-go-section{max-width:none;width:100%;margin-left:0;margin-right:0;padding:60px 4%;background:rgba(255,205,66,.25)}body[data-home="true"] .before-go-section .section-heading h2{font-size:42px}body[data-home="true"] .before-go-section .section-heading p{font-size:19px}.before-go-section .before-go-grid{gap:22px}.before-go-section .before-go-card{aspect-ratio:3/4;min-height:320px}.before-go-section .before-go-card span{font-size:clamp(22px,2.3vw,34px);left:22px;bottom:25px}@media(max-width:650px){body[data-home="true"] main>section.before-go-section{padding:35px 20px}body[data-home="true"] .before-go-section .section-heading h2{font-size:32px}.before-go-section .before-go-grid{gap:12px}.before-go-section .before-go-card{min-height:230px}.before-go-section .before-go-card span{font-size:23px;left:14px}}

/* Compact rounded advertising banner */
.advertising-section .advertise-banner-video{max-width:970px;margin:0 auto;min-height:160px;border-radius:20px;overflow:hidden}.advertising-section .advertise-video-area{min-height:160px;border-radius:20px;overflow:hidden}.advertise-video-copy{padding:22px}.advertise-banner .advertise-video-copy h2{font-size:25px!important}.advertise-video-copy p{font-size:14px}.advertise-video-cta .advertise-banner-button{border-radius:14px;font-size:14px;padding:12px 15px}@media(max-width:650px){.advertising-section .advertise-banner-video{min-height:0}.advertising-section .advertise-video-area{min-height:180px}.advertise-video-cta{padding:15px}.advertise-banner .advertise-video-copy h2{font-size:23px!important}}

body > header,body:has(.slideshow-hero) > header{border-bottom:6px solid #20c4c8}

/* Smaller Roboto type on business listing cards */
body .card.listing-link,body .card.listing-link h3{font-family:"Roboto",Arial,sans-serif}body .card.listing-link h3{font-size:18px;font-weight:600;line-height:1.3;letter-spacing:0}body .card.listing-link .location{font-size:14px;line-height:1.5}body .card.listing-link .listing-category{font-size:13px;line-height:1.5}

body:has(.slideshow-hero) .card.listing-link h3{font-size:18px;font-family:"Roboto",Arial,sans-serif;letter-spacing:0}

/* Consistent smaller Roboto typography on individual business pages */
.business-main,.business-main h1,.business-main h2,.business-main h3{font-family:"Roboto",Arial,sans-serif;letter-spacing:0}.business-main{font-size:15px;line-height:1.65}.business-main .business-heading h1{font-size:clamp(28px,3.4vw,40px);font-weight:600;line-height:1.2}.business-main h2{font-size:24px;font-weight:600}.business-main h3{font-size:20px;font-weight:600}.business-main .business-heading>p:not(.eyebrow){font-size:16px}.business-main .business-story p,.business-main .business-contact-panel p,.business-main .business-contact-panel a{font-size:15px}.business-main .breadcrumbs{font-size:13px}

/* Roboto family throughout the website */
body,button,input,select,textarea,h1,h2,h3,h4,h5,h6{font-family:"Roboto",Arial,sans-serif!important}body{font-weight:400}h1,h2,h3,h4,h5,h6{font-weight:700}strong,b{font-weight:700}em,i{font-style:italic}
.hero-search-content h1.welcome-script,.island-photo-hero .island-hero-subtitle,.header-anniversary span{font-family:"Roboto",Arial,sans-serif!important;font-style:italic;font-weight:400}.hero-search-content h1.welcome-script{font-size:clamp(44px,6vw,80px);letter-spacing:-.03em}.header-anniversary span{font-size:14px}.island-photo-hero .island-hero-subtitle{font-size:clamp(23px,2.7vw,34px)}@media(max-width:650px){.hero-search-content h1.welcome-script{font-size:clamp(36px,9vw,52px)}.header-anniversary span{font-size:12px}}

/* Preserve the approved script headings and anniversary caption */
.hero-search-content h1.welcome-script{font-family:"Caveat","Brush Script MT",cursive!important;font-style:normal;font-weight:500;font-size:clamp(56px,7vw,102px);letter-spacing:-.02em}.island-photo-hero .island-hero-subtitle{font-family:"Allura","Brush Script MT",cursive!important;font-style:normal;font-weight:400;font-size:clamp(32px,3.5vw,46px)}.header-anniversary span{font-family:"Allura","Brush Script MT",cursive!important;font-style:normal;font-weight:400;font-size:20px}@media(max-width:1100px){.header-anniversary span{font-size:18px}}@media(max-width:650px){.hero-search-content h1.welcome-script{font-size:clamp(48px,11vw,65px)}}

.island-page>.island-area-menu{max-width:1200px;margin:30px auto!important}.island-area-menu h2{font-size:20px;margin-bottom:15px}.island-area-menu nav{display:flex;flex-wrap:wrap;gap:10px}.island-area-menu nav a{border:1px solid #20b7bd;border-radius:24px;padding:9px 18px;background:#e9fafa;color:#143b5a;font-size:14px;font-weight:500}.island-area-menu nav a:hover{background:#20b7bd;color:#fff}@media(max-width:1280px){.island-page>.island-area-menu{margin:25px 40px!important}}@media(max-width:650px){.island-page>.island-area-menu{margin:25px 20px!important}}

/* Island heading and one-and-a-half photo slideshow */
.island-page>.island-heading-section{max-width:1200px;margin:30px auto!important}.island-heading-row{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;align-items:center}.island-heading-row h1{color:#143b5a;font-size:clamp(38px,4.5vw,64px)}.island-heading-row .island-hero-subtitle{font-family:"Allura","Brush Script MT",cursive!important;color:#143b5a;font-weight:400;font-size:36px;margin:12px 0}.island-heading-search #filters.filters{background:rgba(255,255,255,.5)}.island-heading-search #filters.filters button{padding:14px 20px}.island-page>.island-slideshow{max-width:1200px;margin:25px auto 40px!important}.island-slide-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:16px}.island-slide-track::-webkit-scrollbar{display:none}.island-gallery-slide{flex:0 0 calc((100% - 18px)/1.5);height:380px;scroll-snap-align:start;overflow:hidden;border-radius:16px}.island-gallery-slide img{display:block;width:100%;height:100%;object-fit:cover}.island-slide-pending{display:flex;justify-content:center;align-items:center;background:#edf5fb;color:var(--muted);border:1px dashed #b6cbd7}.island-gallery-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.island-gallery-controls button{border:1px solid var(--line);border-radius:50%;width:40px;height:40px;background:white;color:#143b5a}@media(max-width:1280px){.island-page>.island-heading-section,.island-page>.island-slideshow{margin-left:40px!important;margin-right:40px!important}}@media(max-width:850px){.island-heading-row{grid-template-columns:1fr}.island-gallery-slide{height:300px}}@media(max-width:650px){.island-page>.island-heading-section,.island-page>.island-slideshow{margin-left:20px!important;margin-right:20px!important}.island-gallery-slide{height:230px}.island-heading-row .island-hero-subtitle{font-size:30px}}

.island-heading-row h1{text-transform:uppercase}

body .island-page>section.island-slideshow{max-width:none;width:100%;margin-left:0!important;margin-right:0!important}.island-slideshow .island-slide-track{border-radius:0}.island-slideshow .island-gallery-controls{padding-right:4%}

.island-gallery-controls button.island-gallery-pause{width:auto;padding:0 16px;border-radius:20px}

/* Island page container must allow edge-to-edge galleries */
body main.island-page{max-width:none;width:100%;margin:0!important}body .island-page>section.island-slideshow{max-width:none;width:100%;margin-left:0!important;margin-right:0!important;padding:0}body .island-slideshow .island-slide-track,body .island-slideshow .island-gallery-slide,body .island-slideshow .island-gallery-slide img{border-radius:0}

.island-heading-row h1{letter-spacing:.025em}

/* Compact centred header contents with a full-width border */
body > header,body:has(.slideshow-hero) > header{justify-content:center;gap:20px;padding:12px max(20px,calc((100% - 1180px)/2));flex-wrap:wrap}header .header-brand-anniversary{gap:10px}header .header-brand-anniversary .brand-logo{width:130px!important}header .header-anniversary img{width:36px}header .header-anniversary span{font-size:17px}header nav{gap:3px;align-items:center}body > header nav>a,body:has(.slideshow-hero) > header nav>a,header .island-menu summary{font-size:13px;padding:8px 10px}header .nav-cta{font-size:12px;padding:9px 14px}header .island-menu-panel{padding-left:max(25px,calc((100vw - 1180px)/2));padding-right:max(25px,calc((100vw - 1180px)/2))}@media(max-width:650px){body > header,body:has(.slideshow-hero) > header{gap:10px;padding:12px 15px}.header-brand-anniversary{width:100%}header nav{flex-wrap:wrap;justify-content:center}header .header-anniversary span{font-size:16px}}

body > header,body:has(.slideshow-hero) > header{gap:28px}header nav{gap:9px}header .header-brand-anniversary{gap:14px}@media(max-width:650px){body > header,body:has(.slideshow-hero) > header{gap:12px}header nav{gap:5px}}

/* Anniversary feature below the turquoise header line */
.anniversary-under-header{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 20px;background:white}.anniversary-under-header img{width:55px;height:auto}.anniversary-under-header span{font-family:"Allura","Brush Script MT",cursive!important;font-size:27px;line-height:1.2;color:#143b5a;font-weight:400;white-space:nowrap}@media(max-width:650px){.anniversary-under-header{gap:10px;padding:10px 12px}.anniversary-under-header img{width:44px}.anniversary-under-header span{font-size:21px}}

/* Header aligned with the 1200px directory content */
body > header,body:has(.slideshow-hero) > header{max-width:1200px;width:calc(100% - 80px);margin:0 auto!important;padding:14px 0;justify-content:space-between;gap:20px}@media(max-width:650px){body > header,body:has(.slideshow-hero) > header{width:calc(100% - 40px);padding:12px 0;justify-content:center;gap:12px}}

body[data-home="true"] > header{border-bottom:0}body[data-home="true"] > header:after{content:"";position:absolute;bottom:0;left:calc((100% - 100vw)/2);width:100vw;height:6px;background:#20c4c8;pointer-events:none}

body > header,body:has(.slideshow-hero) > header{border-bottom:0}body > header:after{content:"";position:absolute;bottom:0;left:calc((100% - 100vw)/2);width:100vw;height:6px;background:#20c4c8;pointer-events:none}

.business-contact-panel a:has(.contact-icon){display:inline-flex;align-items:center;gap:10px}.contact-icon{width:21px;height:21px;flex-shrink:0;color:var(--blue)}

.business-contact-panel a:has(.contact-icon){display:inline-flex;align-items:center;gap:10px}.contact-icon{width:21px;height:21px;flex-shrink:0;color:var(--blue)}

/* Anniversary badge overlapping the homepage hero */
body[data-home="true"] main>section.slideshow-hero{overflow:visible;z-index:1}.slideshow-hero .hero-slides{overflow:hidden;position:absolute;inset:0}.hero-anniversary-badge{position:absolute;z-index:5;right:5%;bottom:-65px;width:180px;height:auto;border-radius:50%;box-shadow:0 12px 30px #123b5a44;background:#fff}body[data-home="true"] .welcome-introduction{padding-top:90px}@media(max-width:650px){.hero-anniversary-badge{width:125px;right:20px;bottom:-45px}body[data-home="true"] .welcome-introduction{padding-top:70px}}

.hero-anniversary-badge{width:145px;bottom:-50px}@media(max-width:650px){.hero-anniversary-badge{width:105px;bottom:-35px}}

.hero-anniversary-badge{right:192px;background:transparent;border-radius:0;box-shadow:none;filter:drop-shadow(0 8px 12px #123b5a55)}@media(max-width:650px){.hero-anniversary-badge{right:30px}}

.hero-anniversary-badge{right:min(480px,40vw);width:180px;bottom:-60px}@media(max-width:650px){.hero-anniversary-badge{right:45px;width:125px;bottom:-40px}}

.island-slideshow{position:relative}.island-anniversary-badge{position:absolute;z-index:5;right:min(480px,40vw);top:320px;width:180px;height:auto;background:transparent;filter:drop-shadow(0 8px 12px #123b5a55);pointer-events:none}.island-page>section.island-slideshow{margin-bottom:100px!important}@media(max-width:850px){.island-anniversary-badge{top:240px}}@media(max-width:650px){.island-anniversary-badge{top:185px;right:45px;width:125px}.island-page>section.island-slideshow{margin-bottom:80px!important}}

.island-slideshow .island-gallery-slide{height:500px}.island-anniversary-badge{top:440px}@media(max-width:850px){.island-slideshow .island-gallery-slide{height:400px}.island-anniversary-badge{top:340px}}@media(max-width:650px){.island-slideshow .island-gallery-slide{height:310px}.island-anniversary-badge{top:265px}}

/* Compact island heading spacing */
body .island-page>section.island-heading-section{background:white;margin-top:12px!important;margin-bottom:12px!important;padding:14px 22px}.island-heading-section .breadcrumbs{margin:0 0 10px}.island-heading-row{gap:22px}.island-heading-row h1{margin:0}.island-page>section.island-slideshow{margin-top:0!important}@media(max-width:650px){body .island-page>section.island-heading-section{padding:12px 16px;margin-top:10px!important;margin-bottom:10px!important}.island-heading-row{gap:14px}.island-heading-section .breadcrumbs{margin-bottom:8px}}

/* Turquoise tint belongs behind the island top navigation only. */
body[data-island] > header{background:transparent;isolation:isolate}body[data-island] > header:before{content:"";position:absolute;top:0;bottom:0;left:calc((100% - 100vw)/2);width:100vw;background:rgba(32,196,200,.2);z-index:-1;pointer-events:none}

/* Larger island names across island pages. */
.island-heading-row h1{font-size:clamp(46px,5.5vw,78px)}@media(max-width:650px){.island-heading-row h1{font-size:clamp(36px,9vw,52px)}}

/* Keep island names on a single line; fit long names to their available space. */
.island-heading-row h1{white-space:nowrap;min-width:0;max-width:100%}

/* Coral hover color for island destinations in the main menu. */
body > header .island-menu-panel a:not(.all-islands):hover,body > header .island-menu-panel a:not(.all-islands):focus-visible{color:#e96b5b}

/* Smooth, lingering homepage photo crossfade. */
.slideshow-hero .hero-slide{transition:opacity 1.8s ease-in-out}@media(prefers-reduced-motion:reduce){.slideshow-hero .hero-slide{transition:none}}

/* Center island introductions, with facts and map beneath. */
body .island-page>.island-map.island-overview{display:block;border-top:0;padding:12px 0 28px;text-align:center}
.island-overview .island-description{max-width:900px;margin:0 auto}
body .island-page>.island-details{max-width:1200px;margin:0 auto 35px;display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}
.island-details .island-facts{padding:28px;background:#edf5fc;border:1px solid var(--line);border-radius:18px}
.island-details .island-facts ul{columns:1}
.island-details .island-map-column iframe{display:block;width:100%;height:420px;border:1px solid var(--line);border-radius:14px;background:var(--paper)}
@media(max-width:1280px){body .island-page>.island-details{margin-left:40px;margin-right:40px}}
@media(max-width:850px){body .island-page>.island-details{grid-template-columns:1fr}}
@media(max-width:650px){body .island-page>.island-details{margin-left:20px;margin-right:20px;gap:22px}.island-details .island-facts{padding:22px}.island-details .island-map-column iframe{height:320px}}

/* Island weather strip beneath the introduction. */
body .island-page>.island-weather{max-width:1200px;margin:0 auto 30px;background:#e8f9f8;border-radius:14px;padding:14px 16px 8px;overflow:hidden}.weather-credit{margin:6px 0 0;text-align:right;font-size:11px;color:#526675}.weather-credit a{text-decoration:underline}@media(max-width:1280px){body .island-page>.island-weather{margin-left:40px;margin-right:40px}}@media(max-width:650px){body .island-page>.island-weather{margin-left:20px;margin-right:20px;padding:12px 8px 8px}}

/* Bring island introductions closer to their galleries. */
body .island-page>section.island-slideshow{margin-bottom:24px!important}
body .island-page>section.island-map.island-overview{margin-top:0!important;padding-top:8px}
@media(max-width:650px){body .island-page>section.island-slideshow{margin-bottom:20px!important}}

/* Compact weather forecast beside island breadcrumbs. */
.island-breadcrumb-row{display:flex;align-items:center;gap:12px;margin-bottom:10px;position:relative;z-index:10}.island-heading-section .island-breadcrumb-row .breadcrumbs{margin:0}.island-weather-menu{position:relative}.island-weather-menu summary{display:flex;align-items:center;justify-content:center;list-style:none;width:36px;height:36px;color:#129da7;border-radius:50%;background:#e8f9f8;cursor:pointer}.island-weather-menu summary::-webkit-details-marker{display:none}.island-weather-menu summary:hover{color:#e96b5b}.island-weather-popup{position:absolute;top:44px;left:0;width:min(650px,calc(100vw - 80px));padding:14px;background:white;box-shadow:0 8px 30px #143b5a33;border:1px solid #c8e8e7;border-radius:14px}.island-weather-popup .island-weather{margin:0;padding:8px;background:#e8f9f8;border-radius:10px}.island-weather-menu[open] summary{background:#ccefed}@media(max-width:850px){.island-weather-menu{position:static}.island-weather-popup{left:0;top:44px;width:calc(100vw - 80px)}}@media(max-width:650px){.island-weather-popup{width:calc(100vw - 72px)}}

/* Shorter homepage hero slideshow. */
body[data-home="true"] main>section.discover-top.slideshow-hero{min-height:560px;padding-top:55px;padding-bottom:75px}
@media(max-width:650px){body[data-home="true"] main>section.discover-top.slideshow-hero{min-height:500px;padding:35px 20px 70px}}
/* Privacy controls and readable policy pages. */
[hidden]{display:none!important}.cookie-banner{position:fixed;z-index:10000;left:20px;right:20px;bottom:18px;max-width:1000px;margin:auto;padding:22px;background:#fff;border:2px solid #20b7bd;border-radius:16px;box-shadow:0 8px 35px #143b5a44;color:#143b5a}.cookie-banner h2,.cookie-dialog h2{font-size:24px;margin-bottom:10px}.cookie-banner p,.cookie-dialog p{font-size:14px;line-height:1.6}.cookie-banner a,.cookie-dialog a{color:#125daf;text-decoration:underline}.cookie-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.cookie-actions button,.consent-placeholder button,.legal-page button{padding:11px 18px;border:1px solid #143b5a;border-radius:10px;background:white;color:#143b5a;font-weight:600;font-size:14px}.cookie-actions button:hover,.consent-placeholder button:hover{background:#e8f9f8}.cookie-dialog{max-width:620px;width:calc(100% - 40px);max-height:85vh;padding:28px;border:1px solid #20b7bd;border-radius:16px;color:#143b5a}.cookie-dialog::backdrop{background:#143b5a77}.cookie-dialog label{display:flex;align-items:center;gap:12px;font-weight:600;margin-top:18px}.cookie-dialog input{width:20px;height:20px}.consent-placeholder{padding:24px;background:#e8f9f8;color:#143b5a;text-align:center;border:1px dashed #129da7;border-radius:12px}.consent-placeholder p{margin-top:0}iframe[data-consent]:not([src]){display:none!important}.footer-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;padding:22px 20px;font-size:13px}.footer-legal a,.footer-legal button{text-decoration:underline;font-size:13px;font-weight:400;padding:0;background:none;border:0;color:inherit;border-radius:0}.legal-page{max-width:900px;margin:45px auto 65px;padding:0 25px}.legal-page h1{font-size:clamp(32px,5vw,48px);margin-bottom:24px}.legal-page h2{font-size:24px;margin:30px 0 12px}.legal-page p{line-height:1.8}.legal-page a{text-decoration:underline;color:#125daf}.legal-page table{width:100%;border-collapse:collapse;font-size:14px}.legal-page th,.legal-page td{padding:12px;border:1px solid #ccdce5;text-align:left;vertical-align:top}.skip-link{position:fixed;top:8px;left:8px;z-index:20000;transform:translateY(-150%);padding:12px 18px;background:white;color:#143b5a;border:2px solid #143b5a}.skip-link:focus{transform:translateY(0)}.hero-motion-toggle{position:absolute;left:20px;bottom:16px;z-index:6;background:#143b5abb;color:white;border:1px solid white;border-radius:20px;padding:8px 14px;font-size:13px}.contact-privacy{font-size:14px}.contact-privacy a{text-decoration:underline}@media(max-width:650px){.cookie-banner{left:10px;right:10px;bottom:10px;padding:18px;max-height:75vh;overflow:auto}.cookie-actions button{flex:1 1 140px}.legal-page table{display:block;overflow:auto}.cookie-dialog{padding:20px}}

/* One main photo per business listing page. */
.business-photo-gallery{grid-template-columns:minmax(0,1fr);gap:0}

/* Twelve directory listings per page. */
.directory-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:30px 0 15px}.directory-pagination button{padding:9px 14px;border:1px solid #c7d8e2;border-radius:10px;background:white;color:#143b5a;font-size:14px}.directory-pagination button[aria-current="page"]{background:#143b5a;color:white;border-color:#143b5a}.directory-pagination button:hover:not(:disabled){border-color:#e96b5b}.directory-pagination button:disabled{opacity:.45;cursor:default}

/* Wider business cards in a three-column desktop grid. */
body .results,body:has(.slideshow-hero) .results{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){body .results,body:has(.slideshow-hero) .results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body .results,body:has(.slideshow-hero) .results{grid-template-columns:minmax(0,1fr)}}

/* Wider four-column listing area with smaller business names. */
body main>section.directory,body .island-page>section.directory{max-width:1440px;width:calc(100% - 64px);margin-left:auto!important;margin-right:auto!important}
body .results,body:has(.slideshow-hero) .results{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
body .card.listing-link h3,body:has(.slideshow-hero) .card.listing-link h3{font-size:16px;line-height:1.35;letter-spacing:0}
@media(max-width:1100px){body .results,body:has(.slideshow-hero) .results{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){body .results,body:has(.slideshow-hero) .results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body main>section.directory,body .island-page>section.directory{width:calc(100% - 40px)}body .results,body:has(.slideshow-hero) .results{grid-template-columns:minmax(0,1fr)}}

/* Basic advertiser contact details on directory cards. */
.listing-phone,.listing-email{font-size:13px;line-height:1.5;margin:6px 0;overflow-wrap:anywhere}

/* Compact advertiser cards: category, name, location and icon contacts. */
body .card.listing-link{padding:0 0 16px;overflow:hidden;border:1px solid #d4e3e9;border-radius:14px;background:#fff}
body .card.listing-link .listing-photo{width:100%;margin:0 0 14px;border-radius:0;display:block}
body .card.listing-link h3,body .card.listing-link p{margin-left:16px;margin-right:16px}
body .card.listing-link h3{margin-top:7px;margin-bottom:7px;line-height:1.25}
body .card.listing-link .listing-category{display:block;width:fit-content;padding:4px 7px;background:#edf6fb;color:#2578a6;font-size:11px;line-height:1.3;margin-top:0;margin-bottom:7px}
body .card.listing-link .location{margin-top:0;margin-bottom:7px;line-height:1.35;font-size:13px}
body .card.listing-link .listing-phone,body .card.listing-link .listing-email{display:flex;align-items:flex-start;gap:8px;margin-top:5px;margin-bottom:5px;line-height:1.3;color:#143b5a;font-size:13px}
.card.listing-link .contact-icon{width:17px;height:17px;flex:0 0 17px;color:#168ca7}.card.listing-link .listing-email span{min-width:0;overflow-wrap:anywhere}
.business-contact-panel .business-contact{margin-top:8px;margin-bottom:8px;line-height:1.35}.business-contact-panel p{margin-top:6px;margin-bottom:6px}

/* Island tag over every directory listing photo. */
body .card.listing-link{position:relative}
.listing-island-tag{position:absolute;top:12px;left:12px;max-width:calc(100% - 24px);box-sizing:border-box;padding:6px 10px;border-radius:7px;background:rgba(255,255,255,.95);color:#143b5a;font-size:12px;font-weight:600;line-height:1.3;box-shadow:0 2px 7px #143b5a18;pointer-events:none}

/* Colorful island labels beneath listing photos, inspired by the Bahamas logo. */
body .card.listing-link .listing-photo{margin-bottom:0}
body .card.listing-link .listing-island-tag{position:static;display:block;width:100%;max-width:none;border-radius:0;padding:8px 16px;margin:0 0 12px;box-shadow:none;font-size:13px;font-weight:600;line-height:1.3}

/* Simple island names beneath listing photos. */
body .card.listing-link .listing-island-tag{background:transparent;color:#526675;padding:10px 16px 0;margin-bottom:8px;font-size:12px;font-weight:400}

/* Photo-led directory cards with compact details and prominent category chips. */
body .card.listing-link{border:0;border-radius:0;box-shadow:none;padding-bottom:12px}
body .card.listing-link .listing-photo{aspect-ratio:1/1;height:auto;object-fit:cover;border-radius:12px;margin-bottom:12px}
body .card.listing-link .listing-photo-pending{height:auto;display:flex;align-items:center;justify-content:center}
body .card.listing-link h3,body .card.listing-link p{margin-left:0;margin-right:0}
body .card.listing-link .listing-category{font-size:13px;font-weight:700;padding:5px 8px;margin-bottom:8px;transition:background-color .2s,color .2s}
body .card.listing-link:hover .listing-category,body .card.listing-link:focus-visible .listing-category{background:#f8d6cb;color:#8c3527}
.advertising-section .advertise-banner-video{max-width:970px;min-height:125px}
.advertising-section .advertise-video-area{min-height:125px}
.advertise-banner .advertise-video-copy{padding:16px 22px}
.advertise-banner .advertise-video-copy h2{font-size:22px!important;margin-bottom:5px}
.advertise-banner .advertise-video-copy p{font-size:13px;margin-top:5px;margin-bottom:0}
@media(max-width:650px){.advertising-section .advertise-video-area{min-height:160px}}

/* Refined category chips and inline directory contact details. */
body .card.listing-link .listing-category{background:#2578a6;color:#edf6fb;border-radius:9px}
body .card.listing-link:hover .listing-category,body .card.listing-link:focus-visible .listing-category{background:#e96b5b;color:#fff}
body .card.listing-link .location{display:flex;align-items:flex-start;gap:7px}
body .card.listing-link .location .location-pin{display:block;width:16px;height:18px;flex:0 0 16px;margin-top:0}
body .card.listing-link .location span{min-width:0;line-height:1.4}
body .card.listing-link .listing-email span{text-decoration:underline;text-underline-offset:2px}
body .card.listing-link .listing-phone,body .card.listing-link .listing-phone .contact-icon{color:#ce5849}
.business-contact-panel a[href^="mailto:"] span{text-decoration:underline;text-underline-offset:2px}
.business-contact-panel a[href^="tel:"],.business-contact-panel a[href^="tel:"] .contact-icon{color:#ce5849}

/* Tighter spacing between listing detail lines. */
body .card.listing-link{display:flex;flex-direction:column;justify-content:flex-start;gap:0}
body .card.listing-link h3{margin-top:4px;margin-bottom:4px;line-height:1.2}
body .card.listing-link .listing-category{margin-top:0;margin-bottom:4px;line-height:1.2}
body .card.listing-link .location,body .card.listing-link .listing-phone,body .card.listing-link .listing-email{margin-top:2px;margin-bottom:2px;line-height:1.2}
body .card.listing-link .location span{line-height:1.2}
body .card.listing-link .listing-photo{margin-bottom:8px}
.business-contact-panel p,.business-contact-panel .business-contact{margin-top:4px;margin-bottom:4px;line-height:1.25}

/* Distinct category colors and bold uppercase island names. */
body .card.listing-link .listing-category{background:var(--category-color,#2578a6);color:#fff}
body .card.listing-link:hover .listing-category,body .card.listing-link:focus-visible .listing-category{background:#e96b5b;color:#fff}
.listing-island-name{font-weight:700;text-transform:uppercase}

/* Softer pastel category chips. */
body .card.listing-link .listing-category{color:#344f63;font-weight:600}
body .card.listing-link:hover .listing-category,body .card.listing-link:focus-visible .listing-category{background:#f5dcd5;color:#7b453b}

/* Island-page listing location and advertiser description invitation. */
body[data-island] .card.listing-link .location{font-size:14px;margin-top:4px;margin-bottom:4px}
body[data-island] .card.listing-link .listing-island-name{font-size:16px;font-weight:700}
.island-listing-card{position:relative;padding-bottom:22px}
.listing-description-link{display:block;font-size:12px;color:#2578a6;text-decoration:underline;text-underline-offset:2px;margin-top:5px}

body[data-island] .card.listing-link .listing-photo{margin-bottom:32px}
.island-listing-card .listing-description-link{position:absolute;top:0;left:0;transform:translateY(calc(100cqw + 7px));margin:0}
.island-listing-card{container-type:inline-size}

.business-heading .business-location{display:flex;align-items:center;gap:8px;font-size:16px}.business-island-name{font-size:20px;font-weight:700}.business-description-link{display:inline-block;margin-top:10px;font-size:14px;color:#2578a6;text-decoration:underline;text-underline-offset:2px}

/* Photo-left business detail layout. */
body:has(.business-main){background:#f4f9fc}
body .business-main{max-width:1400px;margin:30px auto 65px;padding:0 36px}
body .business-main .business-layout{display:grid;grid-template-columns:1.08fr 1fr;gap:48px;align-items:start}
body .business-main .business-photo-gallery{max-width:none;width:100%;margin:0}
body .business-main .business-photo-primary{border-radius:14px;overflow:hidden;border:1px solid #d3e6ee;background:#e8f3f8;padding:32px 0}
body .business-main .business-main-photo{display:block;width:100%;max-width:none;height:420px;object-fit:cover;border-radius:0;margin:0}
body .business-main .business-contact-panel{background:transparent;border:0;border-radius:0;box-shadow:none;padding:8px 0}
body .business-main .business-heading{padding:0;margin:0 0 22px;border:0}
body .business-main .business-heading h1{font-size:clamp(28px,3.2vw,46px);line-height:1.15;margin:12px 0 18px;color:#143b5a}
body .business-main .business-heading .eyebrow{font-size:14px;letter-spacing:0;font-weight:600;background:#e5f0f7;padding:6px 10px;border-radius:8px;display:inline-block;margin:0}
body .business-main .business-contact{display:flex;align-items:center;gap:10px;margin:9px 0;font-size:16px}
@media(max-width:850px){body .business-main .business-layout{grid-template-columns:1fr;gap:24px}body .business-main .business-main-photo{height:340px}body .business-main{padding:0 22px}}
@media(max-width:600px){body .business-main .business-main-photo{height:260px}body .business-main .business-heading h1{font-size:30px}}

/* Smaller business text and clean contact rows. */
body .business-main .business-heading h1{font-size:clamp(25px,2.5vw,34px)}
body .business-main .business-contact{background:transparent;border:0;border-radius:0;padding:3px 0;font-size:14px;box-shadow:none;min-height:0}
body .business-main .business-heading .business-location{font-size:14px}.business-main .business-island-name{font-size:16px}
.business-photo-thumbnails{display:flex;gap:10px;margin:12px 0}.business-photo-thumbnails button{padding:3px;background:white;border:2px solid transparent;border-radius:8px}.business-photo-thumbnails button[aria-pressed=true]{border-color:#168ca7}.business-photo-thumbnails img{display:block;width:78px;height:60px;object-fit:cover;border-radius:4px}

/* Taller business photos and tighter regular-weight contact links. */
body .business-main .business-main-photo{height:500px}
body .business-main .business-heading{margin-bottom:12px}
body .business-main .business-heading h1{margin-top:8px;margin-bottom:10px;line-height:1.15}
body .business-main .business-heading .business-location{line-height:1.3}
body .business-main .business-contact{margin-top:3px;margin-bottom:3px;padding:2px 0;line-height:1.25}
body .business-main .business-contact-panel a[href^="mailto:"],body .business-main .business-contact-panel a[href^="mailto:"] span,body .business-main .business-contact-panel a[href^="http"],body .business-main .business-contact-panel a[href^="http"] span{font-weight:400}
@media(max-width:850px){body .business-main .business-main-photo{height:400px}}
@media(max-width:600px){body .business-main .business-main-photo{height:320px}}

/* Business photo fills its block edge to edge. */
body .business-main .business-photo-primary{padding:0;line-height:0}
body .business-main .business-main-photo{width:100%;object-fit:cover;display:block;margin:0}

/* Allow long business titles to wrap, retaining key name phrases. */
body .business-main .business-heading h1{white-space:normal;overflow-wrap:normal;word-break:normal;max-width:100%}.business-name-phrase{white-space:nowrap}

/* Blue hover and keyboard focus for business email and website links. */
body .business-main .business-contact-panel a[href^="mailto:"]:hover,body .business-main .business-contact-panel a[href^="http"]:hover,body .business-main .business-contact-panel a[href^="mailto:"]:focus-visible,body .business-main .business-contact-panel a[href^="http"]:focus-visible{color:#247be7}
body .business-main .business-contact-panel a[href^="mailto:"]:hover .contact-icon,body .business-main .business-contact-panel a[href^="http"]:hover .contact-icon{color:#247be7}

/* Larger original header logo on mobile and closer business contact details. */
@media(max-width:650px){body > header .header-brand-anniversary .brand-logo{width:210px!important;max-width:75vw;height:auto}}
body .business-main .business-heading{margin-bottom:5px}
body .business-main .business-heading .business-location{margin-bottom:0}
body .business-main .business-contact-panel>p{margin:2px 0}
body .business-main .business-contact{margin-top:2px;margin-bottom:2px}

/* Description invitation follows contact links on mobile. */
.business-description-mobile{display:none!important}
@media(max-width:850px){.business-description-desktop{display:none!important}.business-description-mobile{display:inline-block!important;margin-top:10px}}

/* Gentle hover highlight for directory cards. */
body .card.listing-link{transition:background-color .2s,box-shadow .2s,transform .2s}
body .card.listing-link:hover,body .card.listing-link:focus-visible{background:#edf9f8;box-shadow:0 5px 18px #143b5a18;border-radius:12px;transform:translateY(-3px)}
@media(prefers-reduced-motion:reduce){body .card.listing-link{transition:none}body .card.listing-link:hover,body .card.listing-link:focus-visible{transform:none}}

/* Standalone directory matches the homepage listing width. */
body .directory-main{max-width:1440px;width:calc(100% - 64px);margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}
body .directory-main>section.directory{width:100%;max-width:none;margin-left:0!important;margin-right:0!important}
body .directory-main>section.directory-intro,body .directory-main>section.directory-search{max-width:none}
@media(max-width:600px){body .directory-main{width:calc(100% - 40px)}}

.business-category-tags{display:flex;flex-wrap:wrap;gap:7px}.business-category-tags span{font-size:13px;font-weight:600;padding:5px 9px;border-radius:8px;background:#e5f0f7;color:#344f63}

/* Taller Damianos gallery and supplied business description. */
body[data-business="bahamas-sothebys"] .business-main .business-main-photo{height:600px}
.business-description-copy{margin-top:22px;max-width:700px}.business-description-copy h2{font-size:21px;line-height:1.3;margin:0 0 10px}.business-description-copy p{font-size:14px;line-height:1.65;margin:0;font-weight:400}
@media(max-width:850px){body[data-business="bahamas-sothebys"] .business-main .business-main-photo{height:480px}}
@media(max-width:600px){body[data-business="bahamas-sothebys"] .business-main .business-main-photo{height:380px}}

/* Consistent taller photo blocks on all business pages. */
body .business-main .business-main-photo{height:600px}
@media(max-width:850px){body .business-main .business-main-photo{height:480px}}
@media(max-width:600px){body .business-main .business-main-photo{height:380px}}

.business-offices{margin:10px 0}.business-offices h2{font-size:17px;margin:0 0 8px}.business-office{margin:8px 0}.business-office p{font-size:14px;margin:0!important}

/* Square business photo boxes display submitted images without cropping. */
body .business-main .business-photo-primary{aspect-ratio:1/1;width:100%;padding:0;overflow:hidden;display:flex;align-items:center;justify-content:center}
body .business-main .business-photo-primary .business-main-photo,body[data-business="bahamas-sothebys"] .business-main .business-photo-primary .business-main-photo{width:100%;height:100%;max-width:none;object-fit:contain;object-position:center;aspect-ratio:1/1;margin:0}

/* Paid multi-photo galleries swipe horizontally without cropping. */
.business-photo-gallery:has(.paid-gallery-track){position:relative;display:block;overflow:hidden;border:1px solid #d3e6ee;border-radius:14px;background:#e8f3f8}
.paid-gallery-track{display:flex;width:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.paid-gallery-track::-webkit-scrollbar{display:none}
.paid-gallery-slide{flex:0 0 100%;min-width:0;aspect-ratio:1/1;scroll-snap-align:start;scroll-snap-stop:always}
body .business-main .paid-gallery-slide .business-main-photo,body[data-business="bahamas-sothebys"] .business-main .paid-gallery-slide .business-main-photo{width:100%;height:100%;object-fit:contain;margin:0}
.paid-gallery-controls{display:flex;justify-content:center;align-items:center;gap:18px;padding:9px;background:#fff;font-size:13px}.paid-gallery-controls button{border:1px solid #d3e6ee;border-radius:50%;width:32px;height:32px;background:#fff;color:#168ca7}.paid-gallery-controls button:disabled{opacity:.35}

/* Clean square galleries aligned with the business category. */
body .business-main .business-story{min-width:0}
body .business-main .business-contact-panel{padding-top:0}
body .business-main .business-photo-primary{height:auto;background:transparent;border:0}
body .business-main .business-photo-gallery:has(.paid-gallery-track){background:transparent;border:0}
body .business-main .paid-gallery-track,body .business-main .paid-gallery-slide,body .business-main .paid-gallery-controls{background:transparent}

/* Overlay navigation keeps the gallery compact and level with its category. */
body .business-main .paid-gallery-controls{position:absolute;inset:0;pointer-events:none;padding:0;background:transparent}
body .business-main .paid-gallery-controls button{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;background:rgba(255,255,255,.92);border:0;box-shadow:0 2px 8px rgba(0,0,0,.15);pointer-events:auto;font-size:20px}
.paid-gallery-controls button:first-child{left:12px}.paid-gallery-controls button:last-child{right:12px}
.paid-gallery-controls span{position:absolute;right:14px;bottom:14px;background:rgba(20,59,90,.8);color:#fff;border-radius:20px;padding:3px 11px;line-height:1.5}
body .business-main .business-contact-panel{padding-top:0}

body .business-main .paid-gallery-slide .business-main-photo{object-position:center top}

.paid-gallery-controls span{top:14px;bottom:auto}

/* More compact desktop business photos. */
@media(min-width:851px){body .business-main .business-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:40px}body .business-main .business-story{width:100%;max-width:480px}body .business-main .business-photo-primary{height:auto}}

.mobile-header-button,.mobile-contact-panel{display:none}
@media(max-width:650px){
body > header,body:has(.slideshow-hero) > header{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;align-items:center;position:relative}
body > header .header-brand-anniversary{width:auto;justify-content:center;grid-column:2;grid-row:1}
body > header .header-brand-anniversary .brand-logo{max-width:100%;width:210px!important}
.mobile-header-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:transparent;color:#143b5a;padding:10px}
.mobile-header-button svg{width:25px;height:25px}.mobile-phone-toggle{grid-column:1;grid-row:1}.mobile-menu-toggle{grid-column:3;grid-row:1}
body > header>nav{display:none;grid-column:1/-1;flex-direction:column;align-items:stretch;width:100%;padding:10px 0 14px}
body > header.mobile-menu-open>nav{display:flex}body > header>nav>a{text-align:left}body > header>.nav-cta{display:none}
body > header .mobile-contact-panel:not([hidden]){display:flex;grid-column:1/-1;flex-direction:column;gap:8px;background:white;padding:16px;border-radius:8px;box-shadow:0 4px 16px #152c3d15}
.mobile-contact-panel a{font-size:15px;color:#1561bb}.mobile-contact-panel a[href^="mailto:"]{text-decoration:underline}
body > header .island-menu-panel{position:static;width:100%;max-height:50vh;overflow:auto;padding:10px;grid-template-columns:1fr 1fr}
}

/* Show every link in the expanded mobile menu. */
@media(max-width:650px){body > header.mobile-menu-open>nav>a{display:block!important;width:100%;padding:10px 12px;text-align:left}body > header.mobile-menu-open>nav>.island-menu{display:block;width:100%;align-self:stretch}body > header.mobile-menu-open>nav>.island-menu>summary{text-align:left;padding:10px 12px}}

/* Inset directory and two-column mobile listings. */
body main>section.directory,body .island-page>section.directory,body .directory-main{max-width:1280px;width:calc(100% - 96px);margin-left:auto!important;margin-right:auto!important}
body .directory-main>section.directory{width:100%;max-width:none;margin-left:0!important;margin-right:0!important}
@media(max-width:600px){
body main>section.directory,body .island-page>section.directory,body .directory-main{width:calc(100% - 32px)}
body .directory-main>section.directory{width:100%}
body .results,body:has(.slideshow-hero) .results{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}
body .card.listing-link{min-width:0}body .card.listing-link h3{font-size:13px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
body .card.listing-link .location,body .card.listing-link .listing-phone{font-size:11px;line-height:1.35;overflow-wrap:anywhere}
body .card.listing-link .listing-category{font-size:10px;padding:4px 6px;line-height:1.3}
body .card.listing-link .location-pin,body .card.listing-link .contact-icon{width:15px;height:15px;flex-shrink:0}
body .card.listing-link .listing-photo{border-radius:8px}
body .island-listing-card .listing-description-link{font-size:11px}
}

/* Homepage topic headings supplied for visitor inspiration. */
.before-go-topic-group{min-width:0}.before-go-topic-group .before-go-card{display:block}.before-go-topic-headings{list-style:none;margin:0;padding:18px 4px 0;display:grid;gap:0}.before-go-topic-headings li{padding:9px 0;border-bottom:1px solid rgba(20,60,85,.14);font-size:15px;line-height:1.45;color:var(--ink);overflow-wrap:anywhere}.before-go-topic-headings li:last-child{border-bottom:0}@media(max-width:650px){.before-go-topic-headings{padding-top:10px}.before-go-topic-headings li{font-size:13px;padding:8px 0}}

.homepage-read-more{display:inline-block;margin-top:16px}.visitor-topic-articles{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px;padding-top:24px;border-top:1px solid #d9e3e8}.visitor-topic-articles article{min-width:0}.visitor-topic-articles h3{font-size:23px;line-height:1.3;margin:0 0 12px}.visitor-topic-articles p{font-size:16px;line-height:1.75;margin:0;overflow-wrap:anywhere}.before-go-topic{scroll-margin-top:110px}@media(max-width:650px){.visitor-topic-articles{grid-template-columns:1fr;gap:24px}.visitor-topic-articles h3{font-size:21px}}

/* Attached visitor guide copy replaces the previous Before You Go sections. */
.visitor-guide-main{padding-bottom:60px}.visitor-guide-intro{padding:30px 0}.visitor-guide-intro h1{font-size:clamp(36px,5vw,54px);margin:12px 0 28px}.visitor-guide-index{display:flex;flex-wrap:wrap;gap:8px;padding:22px;background:#edf5fb;border-radius:8px}.visitor-guide-index a{font-size:14px;color:var(--ink);padding:7px 11px;border:1px solid #d5e2ec;border-radius:4px;background:white;text-decoration:none}.visitor-guide-index a:hover{background:#dcecf8}.visitor-guide-articles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 44px}.visitor-guide-article{min-width:0;padding:24px 0;border-top:1px solid #d8e3ea;scroll-margin-top:110px}.visitor-guide-article h2{font-size:26px;line-height:1.3;margin:0 0 14px}.visitor-guide-article p{color:var(--muted);font-size:16px;line-height:1.8;margin:0;overflow-wrap:anywhere}.visitor-guide-group-heading{grid-column:1/-1;background:#edf5fb;padding:20px 24px;border:0}.visitor-guide-group-heading h2{margin:0}@media(max-width:700px){.visitor-guide-articles{grid-template-columns:1fr;gap:8px}.visitor-guide-index{padding:14px}.visitor-guide-index a{font-size:13px}.visitor-guide-article h2{font-size:23px}}

/* Colourful visitor guide editorial layout. */
.visitor-guide-main{max-width:1320px!important;padding:0 30px 70px;background:#fffaf1}.visitor-guide-hero{position:relative;min-height:560px;margin:0 -30px;overflow:hidden;background:#063e54;display:flex;align-items:center}.visitor-guide-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.visitor-guide-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,36,51,.87),rgba(1,36,51,.5) 48%,rgba(1,36,51,.06))}.visitor-guide-hero-copy{position:relative;z-index:1;width:680px;padding:65px 60px;color:white}.visitor-guide-hero-copy .eyebrow{color:#ffda5c;letter-spacing:.15em;font-size:12px}.visitor-guide-hero-copy h1{font-size:21px;font-weight:500;margin:20px 0}.visitor-guide-hero-copy h1 span{display:block;font-size:clamp(40px,5vw,65px);line-height:1.06;letter-spacing:-.045em;font-weight:800;margin-top:16px}.visitor-guide-hero-copy>p:last-of-type{font-size:18px;line-height:1.65;max-width:470px}.visitor-hero-button{display:inline-block;background:#ffce46;color:#153347;text-decoration:none;padding:14px 22px;border-radius:30px;font-weight:700;margin-top:15px}.visitor-hero-stamp{position:absolute;z-index:1;right:35px;bottom:30px;background:#ffce46;color:#153347;padding:26px 20px;border-radius:50%;width:155px;height:155px;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:17px;transform:rotate(8deg)}.visitor-guide-intro{padding:36px 6px}.visitor-section-kicker{font-size:12px;letter-spacing:.15em;color:#087f88;font-weight:800;margin-top:32px}.visitor-guide-intro h2{font-size:clamp(29px,3.5vw,42px);line-height:1.2;letter-spacing:-.035em;margin:12px 0 24px}.visitor-guide-intro>.eyebrow{display:none}.visitor-topic-picker{background:white;border:1px solid #b6ddd9;border-radius:12px;overflow:hidden}.visitor-topic-picker summary{cursor:pointer;padding:18px 22px;font-weight:700;color:#075568;list-style:none;display:flex;justify-content:space-between}.visitor-topic-picker summary span{font-size:24px;line-height:1}.visitor-topic-picker[open] summary span{transform:rotate(45deg)}.visitor-guide-index{background:#eff9f6;border-radius:0}.visitor-guide-articles{gap:26px;align-items:start}.visitor-guide-article{background:white;padding:30px;border:1px solid #e8e8df;border-radius:16px;box-shadow:0 7px 22px #19384006;overflow:hidden;border-top:5px solid #10a8ae}.visitor-guide-article:nth-child(3n){border-top-color:#ffc945}.visitor-guide-article:nth-child(3n+1){border-top-color:#ed7770}.visitor-guide-article h2{font-size:28px;color:#075568;letter-spacing:-.025em}.visitor-guide-article p{font-size:16px;line-height:1.85;color:#435b66}.visitor-guide-article p a{color:#067f88;text-decoration:underline;text-underline-offset:3px}.visitor-article-photo{display:block;width:calc(100% + 60px);max-width:none;height:250px;object-fit:cover;margin:-30px -30px 25px}.visitor-guide-group-heading{background:#087d86;border:0;border-radius:12px;padding:23px 30px;margin-top:15px;box-shadow:none}.visitor-guide-group-heading h2{color:white;font-size:32px}.visitor-guide-article:target{outline:3px solid #ffca43;outline-offset:4px}@media(max-width:700px){.visitor-guide-main{padding:0 18px 45px;margin:0!important}.visitor-guide-hero{min-height:580px;margin:0 -18px}.visitor-guide-hero-copy{padding:42px 26px 120px;width:100%}.visitor-guide-hero-copy h1 span{font-size:43px}.visitor-guide-hero-copy>p:last-of-type{font-size:16px}.visitor-hero-stamp{right:22px;bottom:20px;width:105px;height:105px;padding:14px;font-size:12px}.visitor-guide-articles{gap:20px}.visitor-guide-article{padding:24px}.visitor-article-photo{width:calc(100% + 48px);height:210px;margin:-24px -24px 22px}.visitor-guide-article h2{font-size:25px}.visitor-guide-intro{padding:25px 0}.visitor-guide-group-heading{padding:20px 24px}}

.visitor-topic-select{max-width:700px;margin:28px 0 8px}.visitor-topic-select label{display:block;color:#009fc1;font-size:27px;font-weight:400;margin-bottom:16px}.visitor-topic-select select{appearance:none;-webkit-appearance:none;display:block;width:100%;min-height:60px;padding:13px 58px 13px 24px;border:1px solid #777;border-radius:26px 0 0 0;background:white url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='16' viewBox='0 0 24 16'%3E%3Cpath d='m3 4 9 9 9-9' fill='none' stroke='%23777' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 22px center;color:#444;font:inherit;font-size:20px;cursor:pointer}.visitor-topic-select select:focus-visible{outline:3px solid #009fc1;outline-offset:4px}@media(max-width:700px){.visitor-topic-select label{font-size:24px}.visitor-topic-select select{font-size:18px}}

/* Topic photos on the left, descriptions on the right. */
.visitor-guide-articles{grid-template-columns:1fr;gap:26px}.visitor-guide-article:not(.visitor-guide-group-heading){display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:32px;padding:26px;align-items:start}.visitor-topic-photo{min-width:0;overflow:hidden;border-radius:10px;background:#e9f4f3}.visitor-topic-photo .visitor-article-photo{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;max-width:100%;margin:0}.visitor-topic-copy{min-width:0;padding:5px 0}.visitor-topic-copy h2{margin-top:0}.visitor-topic-photo-pending{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#d9eeec,#f8f0d9);color:#50777c;font-size:15px}.visitor-guide-group-heading{display:block}@media(max-width:700px){.visitor-guide-article:not(.visitor-guide-group-heading){grid-template-columns:1fr;padding:20px;gap:20px}.visitor-topic-photo .visitor-article-photo{height:auto;aspect-ratio:4/3}.visitor-topic-copy{padding:0}}

/* Open visitor guide layout: full-width banner and unboxed topics. */
main.before-go-main.visitor-guide-main{max-width:none!important;width:100%;margin:0!important;padding:0 0 70px;background:transparent}.visitor-guide-main .visitor-guide-hero{width:100%;margin:0!important;max-width:none}.visitor-guide-hero-copy{padding-left:clamp(26px,6vw,110px)}.visitor-guide-main .visitor-guide-intro,.visitor-guide-main .visitor-guide-articles{width:calc(100% - 80px);max-width:1240px;margin-left:auto!important;margin-right:auto!important}.visitor-guide-main .visitor-guide-article,.visitor-guide-main .visitor-guide-group-heading{background:transparent;border:0;border-radius:0;box-shadow:none;outline:0}.visitor-guide-main .visitor-guide-article:not(.visitor-guide-group-heading){padding:26px 0;gap:42px}.visitor-guide-main .visitor-guide-group-heading{padding:26px 0 0;margin-top:12px}.visitor-guide-main .visitor-guide-group-heading h2{color:#075568}.visitor-guide-main .visitor-topic-photo{border-radius:0;background:transparent}.visitor-guide-main .visitor-topic-photo-pending{background:transparent;border:0}.visitor-guide-main .visitor-topic-photo-pending span{color:#71868b}.visitor-guide-main .visitor-article-photo{border-radius:0}.visitor-guide-main .visitor-hero-stamp{background:transparent;color:white;width:auto;height:auto;border-radius:0;transform:none;text-align:right;padding:0}.visitor-guide-main .visitor-topic-select select{border:0;border-bottom:1px solid #a8b9bd;border-radius:0;background-color:transparent;padding-left:0}.visitor-guide-main .visitor-hero-button{background:transparent;border:0;border-radius:0;color:#ffda5c;padding-left:0}.visitor-guide-main .visitor-guide-index,.visitor-guide-main .visitor-topic-picker{background:transparent;border:0;box-shadow:none}@media(max-width:700px){.visitor-guide-main .visitor-guide-intro,.visitor-guide-main .visitor-guide-articles{width:calc(100% - 40px)}.visitor-guide-main .visitor-guide-article:not(.visitor-guide-group-heading){padding:18px 0;gap:20px}.visitor-guide-main .visitor-guide-hero{margin:0!important;width:100%}.visitor-guide-hero-copy{padding-left:26px}}

/* Align topic selector with the left edge of the content container. */
.visitor-guide-main .visitor-guide-intro{padding-left:0;padding-right:0}.visitor-guide-main .visitor-topic-select{width:100%;max-width:440px;margin:24px auto 8px 0;text-align:left;align-self:flex-start}.visitor-guide-main .visitor-topic-select select{width:100%;text-align:left}@media(max-width:700px){.visitor-guide-main .visitor-topic-select{max-width:100%;margin-left:0}}

/* Topic selector beside the article column, with subtle section dividers. */
.visitor-guide-main .visitor-guide-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;max-width:1320px;width:calc(100% - 80px);margin:0 auto;align-items:start}.visitor-guide-sidebar{position:sticky;top:110px;padding-top:24px;min-width:0}.visitor-guide-main .visitor-guide-layout .visitor-guide-articles{width:100%;max-width:none;margin:0!important;gap:0}.visitor-guide-main .visitor-guide-sidebar .visitor-topic-select{margin:0;max-width:none;width:100%}.visitor-guide-main .visitor-guide-sidebar .visitor-topic-select label{font-size:22px;line-height:1.3;margin-bottom:15px}.visitor-guide-main .visitor-guide-sidebar .visitor-topic-select select{border:1px solid #8f9699;border-radius:20px 0 0 0;background-color:white;min-height:54px;padding:12px 42px 12px 15px;font-size:17px;background-position:right 14px center;background-size:18px}.visitor-guide-main .visitor-guide-layout .visitor-guide-article:not(.visitor-guide-group-heading){border:0;border-bottom:1px solid #d3d3d3;padding:28px 0;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:28px}.visitor-guide-main .visitor-guide-layout .visitor-topic-copy h2{font-size:25px}.visitor-guide-main .visitor-guide-layout .visitor-topic-copy p{font-size:16px;line-height:1.75}@media(max-width:950px){.visitor-guide-main .visitor-guide-layout{grid-template-columns:220px minmax(0,1fr);gap:26px;width:calc(100% - 48px)}.visitor-guide-main .visitor-guide-layout .visitor-guide-article:not(.visitor-guide-group-heading){grid-template-columns:1fr;gap:20px}}@media(max-width:700px){.visitor-guide-main .visitor-guide-layout{grid-template-columns:1fr;width:calc(100% - 40px);gap:15px}.visitor-guide-sidebar{position:static;padding-top:0}.visitor-guide-main .visitor-guide-sidebar .visitor-topic-select{max-width:none}.visitor-guide-main .visitor-guide-layout .visitor-guide-article:not(.visitor-guide-group-heading){padding:24px 0}}

.visitor-back-to-topics{display:none}#visitor-topics-menu{scroll-margin-top:110px}@media(max-width:700px){.visitor-back-to-topics{display:block;position:fixed;bottom:calc(20px + env(safe-area-inset-bottom));right:18px;z-index:40;padding:12px 18px;border-radius:24px;background:#075568;color:white;text-decoration:none;font-size:14px;font-weight:700;box-shadow:0 3px 12px #0002}.visitor-back-to-topics:focus-visible{outline:3px solid #ffce46;outline-offset:3px}.visitor-guide-main{padding-bottom:100px}}

/* Consistent mobile names: use the full card width and wrap only as needed. */
@media(max-width:600px){body .card.listing-link h3,body:has(.slideshow-hero) .card.listing-link h3{font-size:13px;line-height:1.3;letter-spacing:0;width:100%;max-width:none;margin-left:0;margin-right:0;white-space:normal;word-break:normal;overflow-wrap:normal;text-wrap:wrap;hyphens:none}}

/* Temporarily hide island area navigation; retain content for later. */
.island-area-menu{display:none!important}

/* Compact mobile advertising banner, including WordPress paragraph wrappers. */
@media(max-width:650px){
.advertising-section .advertise-banner-video{display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;height:auto!important;min-height:0!important;padding:0;grid-template-rows:none}
.advertising-section .advertise-banner-video>p:empty{display:none!important}
.advertising-section .advertise-banner-video>p{margin:0;padding:0}
.advertising-section .advertise-video-area{display:flex;flex:none;align-self:stretch;width:100%;height:auto;min-height:170px;border-radius:0;box-sizing:border-box}
.advertising-section .advertise-video-copy{width:100%;padding:22px!important}
.advertising-section .advertise-video-cta{flex:none;width:100%;min-height:0;height:auto;margin:0;padding:18px 20px;box-sizing:border-box}
.advertising-section .advertise-video-cta .advertise-banner-button{display:inline-block;margin:0;line-height:1.4}
}

.home-topic-summary h3,.home-topic-summary p{display:none}.home-topic-link-context{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:650px){
.before-go-section .before-go-grid{grid-template-columns:minmax(0,1fr)!important;gap:24px}
.before-go-section .before-go-topic-group{display:grid;grid-template-columns:100px minmax(0,1fr);gap:18px;align-items:start;padding-bottom:24px;border-bottom:1px solid #d9d3bd}
.before-go-section .before-go-topic-group:last-child{border-bottom:0;padding-bottom:0}
.before-go-section .before-go-topic-group .before-go-card{width:100%;height:110px;min-height:0;aspect-ratio:auto;margin:0;border-radius:5px}
.before-go-section .before-go-card:after,.before-go-section .before-go-card>span{display:none}
.before-go-section .home-topic-summary h3{display:block;font-size:21px;line-height:1.25;margin:0 0 7px;color:var(--ink)}
.before-go-section .home-topic-summary p{display:block;font-size:14px;line-height:1.55;margin:0 0 10px;color:var(--muted)}
.before-go-section .home-topic-summary .homepage-read-more{display:inline-block;margin:0;padding:0;background:transparent;border:0;border-radius:0;color:#075568;font-size:14px;font-weight:700;line-height:1.4;text-decoration:underline;text-underline-offset:3px}
}

/* Single island photo with directory search overlaid. */
body .island-page>section.island-single-hero{position:relative;width:100%;max-width:none;margin:0 0 40px!important;min-height:520px;overflow:hidden;background:#126c89;display:flex;justify-content:center;align-items:flex-start;padding:85px 40px 45px}.island-single-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--island-photo-position,center)}.island-single-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#062e4520,transparent 65%);pointer-events:none}.island-single-search-slot{position:relative;z-index:2;width:100%;max-width:920px}.island-single-search-slot .island-heading-search{width:100%}.island-single-search-slot #filters.filters{width:100%;max-width:none;background:rgba(255,255,255,.96);border:0;box-shadow:0 4px 22px #06384d22;margin:0;padding:12px 16px;grid-template-columns:1fr 1fr auto}.island-single-search-slot .filters select{background:transparent}.island-heading-row:has(>.island-heading-search-moved){grid-template-columns:1fr}.island-heading-search-moved{display:none}@media(max-width:650px){body .island-page>section.island-single-hero{min-height:450px;padding:30px 20px;margin-bottom:28px!important}.island-single-search-slot #filters.filters{grid-template-columns:1fr;gap:10px;border-radius:15px;padding:16px}.island-single-search-slot .filters label{border-right:0;padding:0}.island-single-search-slot .filters label:first-child{padding-left:0}.island-single-search-slot .filters select{min-height:40px;font-size:16px}.island-single-search-slot .filters button{min-height:44px;padding:10px 20px}.island-single-photo{object-position:var(--island-photo-position,center)}}

/* Light transparent search screen; island context comes from the current page. */
.island-single-search-slot #filters.filters{background:rgba(255,255,255,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);grid-template-columns:minmax(0,1fr) auto}
.island-single-search-slot #filters.filters label:has(#island){display:none}
.island-single-search-slot #filters.filters label:has(#category){border-right:0;padding-left:8px}
@media(max-width:650px){.island-single-search-slot #filters.filters{grid-template-columns:1fr;background:rgba(255,255,255,.72)}.island-single-search-slot #filters.filters label:has(#category){padding-left:0}}

/* Keep the search alongside the island title, outside the banner photo. */
body .island-page:has(.island-single-hero) .island-heading-row{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:30px}
.island-page:has(.island-single-hero) .island-heading-search #filters.filters{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;width:100%;max-width:none;background:#f0f7f8;border:0;box-shadow:none;padding:12px 16px;margin:0}
.island-page:has(.island-single-hero) .island-heading-search #filters label:has(#island){display:none}
.island-page:has(.island-single-hero) .island-heading-search #filters label:has(#category){border:0;padding:0}
.island-page:has(.island-single-hero) .island-heading-search #filters select{background:transparent}
.island-single-search-slot{display:none}
body .island-page>section.island-single-hero{padding:0;min-height:520px}
@media(max-width:850px){body .island-page:has(.island-single-hero) .island-heading-row{grid-template-columns:1fr;gap:18px}}
@media(max-width:650px){body .island-page>section.island-single-hero{min-height:350px;padding:0}.island-page:has(.island-single-hero) .island-heading-search #filters.filters{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:10px 12px;border-radius:14px}.island-page:has(.island-single-hero) .island-heading-search #filters select{font-size:14px;min-height:40px}.island-page:has(.island-single-hero) .island-heading-search #filters button{padding:10px 15px;min-height:42px;font-size:14px}}

/* Compact island search icon and one-row phone form. */
.island-heading-search .filters button:has(.island-search-icon){display:flex;align-items:center;justify-content:center;padding:12px;min-width:46px;min-height:46px}.island-search-icon{display:block;flex-shrink:0}
@media(max-width:650px){
body .island-page:has(.island-single-hero) .island-heading-search #filters.filters{display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;align-items:center;gap:8px;padding:8px 10px;min-width:0}
body .island-page:has(.island-single-hero) .island-heading-search #filters.filters label:has(#category){min-width:0;width:100%;margin:0;padding:0;border:0}
body .island-page:has(.island-single-hero) .island-heading-search #filters.filters select{width:100%;min-width:0;font-size:14px;margin:0;padding-right:18px}
body .island-page .island-heading-search #filters.filters button:has(.island-search-icon){width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;margin:0;grid-column:auto}
}

/* Shared island search layout, including islands awaiting their new photos. */
body .island-page .island-heading-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:30px}
body .island-page .island-heading-search #filters.filters{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:12px;width:100%;max-width:none;background:#f0f7f8;border:0;box-shadow:none;padding:12px 16px;margin:0;min-width:0}
body .island-page .island-heading-search #filters label:has(#island){display:none}
body .island-page .island-heading-search #filters label:has(#category){min-width:0;border:0;padding:0;margin:0}
body .island-page .island-heading-search #filters select{background:transparent;width:100%;min-width:0}
body .island-page .island-heading-search #filters button:has(.island-search-icon){display:flex;align-items:center;justify-content:center;width:46px;min-width:46px;height:46px;padding:11px;grid-column:auto}
@media(max-width:850px){body .island-page .island-heading-row{grid-template-columns:1fr;gap:18px}}
@media(max-width:650px){body .island-page .island-heading-search #filters.filters{display:grid!important;grid-template-columns:minmax(0,1fr) 44px!important;align-items:center;gap:8px;padding:8px 10px;border-radius:14px}body .island-page .island-heading-search #filters select{font-size:14px;min-height:40px;padding-right:18px}body .island-page .island-heading-search #filters button:has(.island-search-icon){width:44px;min-width:44px;height:44px;min-height:44px;padding:10px;margin:0;grid-column:auto}}

/* Free-text island directory search, independent of category availability. */
body .island-page .island-heading-search #filters .island-hidden-category{display:none!important}
body .island-page .island-heading-search #filters .island-keyword-field{display:block;width:100%;min-width:0;margin:0;padding:0;border:0}
body .island-page .island-heading-search #filters .island-keyword-field input{display:block;width:100%;min-width:0;min-height:42px;background:transparent;border:0;padding:7px 8px;font-size:16px;color:var(--ink);box-sizing:border-box}
body .island-page .island-heading-search #filters .island-keyword-field input::placeholder{color:#526675;opacity:1}

/* Directory left, island introduction/facts/map stacked on the right. */
body .island-page>.island-directory-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(290px,1fr);gap:40px;align-items:start;width:calc(100% - 96px);max-width:1320px;margin:38px auto 0}
body .island-directory-layout>section.directory{width:100%;max-width:none;margin:0!important;padding-top:0;min-width:0}
.island-information-sidebar{min-width:0;display:flex;flex-direction:column;gap:24px}
body .island-information-sidebar .island-overview{width:100%;max-width:none;margin:0!important;padding:0;display:block;text-align:left}
body .island-information-sidebar .island-description{max-width:none;margin:0;text-align:left;padding:0}
.island-information-sidebar .island-description h2{font-size:28px;margin-bottom:14px}
.island-information-sidebar .island-description p{font-size:15px;line-height:1.7;text-align:left}
body .island-information-sidebar .island-details{display:flex;flex-direction:column;gap:24px;width:100%;max-width:none;margin:0!important;padding:0}
body .island-information-sidebar .island-facts{width:100%;margin:0;padding:24px;min-width:0}
.island-information-sidebar .island-facts h2{font-size:25px}
.island-information-sidebar .island-facts-columns{display:block}
.island-information-sidebar .island-facts ul{padding-left:19px}
.island-information-sidebar .island-facts li{font-size:14px;line-height:1.65;overflow-wrap:anywhere}
.island-information-sidebar .island-map-column{width:100%;min-width:0}
.island-information-sidebar .island-map-column iframe{display:block;width:100%;height:330px;min-height:0}
.island-information-sidebar .map-note{font-size:12px;line-height:1.5}
body .island-directory-layout .results{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 18px}
@media(max-width:1000px){body .island-page>.island-directory-layout{grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:24px;width:calc(100% - 48px)}body .island-directory-layout .results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:750px){body .island-page>.island-directory-layout{grid-template-columns:1fr;width:calc(100% - 32px);gap:38px;margin-top:28px}.island-information-sidebar{gap:24px}body .island-directory-layout .results{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.island-information-sidebar .island-map-column iframe{height:350px}}

/* Island photo immediately below the header, with title over the image. */
body .island-page>section.island-single-hero,body .island-page>section.island-slideshow{margin-top:0!important;position:relative}
.island-photo-title{position:absolute;z-index:3;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;pointer-events:none}
.island-photo-title h1{color:white;font-size:clamp(42px,7vw,100px);text-align:center;text-transform:uppercase;letter-spacing:.025em;line-height:1.1;text-shadow:0 3px 8px #0009,0 1px 2px #000b;margin:0;white-space:normal!important}
body .island-page>.island-heading-relocated{display:none!important}
body .island-page>.island-layout-introduction{display:block;width:calc(100% - 96px);max-width:1320px;margin:35px auto 25px!important;text-align:center;padding:0}
.island-layout-introduction .island-description{max-width:1050px;margin:auto;text-align:center}
.island-layout-introduction .island-description h2{font-size:30px;margin:8px 0 16px}
.island-layout-introduction .island-description p:not(.eyebrow){font-size:16px;line-height:1.75}
.island-layout-introduction .island-breadcrumb-row{text-align:left;margin-bottom:25px}
body .island-page>.island-directory-layout{margin-top:25px}
body .island-directory-layout .island-directory-search{width:100%;margin:0 0 28px}
body .island-directory-layout .island-directory-search #filters.filters{display:grid;grid-template-columns:minmax(0,1fr) 46px;align-items:center;gap:10px;width:100%;max-width:none;background:#f0f7f8;border:0;box-shadow:none;padding:10px 14px;margin:0}
body .island-directory-layout .island-directory-search #filters label:has(#island),body .island-directory-layout .island-directory-search #filters .island-hidden-category{display:none!important}
body .island-directory-layout .island-directory-search #filters .island-keyword-field{display:block;min-width:0;width:100%;border:0;padding:0;margin:0}
body .island-directory-layout .island-directory-search #filters input{width:100%;min-width:0;min-height:42px;background:transparent;border:0;font-size:16px;padding:8px}
body .island-directory-layout .island-directory-search #filters button{display:flex;justify-content:center;align-items:center;width:46px;min-width:46px;min-height:46px;padding:10px;grid-column:auto}
.island-information-sidebar .island-larger-map-link{display:block;margin:0 0 12px;font-size:14px;text-decoration:underline}
@media(max-width:750px){body .island-page>.island-layout-introduction{width:calc(100% - 32px);margin-top:26px!important}.island-photo-title h1{font-size:clamp(36px,10vw,58px)}body .island-directory-layout .island-directory-search #filters.filters{grid-template-columns:minmax(0,1fr) 44px;padding:8px 10px}body .island-directory-layout .island-directory-search #filters button{width:44px;min-width:44px;min-height:44px}.island-layout-introduction .island-description p:not(.eyebrow){font-size:15px}}

/* Island welcomes and weather in the main header. */
header>.island-header-weather{flex-shrink:0;position:relative;margin-left:0}
header>.island-header-weather .island-weather-popup{left:auto;right:0;top:44px;width:min(650px,calc(100vw - 40px));z-index:100}
.island-layout-introduction .island-description h2{font-size:clamp(27px,3vw,39px);line-height:1.2}
.island-directory-layout .directory>.section-heading{margin-bottom:12px}
.island-directory-layout .directory>.section-heading p{margin:0;font-size:16px}
body .island-directory-layout .island-directory-search{margin-bottom:22px}
@media(max-width:650px){header>.island-header-weather{position:absolute;right:57px;top:50%;transform:translateY(-50%);margin:0}header>.island-header-weather summary{width:28px;height:28px}header>.island-header-weather summary svg{width:21px;height:21px}header>.island-header-weather .island-weather-popup{position:fixed;right:0;left:auto;top:40px;width:calc(100vw - 32px);max-width:calc(100vw - 32px)}.island-directory-layout .directory>.section-heading p{font-size:14px}.island-layout-introduction .island-description h2{font-size:28px}}

/* Keep island names in open space, clear of the photograph's subject. */
.island-photo-title{align-items:flex-start;justify-content:flex-start;padding:42px clamp(24px,5vw,90px)}
.island-photo-title h1{font-size:clamp(38px,5.5vw,82px);text-align:left;max-width:90%;text-shadow:0 2px 6px #0008}
body[data-island="Andros"] .island-photo-title,body[data-island="Grand Bahama"] .island-photo-title{justify-content:flex-end}
body[data-island="Andros"] .island-photo-title h1,body[data-island="Grand Bahama"] .island-photo-title h1{text-align:right}
body[data-island="Nassau"] .island-photo-title{align-items:flex-end;justify-content:flex-start}
@media(max-width:650px){.island-photo-title{padding:24px 20px}.island-photo-title h1{font-size:clamp(30px,8vw,43px);max-width:100%;line-height:1.1}body[data-island="Andros"] .island-photo-title,body[data-island="Grand Bahama"] .island-photo-title{justify-content:flex-end}}

/* Cursive island welcome; no name overlays on photos. */
body .island-layout-introduction .island-description .island-welcome-script{font-family:"Allura","Brush Script MT",cursive!important;font-weight:400;font-style:normal;font-size:clamp(42px,5vw,66px);line-height:1.2;letter-spacing:0;text-transform:none;color:#143b5a;text-shadow:none;margin:8px 0 18px;white-space:normal}.island-photo-title{display:none!important}@media(max-width:650px){body .island-layout-introduction .island-description .island-welcome-script{font-size:clamp(37px,9vw,48px);line-height:1.15}}

/* Sample captioned island gallery: consistent tiles from different image sizes. */
body .island-page>.island-caption-gallery{max-width:1320px;width:calc(100% - 96px);margin:45px auto!important;padding:0}.island-gallery-intro{margin-bottom:24px}.island-gallery-intro .eyebrow{margin-bottom:8px}.island-gallery-intro h2{font-size:34px}.island-caption-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.island-caption-grid figure{margin:0;min-width:0}.island-caption-grid img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.island-caption-grid figcaption{font-size:15px;line-height:1.5;color:#526675;padding:12px 0 0}.island-caption-grid .gallery-wide{grid-column:1/-1}.island-caption-grid .gallery-wide img{aspect-ratio:5/2;object-position:center 52%}@media(max-width:650px){body .island-page>.island-caption-gallery{width:calc(100% - 32px);margin:30px auto!important}.island-caption-grid{grid-template-columns:1fr;gap:24px}.island-caption-grid .gallery-wide{grid-column:auto}.island-caption-grid .gallery-wide img{aspect-ratio:3/2}.island-gallery-intro h2{font-size:28px}.island-caption-grid figcaption{font-size:14px}}

/* One shared photo container, with an individual caption for each slide. */
.island-caption-carousel-frame{position:relative;width:100%;overflow:hidden}.island-caption-carousel-track{display:flex;width:100%;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.island-caption-carousel-track::-webkit-scrollbar{display:none}.island-caption-carousel-track .island-caption-slide{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always}.island-caption-slide img{display:block;width:100%;height:510px;object-fit:cover}.island-caption-slide figcaption{padding:16px 60px 12px 0;font-size:15px;color:#526675;line-height:1.5;min-height:54px}.island-caption-prev,.island-caption-next{position:absolute;top:235px;width:44px;height:44px;border:0;border-radius:50%;background:#ffffffdf;color:#143b5a;font-size:36px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer}.island-caption-prev{left:18px}.island-caption-next{right:18px}.island-caption-count{position:absolute;bottom:15px;right:0;color:#526675;font-size:13px}@media(max-width:650px){.island-caption-slide img{height:300px}.island-caption-prev,.island-caption-next{top:132px;width:38px;height:38px;font-size:30px}.island-caption-prev{left:10px}.island-caption-next{right:10px}.island-caption-slide figcaption{font-size:14px;padding-top:12px}}

/* Wide photo collage replaces the island's top banner. */
body .island-page>section.island-collage-banner{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;width:100%;max-width:none;height:520px;margin:0!important;padding:0;background:white;position:relative;overflow:hidden}.island-collage-banner figure{margin:0;position:relative;min-width:0;min-height:0;overflow:hidden}.island-collage-banner .island-collage-large{grid-row:1/3}.island-collage-banner figure img{display:block;width:100%;height:100%;object-fit:cover}.island-collage-banner .island-collage-large img{object-position:52% 65%}.island-collage-banner figcaption{position:absolute;bottom:0;left:0;right:0;padding:30px 18px 14px;color:white;background:linear-gradient(transparent,#082c40ad);font-size:14px;line-height:1.4;text-shadow:0 1px 3px #0006}@media(max-width:650px){body .island-page>section.island-collage-banner{height:440px;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1.4fr 1fr;gap:5px}.island-collage-banner .island-collage-large{grid-row:1;grid-column:1/-1}.island-collage-banner figcaption{font-size:11px;padding:23px 10px 9px}}

/* Five-photo horizontal collage on desktop; swipeable individual photos on phones. */
body .island-page>section.island-collage-slideshow{display:block;height:520px;padding:0;margin:0!important}
.island-collage-track{display:grid;grid-template-columns:repeat(24,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:6px;height:100%;width:100%}
.island-collage-track figure:nth-child(1){grid-column:1/12;grid-row:1/3}.island-collage-track figure:nth-child(2){grid-column:12/21;grid-row:1}.island-collage-track figure:nth-child(3){grid-column:12/17;grid-row:2}.island-collage-track figure:nth-child(4){grid-column:17/21;grid-row:2}.island-collage-track figure:nth-child(5){grid-column:21/25;grid-row:1/3}
.island-collage-track figure img{object-position:center}.island-collage-track figure:first-child img{object-position:52% 60%}.island-collage-track figcaption{font-size:12px;padding:25px 12px 10px}.island-collage-controls{position:absolute;z-index:4;right:14px;top:14px;display:flex;gap:5px}.island-collage-controls button{border:0;background:#fffffff0;color:#143b5a;min-height:36px;min-width:36px;padding:6px 10px;border-radius:4px;font-size:14px}.island-collage-controls button[data-collage-prev],.island-collage-controls button[data-collage-next]{font-size:24px;line-height:1}
@media(max-width:650px){body .island-page>section.island-collage-slideshow{height:350px}.island-collage-track{display:flex;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.island-collage-track::-webkit-scrollbar{display:none}.island-collage-track figure{flex:0 0 100%;width:100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always}.island-collage-track figcaption{font-size:13px;padding:30px 18px 15px}.island-collage-controls{display:none}}

/* Island welcomes match the homepage welcome lettering. */
body .island-layout-introduction .island-description .island-welcome-script{font-family:"Caveat","Brush Script MT",cursive!important;font-weight:500;letter-spacing:-.02em}

/* Sample printed-guide promotion in the island sidebar. */
.island-guide-ad{display:block;width:100%;max-width:100%;background:#fff;text-align:center;overflow:hidden;border-radius:3px;box-shadow:0 4px 20px #143b5a14;margin:0 0 25px;color:#143b5a}.island-guide-ad-heading{background:linear-gradient(125deg,#008cb7,#0075b4);padding:23px 12px 35px;color:white}.island-guide-ad-heading>span{font-size:10px;font-weight:700;letter-spacing:.13em}.island-guide-ad-heading h2{font-size:29px;line-height:1.15;margin:9px 0 6px;color:white}.island-guide-ad-heading p{font-size:12px;margin:0;color:white}.island-guide-ad-books{height:260px;position:relative;margin-top:-16px;background:linear-gradient(180deg,transparent,#f0f9fb)}.island-guide-ad-books img{position:absolute;width:145px;height:215px;object-fit:cover;box-shadow:5px 8px 13px #112c3d40;top:18px}.island-guide-back-page{left:calc(50% - 120px);transform:rotate(-12deg);filter:brightness(.98)}.island-guide-front-cover{left:calc(50% - 38px);transform:rotate(9deg)}.island-guide-ad-footer{padding:4px 17px 23px}.island-guide-ad-footer p{font-size:13px;line-height:1.5;margin:0 0 14px}.island-guide-read-button{display:inline-block;background:#ffce46;color:#143b5a;padding:11px 20px;border-radius:5px;font-size:15px;font-weight:700}.island-guide-ad-footer small{display:block;font-size:10px;margin-top:12px;color:#526675}.island-guide-ad:hover .island-guide-read-button{background:#f7be23}.island-guide-ad:focus-visible{outline:3px solid #0075b4;outline-offset:4px}

/* More compact listing details, with business names taking priority. */
body .card.listing-link h3,body:has(.slideshow-hero) .card.listing-link h3{font-size:17px;line-height:1.2;margin-top:4px;margin-bottom:4px}
body .card.listing-link .location{font-size:12px;line-height:1.35;margin-top:3px;margin-bottom:3px;gap:5px}
body .card.listing-link .listing-island-name{font-size:11px;font-weight:600}
body .card.listing-link .location .location-pin{width:14px;height:14px;flex:0 0 14px}
body .card.listing-link .listing-phone{font-size:12px;line-height:1.3;margin-top:3px;margin-bottom:0}
body .card.listing-link .listing-category{margin-top:0;margin-bottom:4px;line-height:1.25}
body .card.listing-link{padding-bottom:8px}
body .island-directory-layout .results{row-gap:20px}
@media(max-width:600px){body .card.listing-link h3,body:has(.slideshow-hero) .card.listing-link h3{font-size:14px;line-height:1.2;margin-top:3px;margin-bottom:3px}body .card.listing-link .location{font-size:11px;margin-top:2px;margin-bottom:2px}body .card.listing-link .listing-island-name{font-size:10px}body .card.listing-link .listing-phone{font-size:11px;margin-top:2px}body .card.listing-link .listing-category{font-size:10px;margin-bottom:3px}body .island-directory-layout .results{row-gap:16px}}

body[data-island] .card.listing-link .location{font-size:12px;line-height:1.35;margin-top:3px;margin-bottom:3px}body[data-island] .card.listing-link .listing-island-name{font-size:11px;font-weight:600}
@media(max-width:650px){body .results .listing-description-link{display:none!important}body .island-listing-card{padding-bottom:6px}body[data-island] .card.listing-link .listing-photo{margin-bottom:10px}body[data-island] .card.listing-link .location{font-size:11px;margin-top:2px;margin-bottom:2px}body[data-island] .card.listing-link .listing-island-name{font-size:10px}}

.island-mobile-gallery-hint,.island-mobile-gallery-dots{display:none}@media(max-width:650px){body .island-page>section.island-collage-slideshow{height:400px;padding-bottom:50px}.island-mobile-gallery-hint{display:flex;position:absolute;bottom:0;left:0;right:0;height:50px;align-items:center;justify-content:space-between;padding:0 18px;background:white;color:#143b5a;font-size:13px}.island-mobile-gallery-dots{position:absolute;display:flex;justify-content:center;gap:7px;bottom:62px;left:0;right:0;z-index:4;pointer-events:none}.island-mobile-gallery-dots button{pointer-events:auto;display:block;width:9px;height:9px;padding:0;border:1px solid white;border-radius:50%;background:#ffffff66;box-shadow:0 1px 3px #0004}.island-mobile-gallery-dots button[aria-current=true]{background:white}.island-collage-track figcaption{padding-bottom:32px}}

@media(min-width:651px){.island-collage-track figure:nth-child(n+6){display:none}}@media(max-width:650px){.island-collage-track figure:nth-child(n+6){display:block}.island-mobile-gallery-dots{max-width:calc(100% - 40px);margin:auto;flex-wrap:wrap;gap:5px}.island-mobile-gallery-dots button{width:7px;height:7px}.island-collage-track figcaption{padding-bottom:45px}}

.visitor-topic-photo .visitor-photo-caption{margin:0;padding:8px 0 0;background:white;font-size:12px;line-height:1.5;color:#526675}.visitor-topic-photo:has(.visitor-photo-caption){background:transparent}

/* Compact collection advertisement, using the supplied 2026–2027 artwork. */
.island-guide-collection-ad{background:#164b7c;margin-bottom:22px;border-radius:4px}.guide-collection-heading{padding:13px 10px 10px;color:white}.guide-collection-heading p{font:italic 16px Georgia,serif;margin:0 0 5px}.guide-collection-heading strong{color:#ffcf32}.guide-collection-heading h2{font:700 19px/1.15 Georgia,serif;color:#ffcf32;margin:0 0 6px}.guide-collection-heading>span{font-size:11px;letter-spacing:.08em;text-transform:uppercase}.guide-collection-art{position:relative;width:100%;height:0;padding-bottom:76%;overflow:hidden;background:#d8ebf4}.guide-collection-art img{position:absolute;display:block;left:0;top:0;width:100%;max-width:none;height:auto;transform:translateY(-23.45%)}.guide-collection-footer{padding:11px 10px 13px}.guide-collection-footer .island-guide-read-button{font-size:13px;padding:8px 17px}

.island-guide-collection-ad .guide-collection-heading p{color:#fff;line-height:1.2;margin:0 0 5px}.island-guide-collection-ad .guide-collection-heading{padding:12px 10px 9px}

.island-guide-collection-ad .guide-collection-heading{margin:0;border:0}

/* Editorial typography inspired by the supplied visitor-guide reference. */
:root{--editorial-title:Georgia,"Times New Roman",serif;--editorial-sans:"Roboto",Arial,sans-serif}
body h1,body h2{font-family:var(--editorial-title)!important;font-weight:700;letter-spacing:-.035em;line-height:1.12}
body .visitor-guide-article h2{font-family:var(--editorial-title)!important;letter-spacing:-.025em;font-weight:700;line-height:1.16}
body .business-main .business-heading h1,body .business-main h2{font-family:var(--editorial-title)!important;font-weight:700;letter-spacing:-.025em}
body .before-go-card span,body .tile-title{font-family:var(--editorial-title)!important;letter-spacing:-.025em;font-weight:700}
body .eyebrow,body .empty-label,body .hero-tag{font-family:var(--editorial-sans)!important;font-weight:800;letter-spacing:.075em;text-transform:uppercase}
body nav a,body .nav-cta,body .guide-primary,body .guide-secondary{font-family:var(--editorial-sans)!important;letter-spacing:.015em}
body .card h3,body .home-topic-summary h3,body footer h2{font-family:var(--editorial-sans)!important;letter-spacing:0}
body .hero-search-content h1.welcome-script,body .island-layout-introduction .island-description .island-welcome-script{font-family:"Caveat","Brush Script MT",cursive!important;font-weight:500;letter-spacing:-.02em;line-height:1.2}
body .guide-collection-heading h2{font-size:19px;line-height:1.15}

/* Supplied guide ad: frame just outside the artwork’s rounded border. */
body .island-guide-supplied-ad{display:block;background:white;border-radius:0;box-shadow:none;margin:0 0 22px;padding:0;width:100%;overflow:hidden}.island-guide-art-frame{display:block;position:relative;width:100%;aspect-ratio:1;overflow:hidden}.island-guide-art-frame img{position:absolute;display:block;width:115.97%;max-width:none;height:auto;left:-5.32%;top:-5.32%;margin:0;padding:0}

/* Slimmer island information column gives the directory more space. */
@media(min-width:751px){body .island-page>.island-directory-layout{grid-template-columns:minmax(0,1fr) clamp(210px,21vw,260px)}body .island-information-sidebar .island-facts{padding:20px}.island-information-sidebar .island-facts h2{font-size:23px}}

/* Compact, polished island facts. */
body .island-information-sidebar .island-facts{background:linear-gradient(145deg,#f2f9fc,#e9f3f8);border:1px solid #d5e5ed;border-top:4px solid #3e859f;border-radius:12px;padding:19px 17px;box-shadow:0 5px 16px #183d5010}
body .island-information-sidebar .island-facts .eyebrow{font-size:9px;letter-spacing:.1em;line-height:1.5;margin:0 0 9px;color:#397c97}
body .island-information-sidebar .island-facts h2{font-size:24px;line-height:1.12;margin:0 0 15px;color:#163e54}
body .island-information-sidebar .island-facts ul{list-style:none;padding:0;margin:0}
body .island-information-sidebar .island-facts li{font-size:12px;line-height:1.6;color:#536773;margin:0;padding:9px 0;border-top:1px solid #d5e4eb;overflow-wrap:anywhere}
body .island-information-sidebar .island-facts li:first-child{border-top:0;padding-top:0}
body .island-information-sidebar .island-facts li:last-child{padding-bottom:0}
body .island-facts .island-fact-label{font-weight:700;color:#193e52}

/* Show the cover collection with an accessible, clickable guide button. */
body .island-guide-supplied-ad{border:1px solid #dce3e7;border-radius:12px;overflow:hidden;background:white}.island-guide-art-frame{aspect-ratio:504/402}.island-guide-art-frame img{width:121.032%;left:-7.9365%;top:-34.826%;max-width:none}.island-guide-art-button-row{display:block;padding:13px 8px;background:#194e7b;text-align:center}.island-guide-art-button-row .island-guide-read-button{display:inline-block;background:#ffcf43;color:#123e5c;font-size:13px;padding:9px 13px;border-radius:6px;line-height:1.3;font-weight:700}

/* Warm, soft yellow-orange island search background. */
body .island-directory-layout .island-directory-search #filters.filters{background:#fff0d5;border-color:#f2d7a5}

body .island-guide-art-button-row .island-guide-read-button,body .island-guide-supplied-ad:hover .island-guide-read-button{background:transparent;color:#fff}

/* Frame the paddleboard and paddler rather than the sky. */
#paddleboarding .visitor-article-photo{object-position:center 78%}

.visitor-topic-copy .visitor-business-link{font-weight:700;color:#1561bb;text-decoration:underline;text-underline-offset:3px}.visitor-topic-copy .visitor-business-link:hover{color:#143b5a}

/* Shared view-only guide flipbook popup. */
body.guide-popup-open{overflow:hidden}.guide-flipbook-popup{width:min(1200px,96vw);max-width:96vw;height:min(940px,94dvh);max-height:94dvh;margin:auto;padding:0;border:0;border-radius:12px;background:#edf3f6;color:#163a50;box-shadow:0 20px 80px #0007;overflow:hidden}.guide-flipbook-popup::backdrop{background:#082536c9;backdrop-filter:blur(4px)}.guide-flipbook-popup[open]{display:flex;flex-direction:column}.popup-guide-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;background:white;border-bottom:1px solid #d8e3eb}.popup-guide-header h2{font-size:22px!important;line-height:1.2;margin:0}.popup-guide-header button{border:0;background:#edf3f7;border-radius:50%;width:38px;height:38px;flex-shrink:0;font-size:28px;line-height:1}.popup-guide-tools,.popup-guide-footer{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding:10px 14px;background:#f5f9fb}.guide-flipbook-popup button{cursor:pointer;color:#153e59}.popup-guide-tools button,.popup-guide-footer button{border:1px solid #cbdce6;border-radius:6px;padding:8px 12px;background:white;font-size:13px}.popup-guide-tools button:disabled{opacity:.4;cursor:default}.popup-guide-tools [data-popup-count]{font-size:13px;min-width:110px;text-align:center}.popup-book-stage{flex:1;min-height:0;overflow:auto;display:flex;justify-content:center;align-items:center;padding:15px 24px;perspective:1500px;background:linear-gradient(135deg,#dce7ed,#edf3f6);touch-action:pan-y}.popup-book-stage img{display:block;height:100%;max-height:100%;max-width:100%;width:auto;object-fit:contain;box-shadow:0 6px 25px #163b542b;user-select:none}.popup-book-spread{gap:2px}.popup-book-spread img{max-width:50%}.popup-book-zoomed{display:block;touch-action:auto}.popup-book-zoomed img{height:auto;max-height:none;width:1600px;max-width:none;object-fit:contain;margin:auto}.popup-guide-footer{font-size:12px}.popup-guide-footer input{width:60px;padding:6px;border:1px solid #bfd1dc;border-radius:4px;margin-left:5px}.popup-guide-footer>span{color:#627887}.popup-guide-message{padding:10px 20px;margin:0;font-size:13px}.guide-flipbook-popup:fullscreen{width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;border-radius:0}.popup-page-turn img{animation:popup-book-turn .32s ease-out;transform-origin:left center}@keyframes popup-book-turn{from{opacity:.5;transform:rotateY(-12deg)}to{opacity:1;transform:rotateY(0)}}@media(prefers-reduced-motion:reduce){.popup-page-turn img{animation:none}}@media(max-width:650px){.guide-flipbook-popup{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0}.popup-guide-header{padding:10px 12px}.popup-guide-header h2{font-size:17px!important}.popup-guide-tools{gap:6px;padding:8px}.popup-guide-tools button{padding:8px;font-size:12px}.popup-guide-tools [data-popup-count]{min-width:90px}.popup-book-stage{padding:12px 8px}.popup-guide-footer>span{display:none}}

/* Minimal flipbook controls: arrows at the sides, with no toolbars. */
.guide-flipbook-popup .popup-guide-footer,.guide-flipbook-popup [data-popup-count],.guide-flipbook-popup [data-popup-zoom],.guide-flipbook-popup [data-popup-full]{display:none!important}
.guide-flipbook-popup .popup-guide-tools{position:absolute;z-index:5;top:50%;left:10px;right:10px;display:flex;justify-content:space-between;flex-wrap:nowrap;padding:0;background:transparent;pointer-events:none;transform:translateY(-50%)}
.guide-flipbook-popup .popup-guide-tools button[data-popup-prev],.guide-flipbook-popup .popup-guide-tools button[data-popup-next]{display:flex;align-items:center;justify-content:center;pointer-events:auto;width:38px;height:54px;padding:0;border:0;border-radius:8px;background:#fffffff2;color:#163e57;font:400 42px/1 Arial,sans-serif;box-shadow:0 2px 12px #15384b20}
.guide-flipbook-popup .popup-guide-tools button:disabled{opacity:.25;pointer-events:none}
.guide-flipbook-popup .popup-book-stage{padding:16px 58px}
@media(max-width:650px){.guide-flipbook-popup .popup-guide-tools{left:5px;right:5px}.guide-flipbook-popup .popup-guide-tools button[data-popup-prev],.guide-flipbook-popup .popup-guide-tools button[data-popup-next]{width:32px;height:48px;font-size:36px}.guide-flipbook-popup .popup-book-stage{padding:10px 42px}}

form#filters.search-with-reset #clear{grid-column:1/-1;justify-self:end;align-self:center;display:block;width:auto;min-width:0;min-height:0;margin:0;padding:3px 6px;border:0;border-radius:0;background:transparent;color:#546674;font-size:12px;font-weight:500;line-height:1.3;text-decoration:underline;white-space:nowrap}
body .island-directory-layout .island-directory-search form#filters.search-with-reset{grid-template-columns:minmax(0,1fr) auto 46px!important;gap:8px}
body .island-directory-layout .island-directory-search form#filters.search-with-reset #clear{grid-column:auto;order:1;width:auto;min-width:0;min-height:0;padding:4px 3px;background:transparent;color:#546674;font-size:11px}
body .island-directory-layout .island-directory-search form#filters.search-with-reset button[type=submit]{order:2}
@media(max-width:650px){body .island-directory-layout .island-directory-search form#filters.search-with-reset{grid-template-columns:minmax(0,1fr) auto 40px!important;gap:5px}body .island-directory-layout .island-directory-search form#filters.search-with-reset #clear{font-size:10px}}

.visitor-search-matches{margin:14px 0 22px;padding:15px 18px;border:1px solid #ead8b3;background:#fff9ed;border-radius:12px;text-align:left}.visitor-search-matches[hidden]{display:none}.visitor-search-label{margin:0 0 9px;color:#6b6556;font-size:12px;font-weight:600}.visitor-search-topic-links{display:flex;flex-wrap:wrap;gap:8px 18px}.visitor-search-topic-links a{font-size:14px;color:#175c7c;font-weight:700;text-decoration:underline;text-underline-offset:3px}.visitor-search-topic-links a:hover{color:#143b5a}body[data-home=true] .visitor-search-matches{position:relative;z-index:3;width:min(960px,100%);margin:14px auto 0;color:#173a50}

form#filters:has(.site-keyword-field){grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.15fr) auto!important}form#filters .site-keyword-field{display:block!important;grid-column:auto;min-width:0;border:0;padding:0 12px}form#filters .site-keyword-field input{display:block;width:100%;min-width:0;background:transparent;font-size:14px;padding:8px 0;color:#173e55}form#filters.search-with-reset:has(.site-keyword-field) #clear{grid-column:1/-1}@media(max-width:750px){form#filters:has(.site-keyword-field){grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}form#filters .site-keyword-field{grid-column:1/-1;padding:8px 5px;border-top:1px solid #d5dfe5}form#filters:has(.site-keyword-field) button[type=submit]{grid-column:1/-1}form#filters.search-with-reset:has(.site-keyword-field) #clear{grid-column:1/-1}}

body:not([data-island]):not([data-home=true]) form#filters:has(.site-keyword-field){grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) auto!important}form#filters select[hidden]{display:none!important}@media(max-width:650px){body:not([data-island]):not([data-home=true]) form#filters:has(.site-keyword-field){grid-template-columns:minmax(0,1fr)!important}}

/* Homepage and main directory: one clear search, inspired by the supplied reference. */
body form#filters.single-search-bar{display:flex!important;align-items:center;gap:12px;width:100%;max-width:1080px;min-height:70px;padding:8px 10px 8px 22px!important;background:#fff!important;border:1px solid #8ca08e!important;border-radius:999px!important;box-shadow:0 3px 7px #183d2824}
body form#filters.single-search-bar>select[hidden]{display:none!important}
body form#filters.single-search-bar .site-keyword-field{display:flex!important;flex:1;align-items:center;gap:13px;border:0!important;padding:0!important;margin:0;min-width:0}
body form#filters.single-search-bar .single-search-icon{width:26px;height:26px;flex:0 0 26px;color:#123c28}
body form#filters.single-search-bar .site-keyword-field input{font-size:18px!important;font-weight:400;min-height:44px;padding:6px 0!important;line-height:1.3;color:#183d2c;background:transparent;border:0;border-radius:0;width:100%;min-width:0}
body form#filters.single-search-bar .site-keyword-field input::placeholder{color:#7b807d;opacity:1}
body form#filters.single-search-bar button[type=submit]{order:2;flex:0 0 auto;min-height:52px;padding:10px 28px!important;border:1px solid #0bbb43;border-radius:999px!important;background:#00dc50!important;color:#06391c;font-size:17px;font-weight:700;line-height:1.2}
body form#filters.single-search-bar button[type=submit]:hover{background:#00c647!important}
body form#filters.single-search-bar #clear{order:1;flex:0 0 auto;width:auto;min-height:0;min-width:0;padding:3px!important;font-size:11px;background:transparent;color:#5c6c60}
body .directory-main .directory-intro{text-align:center;padding-bottom:20px}body .directory-main .directory-intro .where-to-title{font-family:"Roboto",Arial,sans-serif!important;color:#07351c;font-weight:800;font-size:clamp(38px,5vw,64px);letter-spacing:-.035em}
body .directory-main .directory-search{background:transparent;border:0;padding:0 0 25px}body .home-where-to{font-family:"Roboto",Arial,sans-serif!important;color:white;font-size:32px;font-weight:800;letter-spacing:-.02em;margin:5px 0 20px;line-height:1.1}
@media(max-width:650px){body form#filters.single-search-bar{gap:7px;min-height:58px;padding:6px 7px 6px 13px!important}body form#filters.single-search-bar .single-search-icon{width:20px;height:20px;flex-basis:20px}body form#filters.single-search-bar .site-keyword-field{gap:7px}body form#filters.single-search-bar .site-keyword-field input{font-size:14px!important;min-height:38px}body form#filters.single-search-bar button[type=submit]{min-height:42px;padding:8px 15px!important;font-size:14px}body form#filters.single-search-bar #clear{font-size:9px;white-space:normal;max-width:35px;text-align:center;line-height:1.2}body .home-where-to{font-size:27px;margin-bottom:15px}}

body form#filters.search-with-reset #clear[hidden],body #empty-reset{display:none!important}body .island-directory-layout .island-directory-search form#filters.search-with-reset{grid-template-columns:minmax(0,1fr) 46px!important}@media(max-width:650px){body .island-directory-layout .island-directory-search form#filters.search-with-reset{grid-template-columns:minmax(0,1fr) 40px!important}}

body .island-directory-layout .island-directory-search #filters input::placeholder{color:#90969b;opacity:1;font-weight:400}

.before-go-card[href$="#marinas"] img{object-position:right center}#family-travel .visitor-article-photo{object-position:40% 78%}

/* Clickable text areas remain aligned with each rendered guide page. */
.popup-book-page{position:relative;display:block;flex:0 0 auto;min-width:0;box-shadow:0 6px 25px #163b542b}.guide-flipbook-popup .popup-book-page img{width:100%;height:100%;max-width:100%;max-height:100%;box-shadow:none;object-fit:fill}.guide-flipbook-popup .popup-book-spread .popup-book-page img{max-width:100%}.popup-page-link{position:absolute;display:block;z-index:2;background:transparent;border-radius:1px;min-width:3px;min-height:3px}.popup-page-link:hover{background:#29a3df2c;outline:1px solid #166b9e80}.popup-page-link:focus-visible{background:#ffda4855;outline:2px solid #125e93;outline-offset:1px}.popup-book-zoomed .popup-book-page{margin:0 auto}

/* Island topic menus and readable editorial sections. */
.island-page .island-heading-search{display:none!important}
.island-editorial{min-width:0;margin:0 0 2.5rem}
.island-topic-menu{padding:22px;background:#fff0d5;border-radius:14px;margin:0 0 30px}
.island-topic-menu-label{margin:0 0 14px;color:#174b75;font:700 17px/1.3 Roboto,Arial,sans-serif}
.island-topic-menu-links{display:flex;flex-wrap:wrap;gap:8px}
.island-topic-menu-links a{display:block;padding:8px 11px;border:1px solid #e0cba8;border-radius:20px;background:#fffaf1;color:#174b75;text-decoration:none;font:500 13px/1.35 Roboto,Arial,sans-serif}
.island-topic-menu-links a:hover,.island-topic-menu-links a:focus-visible{background:#174b75;border-color:#174b75;color:white}
.island-journal{max-width:780px}
.island-journal-section{padding:0 0 25px;margin:0 0 25px;border-bottom:1px solid #e0e7eb;scroll-margin-top:110px}
.island-journal-section h2{margin:0 0 12px;color:#174b75;font:700 clamp(25px,2.5vw,34px)/1.2 Georgia,serif;letter-spacing:-.02em}
.island-journal-section p{margin:0;color:#526675;font:400 16px/1.8 Roboto,Arial,sans-serif}
.island-journal-section a{color:#174b75;text-underline-offset:3px}
.island-page .island-business-listings-title{font:700 30px/1.25 Georgia,serif;color:#174b75;margin:10px 0 20px}
@media(max-width:650px){.island-topic-menu{padding:16px}.island-topic-menu-links{gap:7px}.island-topic-menu-links a{font-size:12px;padding:8px 10px}.island-journal-section p{font-size:15px;line-height:1.75}.island-journal-section{scroll-margin-top:90px}}
.island-page nav.island-topic-menu{display:block}.island-topic-menu-label{white-space:normal}.island-business-listings-title{scroll-margin-top:110px}

/* Editorial topics sit beside the island article. */
.island-editorial{display:grid;grid-template-columns:190px minmax(0,1fr);gap:28px;align-items:start}
.island-page nav.island-topic-menu{padding:18px;margin:0;position:sticky;top:100px;max-height:calc(100dvh - 125px);overflow:auto}
.island-topic-menu-links{display:flex;flex-direction:column;flex-wrap:nowrap;gap:0}
.island-topic-menu-links a{border:0;border-bottom:1px solid #e5d8c0;border-radius:0;background:transparent;padding:9px 0;font-size:13px}
.island-topic-menu-links a:last-child{border-bottom:0}
.island-topic-menu-links a:hover,.island-topic-menu-links a:focus-visible{background:#174b75;border-radius:5px;padding-left:8px;padding-right:8px}
.island-topic-menu-label{font-size:16px;margin-bottom:10px}
@media(max-width:1000px) and (min-width:751px){.island-editorial{grid-template-columns:155px minmax(0,1fr);gap:20px}.island-page nav.island-topic-menu{padding:14px}}
@media(max-width:750px){.island-editorial{grid-template-columns:150px minmax(0,1fr);gap:20px}.island-page nav.island-topic-menu{padding:14px;top:85px}}
@media(max-width:550px){.island-editorial{display:block}.island-page nav.island-topic-menu{position:static;max-height:none;margin-bottom:28px}.island-topic-menu-links{display:grid;grid-template-columns:1fr 1fr;column-gap:16px}.island-topic-menu-links a{font-size:12px;padding:9px 0}}

/* An illustrated travel journal for each island's editorial. */
.island-blog-header{display:block!important;position:static!important;background:transparent!important;padding:0 0 28px!important;box-shadow:none!important;border:0!important;min-height:0!important}
.island-blog-kicker{font:700 11px/1.5 Roboto,Arial,sans-serif;letter-spacing:.15em;color:#478592;margin:0 0 13px}
.island-travel-blog .island-blog-header h2{font:700 clamp(34px,3.7vw,52px)/1.08 Georgia,serif;color:#163b50;letter-spacing:-.035em;margin:0 0 18px}
.island-blog-deck{font:400 18px/1.65 Georgia,serif;color:#617482;margin:0;max-width:570px}
.island-travel-blog .island-journal-section{padding:0 0 32px;margin:0 0 32px;border-bottom:0}
.island-travel-blog .island-journal-section h2{font-size:28px;margin-bottom:15px}
.island-travel-blog .island-journal-section p{font-size:16px;line-height:1.9;max-width:64ch}
.island-blog-photo{margin:0 0 28px;overflow:hidden}
.island-blog-photo img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:3px}
.island-travel-blog #about-abaco .island-blog-photo img{aspect-ratio:3/2}
.island-travel-blog #family-fun .island-blog-photo img{object-position:center 65%}
@media(max-width:550px){.island-travel-blog .island-blog-header h2{font-size:37px}.island-blog-deck{font-size:17px}.island-travel-blog .island-journal-section p{font-size:15px}.island-blog-photo{margin-bottom:22px}}

/* Article headers must never inherit the full-width navigation decorations. */
.island-blog-header::before,.island-blog-header::after{content:none!important;display:none!important}
.island-blog-header{isolation:auto!important;width:100%;max-width:none;margin:0!important}

/* Keep the feature headline large, with quieter article section headings. */
.island-travel-blog .island-journal-section h2{font-size:23px;line-height:1.3;letter-spacing:-.015em;margin-bottom:12px}
@media(max-width:550px){.island-travel-blog .island-journal-section h2{font-size:21px}}

/* Let island article copy fill its column with tighter line spacing. */
.island-travel-blog .island-journal-section p{max-width:none;line-height:1.6}
.island-travel-blog .island-blog-deck{max-width:none;line-height:1.45}
@media(max-width:550px){.island-travel-blog .island-journal-section p{line-height:1.6}}

/* Keep the Abaco welcome close to its three-column content. */
body[data-island="Abaco"] .island-layout-introduction{padding-top:18px!important;padding-bottom:10px!important;margin-bottom:0!important}
body[data-island="Abaco"] .island-layout-introduction .island-description{padding-bottom:0!important}
body[data-island="Abaco"] .island-directory-layout{margin-top:12px!important}
body[data-island="Abaco"] .island-directory-layout .directory{padding-top:0!important}
body[data-island="Abaco"] .island-welcome-script{margin-bottom:10px!important}

/* Compact gaps between island blog sections. */
.island-travel-blog .island-journal-section{padding-bottom:14px;margin-bottom:14px}

/* Remove the welcome headings from the visual island layouts. */
.island-accessible-title{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body[data-island="Abaco"] .island-directory-layout{margin-top:26px!important}

.site-search-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:8px;border:0;border-radius:50%;background:transparent;color:#174b75;cursor:pointer;flex-shrink:0}.site-search-toggle:hover{background:#e9f5f6}
.site-search-dialog{width:min(760px,94vw);max-height:86dvh;border:0;border-radius:16px;padding:26px;color:#163b50;background:white;box-shadow:0 15px 70px #082b4c45}.site-search-dialog::backdrop{background:#102b3eb3}.site-search-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.site-search-top h2{font:700 30px/1.2 Georgia,serif}.site-search-close{border:0;background:#edf4f6;border-radius:50%;width:38px;height:38px;font-size:28px;color:#174b75}.site-search-form{margin:22px 0 15px}.site-search-form label{display:block;font-size:14px;margin-bottom:8px}.site-search-form>div{display:flex;gap:8px}.site-search-form input{width:100%;min-width:0;border:1px solid #b7c7d0;border-radius:7px;padding:11px;font-size:16px}.site-search-form button{border:0;border-radius:7px;background:#174b75;color:white;padding:10px 20px;font-weight:700}.site-search-status{font-size:14px;color:#617482}.site-search-results{display:grid;gap:0}.site-search-results>a{display:block;padding:17px 0;border-top:1px solid #dbe4e8}.site-search-results>a:hover h3{text-decoration:underline}.site-search-results span{font:700 10px/1.3 Roboto,Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;color:#49838a}.site-search-results h3{font:700 21px/1.3 Georgia,serif;margin:5px 0;color:#174b75}.site-search-results p{font-size:14px;line-height:1.5;color:#617482;margin:0}
@media(max-width:650px){body>header .site-search-toggle{margin:5px 0}.site-search-dialog{padding:20px}.site-search-top h2{font-size:26px}}

/* Stationary island sidebars and a plain editorial menu. */
.island-page nav.island-topic-menu{background:transparent;border:0;box-shadow:none;border-radius:0}
.island-topic-menu-links a:hover,.island-topic-menu-links a:focus-visible{color:#e57563;background:transparent;border-radius:0;padding-left:0;padding-right:0}
@media(min-width:751px){.island-page .island-information-sidebar{position:sticky;top:100px;align-self:start;max-height:calc(100dvh - 125px);overflow-y:auto;scrollbar-width:thin}}

/* Breathing room between desktop island galleries and page columns. */
@media(min-width:751px){body[data-island] .island-page>.island-collage-banner,body[data-island] .island-page>.island-single-hero,body[data-island] .island-page>.island-slideshow{margin-bottom:40px!important}}
.island-travel-blog .island-journal-section p strong{font-weight:700;color:#314e60}.island-travel-blog .island-journal-section p a{text-decoration:underline;text-underline-offset:3px}.island-travel-blog .island-journal-section p a:hover,.island-travel-blog .island-journal-section p a:hover strong{color:#e57563}

/* Newly separated destinations use their own supplied lead photograph. */
.island-destination-single-photo .island-collage-track{display:block!important;height:420px}.island-destination-single-photo .island-collage-track figure{width:100%;height:100%;margin:0}.island-destination-single-photo .island-collage-track img{width:100%;height:100%;object-fit:cover}
.island-page:has(.island-editorial)>.island-directory-layout{margin-top:26px!important}
@media(max-width:650px){.island-destination-single-photo .island-collage-track{height:300px}}

/* Neighbouring cays remain sections of their parent island article. */
.island-topic-menu-links a.island-area-topic{font-weight:700;margin-top:12px}.island-topic-menu-links a.island-area-subtopic{padding-left:12px;font-size:12px}.island-topic-menu-links a.island-area-subtopic:hover{padding-left:12px}
.island-travel-blog .island-area-introduction{border-top:1px solid #dbe4e8;padding-top:24px;margin-top:22px}.island-travel-blog .island-area-subsection h3{font:700 20px/1.3 Georgia,serif;color:#174b75;letter-spacing:-.015em;margin:0 0 12px}

/* Keep the mobile search action compact beside the keyword input. */
@media(max-width:650px){body form#filters.single-search-bar button[type=submit]{width:auto!important;min-width:76px!important;max-width:92px!important;flex:0 0 auto!important;padding:8px 14px!important}body form#filters.single-search-bar .site-keyword-field{width:auto!important;flex:1 1 0!important;min-width:0!important}}

/* Eleuthera trial: short introduction and touch-friendly expandable topics. */
.island-reader-hint{font-size:13px;color:#617482;margin:0 0 20px}
.island-topic-accordion{border:0;border-bottom:1px solid #dbe4e8;margin:0;scroll-margin-top:100px}
.island-topic-accordion>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:16px 2px;cursor:pointer;list-style:none}
.island-topic-accordion>summary::-webkit-details-marker{display:none}
.island-compact-reader .island-topic-accordion>summary h2{font:700 22px/1.3 Georgia,serif;color:#174b75;margin:0;letter-spacing:-.015em}
.island-topic-accordion>summary>span{font:400 26px/1 Roboto,Arial,sans-serif;color:#e57563;flex:0 0 24px;text-align:center}
.island-topic-accordion[open]>summary>span{transform:rotate(45deg)}
.island-topic-accordion>summary:hover h2{color:#e57563}
.island-topic-accordion-body{padding:0 2px 20px}
.island-topic-accordion-body p{font-size:16px;line-height:1.6;margin:0;color:#526675}
.island-topic-accordion-body p strong{font-weight:700;color:#314e60}
.island-topic-accordion-body a{text-decoration:underline;text-underline-offset:3px;color:#174b75}
.island-topic-accordion-body .island-area-subsection{padding:18px 0 0;margin:0}
@media(max-width:750px){.island-editorial:has(.island-compact-reader){display:block}.island-editorial:has(.island-compact-reader)>.island-topic-menu{display:none}.island-compact-reader .island-topic-accordion>summary h2{font-size:20px}.island-topic-accordion>summary{min-height:58px;padding:16px 0}.island-topic-accordion-body p{font-size:15px}.island-reader-hint{font-size:13px}}
.island-activity-subsection{margin:0;padding:0 0 22px;scroll-margin-top:100px}.island-activity-subsection:last-child{padding-bottom:0}.island-activity-subsection h3{font:700 20px/1.3 Georgia,serif;letter-spacing:-.015em;color:#174b75;margin:0 0 10px}

/* Compact island articles use their topic tabs instead of a left menu. */
.island-editorial:has(.island-compact-reader){display:block}
.island-editorial:has(.island-compact-reader)>.island-topic-menu{display:none}
.island-compact-reader{max-width:none}

/* Guide promotion and island facts share a row on phones. */
@media(max-width:750px){body .island-information-sidebar .island-details{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}body .island-details>.island-guide-ad{grid-column:1;margin:0;width:100%;min-width:0}body .island-information-sidebar .island-details>.island-facts{grid-column:2;margin:0;padding:13px 11px;min-width:0}body .island-information-sidebar .island-facts h2{font-size:20px;line-height:1.15;margin-bottom:10px}body .island-information-sidebar .island-facts .eyebrow{font-size:8px;letter-spacing:.05em}body .island-information-sidebar .island-facts li{font-size:11px;line-height:1.5;padding:7px 0}body .island-details>.island-map-column{grid-column:1/-1;min-width:0}body .island-details .island-guide-read-button{font-size:12px;padding:10px 5px}body .island-details .island-guide-art-button-row{padding:7px 4px}}

/* Eleuthera mobile trial: full-width facts, guides and map beside each other. */
@media(max-width:750px){body .island-mobile-facts-trial .island-facts-before-directory{width:100%;margin:8px 0 26px;padding:18px;background:linear-gradient(145deg,#f2f9fc,#e9f3f8);border:1px solid #d5e5ed;border-top:4px solid #3e859f;border-radius:12px;box-shadow:0 5px 16px #183d5010}body .island-mobile-facts-trial .island-facts-before-directory h2{font:700 23px/1.2 Georgia,serif;color:#163e54;margin:0 0 12px}body .island-mobile-facts-trial .island-facts-before-directory .eyebrow{font-size:9px;letter-spacing:.1em;margin:0 0 8px}body .island-mobile-facts-trial .island-facts-before-directory ul{list-style:none;margin:0;padding:0;columns:1}body .island-mobile-facts-trial .island-facts-before-directory li{font-size:12px;line-height:1.5;color:#536773;padding:7px 0;border-top:1px solid #d5e4eb}body .island-mobile-facts-trial .island-details>.island-map-column{grid-column:2;min-width:0}body .island-mobile-facts-trial .island-details .island-map-column iframe{height:250px}body .island-mobile-facts-trial .island-map-column .island-larger-map-link{font-size:12px;white-space:normal}body .island-mobile-facts-trial .island-map-column .map-note{font-size:10px;line-height:1.4}}

/* Tighter, smaller topic rows for the compact island reader. */
.island-compact-reader .island-topic-accordion>summary{min-height:48px;padding:11px 0;gap:10px}.island-compact-reader .island-topic-accordion>summary h2{font-size:19px}.island-compact-reader .island-topic-accordion>summary>span{font-size:23px}.island-compact-reader>.island-journal-section{padding-bottom:9px;margin-bottom:9px}.island-compact-reader .island-topic-accordion-body{padding-bottom:14px}.island-compact-reader .island-activity-subsection{padding-bottom:16px}.island-compact-reader .island-activity-subsection h3,.island-compact-reader .island-area-subsection h3{font-size:18px;margin-bottom:8px}
@media(max-width:750px){.island-compact-reader .island-topic-accordion>summary{min-height:46px;padding:10px 0}.island-compact-reader .island-topic-accordion>summary h2{font-size:18px}.island-compact-reader>.island-journal-section h2{font-size:20px}.island-compact-reader .island-topic-accordion-body p{line-height:1.5}}

/* Compact facts immediately follow the island introduction. */
.island-compact-reader>.island-journal-section{padding-bottom:4px;margin-bottom:4px}
.island-compact-reader .island-topic-accordion>summary{min-height:44px;padding:8px 0}
@media(max-width:750px){body .island-mobile-facts-trial .island-facts-before-directory{margin:10px 0 12px;padding:12px 14px}body .island-mobile-facts-trial .island-facts-before-directory h2{font-size:21px;margin-bottom:7px}body .island-mobile-facts-trial .island-facts-before-directory .eyebrow{display:none}body .island-mobile-facts-trial .island-facts-before-directory li{padding:4px 0;font-size:11px;line-height:1.4}.island-compact-reader .island-topic-accordion>summary{min-height:44px;padding:8px 0}body .island-mobile-facts-trial .island-map-sized-to-guide{height:var(--guide-card-height);position:relative;border-radius:10px;overflow:hidden}body .island-mobile-facts-trial .island-map-sized-to-guide iframe{height:100%!important;width:100%;border-radius:10px}body .island-mobile-facts-trial .island-map-sized-to-guide>.island-larger-map-link{position:absolute;top:7px;left:7px;z-index:2;background:white;border-radius:4px;padding:4px 6px;font-size:10px}body .island-mobile-facts-trial .island-map-sized-to-guide>.map-note{display:none}}

/* Close the space formerly reserved for island listing description links. */
body[data-island] .card.listing-link .listing-photo{margin-bottom:8px}
body[data-island] .island-listing-card{padding-bottom:0}

.submission-layout:has(input[name="repeat_previous_ad"]){grid-template-columns:1fr 2fr}.submission-layout:has(input[name="repeat_previous_ad"])>.submission-aside{order:-1}@media(max-width:800px){.submission-layout:has(input[name="repeat_previous_ad"]){grid-template-columns:1fr}}

/* Compact island topics: retain a comfortable phone tap target. */
.island-compact-reader .island-topic-accordion{margin:0;padding:0}
.island-compact-reader .island-topic-accordion>summary{box-sizing:border-box;min-height:44px;padding:6px 0;gap:8px}
.island-compact-reader .island-topic-accordion>summary h2{font-size:16px;line-height:1.2;margin:0;padding:0}
.island-compact-reader .island-topic-accordion>summary>span{font-size:20px;line-height:1;margin:0}
.island-compact-reader .island-topic-accordion-body{padding:0 0 10px}

/* Keep mobile weather aligned with the first header row when navigation expands. */
body>header>nav>.mobile-advertise-link{display:none}
@media(max-width:650px){
body>header>.island-header-weather{position:relative;grid-column:3;grid-row:1;align-self:center;justify-self:end;right:44px;top:auto;transform:none;margin:0;width:28px;z-index:3}
body>header.mobile-menu-open>nav>.mobile-advertise-link{display:block!important;color:#174b75;font-weight:700}
}

body[data-island="Ragged Island"] .island-single-photo{object-position:50% 60%}
