/* Official photography and the shared Farr hotel-guide system. */
.brand-collection-page .bc-hotel{overflow:hidden}
.brand-collection-page .bc-hotel .bc-photo{margin:-35px -32px 28px;aspect-ratio:16/10;overflow:hidden;background:#dce3dc}
.bc-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.bc-hotel:hover .bc-photo img{transform:scale(1.025)}
.farr-service{padding:90px 9%;display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#eeeae1;color:#102c38}
.farr-service h2{font:400 clamp(2.5rem,4vw,4.5rem)/1.06 var(--serif);letter-spacing:-.025em;margin:20px 0 28px}
.farr-service p{font-size:.95rem;line-height:1.85;color:#52636a;max-width:530px}
.farr-service-intro>a{display:inline-block;font-size:.85rem;border-bottom:1px solid #a78d60;padding:12px 0;margin-top:15px}
.farr-service-reasons{display:grid;gap:25px}.farr-service-reasons article{position:relative;border-top:1px solid #b9bdb3;padding:23px 0 0 42px}
.farr-service-reasons article>span{position:absolute;top:28px;left:0;font-size:.7rem;color:#826c45}
.farr-service h3{font:400 2rem/1.15 var(--serif);margin:0 0 10px}.farr-service-reasons p{margin:0;font-size:.9rem}
.hotel-editorial{background:#faf9f6;color:#102c38}.hotel-editorial h1,.hotel-editorial h2,.hotel-editorial h3{font-family:var(--serif);font-weight:400;letter-spacing:-.02em}
.hg-hero{min-height:650px;position:relative;display:flex;align-items:flex-end;color:#fff;background:#102c38;isolation:isolate}
.hg-hero-image{position:absolute;inset:0;margin:0;z-index:-2}.hg-hero-image img{height:100%;width:100%;object-fit:cover;display:block}
.hg-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#061923c4,transparent 90%),linear-gradient(0deg,#061923bd,transparent 90%)}
.hg-hero-copy{padding:80px 9%;max-width:1000px}.hg-hero .eyebrow{color:#e1caa2;font-size:.75rem;letter-spacing:.16em}
.hg-hero h1{font-size:clamp(3.6rem,6vw,6.6rem);line-height:1.02;margin:25px 0}.hg-hero-copy>p:not(.eyebrow){max-width:580px;font-size:1.05rem;line-height:1.8;color:#f1f3f0}
.hg-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:28px}.hg-actions .button{background:#c2a268;border-color:#c2a268;color:#102c38;font-size:.8rem;padding:17px 24px}.hg-actions>a:not(.button){border-bottom:1px solid #c2a268;font-size:.9rem;padding:10px 0}
.hg-nav{display:flex;justify-content:space-between;gap:30px;padding:24px 9%;border-bottom:1px solid #d3d8ce;background:#f4f2eb}.hg-nav a{font-size:.8rem;line-height:1.7;padding:10px 0}.hg-nav>div{display:flex;gap:28px;flex-wrap:wrap}.hg-nav>a{color:#7e643a}
.hg-section{padding:85px 9%;scroll-margin-top:25px}.hg-section h2{font-size:clamp(2.6rem,4vw,4.3rem);line-height:1.05;margin:20px 0 28px}.hg-section p{font-size:1rem;line-height:1.9;color:#50636b}
.hg-overview{display:grid;grid-template-columns:.85fr 1.15fr;gap:12%;align-items:center}.hg-overview .hg-lead p{font:400 clamp(1.7rem,2.4vw,2.5rem)/1.48 var(--serif);color:#183440}.hg-suited{max-width:320px;border-top:1px solid #c6cec4;padding-top:22px;font-size:.9rem!important}.hg-suited span{display:block;color:#826c45;font-size:.65rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:10px}
.hg-accommodation{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#eef0e9}.hg-room-options{align-self:center}.hg-room-options article{display:grid;grid-template-columns:30px 1fr;gap:15px;padding:23px 0;border-top:1px solid #c1cbbf}.hg-room-options article:last-child{border-bottom:1px solid #c1cbbf}.hg-number{font-size:.7rem;color:#826c45;padding-top:9px}.hg-room-options h3{font-size:1.9rem;line-height:1.2;margin:0 0 10px}.hg-room-options p{font-size:.9rem;line-height:1.7;margin:0}
.hg-interlude{padding:70px 9% 0}.hg-detail-image{height:510px;margin:0;background:#dce3dc}.hg-detail-image img{width:100%;height:100%;object-fit:cover;display:block}.hg-interlude>p{font-size:.7rem;color:#627376;letter-spacing:.035em;margin:14px 0 0}
.hg-life{display:grid;grid-template-columns:1fr 1fr;gap:12%}.hg-life article{border-top:1px solid #c8cfc4;padding-top:25px}.hg-life h2{font-size:clamp(2.5rem,3.3vw,3.7rem)}
.hg-planning{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#102c38;color:white}.hg-planning p{color:#d6e2e3}.hg-planning .eyebrow{color:#d9bf8d}.hg-planning>div:first-child>p:last-child{font-family:var(--serif);font-size:1.7rem;line-height:1.5}.hg-planning>div:first-child>p:last-child span{font-family:var(--sans);font-size:.75rem;color:#b5c7cb}.hg-planning .hg-small{font-size:.8rem;line-height:1.7;margin-top:25px}
.hg-notes{padding:35px 9% 55px;display:flex;justify-content:space-between;gap:50px;font-size:.85rem;line-height:1.8}.hg-notes>a{white-space:nowrap}.hg-notes details{max-width:650px}.hg-notes summary{cursor:pointer}.hg-notes details p,.hg-notes details li{font-size:.8rem;color:#52656b}.hg-notes li a{border-bottom:1px solid #b9a078}
.hotel-editorial a:focus-visible,.farr-service a:focus-visible,.hg-notes summary:focus-visible{outline:2px solid #a78d60;outline-offset:6px}
@media(max-width:900px){.hg-hero{min-height:580px}.hg-nav{display:block}.hg-nav>div{margin-top:10px;gap:20px}.hg-section{padding:65px 7%}.hg-overview,.hg-accommodation,.hg-life,.hg-planning,.farr-service{gap:7%}.hg-hero-copy{padding:65px 7%}.hg-interlude{padding:55px 7% 0}.hg-detail-image{height:410px}.farr-service{padding:65px 7%}.hg-notes{padding-inline:7%}}
@media(max-width:700px){.brand-collection-page .bc-hotel .bc-photo{margin:-26px -24px 24px}.farr-service{grid-template-columns:1fr;gap:35px;padding:60px 7%}.farr-service h2{font-size:2.8rem}.farr-service-reasons{gap:22px}.hg-hero{min-height:580px}.hg-hero-copy{padding:65px 7% 50px}.hg-hero h1{font-size:3.5rem}.hg-hero-copy>p:not(.eyebrow){font-size:.95rem}.hg-hero .eyebrow{font-size:.65rem;line-height:1.9}.hg-actions{gap:18px}.hg-actions .button{font-size:.75rem;max-width:100%;white-space:normal}.hg-actions>a:not(.button){font-size:.85rem}.hg-overview,.hg-accommodation,.hg-life,.hg-planning{grid-template-columns:1fr;gap:28px}.hg-section{padding:55px 7%}.hg-section h2{font-size:2.9rem}.hg-overview .hg-lead p{font-size:1.8rem}.hg-suited{max-width:none}.hg-detail-image{height:330px}.hg-life article{padding-top:20px}.hg-notes{display:block;padding-top:30px}.hg-notes details{margin-top:25px}.hg-nav{padding:20px 7%}.hg-nav>div{gap:8px 22px}.hg-nav a{font-size:.75rem}.hg-room-options h3{font-size:1.85rem}}
@media(prefers-reduced-motion:reduce){.bc-photo img{transition:none}.bc-hotel:hover .bc-photo img{transform:none}}
.fx-property-photo{aspect-ratio:16/10;margin:0 0 25px;overflow:hidden;background:#dce3dc}.fx-property-photo img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:1100px){.site-header .menu-toggle{display:flex!important;flex-direction:column;gap:5px;align-items:center;justify-content:center}}
/* Homepage invitations into the same official hotel collections. */
.hp-photographic-brands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 30px;margin-bottom:32px}
.hp-brand-card{display:block;min-width:0}.hp-brand-photo{aspect-ratio:4/3;overflow:hidden;background:#dce3dc;margin:0 0 23px}.hp-brand-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.hp-brand-card:hover img{transform:scale(1.025)}
.hp-brand-card-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.hp-brand-card-heading h3{font:400 clamp(1.9rem,2.6vw,2.6rem)/1.12 var(--serif);margin:0}.hp-brand-card-heading>span{font-size:1.1rem;color:#826c45}
.home-cinematic .hp-brand-card>p{font-size:.75rem;line-height:1.7;color:#53676c;margin:14px 0;max-width:36ch}.hp-brand-explore{display:inline-block;font-size:.8rem;border-bottom:1px solid #a78d60;padding:8px 0}.hp-brand-card:focus-visible{outline:2px solid #967541;outline-offset:7px}
@media(max-width:1000px){.hp-photographic-brands{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 24px}}
@media(max-width:600px){.hp-photographic-brands{grid-template-columns:1fr;gap:35px}.hp-brand-photo{aspect-ratio:16/10;margin-bottom:20px}.hp-brand-card-heading h3{font-size:2.3rem}.home-cinematic .hp-brand-card>p{max-width:none;margin-bottom:7px}}
@media(prefers-reduced-motion:reduce){.hp-brand-photo img{transition:none}.hp-brand-card:hover img{transform:none}}

/* Consistent, factual comparisons across every published hotel. */
.bc-comparison{margin:22px 0 28px;border-top:1px solid #d5d9cf}.bc-comparison>div{padding:15px 0;border-bottom:1px solid #d5d9cf}.bc-comparison dt{font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:#806b44;margin-bottom:6px}.bc-comparison dd{margin:0;font-size:.85rem;line-height:1.7;color:#40575f}.farr-service-contact{display:flex;gap:12px 25px;flex-wrap:wrap;margin-top:22px}.farr-service-contact a{font-size:.8rem;border-bottom:1px solid #a78d60;padding-bottom:7px}

.florida-invitation{padding:38px 9%;background:#102c38;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:30px}.florida-invitation h2{font:400 2.8rem/1.1 var(--serif);margin:10px 0}.florida-invitation p{font-size:.9rem;line-height:1.7}.florida-invitation .eyebrow{color:#d4bb88}.florida-invitation>a{font-size:.85rem;border-bottom:1px solid #c2a268;padding:12px 0;white-space:nowrap}.additional-collections{padding:70px 9%;background:#faf9f6}.additional-collections>h2{font:400 3rem/1.15 var(--serif)}.additional-collections>p{max-width:650px;line-height:1.8}.additional-brand-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:25px;margin-top:35px}.additional-brand-grid>a{border-top:1px solid #b9bdb3;padding:25px 0}.additional-brand-grid h3{font:400 2rem/1.2 var(--serif);margin:0 0 12px}.additional-brand-grid p{font-size:.9rem;line-height:1.7}.additional-brand-grid span{font-size:.8rem;color:#806b44}.florida-opening{background:#e9ede6!important}.wider-selection{border-top:1px solid #d5d9cf}@media(max-width:700px){.florida-invitation{align-items:start;flex-direction:column;padding:35px 7%;gap:12px}.additional-brand-grid{grid-template-columns:1fr}.additional-collections{padding:50px 7%}}

.florida-photo{margin:0;background:#e9ede6}.florida-photo img{width:100%;max-height:620px;object-fit:cover;display:block}.florida-photo figcaption{padding:16px 9%;font-size:.75rem;line-height:1.7;color:#52636a}@media(max-width:600px){.florida-photo img{height:280px}.florida-photo figcaption{padding:14px 7%}}

.florida-detail-photo{padding:45px 9%;display:grid;grid-template-columns:minmax(0,415px) 1fr;gap:40px;align-items:center}.florida-detail-photo img{max-height:540px;object-fit:contain}.florida-detail-photo figcaption{padding:0;max-width:35ch;font:400 1.7rem/1.5 var(--serif)}@media(max-width:600px){.florida-detail-photo{grid-template-columns:1fr;gap:20px}.florida-detail-photo img{height:auto}.florida-detail-photo figcaption{font-size:1.3rem}}
/* The Florida introduction has a light background, unlike photographic heroes. */
.fx-hero.florida-opening{color:#102c38}
.fx-hero.florida-opening h1,.fx-hero.florida-opening h1 em,.fx-hero.florida-opening .hg-actions>a:not(.button){color:#102c38}
.fx-hero.florida-opening>p:not(.eyebrow){color:#40575f}
.fx-hero.florida-opening .eyebrow,.fx-hero.florida-opening .eyebrow a{color:#776039}
/* Shared hotel framework: concise overview, comparable rooms and optional detail. */
.hg-gallery-jump{display:inline-block;margin-top:24px;font-size:.8rem;border-bottom:1px solid #c2a268;padding-bottom:7px}.hg-at-a-glance{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:35px;padding:35px 9%;background:#eeece4}.hg-at-a-glance span{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:#776039}.hg-at-a-glance p{font-size:.9rem;line-height:1.7;margin:10px 0 0}.hotel-framework .hg-nav{gap:20px}.hotel-framework .hg-nav>div{gap:20px}.hg-section-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;align-items:center;margin-bottom:35px}.hg-section-intro h2{margin-bottom:0}.hg-room-section{background:#eef0e9}.hg-room-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}.hg-room-grid article{border-top:1px solid #b6c3b5;padding:26px 0}.hg-room-grid h3{font-size:2rem;line-height:1.15;margin:15px 0}.hg-room-grid p{font-size:.9rem;line-height:1.8}.hg-room-note{font-size:.8rem!important;max-width:750px}.hg-inline-enquiry{font-size:.85rem;display:inline-block;border-bottom:1px solid #a78d60;padding:12px 0}.hg-life article{scroll-margin-top:30px}.hg-gallery-section{background:#f0ede6}.hg-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.hg-gallery-photo{margin:0;aspect-ratio:4/3;overflow:hidden}.hg-gallery-photo img{height:100%;width:100%;object-fit:cover;display:block}.hg-gallery-item>span{display:flex;justify-content:space-between;gap:20px;font-size:.75rem;line-height:1.7;padding:15px 0}.hg-gallery-item b{color:#806b44}.hg-questions{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.hg-questions details{border-top:1px solid #bec8bd;padding:22px 0}.hg-questions summary{cursor:pointer;font-size:1rem;line-height:1.7}.hg-questions details p{font-size:.9rem}.hg-gallery-item:focus-visible,.hg-questions summary:focus-visible{outline:2px solid #a78d60;outline-offset:5px}.hg-lightbox{padding:24px;background:#102c38;color:#fff;border:0;width:min(1100px,94vw);max-height:94dvh}.hg-lightbox::backdrop{background:#061923e8}.hg-lightbox figure{margin:20px 0}.hg-lightbox img{display:block;max-height:65dvh;max-width:100%;margin:auto;object-fit:contain}.hg-lightbox figcaption{font-size:.85rem;line-height:1.6;padding:18px 0 0}.hg-lightbox button{background:transparent;color:white;border:1px solid #b69c70;padding:12px 18px;min-height:44px;cursor:pointer}.hg-lightbox-close{display:block;margin-left:auto}.hg-lightbox-controls{display:flex;justify-content:space-between;align-items:center;gap:15px}.hg-lightbox-controls span{font-size:.8rem}@media(max-width:700px){.hg-at-a-glance{grid-template-columns:1fr;padding:30px 7%;gap:20px}.hg-at-a-glance>div+div{border-top:1px solid #c4cbbf;padding-top:18px}.hg-section-intro,.hg-questions{grid-template-columns:1fr;gap:20px}.hg-room-grid{grid-template-columns:1fr;gap:5px}.hg-room-grid article{padding:22px 0}.hg-photo-grid{grid-template-columns:1fr;gap:22px}.hg-lightbox{padding:16px}.hg-lightbox button{padding:10px 13px}.hotel-framework .hg-nav>div{gap:8px 20px}}
.hg-room-fit{margin-top:20px;padding-top:18px;border-top:1px solid #d5ddcf}.hg-room-fit>span{display:block;font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;color:#776039;margin-bottom:8px}
