/* Bring back the bold, sloping typography; its plane stays above the photograph. */
.depth-hero .hero-backtype{font-size:clamp(110px,11.5vw,184px);line-height:.83;transform:rotate(-4deg);transform-origin:left center;z-index:5}
.depth-hero .hero-photo{margin-top:60px;align-self:start}
.depth-hero .hero-foreground{z-index:4;padding-top:12px}
.depth-hero .hero-endline{font-size:clamp(34px,4.6vw,69px);transform:rotate(-4deg);transform-origin:left center;margin-bottom:33px;color:var(--pink)}
/* Compact continuous lettering, with a mid-century glint between each promise. */
.marquee-group{min-width:0;justify-content:flex-start;gap:0}
.marquee-group>span{gap:19px;padding-right:19px}
.marquee-group .marquee-star{width:25px;height:25px;flex-shrink:0;display:block;transform:rotate(12deg)}
/* A logo-sized social glyph, with a generous invisible tap target. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.header-socials,footer .social-buttons{display:flex;align-items:center;gap:3px;flex-shrink:0}
header .social-button,footer .social-button{display:inline-grid;place-items:center;width:44px;height:44px;padding:8px;border:0;border-radius:0;background:transparent;color:var(--navy);box-shadow:none;min-height:44px}
header .social-button svg,footer .social-button svg{width:27px;height:27px}
@media(hover:hover) and (pointer:fine){header .social-button:hover,footer .social-button:hover{background:transparent!important;color:#0D5274!important;transform:translateY(-2px);box-shadow:none!important}}
header .social-button:focus-visible,footer .social-button:focus-visible{outline:2px solid var(--navy)!important;outline-offset:1px;box-shadow:none!important}
/* Selecting a card changes the radio state. Only its separate CTA opens booking. */
.plans article{cursor:pointer;isolation:isolate;transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease}
.plan-card-hitarea{position:absolute;inset:0;z-index:1;cursor:pointer;border-radius:inherit}
.plans article .button{position:relative;z-index:2}
.plans article:not(.is-selected){background:var(--cream-light);color:var(--navy);border-color:#02426340;outline:0}
.plans article.is-selected{background:var(--navy);color:var(--cream-light);border-color:var(--navy);outline:2px solid var(--pink);outline-offset:4px}
.plans article.is-selected :is(.label,.price,.amount,.fineprint){color:var(--cream-light)}
.plans article:not(.is-selected) :is(.label,.price,.amount){color:var(--navy)}
.plans article:has(.plan-radio:focus-visible){outline:3px solid var(--navy);outline-offset:7px}
@media(hover:hover) and (pointer:fine){.plans article:not(.is-selected):hover{border-color:var(--navy);box-shadow:0 7px 18px -10px #02426355}}
@media(max-width:1100px) and (min-width:801px){header{gap:12px}header .header-socials{gap:0}header .social-button{width:36px;padding:5px}header .nav-cta{font-size:24px;min-width:160px;padding-right:67px}header .logo img{width:125px}header nav{gap:14px;font-size:20px}}
@media(max-width:800px){
 header{gap:8px}header .logo img{width:110px}header .header-socials{order:1;margin-left:auto;gap:0}header .social-button{width:36px;height:44px;padding:6px}header .social-button svg{width:24px;height:24px}header .menu-toggle{order:2;margin-left:6px;gap:6px}header nav{order:3}
 .depth-hero .hero-backtype{font-size:clamp(64px,20vw,155px);transform:rotate(-3deg);margin-top:6px;margin-bottom:6px}
 .depth-hero .hero-photo{margin-top:36px;align-self:center}
 .depth-hero .hero-foreground{padding-top:0}
 .depth-hero .hero-endline{font-size:clamp(24px,7.9vw,52px);transform:rotate(-3deg);margin-bottom:30px}
 .marquee-group>span{gap:15px;padding-right:15px}
 .marquee-group .marquee-star{width:22px;height:22px}
}
@media(prefers-reduced-motion:reduce){.plans article{transition:none}header .social-button:hover,footer .social-button:hover{transform:none}}
