.home-pillars{background:var(--paper)}.section-heading-note{max-width:310px;color:#745f65;font-size:.9rem;line-height:1.7}.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pillar-card{min-height:390px;padding:34px;background:#f5e9e3;border-radius:48% 14px 48% 14px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .35s,box-shadow .35s}.pillar-card:nth-child(2){border-radius:14px 48% 14px 48%}.pillar-card:nth-child(3){border-radius:50%}.pillar-card:hover{transform:translateY(-10px);box-shadow:0 22px 40px #3215221c}.pillar-card-dark{background:var(--wine);color:#fff}.pillar-card-dark .eyebrow,.pillar-card-dark p:not(.eyebrow){color:#f5d8d0}.pillar-icon{width:48px;height:48px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:1.25rem;margin-bottom:auto}.pillar-card h3{font-size:2.5rem;margin:24px 0 12px}.pillar-card>p:not(.eyebrow){font-size:.82rem;line-height:1.7;color:#745f65;max-width:270px}.pillar-card .text-link{margin-top:18px}.trend-section{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(40px,10vw,150px);background:#f3e6df}.trend-copy h2{font-size:clamp(3.5rem,7vw,7rem);margin-bottom:24px}.trend-copy>p:not(.eyebrow){max-width:360px;color:#745f65;margin-bottom:28px}.trend-list{border-top:1px solid #cdb9ae}.trend-list article{display:grid;grid-template-columns:50px 1fr 35px;align-items:center;gap:18px;padding:24px 0;border-bottom:1px solid #cdb9ae}.trend-mark{font:700 .65rem var(--sans);color:var(--wine);letter-spacing:.12em}.trend-list h3{font-size:1.45rem;letter-spacing:-.03em}.trend-list p{font-size:.78rem;color:#745f65;margin:5px 0 0}.trend-arrow{font-size:1.2rem;color:var(--wine)}.studio-note{display:grid;grid-template-columns:.65fr 1.35fr;align-items:center;gap:clamp(40px,10vw,150px);background:var(--cream)}.studio-note-shape{width:min(30vw,320px);height:min(30vw,320px);min-width:220px;min-height:220px;border-radius:52% 48% 45% 55%;background:radial-gradient(circle at 35% 30%,#e9b7a6,#711a38 65%,#321522);display:grid;place-items:center;transform:rotate(-12deg);box-shadow:20px 25px 50px #32152225}.studio-note-shape span{font:clamp(4rem,8vw,7rem) var(--serif);color:#f8e5dc;transform:rotate(12deg)}.studio-note h2{font-size:clamp(2.8rem,5vw,5.5rem);margin-bottom:25px}.studio-note>div:last-child>p:not(.eyebrow){max-width:600px;color:#745f65;line-height:1.8}.studio-details{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center;margin-top:30px;font-size:.75rem;color:var(--wine)}.studio-details span{font-size:1.3rem}.studio-details strong{margin-right:20px}.location-section{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(35px,7vw,100px);align-items:center;background:var(--paper)}.location-heading h2{font-size:clamp(3rem,5vw,5rem);margin-bottom:20px}.location-heading>p:not(.eyebrow){color:#745f65;max-width:300px;margin-bottom:24px}.map-frame{height:390px;position:relative;padding:10px;background:#f2d8d0;border-radius:18px 48% 18px 48%;box-shadow:0 24px 45px #3215221c}.map-frame iframe{width:100%;height:100%;border:0;border-radius:12px 44% 12px 44%;filter:saturate(.72) sepia(.12)}.map-pin{position:absolute;z-index:2;top:24px;right:28px;width:58px;height:58px;border-radius:50% 50% 50% 8%;transform:rotate(-45deg);background:var(--wine);color:#f6d8ce;display:grid;place-items:center;box-shadow:0 8px 18px #32152244}.map-pin span{font:700 .5rem var(--sans);transform:rotate(45deg);position:absolute;top:22px;color:#fff}.map-pin{font-size:1.1rem}
@media(max-width:760px){.section-heading{display:block}.section-heading-note{margin-top:20px}.pillar-grid,.trend-section,.studio-note,.location-section{grid-template-columns:1fr}.pillar-card{min-height:330px}.studio-note-shape{width:220px;height:220px}.map-frame{height:320px}.trend-list{margin-top:20px}}/* Bubble cards keep their copy centered and wrap fluidly with the viewport. */
.pillar-grid{grid-template-columns:repeat(auto-fit,minmax(235px,1fr));align-items:stretch}
.pillar-card{align-items:center;text-align:center}
.pillar-card>p:not(.eyebrow){margin-left:auto;margin-right:auto}
.pillar-card .eyebrow{margin-left:auto;margin-right:auto}
.pillar-card .text-link{margin-left:auto;margin-right:auto}
@media(max-width:520px){.pillar-grid{grid-template-columns:1fr}.pillar-card{min-height:300px;padding:30px 24px}}
/* Give the location map more presence while keeping its decoration restrained. */
.location-section{grid-template-columns:.58fr 1.42fr}
.map-frame{height:450px;border-radius:14px 26px 14px 26px}
.map-frame iframe{border-radius:10px 22px 10px 22px}
@media(max-width:760px){.location-section{grid-template-columns:1fr}.map-frame{height:360px;border-radius:12px 20px 12px 20px}.map-frame iframe{border-radius:9px 16px 9px 16px}}
.hero-content h1{font-size:clamp(3.6rem,7vw,7.2rem)!important;line-height:.88!important}.hero-lead{font-size:.92rem!important;line-height:1.55!important;max-width:390px!important}.actions{gap:20px!important}

/* Home-page closing call to action. */
.home-pillars + .trend-section + .studio-note + .location-section + .booking-banner,
.location-section + .booking-banner{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:28px!important;
  text-align:center!important;
}
.location-section + .booking-banner > div{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
}
.location-section + .booking-banner > div > p:not(.eyebrow){max-width:520px!important}
.location-section + .booking-banner .button{
  min-width:245px!important;
  justify-content:center!important;
  padding:17px 28px!important;
  font-size:.88rem!important;
}
/* GB Florida story and outer-edge scroll reveals. */
.florida-presence{display:grid;grid-template-columns:1.05fr .75fr;gap:clamp(42px,11vw,170px);align-items:end;background:linear-gradient(115deg,#f4e5dd 0 58%,#e4a58f 58%);overflow:hidden}.florida-presence h2{font-size:clamp(3.2rem,6.1vw,7rem)}.florida-presence h2 em{color:var(--wine)}.florida-presence-story{max-width:470px;padding-bottom:8px}.florida-presence-story>p:first-child{margin:0 0 26px;color:#60484e;font-size:1rem;line-height:1.85}.florida-terms{color:var(--wine);font-size:.67rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.florida-terms span{color:#c06d56;padding:0 8px}.reveal-left{transform:translateX(-11vw)!important}.reveal-right{transform:translateX(11vw)!important}.js .reveal-left.is-visible,.js .reveal-right.is-visible{transform:translateX(0)!important}@media(max-width:760px){.florida-presence{grid-template-columns:1fr;gap:34px;background:linear-gradient(155deg,#f4e5dd 0 70%,#e4a58f 70%)}.florida-presence h2{font-size:clamp(3.1rem,14vw,5.3rem)}.florida-presence-story>p:first-child{font-size:.93rem}}

/* A contained pause between the hero and the Florida story. */
.florida-presence{
  width:min( calc(100% - clamp(32px,8vw,180px)), 1360px);
  margin:clamp(44px,7vw,104px) auto clamp(58px,8vw,130px);
  border-radius:28px 72px 28px 72px;
}
@media(max-width:760px){
  .florida-presence{
    width:calc(100% - 32px);
    margin:32px auto 52px;
    border-radius:20px 38px 20px 38px;
  }
}

/* Every Home-page text block enters from beyond the page edge as it scrolls into view. */
.js .home-hero~section .scroll-reveal-text.scroll-pending{
  opacity:0;
  transition:opacity .82s cubic-bezier(.2,.75,.2,1),transform .82s cubic-bezier(.2,.75,.2,1);
}
.js .home-hero~section .scroll-reveal-text.scroll-pending.from-left{transform:translateX(-12vw)}
.js .home-hero~section .scroll-reveal-text.scroll-pending.from-right{transform:translateX(12vw)}
.js .home-hero~section .scroll-reveal-text.is-visible{opacity:1;transform:translateX(0)}
@media(prefers-reduced-motion:reduce){
  .js .home-hero~section .scroll-reveal-text{opacity:1!important;transform:none!important;transition:none!important}
}
/* A reveal offset may never survive without its active pending state. */
.reveal-left:not(.scroll-pending),.reveal-right:not(.scroll-pending){transform:none!important}
