:root{--bb-navy:#063b67;--bb-deep:#032d50;--bb-blue:#087dab;--bb-aqua:#08a9d1;--bb-sky:#eaf7fb;--bb-white:#fff;--bb-ink:#123e58;--bb-muted:#5d7786;--bb-line:rgba(8,125,171,.17);--bb-shadow:0 18px 52px rgba(3,45,80,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
html,body{max-width:100%;overflow-x:hidden}
.bb-context-link{margin-top:16px!important;font-size:12px!important;font-weight:700!important;letter-spacing:.035em!important}.bb-context-link a{display:inline-block;padding-bottom:3px;border-bottom:1px solid var(--bb-aqua);color:var(--bb-blue)!important}.bb-context-link a:after{content:" ↗"}
body.fh{margin:0;background:#f7fbfc;color:var(--bb-ink);font-family:"DM Sans",Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.fh a{color:inherit;text-decoration:none}body.fh img{max-width:100%;height:auto}.container{width:min(1180px,88%);max-width:none;margin-inline:auto}
.bb-skip{position:fixed;top:-80px;left:15px;z-index:1000;padding:12px 18px;background:#fff;color:#111!important}.bb-skip:focus{top:12px}

/* Conversion header */
.header{position:relative;z-index:250;width:100%;height:92px;background:rgba(3,45,80,.98);color:#fff;border-bottom:1px solid rgba(255,255,255,.18)}
.HOME .header,.ACCO .header,.REST .header,.INCL .header,.GLRY .header,.WEDS .header,.OFFR .header,.CNCT .header{position:absolute;inset:0 0 auto;background:linear-gradient(180deg,rgba(3,37,65,.94),rgba(3,37,65,.18))}
.bb-header-inner{width:min(1540px,94%);height:92px;margin:auto;display:flex;align-items:center;gap:28px}.bb-brand{display:flex;align-items:center;gap:13px;min-width:310px;color:#fff!important}.bb-brand-mark{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(255,255,255,.9);border-radius:50%;font-family:"Playfair Display",serif;font-size:18px;font-style:italic}.bb-brand-copy{display:flex;flex-direction:column;line-height:1.05}.bb-brand-copy strong{font-family:"Playfair Display",serif;font-size:21px;font-weight:500}.bb-brand-copy small{margin-top:7px;font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.bb-main-nav{display:block!important;width:auto!important;height:auto!important;margin:0 auto!important;background:none!important;position:static!important;color:#fff!important;text-align:left!important}.bb-main-nav ul{display:flex;align-items:center;gap:22px;margin:0;padding:0;list-style:none}.bb-main-nav li{display:block!important;position:relative}.bb-main-nav a{display:block;padding:18px 0;color:#fff!important;font-size:10px;font-weight:700;letter-spacing:.075em;text-transform:uppercase;white-space:nowrap}.bb-main-nav li.active:after,.bb-main-nav li:hover:after{content:"";position:absolute;left:0;right:0;bottom:10px;height:2px;background:var(--bb-aqua)}
.bb-reservations{display:flex;flex-direction:column;line-height:1.1;text-align:right}.bb-reservations small{font-size:7px;letter-spacing:.16em;text-transform:uppercase;opacity:.7}.bb-reservations a{margin-top:5px;color:#fff!important;font-size:11px;white-space:nowrap}.bb-header-book,.bb-cta-button{min-width:120px;height:48px;padding:0 20px;border:0;background:var(--bb-aqua);color:#fff;font-family:"DM Sans",sans-serif;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;cursor:pointer;box-shadow:0 10px 25px rgba(8,169,209,.22)}
.bb-menu-toggle,.bb-mobile-nav{display:none!important}

/* Hero */
#stage{position:relative;height:76vh;min-height:570px;max-height:850px;overflow:hidden;background:var(--bb-deep)}#stage:after{content:"";position:absolute;z-index:3;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(2,43,73,.52),rgba(2,43,73,.03) 65%),linear-gradient(0deg,rgba(2,43,73,.24),transparent 50%)}
#stage .slider,#stage .stageslider,#stage .bx-wrapper,#stage .bx-viewport,#stage .slide,#stage .slide_image{height:100%!important}#stage .slide_image img{width:100%;height:100%;object-fit:cover;object-position:center}.bx-wrapper{margin:0!important}
.bb-hero-copy{position:absolute;z-index:8;left:8vw;bottom:140px;max-width:720px;color:#fff}.bb-hero-copy>small{font-size:9px;font-weight:700;letter-spacing:.2em}.bb-hero-title{margin:15px 0 20px!important;color:#fff!important;font-family:"DM Sans",sans-serif!important;font-size:clamp(60px,7vw,108px)!important;font-weight:600!important;line-height:.78!important;letter-spacing:-.055em!important}.bb-hero-title em{font-family:"Playfair Display",serif;font-weight:500}.bb-hero-copy>p:not(.bb-hero-title){max-width:550px;margin-bottom:27px;color:#fff!important;font-size:17px!important}.bb-hero-copy>div{display:flex;align-items:center;gap:24px}.bb-hero-copy>div>a{padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.8);color:#fff!important;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
#menu_substage{position:relative;z-index:20;margin-top:-70px!important;height:70px!important;background:rgba(3,59,103,.9)!important;backdrop-filter:blur(14px);border-top:1px solid rgba(255,255,255,.2)}#menu_substage .container{height:100%;display:flex;align-items:center;justify-content:center}#menu_substage ul{display:flex;justify-content:center;gap:44px;margin:0!important;padding:0!important;list-style:none}#menu_substage li{display:block!important;float:none!important}#menu_substage a{display:block!important;padding:24px 0!important;border:0!important;color:#fff!important;font-size:10px!important;font-weight:700;letter-spacing:.14em;text-transform:uppercase}#menu_substage.fixed{position:fixed!important;top:0!important;margin:0!important}

/* High-visibility affiliate booking panel */
.book_box{position:fixed!important;z-index:600!important;right:22px!important;top:auto!important;bottom:22px!important;width:min(570px,calc(100vw - 44px))!important;background:transparent!important;text-align:left!important;box-shadow:0 24px 70px rgba(3,45,80,.3)}.book_button{display:flex!important;align-items:center;justify-content:space-between;width:100%;height:66px!important;padding:0 24px!important;border:0;background:linear-gradient(90deg,var(--bb-navy),#075a8b)!important;color:#fff!important;cursor:pointer}.book_button>span{display:flex!important;flex-direction:column;padding:0!important;line-height:1.15}.book_button small{font-size:7px;letter-spacing:.18em;text-transform:uppercase;opacity:.72}.book_button strong{margin-top:6px;font-size:13px;letter-spacing:.08em;text-transform:uppercase}.book_button i{font-style:normal;font-size:24px;font-weight:300}.book_flyout{display:none;padding:25px!important;background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.7);font-size:12px!important}.bb-booking-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px}.bb-booking-head div{display:flex;flex-direction:column}.bb-booking-head small{color:var(--bb-blue);font-size:8px;font-weight:700;letter-spacing:.17em}.bb-booking-head strong{margin-top:5px;font-family:"Playfair Display",serif;font-size:22px;font-weight:500;line-height:1.1}.bb-booking-close{width:34px;height:34px;border:1px solid var(--bb-line);background:#fff;color:var(--bb-navy);font-size:20px;cursor:pointer}.bb-trust-row{display:flex;gap:15px;margin:0 0 10px;padding-bottom:11px;border-bottom:1px solid var(--bb-line);color:#507482;font-size:8px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.bb-affiliate-note{margin:8px 12px 0!important;color:#6a808b!important;font-size:9px!important;line-height:1.4!important}.book_box.secondpos{top:auto!important}

/* Existing content, re-presented */
.main{position:relative;padding:0 0 80px;background:#f7fbfc}.intro{padding:88px 0!important;background:transparent!important}.intro.dark{background:var(--bb-sky)!important}.intro .content{width:100%!important;margin:0!important;padding:0!important}.intro .content:after{content:"";display:block;clear:both}.intro h1,.intro h2,.main h1,.title_section_rest{color:var(--bb-navy)!important;font-family:"Playfair Display",serif!important;font-size:clamp(38px,5vw,68px)!important;font-weight:500!important;line-height:1!important;letter-spacing:-.035em!important;text-transform:none!important}.intro h1 span,.main h1 span{color:inherit!important}.intro h3,.main h3{color:var(--bb-blue)!important;font-family:"DM Sans",sans-serif!important}.intro p,.main p,.main li{color:#526f7d!important;font-family:"DM Sans",sans-serif!important;font-size:15px!important;line-height:1.75!important}.intro>.container>.content>p:first-of-type,.col2b>p:first-of-type{max-width:900px;margin-inline:auto;font-size:17px!important}.button_dark,.button1,.box_b_teaser_button a{display:inline-flex!important;align-items:center;justify-content:center;min-height:47px;padding:0 23px!important;border:1px solid var(--bb-aqua)!important;border-radius:0!important;background:var(--bb-aqua)!important;color:#fff!important;font-size:10px!important;font-weight:700!important;letter-spacing:.12em;text-transform:uppercase}.sidebar{padding:25px!important;background:#fff!important;border:1px solid var(--bb-line);box-shadow:var(--bb-shadow)}.col2b{width:calc(100% - 300px)!important;padding-left:52px!important}.box_a_teaser_content_image,.box_c_teaser_content_image{overflow:hidden}.box_a_teaser_content_image img,.box_c_teaser_content_image img{transition:transform .6s}.box_a_teaser_content_image:hover img,.box_c_teaser_content_image:hover img{transform:scale(1.04)}.box_c_teaser_content_text{padding:52px 24px 22px!important;background:linear-gradient(0deg,rgba(3,45,80,.9),transparent)!important}.box_c_teaser_content_text a{color:#fff!important;font-family:"Playfair Display",serif;font-size:25px}

/* Room and restaurant cards */
.restaurantes{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:46px!important}.cnt_rest{display:flex!important;flex-direction:column;float:none!important;width:auto!important;margin:0!important;overflow:hidden;background:#fff;border:1px solid var(--bb-line);box-shadow:var(--bb-shadow)}.cnt_rest .img_rest1{float:none!important;width:100%!important;height:300px!important;overflow:hidden}.cnt_rest img.img_rest{width:100%!important;height:100%!important;object-fit:cover;transition:transform .6s}.cnt_rest:hover img.img_rest{transform:scale(1.04)}.cnt_rest .descr_rest{float:none!important;width:100%!important;min-height:0!important;padding:29px!important}.cnt_rest .left_rest{float:none!important;width:100%!important;margin:0!important}.cnt_rest h1{margin:0 0 8px!important;font-size:29px!important}.cnt_rest h5{color:var(--bb-blue);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.cnt_rest ul{padding-left:18px}
.ACCO .restaurantes{display:block!important;margin-top:52px!important}.ACCO .cnt_rest{position:relative;flex-direction:row!important;min-height:390px;margin:0 0 34px!important;border:0}.ACCO .cnt_rest:nth-child(even){flex-direction:row-reverse!important}.ACCO .cnt_rest:after{content:"";position:absolute;left:52%;top:0;width:82px;height:4px;background:var(--bb-aqua)}.ACCO .cnt_rest:nth-child(even):after{left:auto;right:52%}.ACCO .cnt_rest .img_rest1{width:52%!important;height:auto!important;min-height:390px}.ACCO .cnt_rest .descr_rest{width:48%!important;padding:46px!important;display:flex;align-items:center;background:linear-gradient(135deg,#fff,var(--bb-sky))}.ACCO .cnt_rest h1{font-size:38px!important}.ACCO .cnt_rest p{font-size:14px!important}

/* The legacy amenities rail pushed these pages several screens down. These two
   focused sales pages use the full content width and link amenities separately. */
.ACCO .col1b,.REST .col1b{display:none!important}
.ACCO .col2b,.REST .col2b{float:none!important;width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.ACCO .col2b>h1,.REST .title_section_rest{text-align:left!important}
.ACCO .col2b>p:first-of-type,.REST .bb-section-lead{max-width:880px!important;margin:18px 0 0!important;text-align:left!important;font-size:17px!important;line-height:1.75!important}
.ACCO .box_b_teaser_button{margin-top:25px!important}

/* Restaurant page: one cinematic image followed by scannable dining choices. */
.REST .restaurantes{display:block!important;margin-top:42px!important}
.REST .cnt_rest{display:block!important;width:100%!important;margin:0!important;border:0;box-shadow:0 22px 65px rgba(3,45,80,.14)}
.REST .cnt_rest .img_rest1{width:100%!important;height:430px!important;max-width:none!important}
.REST .cnt_rest .descr_rest{width:100%!important;padding:34px!important;background:#fff}
.REST .cnt_rest .left_rest{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px!important}
.REST .bb-dining-item{min-height:178px;padding:25px;background:linear-gradient(135deg,#f7fcfd,var(--bb-sky));border:1px solid var(--bb-line);border-top:3px solid var(--bb-aqua)}
.REST .bb-dining-item small{color:var(--bb-blue);font-size:8px;font-weight:700;letter-spacing:.15em}
.REST .bb-dining-item h3{margin:7px 0 10px!important;color:var(--bb-navy)!important;font-family:"Playfair Display",serif!important;font-size:27px!important;font-weight:500!important;line-height:1.05!important}
.REST .bb-dining-item p{margin:0!important;font-size:13px!important;line-height:1.65!important}

/* Lead capture cues and footer */
.bb-final-cta{padding:95px 6vw;text-align:center;background:linear-gradient(135deg,#dff5fb,#f8fcfd)}.bb-final-cta small{color:var(--bb-blue);font-size:9px;font-weight:700;letter-spacing:.18em}.bb-final-cta h2{max-width:780px;margin:14px auto 30px;color:var(--bb-navy);font-family:"Playfair Display",serif;font-size:clamp(40px,5vw,70px);font-weight:500;line-height:1}.bb-final-cta>a{display:block;margin-top:16px;color:var(--bb-blue);font-size:11px;font-weight:600}.footer{clear:both!important;padding:70px 6vw 27px!important;background:var(--bb-deep)!important;color:#fff!important}.bb-footer-grid{max-width:1260px;margin:auto;display:grid;grid-template-columns:1.5fr .7fr .7fr .8fr;gap:52px}.bb-footer-brand{display:flex;align-items:flex-start;gap:15px}.bb-footer-brand div{display:flex;flex-direction:column}.bb-footer-brand strong{font-family:"Playfair Display",serif;font-size:24px;font-weight:500}.bb-footer-brand small{max-width:270px;margin-top:8px;color:#9eb8c7;font-size:11px}.bb-footer-grid nav,.bb-footer-contact{display:flex!important;flex-direction:column;align-items:flex-start;gap:9px}.bb-footer-grid nav>strong,.bb-footer-contact>strong{margin-bottom:8px;color:#fff;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.bb-footer-grid nav a,.bb-footer-contact a{color:#adc4d0!important;font-size:12px}.bb-footer-contact button{margin-top:10px;padding:0 0 3px;border:0;border-bottom:1px solid var(--bb-aqua);background:none;color:#fff;font:600 11px "DM Sans",sans-serif;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.bb-footer-bottom{max-width:1260px;margin:48px auto 0;padding-top:21px;border-top:1px solid rgba(255,255,255,.14);display:flex;justify-content:space-between;color:#7e9daf;font-size:9px;letter-spacing:.08em;text-transform:uppercase}

@media(max-width:1320px){.bb-reservations{display:none}.bb-main-nav ul{gap:15px}.bb-main-nav a{font-size:9px}.bb-brand{min-width:280px}.bb-header-inner{gap:18px}}
@media(max-width:1180px){.header,.HOME .header,.ACCO .header,.REST .header,.INCL .header,.GLRY .header,.WEDS .header,.OFFR .header,.CNCT .header{height:78px;position:absolute;background:rgba(3,45,80,.92)}.bb-header-inner{width:90%;height:78px}.bb-brand{min-width:0}.bb-brand-mark{width:40px;height:40px;font-size:15px}.bb-brand-copy strong{font-size:17px}.bb-brand-copy small{font-size:7px}.bb-main-nav{display:none!important}.bb-header-book{margin-left:auto;min-width:105px;height:42px}.bb-menu-toggle{display:flex!important;flex-direction:column;justify-content:center;width:42px;height:42px;padding:8px;border:0;background:transparent}.bb-menu-toggle span{display:block;width:24px;height:1px;margin:3px 0;background:#fff}.bb-menu-toggle b{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.bb-mobile-nav{display:none!important;position:absolute;top:78px;left:0;right:0;padding:21px 6vw;background:var(--bb-deep);grid-template-columns:1fr 1fr}.bb-mobile-nav[style*="block"]{display:grid!important}.bb-mobile-nav a{padding:12px;color:#fff!important;border-bottom:1px solid rgba(255,255,255,.1);font-size:10px;text-transform:uppercase;letter-spacing:.08em}#stage{height:68vh;min-height:520px}.bb-hero-copy{left:6vw;bottom:90px}#menu_substage{height:auto!important;margin-top:0!important;padding:13px 0;background:var(--bb-deep)!important}#menu_substage ul{justify-content:flex-start;gap:20px;overflow-x:auto}#menu_substage a{padding:8px 0!important;white-space:nowrap}.intro{padding:66px 0!important}.sidebar{display:none!important}.col2b{width:100%!important;padding:0!important}.restaurantes{grid-template-columns:1fr}.ACCO .cnt_rest,.ACCO .cnt_rest:nth-child(even){flex-direction:column!important;min-height:0}.ACCO .cnt_rest .img_rest1{width:100%!important;height:360px!important;min-height:0}.ACCO .cnt_rest .descr_rest{width:100%!important;padding:34px!important}.ACCO .cnt_rest:after,.ACCO .cnt_rest:nth-child(even):after{left:0;right:auto;top:360px}.bb-footer-grid{grid-template-columns:1fr 1fr}.bb-footer-brand{grid-column:1/-1}}
@media(max-width:600px){.bb-header-book{display:none}.bb-brand-copy small{display:none}#stage{height:72vh;min-height:560px}.bb-hero-copy{left:6vw;right:6vw;bottom:70px}.bb-hero-title{font-size:55px!important}.bb-hero-copy>p:not(.bb-hero-title){font-size:14px!important}.bb-hero-copy>div{align-items:flex-start;flex-direction:column;gap:13px}.container{width:88%}.book_box{right:10px!important;bottom:10px!important;width:calc(100vw - 20px)!important}.book_button{height:58px!important;padding:0 17px!important}.book_flyout{max-height:74vh;padding:17px 8px!important;overflow:auto}.bb-booking-head,.bb-trust-row{margin-inline:10px}.bb-booking-head strong{font-size:18px}.bb-trust-row{flex-wrap:wrap;gap:6px 12px}.intro{padding:50px 0!important}.intro h1,.intro h2,.main h1,.title_section_rest{font-size:40px!important}.cnt_rest .img_rest1{height:245px!important}.cnt_rest .descr_rest{padding:22px!important}.ACCO .cnt_rest .img_rest1{height:260px!important}.ACCO .cnt_rest .descr_rest{padding:26px!important}.ACCO .cnt_rest:after,.ACCO .cnt_rest:nth-child(even):after{top:260px}.REST .cnt_rest .img_rest1{height:260px!important}.REST .cnt_rest .descr_rest{padding:18px!important}.REST .cnt_rest .left_rest{grid-template-columns:1fr}.REST .bb-dining-item{min-height:0;padding:21px}.box_a_teaser_content,.box_c_teaser_content{width:100%!important;margin:0 0 18px!important}.bb-final-cta{padding:70px 6vw}.bb-footer-grid{grid-template-columns:1fr}.bb-footer-brand{grid-column:auto}.bb-footer-bottom{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* All Inclusive: remove the narrow legacy rail and present the original copy clearly. */
.INCL .col1b{display:none!important}
.INCL .col2b{float:none!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.INCL .bb-inclusive-intro{max-width:900px;margin:0 0 42px}
.INCL .bb-inclusive-intro>span{display:block;margin-bottom:12px;color:var(--bb-blue);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.INCL .bb-inclusive-intro h1{margin:0 0 20px!important;font-size:clamp(42px,5vw,70px)!important}
.INCL .bb-inclusive-intro p{max-width:800px;margin:0!important;font-size:17px!important}
.INCL .restaurantes{display:block!important;margin:0!important}
.INCL .descr_rest_sin{width:100%!important;margin:0!important;padding:0!important;background:transparent!important}
.INCL .descr_rest_sin>div{columns:2;column-gap:28px}
.INCL .descr_rest_sin h5,.INCL .descr_rest_sin h6,.INCL .descr_rest_sin ul{break-inside:avoid}
.INCL .descr_rest_sin h5{column-span:all;margin:34px 0 18px!important;padding:22px 26px;background:linear-gradient(90deg,var(--bb-navy),var(--bb-blue));color:#fff!important;font-family:"Playfair Display",serif;font-size:28px;font-weight:500}
.INCL .descr_rest_sin h5:first-child{margin-top:0!important}
.INCL .descr_rest_sin h6{margin:0!important;padding:24px 25px 10px;background:#fff;color:var(--bb-navy)!important;font-family:"DM Sans",sans-serif;font-size:15px;font-weight:700;line-height:1.35}
.INCL .descr_rest_sin ul{margin:0 0 28px!important;padding:0 25px 24px 45px!important;background:#fff;border-bottom:3px solid var(--bb-aqua);box-shadow:0 14px 38px rgba(3,45,80,.08)}
.INCL .descr_rest_sin li{margin:0 0 8px!important;font-size:14px!important;line-height:1.55!important}
.INCL .descr_rest_sin br{display:none}

/* Mobile-only repairs for the legacy homepage modules. Desktop dimensions remain unchanged. */
@media(max-width:767px){
  html,body{max-width:100%;overflow-x:hidden}
  body.fh .container{width:calc(100% - 32px)!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important}
  .main{padding-bottom:82px!important}
  .intro{padding:42px 0!important}
  .intro .content,.box_a,.box_b,.box_c{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}
  .box_a>.content{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;width:100%!important}
  .box_a_teaser_content{float:none!important;width:auto!important;max-width:none!important;margin:0!important}
  .box_a_teaser_content_image{height:145px!important;margin:0!important}
  .box_a_teaser_content_image img{display:block;width:100%!important;height:100%!important;object-fit:cover}
  .box_b_teaser_textbox,.box_c_teaser_content{float:none!important;width:100%!important;max-width:100%!important;margin:0!important}
  .box_b_teaser_headline,.box_b_teaser_headline h1{width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;text-align:center!important}
  .box_b_teaser_headline h1,.intro h1,.intro h2,.main h1,.title_section_rest{font-size:clamp(34px,10.5vw,46px)!important;line-height:1.02!important;letter-spacing:-.035em!important;overflow-wrap:anywhere}
  .box_b_teaser_headline h1 span{display:inline!important;max-width:100%!important}
  .box_b_teaser_textbox p{width:100%!important;max-width:34em!important;margin-left:auto!important;margin-right:auto!important;padding:0!important;text-align:center!important;font-size:15px!important;line-height:1.65!important}
  .box_b_teaser_button{text-align:center!important}
  .box_c_teaser_content_image{height:270px!important}
  .box_c_teaser_content_image img{display:block;width:100%!important;height:100%!important;object-fit:cover}
  .INCL .bb-inclusive-intro{margin-bottom:28px}
  .INCL .bb-inclusive-intro h1{font-size:clamp(36px,11vw,48px)!important}
  .INCL .bb-inclusive-intro p{font-size:15px!important}
  .INCL .descr_rest_sin>div{columns:1}
  .INCL .descr_rest_sin h5{margin-top:25px!important;padding:18px 20px;font-size:24px}
  .INCL .descr_rest_sin h6{padding:21px 20px 10px;font-size:14px}
  .INCL .descr_rest_sin ul{padding:0 20px 20px 39px!important}
  .book_box{bottom:max(10px,env(safe-area-inset-bottom))!important}
}

@media(max-width:420px){
  body.fh .container{width:calc(100% - 24px)!important}
  .box_a>.content{gap:6px!important}
  .box_a_teaser_content_image{height:120px!important}
  .box_b_teaser_headline h1{font-size:36px!important;white-space:normal!important}
  .box_c_teaser_content_image{height:235px!important}
}

/* Final phone polish: calmer type, tighter rhythm and a compact conversion bar. */
@media(max-width:600px){
  .HOME .main>.intro:first-child{padding-top:34px!important;padding-bottom:26px!important}
  .HOME .main>.intro:first-child .content>h1{max-width:340px!important;margin:0 auto 16px!important;font-size:34px!important;line-height:1.02!important;overflow-wrap:normal!important;word-break:normal!important}
  .HOME .main>.intro:first-child .content>h3{max-width:330px;margin:0 auto 22px!important;font-size:19px!important;line-height:1.3!important}
  .HOME .main>.intro:first-child .content>p{font-size:15px!important;line-height:1.65!important;text-align:left!important}
  .HOME article.box_a{margin-top:26px!important;margin-bottom:0!important}
  .HOME .intro.dark{padding-top:48px!important;padding-bottom:34px!important}
  .HOME .box_b_teaser_headline h1{margin-bottom:18px!important;font-size:34px!important;line-height:1.05!important}
  .HOME .box_b_teaser_headline h1 span{border:0!important;text-decoration:none!important}
  .HOME .box_b_teaser_text p{font-size:14px!important;line-height:1.6!important}
  .HOME .box_b_teaser_button{margin-top:20px!important}
  .HOME .box_c_teaser_content{margin-top:28px!important;margin-bottom:0!important}
  .book_box{left:16px!important;right:16px!important;bottom:max(12px,env(safe-area-inset-bottom))!important;width:auto!important;box-shadow:0 12px 34px rgba(3,45,80,.28)!important}
  .book_button{height:52px!important;padding:0 18px!important}
  .book_button small{display:none!important}
  .book_button strong{margin-top:0!important;font-size:11px!important;letter-spacing:.09em!important}
  .book_button i{font-size:21px!important}
  .book_flyout{max-height:calc(100vh - 86px)!important}
  .footer{padding-bottom:105px!important}
}

@media(max-width:380px){
  .HOME .main>.intro:first-child .content>h1{font-size:31px!important}
  .HOME .main>.intro:first-child .content>h3{font-size:17px!important}
  .HOME .box_b_teaser_headline h1{font-size:31px!important}
}

/* Mobile navigation must override the high-specificity legacy menu rules. */
@media(max-width:1180px){
  #menu_mobile.bb-menu-toggle{position:relative!important;top:auto!important;right:auto!important;float:none!important;flex:0 0 42px!important;margin:0 0 0 auto!important;padding:8px!important;z-index:302!important}
  #menu_mobile.bb-menu-toggle span{transition:transform .2s ease,opacity .2s ease}
  #menu_mobile.bb-menu-toggle.active span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  #menu_mobile.bb-menu-toggle.active span:nth-child(2){opacity:0}
  #menu_mobile.bb-menu-toggle.active span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  #menu_mobile_content.bb-mobile-nav{display:none!important;position:absolute!important;z-index:301!important;top:78px!important;left:0!important;right:auto!important;width:100vw!important;max-width:none!important;max-height:calc(100vh - 78px)!important;margin:0!important;padding:12px 18px 22px!important;overflow-y:auto!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;background:rgba(3,45,80,.985)!important;box-shadow:0 22px 48px rgba(3,31,54,.35)!important;-webkit-overflow-scrolling:touch}
  #menu_mobile_content.bb-mobile-nav[style*="block"]{display:grid!important}
  #menu_mobile_content.bb-mobile-nav a{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;min-height:58px!important;width:auto!important;padding:10px 8px!important;border:0!important;border-bottom:1px solid rgba(255,255,255,.14)!important;background:transparent!important;color:#fff!important;font-family:"DM Sans",Arial,sans-serif!important;font-size:11px!important;font-weight:600!important;line-height:1.25!important;letter-spacing:.08em!important;text-align:center!important;white-space:normal!important}
  #menu_mobile_content.bb-mobile-nav a:hover,#menu_mobile_content.bb-mobile-nav a:focus{background:rgba(8,169,209,.18)!important;color:#fff!important}
  #menu_mobile_content.bb-mobile-nav a:last-child{grid-column:1/-1;min-height:54px;border-bottom:0!important;color:#7bdcf2!important}
}

@media(max-width:340px){
  #menu_mobile_content.bb-mobile-nav{grid-template-columns:1fr!important;padding:8px 20px 18px!important}
  #menu_mobile_content.bb-mobile-nav a{min-height:48px!important;justify-content:flex-start!important;padding-left:12px!important;font-size:12px!important;text-align:left!important}
  #menu_mobile_content.bb-mobile-nav a:last-child{grid-column:auto}
}

/* Shared typography for every individual room-detail ASP template. */
@media(max-width:600px){
  .main>.intro:first-child .head{max-width:100%!important;margin:0 auto!important;padding:0!important;text-align:left!important}
  .main>.intro:first-child .head h1{margin:0 0 18px!important;padding:0 0 16px!important;border-bottom:1px solid rgba(6,59,103,.24)!important;font-size:36px!important;line-height:1.05!important;letter-spacing:-.035em!important;text-align:left!important}
  .main>.intro:first-child .head h1 span{border:0!important;text-decoration:none!important}
  .main>.intro:first-child .head h2{max-width:620px!important;margin:0 0 18px!important;color:var(--bb-blue)!important;font-family:"DM Sans",Arial,sans-serif!important;font-size:23px!important;font-style:normal!important;font-weight:600!important;line-height:1.28!important;letter-spacing:-.018em!important;text-align:left!important}
  .main>.intro:first-child .head p{max-width:620px!important;margin:0!important;color:#526f7d!important;font-size:15px!important;line-height:1.65!important;text-align:left!important}
  .main>.intro:first-child article.box_a{margin-top:30px!important}
  .main>.intro:first-child article.box_a .content{margin:0!important}
  .rooms h3{margin-bottom:18px!important;border-bottom:1px solid rgba(6,59,103,.22)!important;font-size:22px!important;line-height:1.2!important}
  .rooms ul{margin-bottom:22px!important}
  .rooms li{margin-bottom:9px!important;font-size:14px!important;line-height:1.5!important}
}

/* Never allow a legacy or cached homepage title to escape the phone viewport. */
@media(max-width:600px){
  .HOME .main>.intro:first-child .content>h1{width:100%!important;max-width:100%!important;padding-left:0!important;padding-right:0!important;overflow-wrap:anywhere!important;word-break:normal!important;white-space:normal!important}
}

.bb-registered{display:inline-block;margin-left:.08em;font-family:"DM Sans",Arial,sans-serif;font-size:.34em;font-weight:500;line-height:1;vertical-align:top;transform:translateY(.16em)}

/* Stable compact header/menu layout for iPhone and other narrow screens. */
@media(max-width:600px){
  .header,.HOME .header,.ACCO .header,.REST .header,.INCL .header,.GLRY .header,.WEDS .header,.OFFR .header,.CNCT .header{height:calc(72px + env(safe-area-inset-top))!important;padding-top:env(safe-area-inset-top)!important;background:rgba(3,45,80,.97)!important}
  .bb-header-inner{width:calc(100% - 28px)!important;height:72px!important;gap:10px!important}
  .bb-brand{flex:1 1 auto!important;min-width:0!important;max-width:calc(100% - 52px)!important;gap:10px!important;overflow:hidden!important}
  .bb-brand-mark{flex:0 0 40px!important;width:40px!important;height:40px!important;font-size:15px!important}
  .bb-brand-copy{min-width:0!important;overflow:hidden!important}
  .bb-brand-copy strong{display:block!important;max-width:100%!important;overflow:hidden!important;font-size:15px!important;line-height:1.1!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  #menu_mobile.bb-menu-toggle{flex:0 0 42px!important;width:42px!important;height:42px!important;margin-left:auto!important}
  #menu_mobile_content.bb-mobile-nav{top:calc(72px + env(safe-area-inset-top))!important;max-height:calc(100vh - 72px - env(safe-area-inset-top))!important}
}

@media(max-width:360px){
  .bb-brand-copy strong{font-size:14px!important}
}

/* Tighten the homepage transition from Accommodations into resort highlights. */
@media(max-width:600px){
  .HOME .intro.dark{padding-bottom:18px!important}
  .HOME .intro.dark + .intro{padding-top:14px!important}
  .HOME .intro.dark + .intro .box_c_teaser_content{margin-top:0!important}
  .HOME .intro.dark + .intro .box_c_teaser_content + .box_c_teaser_content{margin-top:12px!important}
}

/* A restrained desktop control; the wider panel appears only after opening. */
@media(min-width:601px){
  #booking-widget.book_box:not(.dropped){left:auto!important;right:22px!important;width:430px!important;max-width:calc(100vw - 44px)!important}
  #booking-widget.book_box:not(.dropped) .book_button{height:58px!important;padding:0 21px!important}
  #booking-widget.book_box:not(.dropped) .book_button small{display:none!important}
  #booking-widget.book_box:not(.dropped) .book_button strong{margin:0!important;font-size:12px!important}
  #booking-widget.book_box.dropped{left:auto!important;right:22px!important;width:min(570px,calc(100vw - 44px))!important}
}

/* Use wide desktop screens without stretching text beyond a comfortable measure. */
@media(min-width:1181px){
  body.fh .container{width:min(1480px,90%)!important;max-width:none!important}
  .ACCO .col2b>p:first-of-type,.REST .bb-section-lead{max-width:980px!important}
  .ACCO .cnt_rest .descr_rest{padding:52px 58px!important}
  .REST .cnt_rest .img_rest1{height:500px!important}
}

/* Reset legacy restaurant title positioning so the lead always starts below it. */
.REST .title_section_rest{position:static!important;float:none!important;display:block!important;clear:both!important;width:100%!important;height:auto!important;margin:0 0 20px!important;padding:0!important;line-height:1.05!important}
.REST .bb-section-lead{position:static!important;float:none!important;display:block!important;clear:both!important;margin:0!important;padding:0!important;line-height:1.7!important}
.REST .bb-context-link{clear:both!important;margin-top:16px!important}

@media(max-width:380px){
  .main>.intro:first-child .head h1{font-size:32px!important}
  .main>.intro:first-child .head h2{font-size:21px!important}
}
