/* Attractions: current homepage font faces and responsive type scales.
   Loaded after font-system-calm-coast-plus.css. All rules are page scoped. */
body.attractions-page{
 --at-home-frame:min(100vw,1900px);
 --at-home-rail:170px;
 --at-home-intro-scale:calc((var(--at-home-frame) - var(--at-home-rail)) / 1745);
 --at-home-content:calc(var(--at-home-frame) - 2 * var(--at-home-rail));
 --at-home-scale:calc(var(--at-home-frame) / 1900);
}
@media(max-width:1450px){body.attractions-page{--at-home-rail:clamp(80px,8.947vw,170px)}}
@media(max-width:900px){body.attractions-page{--at-home-rail:24px}}
/* Homepage hero display, handwritten accent, lead and eyebrow. */
body.attractions-page .pdh .pdh__title-main,body.attractions-page .atx #the-strand .st__title>span:first-child{font-family:"Gulf Preview Bodoni",Georgia,serif!important;font-size:clamp(68px,5.789vw,110px);font-weight:400!important;line-height:.93;letter-spacing:-.012em}
body.attractions-page .pdh .pdh__title-script,body.attractions-page .atx #the-strand .st__title>span:last-child{font-family:"SP Accent Hand",Georgia,serif!important;font-size:clamp(92px,8.21vw,156px);font-weight:400!important;line-height:1;letter-spacing:normal;margin:calc(-19.9 * var(--at-home-scale)) 0 0}
body.attractions-page .pdh .pdh__lead{font-family:"Gulf Preview Newsreader",Georgia,serif!important;font-size:clamp(21px,1.544vw,29.3px);font-weight:400;line-height:1.3;letter-spacing:-.008em}
body.attractions-page .pdh .pdh__crumbs{font-family:"Univers Next",Arial,sans-serif!important;font-size:clamp(14px,.9526vw,18.1px);font-weight:400;line-height:1.4;letter-spacing:.2em}
/* The homepage amenity title pairing, applied consistently to attractions. */
body.attractions-page .atx :is(.mg__title,.fs-t,.br__title,.rr__title){font-family:"HP Display",Georgia,serif;font-size:calc(85.8 * var(--at-home-scale));font-weight:400;font-style:normal;line-height:.99;letter-spacing:-.01em}
body.attractions-page .atx :is(.mg__title,.fs-t,.br__title,.rr__title) em{font-family:"HP Accent",cursive;font-size:1.1em;font-weight:400;font-style:normal;line-height:.72;letter-spacing:normal}
body.attractions-page .atx :is(.mg__title,.br__title) em{margin:5px 0 0}
body.attractions-page .atx .rr__line--paired{flex-wrap:wrap;gap:0 .2em;white-space:normal}
body.attractions-page .atx .br__title-main{white-space:normal}
/* Coastal comfort labels, descriptions and links. */
body.attractions-page .atx :is(.fs-w,.br__kicker,.rr__kicker){font-family:"Univers Next",Arial,sans-serif;font-size:max(11px,calc(20.2 * var(--at-home-intro-scale)));font-weight:400;line-height:1.4;letter-spacing:.116em}
body.attractions-page .atx :is(.mg__lead,.fs-d,.br__lead,.rr__intro,.fp__lead){font-family:"Comfort Newsreader",Georgia,serif;font-size:max(18px,calc(25.2 * var(--at-home-intro-scale)));font-weight:400;line-height:max(24px,calc(32.7 * var(--at-home-intro-scale)));letter-spacing:normal}
body.attractions-page .atx :is(.mg__button,.rr__button,.pp__pill){font-family:"Comfort Newsreader",Georgia,serif;font-size:max(18px,calc(24.2 * var(--at-home-intro-scale)));font-weight:400;line-height:1.1;letter-spacing:normal;text-transform:none}
/* The homepage's local attraction card titles. */
body.attractions-page .atx :is(.mg__feature h3,.rr__features h3,.kx__c h3){font-family:"Gate Newsreader",Georgia,serif;font-size:21px;font-weight:450;line-height:1.08;letter-spacing:-.015em;text-transform:none;white-space:normal}
/* Supporting copy follows the homepage booking text scale. */
body.attractions-page .atx :is(.rr__features p,.kx__d),body.attractions-page .cta-band p{font-family:"Booking Reference Text",Arial,sans-serif;font-size:calc(.0123 * var(--at-home-content));font-weight:400;line-height:1.42;letter-spacing:-.01em}
body.attractions-page .atx :is(.fs-m,.br__travel,.pp__credits,.kx__cr,.br__video-head,.br__video-foot,.br__lightbox-foot){font-family:"Univers Next",Arial,sans-serif;font-size:clamp(11px,.86vw,14px);font-weight:400;line-height:1.5;letter-spacing:.11em}
body.attractions-page .atx .br__video-head h3{font-family:"Gate Newsreader",Georgia,serif;font-size:21px;font-weight:450;line-height:1.08;letter-spacing:-.015em}
/* Homepage Book your site heading, copy and buttons. */
body.attractions-page .cta-band h2{font-family:"PHA Bauer Bodoni",Georgia,serif;font-size:calc(.0535 * var(--at-home-content));font-weight:400;line-height:.99;letter-spacing:-.01em}
body.attractions-page .cta-band .pill{font-family:"CSF News",Georgia,serif;font-size:24.6px;font-weight:400;line-height:1;letter-spacing:-.66px;text-transform:none}
/* Homepage footer serif and sans-serif roles. */
body.attractions-page .subfooter h2{font-family:"FCS Serif",Georgia,serif;font-size:calc(31.5 * var(--at-home-scale));font-weight:600;line-height:1;letter-spacing:-.005em}
body.attractions-page .subfooter nav a{font-family:"FCS Sans",system-ui,sans-serif;font-size:calc(21 * var(--at-home-scale));font-weight:400;line-height:calc(35.4 * var(--at-home-scale));letter-spacing:normal}
body.attractions-page .subfooter address,body.attractions-page .subfooter address a{font-family:"FCS Sans",system-ui,sans-serif;font-size:calc(19.5 * var(--at-home-scale));font-weight:400;font-style:normal;line-height:calc(25.5 * var(--at-home-scale));letter-spacing:normal}
body.attractions-page .subfooter__brand p{font-family:"FCS Serif",Georgia,serif;font-size:calc(20 * var(--at-home-scale));font-weight:400;line-height:1.4;letter-spacing:normal}
body.attractions-page .subfooter__bottom,body.attractions-page .subfooter__bottom a{font-family:"FCS Serif",Georgia,serif;font-size:calc(19.4 * var(--at-home-scale));font-weight:400;line-height:1;letter-spacing:normal}
@media(max-width:1200px){
 body.attractions-page .subfooter h2{font-size:26px}
 body.attractions-page .subfooter nav a{font-size:18px;line-height:1.95}
 body.attractions-page .subfooter address,body.attractions-page .subfooter address a{font-size:16px;line-height:1.4}
 body.attractions-page .subfooter__brand p{font-size:20px;line-height:1.4}
 body.attractions-page .subfooter__bottom,body.attractions-page .subfooter__bottom a{font-size:15.5px}
}
@media(max-width:1150px){
 body.attractions-page .atx :is(.mg__lead,.fs-d,.br__lead,.rr__intro,.fp__lead){font-size:24px;line-height:1.3}
 body.attractions-page .atx :is(.fs-w,.br__kicker,.rr__kicker){font-size:12px;letter-spacing:.2em}
 body.attractions-page .atx :is(.mg__button,.rr__button,.pp__pill){font-size:22px}
}
@media(max-width:1100px) and (min-width:901px){body.attractions-page .atx :is(.rr__features p,.kx__d),body.attractions-page .cta-band p{font-size:calc(.015 * var(--at-home-content));line-height:1.45}}
@media(max-width:999px){body.attractions-page .atx :is(.mg__title,.fs-t,.br__title,.rr__title){font-size:clamp(38px,8.6vw,64px);line-height:1.02}}
@media(max-width:900px){
 body.attractions-page .pdh .pdh__title-main,body.attractions-page .atx #the-strand .st__title>span:first-child{font-size:clamp(60px,13.1vw,106px);font-weight:700!important;line-height:.96;letter-spacing:-.045em;white-space:normal}
 body.attractions-page .pdh .pdh__title-script,body.attractions-page .atx #the-strand .st__title>span:last-child{font-size:clamp(65px,15.1vw,115px);line-height:1.1;margin:-9px 0 0;white-space:normal}
 body.attractions-page .pdh .pdh__lead{font-size:clamp(21px,3.2vw,26px)}
 body.attractions-page .pdh .pdh__crumbs{font-size:clamp(10px,1.65vw,13px);letter-spacing:.17em}
 body.attractions-page .atx :is(.rr__features p,.kx__d),body.attractions-page .cta-band p{font-size:18px;line-height:1.55}
 body.attractions-page .cta-band h2{font-size:clamp(38px,calc(.092 * var(--at-home-content)),69px)}
 body.attractions-page .subfooter address,body.attractions-page .subfooter address a{font-size:16px}
 body.attractions-page .subfooter__brand p{font-size:20px;line-height:1.4}
}
@media(max-width:760px){body.attractions-page .cta-band .pill{font-size:19px}}
@media(max-width:540px){
 body.attractions-page .pdh .pdh__title-main,body.attractions-page .atx #the-strand .st__title>span:first-child{font-size:clamp(52px,13.9vw,72px);letter-spacing:-.05em}
 body.attractions-page .pdh .pdh__title-script,body.attractions-page .atx #the-strand .st__title>span:last-child{font-size:clamp(56px,14.7vw,76px)}
 body.attractions-page .pdh .pdh__lead{font-size:21px;line-height:1.35}
 body.attractions-page .pdh .pdh__crumbs{font-size:10px;letter-spacing:.14em}
 body.attractions-page .atx :is(.mg__lead,.fs-d,.br__lead,.rr__intro,.fp__lead){font-size:21px;line-height:1.4}
 body.attractions-page .atx :is(.fs-w,.br__kicker,.rr__kicker){font-size:10px;letter-spacing:.19em}
 body.attractions-page .atx :is(.rr__features p,.kx__d),body.attractions-page .cta-band p{font-size:16px}
 body.attractions-page .cta-band h2{font-size:clamp(32px,calc(.111 * var(--at-home-content)),52px)}
}
@media(max-width:360px){
 body.attractions-page .pdh .pdh__title-main,body.attractions-page .atx #the-strand .st__title>span:first-child{font-size:47px}
 body.attractions-page .pdh .pdh__title-script,body.attractions-page .atx #the-strand .st__title>span:last-child{font-size:51px}
 body.attractions-page .pdh .pdh__lead{font-size:19px}
 body.attractions-page .pdh .pdh__crumbs{font-size:9px;letter-spacing:.1em}
}
/* Allow the longer attraction hero title to occupy its full text width. */
@media(min-width:1101px){body.attractions-page .pdh .pdh__copy{width:calc(780 * var(--u))}}
/* Keep the original Moody artwork scale while its larger tablet copy sets
   the section height. Place the feature row below the copy instead of across it. */
@media(min-width:1000px) and (max-width:1250px){
 body.attractions-page .atx .mg-october .mg__design{aspect-ratio:auto;min-height:calc(941 * 100cqw / 1440)}
 body.attractions-page .atx .mg-october .mg__reference-art{height:calc(941 * 100cqw / 1440)}
 body.attractions-page .atx .mg-october .mg__copy{position:relative;top:auto;padding-top:calc(150 * 100cqw / 1440);padding-bottom:175px}
 body.attractions-page .atx .mg-october .mg__lead{margin-top:24px;max-width:100%}
 body.attractions-page .atx .mg-october .mg__cards{top:auto;bottom:0;height:145px}
 body.attractions-page .atx .mg-october .mg__video-group{top:calc(580 * 100cqw / 1440)}
}
body.attractions-page .atx .mg-october .mg__button{min-width:max-content;padding-inline:24px}
@media(max-width:400px){body.attractions-page .atx .mg-october .mg__feature{padding-inline:0}}
/* Header controls and small gallery labels use the homepage text faces too. */
body.attractions-page .pdh :is(.hph__book,.hph__menu){font-family:"PHA Newsreader",Georgia,serif}
body.attractions-page .atx .br__seal{font-family:"Univers Next",Arial,sans-serif}
