@font-face{font-family:"GF Newsreader";src:url("assets/fonts/gf-newsreader.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap}@font-face{font-family:"GF Nunito";src:url("assets/fonts/gf-nunito.woff2") format("woff2");font-weight:200 1000;font-style:normal;font-display:swap}body.v-style{--v-heading:"GF Newsreader";--v-body:"GF Nunito";--v-radius:8px;--v-glow:#fbbf24}body.v-style{font-family:var(--v-body),"GPV Sans",sans-serif!important}body.v-style.v-style.v-style :is(p,li,label,input,select,textarea,button,.button,nav a):not(.v-accent-script){font-family:var(--v-body),"GPV Sans",sans-serif!important}body.v-style.v-style.v-style.v-style :is(h1,h2,h3,h4,h5,h6,.brand-text,.fv-brand-name,.footer-signature>a){font-family:var(--v-heading),"GPV Serif",serif!important;font-synthesis:weight style;word-spacing:normal!important}body.v-style :is(h1,h2,h3){line-height:1.2;overflow-wrap:break-word}body.v-style .v-patterned{position:relative;isolation:isolate}body.v-style .v-patterned> .v-pattern{position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;overflow:hidden;color:inherit;opacity:.065}body.v-style .v-pattern-0{background-image:radial-gradient(currentColor 1px,transparent 1px);background-size:19px 19px}body.v-style .v-pattern-1{background-image:linear-gradient(45deg,transparent 48%,currentColor 49%,currentColor 51%,transparent 52%);background-size:36px 36px}body.v-style .v-pattern-2{background-image:linear-gradient(currentColor 1px,transparent 1px),linear-gradient(90deg,currentColor 1px,transparent 1px);background-size:46px 46px}body.v-style .v-pattern-3{background-image:repeating-radial-gradient(ellipse at 0 0,transparent 0 25px,currentColor 26px 27px,transparent 28px 54px)}body.v-style .v-pattern-4{background-image:radial-gradient(circle at 50% 100%,transparent 34%,currentColor 35% 36%,transparent 37%);background-size:70px 40px}body.v-style .v-pattern-5{background-image:repeating-linear-gradient(135deg,transparent 0 60px,currentColor 61px 62px,transparent 63px 120px)}body.v-style :is(.offerings>article,.services-grid>article,.fitness-plan,.dental-service-grid>article,.hotel-room-grid>article,.booking-card,.op-wizard){border-radius:var(--v-radius);border:1px solid color-mix(in srgb,currentColor 22%,transparent);transition:box-shadow .25s ease,border-color .25s ease,translate .25s ease}body.v-style.v-border-1 :is(.offerings>article,.fitness-plan,.dental-service-grid>article,.hotel-room-grid>article){border-width:2px;border-bottom-width:5px}body.v-style.v-border-2 :is(.offerings>article,.fitness-plan,.dental-service-grid>article,.hotel-room-grid>article){outline:1px solid color-mix(in srgb,currentColor 17%,transparent);outline-offset:5px}body.v-style.v-border-3 :is(.offerings>article,.fitness-plan,.dental-service-grid>article,.hotel-room-grid>article){border-radius:var(--v-radius) 4px var(--v-radius) 4px}body.v-style .v-zoomable{cursor:zoom-in;transition:filter .3s ease,box-shadow .3s ease,scale .3s ease;transform-origin:center}body.v-style .v-zoomable:focus-visible{outline:3px solid var(--v-glow);outline-offset:5px}@media(hover:hover){body.v-style .v-zoomable:hover{filter:saturate(1.1) brightness(1.04);scale:1.018;box-shadow:0 0 0 2px var(--v-glow),0 0 24px color-mix(in srgb,var(--v-glow) 32%,transparent)}body.v-style :is(.offerings>article,.fitness-plan,.dental-service-grid>article,.hotel-room-grid>article):hover{border-color:var(--v-glow);box-shadow:0 10px 32px #14263e18,0 0 18px color-mix(in srgb,var(--v-glow) 22%,transparent)}body.v-style :is(.button,button):not([disabled]):hover{box-shadow:0 0 0 1px var(--v-glow),0 0 20px color-mix(in srgb,var(--v-glow) 30%,transparent)}}#v-image-viewer{padding:0;width:min(1120px,92vw);max-width:92vw;max-height:92dvh;border:2px solid var(--v-glow,#67e8f9);border-radius:24px;background:#0b1324;color:#f8fafc;overflow:hidden;box-shadow:0 0 0 5px #ffffff0b,0 0 32px color-mix(in srgb,var(--v-glow,#67e8f9) 65%,transparent),0 30px 100px #0009}#v-image-viewer[open]{animation:v-popup-in .22s ease-out}#v-image-viewer::backdrop{background:#020817dd;backdrop-filter:blur(8px)}#v-image-viewer .v-viewer-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid #ffffff28}#v-image-viewer .v-viewer-controls{display:flex;gap:8px;flex-wrap:wrap}#v-image-viewer button{font:600 14px var(--v-body),sans-serif;min-width:42px;min-height:42px;border:1px solid #ffffff42;border-radius:12px;padding:8px 12px;background:#19283e;color:#fff;cursor:pointer}#v-image-viewer button:focus-visible{outline:3px solid var(--v-glow,#67e8f9);outline-offset:2px}#v-image-viewer .v-viewer-stage{height:min(65dvh,760px);overflow:auto;display:block;text-align:center;padding:12px}#v-image-viewer .v-viewer-stage img{display:block;margin:auto;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}#v-image-viewer .v-viewer-stage.v-magnified img{max-width:none;max-height:none;width:calc(100% * var(--v-zoom));height:auto}#v-image-viewer .v-viewer-caption{margin:0;padding:12px 20px;font-size:14px;line-height:1.6;max-height:12dvh;overflow:auto;color:#d6e4f5}#v-image-viewer .v-viewer-count{font-size:13px;white-space:nowrap}@keyframes v-popup-in{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}@media(max-width:600px){#v-image-viewer{width:94vw;max-width:94vw;border-radius:18px}#v-image-viewer .v-viewer-bar{padding:10px;align-items:start;flex-wrap:wrap}#v-image-viewer .v-viewer-stage{height:58dvh}#v-image-viewer button{padding:8px;min-width:40px}body.v-style .v-pattern{opacity:.04}}@media(prefers-reduced-motion:reduce){body.v-style .v-zoomable,body.v-style :is(article,.button,button){transition:none!important}body.v-style .v-zoomable:hover{scale:1}#v-image-viewer[open]{animation:none}}body.v-style .v-zoom-hero{position:relative}body.v-style button.v-hero-open{position:absolute;right:16px;bottom:16px;z-index:15;width:44px;height:44px;min-width:44px;padding:0;border:1px solid #ffffff88;border-radius:50%;background:#14243ee6;color:#fff;display:grid;place-items:center;font:26px Arial;box-shadow:0 0 18px color-mix(in srgb,var(--v-glow) 30%,transparent);cursor:zoom-in}#v-image-viewer .v-viewer-stage{cursor:grab;touch-action:none;user-select:none;overscroll-behavior:contain;scroll-behavior:auto}#v-image-viewer .v-viewer-stage.v-dragging{cursor:grabbing}#v-image-viewer .v-viewer-stage img,#v-image-viewer .v-viewer-stage.v-magnified img{max-width:none;max-height:none;height:auto;cursor:inherit;user-select:none;-webkit-user-drag:none;transition:none}