:root{--white:#ffffff;--text-bg-dark:#101014;--bg-mid:#d1b99f;--text-mid:#3d3d47;--text-light:#d0d1db;--bg-mid-2:#bba485;--bg-light:#fffbf7;--border-dark:#222222;--border-mid:#cfcfcf;--border-light:#e9e5df;--field-bg:#f2f2f2;--card-bg:#f9f7f3;--header-card:#e3dcd1;--fs-hero:clamp(2.25rem,5vw,3.5rem);--fs-h1:clamp(2rem,4vw,3.625rem);--fs-h3:clamp(1.75rem,3.4vw,3.125rem);--fs-h4:clamp(1.5rem,2.8vw,2.625rem);--fs-intro:1.375rem;--fs-body-m:1.125rem;--fs-body-s:1rem;--fs-menu:1.125rem;--fs-button:1rem;--fs-button-sm:0.875rem;--fs-label:1rem;--container-pad:clamp(24px,4.5vw,110px)}*{box-sizing:border-box}html{scroll-behavior:smooth;font-size:clamp(16px,1.1111vw,26px)}body{margin:0;font-family:var(--font-body),Georgia,serif;font-size:var(--fs-body-m);line-height:1.5;color:var(--text-mid);background:var(--bg-light)}h1,h2,h3,h4{font-family:var(--font-display),"Times New Roman",serif;font-weight:400;line-height:1.1;margin:0 0 1rem;color:var(--text-bg-dark)}h3{font-size:var(--fs-h3)}p{margin:0 0 1rem}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}ul{list-style:none;margin:0;padding:0}button{font-family:inherit;cursor:pointer}.container{width:100%;padding:0 var(--container-pad)}@media (max-width:900px){.container{padding:0 24px}}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;box-sizing:border-box;height:3.25rem;min-width:13.5rem;padding:0 .5rem 0 1.5rem;border-radius:62.4375rem;font-family:var(--font-nav),sans-serif;font-size:var(--fs-button);font-weight:500;line-height:1;white-space:nowrap;border:1px solid transparent;transition:opacity .2s ease,transform .2s ease}.btn:hover{opacity:.85;transform:translateY(-2px)}.btn .icon{width:2.25rem;height:2.25rem;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:transform .25s ease}.btn:hover .icon{transform:translate(3px,-3px)}.btn-outline,.btn-primary{background:var(--bg-mid-2);color:var(--white)}.btn-outline .icon,.btn-primary .icon{background:var(--white);color:var(--bg-mid-2)}.btn-dark{background:var(--text-bg-dark);color:var(--white)}.btn-dark .icon{background:var(--white);color:var(--text-bg-dark)}.tag{display:inline-flex;align-items:center;box-sizing:border-box;height:3.25rem;padding:0 1.5rem;margin-bottom:1rem;border-radius:62.4375rem;background:#504d47;color:var(--white);font-family:var(--font-nav),sans-serif;font-style:normal;font-weight:500;font-size:1.125rem;line-height:1;white-space:nowrap}.site-header{background:var(--bg-mid-2);position:-webkit-sticky;position:sticky;top:0;z-index:100}.nav{justify-content:space-between;padding:1.25rem var(--container-pad);position:relative}.logo,.nav{display:flex;align-items:center}.logo img{height:2.5rem;width:auto}.nav-links{display:flex;gap:2.25rem}.nav-links a{font-family:var(--font-nav),sans-serif;font-size:var(--fs-menu);font-weight:500;line-height:1;color:var(--text-mid)}.nav-links a.active,.nav-links a:hover{color:var(--text-bg-dark)}.nav-toggle{display:none;background:none;border:none;padding:0;cursor:pointer;width:2.5rem;height:2.5rem;flex-direction:column;justify-content:center;gap:.4375rem}.nav-toggle-bar{display:block;width:100%;height:2px;background:var(--text-bg-dark)}.mobile-menu{display:none}@media (max-width:860px){.site-header{padding:1.875rem 1.875rem 1.25rem}.nav{background:var(--header-card);border-radius:.75rem;padding:1.5625rem 1.5rem 1.5625rem 1.25rem}.nav-toggle{display:flex;order:1}.nav .logo{order:2}.nav-links{display:none}.mobile-menu.open{display:block;position:fixed;inset:0;z-index:200;overflow-y:auto;overscroll-behavior:contain;background:rgba(150,150,150,.8);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.mobile-menu-bar{display:flex;align-items:center;justify-content:space-between;padding:2.0625rem 3.4375rem 2.5rem 2.125rem;background:linear-gradient(to bottom,var(--header-card) 0,var(--header-card) 78%,rgba(227,220,209,0) 100%)}.mobile-menu-close{display:flex;background:none;border:none;padding:0;cursor:pointer;color:var(--white)}.mobile-menu-links{display:flex;flex-direction:column;align-items:center;padding-bottom:2rem}.mobile-menu-links a{display:block;padding:0 1.5rem;font-family:var(--font-nav),sans-serif;font-size:1.375rem;font-weight:500;line-height:3.75rem;color:var(--text-mid)}.mobile-menu-links a:hover{color:var(--text-bg-dark)}}.hero{background:var(--bg-mid);padding:0}.hero-inner{display:grid;grid-template-columns:48% 1fr;grid-gap:4rem;gap:4rem;align-items:stretch;padding:0 var(--container-pad)}.hero-text{gap:1.875rem;padding:5.625rem 0 4rem}.hero-copy,.hero-text{display:flex;flex-direction:column}.hero-copy{gap:2.5rem;padding-right:6.25rem}.hero h1{font-size:var(--fs-hero);color:#000;opacity:.6}.hero p{font-size:var(--fs-intro);color:#000}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.hero-image{position:relative;overflow:hidden;min-height:32.5rem;margin:2.5rem 0 .75rem}.hero-image img,.hero-image video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:.25rem .25rem 0 0;display:block}@media (max-width:900px){.hero{background:var(--bg-mid-2);padding:0 1.875rem 1.875rem}.hero-inner{display:block;position:relative;overflow:hidden;isolation:isolate;padding:0;background:var(--text-bg-dark);border-radius:.75rem}.hero-image{position:absolute;inset:0;z-index:-1;min-height:0;margin:0}.hero-image video{border-radius:0}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,16,20,.55) 0,rgba(16,16,20,.72))}.hero-text{gap:1.25rem;padding:3rem 1.5rem 2rem}.hero-copy{gap:1.75rem;padding-right:0}.hero h1{color:var(--white);opacity:1;font-size:1.875rem;line-height:1.2}.hero p{color:var(--text-light);font-size:1rem;line-height:1.6}.hero p strong{color:var(--white)}.hero-actions{display:grid;width:max-content;max-width:100%;grid-gap:.875rem;gap:.875rem}.hero-actions .btn{background:rgba(42,42,46,.9);color:var(--white)}.hero-actions .btn .icon{background:var(--white);color:var(--text-bg-dark)}}section{padding:5rem 0}.section-light{background:var(--bg-light)}.section-tan{background:var(--bg-mid)}.section-head{text-align:center;margin-bottom:3rem}.section-head p{max-width:60ch;margin-left:auto;margin-right:auto}.home{--home-space:clamp(2.5rem,5vw,4rem)}.home>section{padding-top:var(--home-space);padding-bottom:var(--home-space)}.home>section.hero{padding-top:0;padding-bottom:0}@media (max-width:900px){.home>section.hero{padding-bottom:1.875rem}}.home .page-intro{padding-top:0}.home .locations-grid-wrap{padding-top:2.5rem;padding-bottom:0}.home .about-gallery{margin-top:3.5rem}.home .amenities-grid{margin-top:3rem}.home .hospital-list p:last-child,.home .section-head,.home>section .container>:last-child>p:last-child,.home>section .section-head>p:last-child{margin-bottom:0}.page-intro{padding-top:3.5rem}.page-intro h1{font-size:var(--fs-h3);margin-bottom:.75rem}.page-intro .intro-text{font-size:var(--fs-intro);color:var(--text-mid);margin:0}.locations{display:grid;grid-template-columns:1fr 1fr;grid-gap:4rem;gap:4rem;align-items:flex-start}.locations-grid-wrap{padding-top:6.25rem;padding-bottom:6.25rem}.locations-grid-wrap .locations-text{padding-top:3.0625rem}.stat-title{font-family:var(--font-body),serif;font-size:1.25rem;line-height:1.5;font-weight:700}.locations-text ol{list-style:decimal;padding-left:1.25rem;margin-bottom:1rem}.carousel{position:relative}.carousel,.locations>*{min-width:0}.carousel-track{display:flex;gap:.75rem;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:1rem;scrollbar-width:none}.carousel-track::-webkit-scrollbar{display:none}.carousel-slide{position:relative;scroll-snap-align:start;min-width:100%;height:30rem;border-radius:1rem;overflow:hidden}.carousel-slide img{object-fit:cover}.carousel-arrow{position:absolute;top:15rem;transform:translateY(-50%);width:2.25rem;height:2.25rem;border-radius:50%;border:none;background:rgba(16,16,20,.55);color:var(--white);display:flex;align-items:center;justify-content:center;z-index:2}.carousel-arrow svg{width:1rem;height:1rem}.carousel-arrow.prev{left:1rem}.carousel-arrow.next{right:1rem}.carousel-dots{display:flex;gap:.375rem;justify-content:center;margin-top:.875rem}.carousel-dots .dot{width:.375rem;height:.375rem;padding:0;border:none;border-radius:50%;background:var(--border-mid)}.carousel-dots .dot.active{background:var(--text-bg-dark)}.carousel-thumbs{display:flex;gap:.625rem;margin-top:.75rem;overflow-x:auto;justify-content:center}.carousel-thumb{position:relative;width:6.5rem;height:4.625rem;flex-shrink:0;border-radius:.375rem;overflow:hidden;padding:0;border:none;background:none;opacity:.6}.carousel-thumb img{object-fit:cover}.carousel-thumb.active{opacity:1;outline:2px solid var(--text-bg-dark)}@media (max-width:900px){.locations{grid-template-columns:1fr;gap:2.5rem}.locations-grid-wrap{padding-top:3.5rem;padding-bottom:3.5rem}.locations-grid-wrap .locations-text{padding-top:0}.carousel-slide{height:21.25rem}.carousel-arrow{top:10.625rem}.carousel-thumbs{justify-content:flex-start}}.stays-section{padding:0 0 1.25rem}.stays-grid{padding-top:5rem;display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:4rem;gap:4rem;align-items:end}.stays-grid h3{font-size:var(--fs-h3);margin:0}@media (max-width:900px){.stays-grid{grid-template-columns:1fr;gap:24px;padding-top:40px}}.contact-section{padding:3.75rem 0}.contact-wrap{padding:0 1.25rem}.contact-card{background:var(--text-bg-dark);border-radius:.625rem;padding:3.5rem}.contact-card h3{font-size:var(--fs-h3);color:var(--white);margin-bottom:1rem}.contact-card>p{color:var(--text-light);max-width:40rem;margin-bottom:2rem}.contact-details{margin:0 0 2rem}.contact-details>div{display:flex;gap:1rem;padding:.375rem 0}.contact-details dt{font-weight:700;color:var(--white);width:6.25rem;flex-shrink:0;margin:0}.contact-details dd{margin:0;color:var(--text-light)}.follow-label{color:var(--white);font-weight:600;margin-bottom:.75rem}.contact-social{display:flex;gap:1.25rem;margin:0 0 2.5rem}.contact-social a{color:var(--white);display:flex}.contact-social svg{width:1.375rem;height:1.375rem}.map-frame{width:100%;height:20rem;border:0;border-radius:.25rem}@media (max-width:900px){.contact-card{padding:32px 24px}}@media (max-width:480px){.contact-details>div{flex-direction:column;gap:2px}.contact-details dt{width:auto}}.site-footer{background:var(--text-bg-dark);color:var(--text-light);padding:2rem 0}.footer-wrap{padding:0 1.25rem}.footer-columns{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding-bottom:2rem;margin-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.12)}.footer-nav-list{display:flex;align-items:center;gap:3rem}.footer-nav-list a{font-size:1.125rem;color:var(--text-light)}.footer-nav-list a.active{color:var(--white);font-weight:700}.site-footer p{margin:0;font-size:var(--fs-body-s)}@media (max-width:600px){.footer-columns{flex-direction:row;align-items:flex-start}.footer-nav-list{flex-direction:column;align-items:flex-start;gap:.75rem}}.about-section{padding-top:2.5rem;padding-bottom:0}.about-grid{display:flex;flex-direction:column;gap:2.5rem}.about-grid>div:first-child{width:50%}.about-grid>div:nth-child(2) p{max-width:43.75rem}.about-grid strong{color:var(--text-bg-dark)}.about-gallery{overflow:hidden;margin-top:6.25rem}.about-gallery-track{display:flex;gap:.75rem;width:max-content;animation:about-gallery-scroll 32s linear infinite}.about-gallery-track img{width:25rem;height:20rem;object-fit:cover;border-radius:.25rem;flex-shrink:0}@keyframes about-gallery-scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.about-gallery-track{animation:none}}@media (max-width:900px){.about-grid>div:first-child{width:100%}.about-gallery-track img{width:16.25rem;height:12.5rem}}.about-page-intro{padding:3.5rem 0 0}.about-page-intro h1{font-size:var(--fs-h3);margin-bottom:1.5rem}.about-page-copy{max-width:none}.about-page-copy strong{color:var(--text-bg-dark)}.about-page-copy .btn{margin-top:.75rem}.about-image-band{padding:3.75rem 1.25rem 1.25rem}.about-image-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.75rem;gap:.75rem}.about-image-grid>div{position:relative;aspect-ratio:.87/1;border-radius:.25rem;overflow:hidden}.about-image-grid img{object-fit:cover}@media (max-width:700px){.about-image-grid{grid-template-columns:1fr}.about-image-grid>div{aspect-ratio:4/3}}.amenities-section{padding:6.25rem 0 2.5rem}.amenities-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:5rem 1.5rem;gap:5rem 1.5rem;text-align:center;margin-top:4rem}.amenity svg{width:3rem;height:3rem;margin:0 auto 1.5rem;display:block}.amenity{font-size:var(--fs-intro);line-height:1.3;font-weight:400;color:var(--text-bg-dark)}@media (max-width:700px){.amenities-grid{grid-template-columns:repeat(2,1fr);gap:3rem 1rem}.amenity{font-size:var(--fs-body-m)}}.hospitals{text-align:center}.hospitals .section-head{max-width:45rem;margin-left:auto;margin-right:auto}.hospital-list{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:2rem;gap:2rem;text-align:left;margin-top:2.5rem}.hospital-list h4{margin-bottom:.5rem}@media (max-width:900px){.hospital-list{grid-template-columns:1fr}}.inquiry-grid{display:flex;flex-direction:column;gap:2.5rem}.inquiry-grid>div{max-width:none}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.25rem;gap:1.25rem}.field{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1.25rem}.field label{font-family:var(--font-nav),sans-serif;font-size:.8125rem;line-height:1;font-weight:500;color:#6b6b75}.field input,.field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;min-width:0;height:3.25rem;margin:0;padding:0 1rem;border-radius:.5rem;border:none;background-color:var(--field-bg);font-family:inherit;font-size:1rem;line-height:1.25;color:var(--text-bg-dark);text-align:left}.field input:focus,.field select:focus{outline:2px solid var(--bg-mid-2);outline-offset:0}.field input::placeholder{color:#9a9aa3;opacity:1}.field select{padding-right:2.75rem;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%236b6b75' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:.75rem}.field select:has(option[value=""]:checked){color:#9a9aa3}.field select option{color:var(--text-bg-dark)}.datepicker{position:relative}.datepicker-trigger{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;height:3.25rem;padding:0 1rem;border:none;border-radius:.5rem;background:var(--field-bg);color:var(--text-bg-dark);cursor:pointer;font-family:inherit;font-size:1rem;line-height:1.25;text-align:left}.datepicker-trigger svg{color:#6b6b75;flex-shrink:0}.datepicker-trigger.is-empty span{color:#9a9aa3}.datepicker-trigger:focus-visible,.datepicker-trigger[aria-expanded=true]{outline:2px solid var(--bg-mid-2);outline-offset:0}.datepicker-pop{position:absolute;top:calc(100% + .5rem);left:0;z-index:50;width:20rem;max-width:calc(100vw - 3rem);padding:1rem;background:var(--white);border:1px solid var(--border-light);border-radius:.75rem;box-shadow:0 16px 40px rgba(16,16,20,.14);font-family:var(--font-nav),sans-serif;color:var(--text-bg-dark)}.datepicker-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.datepicker-title{font-size:.9375rem;font-weight:500}.datepicker-nav{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:50%;background:transparent;color:var(--text-bg-dark);cursor:pointer}.datepicker-nav:hover:not(:disabled){background:var(--field-bg)}.datepicker-nav:disabled{opacity:.3;cursor:default}.datepicker-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:.125rem;gap:.125rem}.datepicker-dow{text-align:center;font-size:.75rem;color:#8a8a95;padding:.25rem 0 .5rem}.datepicker-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;cursor:pointer;font-family:inherit;font-size:.875rem;color:var(--text-bg-dark)}.datepicker-day:hover:not(:disabled){background:var(--field-bg)}.datepicker-day:focus-visible{outline:2px solid var(--bg-mid-2);outline-offset:-2px}.datepicker-day.is-outside{color:#8a8a95}.datepicker-day.is-today{box-shadow:inset 0 0 0 1px var(--bg-mid-2)}.datepicker-day.is-selected,.datepicker-day.is-selected:hover{background:var(--text-bg-dark);color:var(--white);box-shadow:none}.datepicker-day:disabled{color:#d4d4da;cursor:default}.datepicker-foot{display:flex;justify-content:space-between;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-light)}.datepicker-foot button{border:none;background:none;padding:.25rem .5rem;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:500;color:var(--text-mid)}.datepicker-foot button:hover{color:var(--text-bg-dark);text-decoration:underline}@media (min-width:701px){.form-row>.field:last-child .datepicker-pop{left:auto;right:0}}.submit-btn{width:100%;padding:1rem;border-radius:62.4375rem;border:none;background:var(--text-bg-dark);color:var(--white);font-size:1rem;font-weight:600}.submit-btn:disabled{opacity:.6;cursor:default}.form-status{margin-top:1rem;font-size:var(--fs-body-s)}.form-status.ok{color:#2e7d4f}.form-status a{text-decoration:underline;font-weight:600}.form-status.err{color:#b3261e}@media (max-width:700px){.form-row{grid-template-columns:1fr;gap:0}}.contact-page-intro{padding:3.5rem 0 1.5rem}.contact-page-intro h1{font-size:var(--fs-h3)}.contact-page-intro p{max-width:none}.contact-form-section{padding:0}.contact-form-section form{max-width:none}.booking-section{padding:3rem 0 2.5rem}.booking-section h3{margin-bottom:1.25rem}.booking-section .avail{font-weight:700;color:var(--text-bg-dark);margin-bottom:.375rem}.check-list{margin:0 0 1.5rem}.check-list li{display:flex;gap:.625rem;color:var(--text-bg-dark)}.check-list li:before{content:"\2714";flex-shrink:0}.faq-page{padding:3rem 0 7.5rem}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:4rem;gap:4rem;align-items:start}.faq-intro-line{margin:0 0 .75rem}.faq-grid h1{font-size:var(--fs-h3);margin-bottom:1.75rem}.faq-list{display:flex;flex-direction:column;gap:.75rem}.faq-item{background:var(--card-bg);border:1px solid var(--border-light);border-radius:.5rem;padding:1rem 1.25rem}.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:none;border:none;padding:0;text-align:left;font-family:inherit;font-size:1.0625rem;line-height:1.4;color:var(--text-bg-dark)}.faq-q .plus{font-size:1.5rem;line-height:1;transition:transform .2s ease;color:var(--text-mid)}.faq-item.open .faq-q .plus{transform:rotate(45deg)}.faq-a{margin:.75rem 0 0;font-size:.9375rem;color:var(--text-mid)}@media (max-width:900px){.faq-grid{grid-template-columns:1fr;gap:40px}.faq-page{padding-bottom:64px}}.blog-page{padding:3.5rem 0 2.5rem}.blog-page h1{font-size:var(--fs-h3);margin-bottom:2rem}.post-list{display:flex;flex-direction:column;gap:1.25rem}.post-row{display:grid;grid-template-columns:13.125rem 1fr auto;grid-gap:1.5rem;gap:1.5rem;align-items:start}.post-thumb{position:relative;width:13.125rem;height:7.5rem;border-radius:.375rem;overflow:hidden;background:var(--border-light)}.post-thumb img{object-fit:cover}.post-row h2{font-family:var(--font-body),serif;font-size:1.125rem;font-weight:400;line-height:1.4;margin:0 0 .375rem;color:var(--text-bg-dark)}.post-row h2 a:hover{text-decoration:underline}.post-date{font-size:.75rem;color:#8a8a95}.post-cat,.post-date{font-family:var(--font-nav),sans-serif}.post-cat{font-size:.6875rem;color:#6b6b75;border:1px solid var(--border-light);background:var(--white);border-radius:.25rem;padding:.25rem .625rem;white-space:nowrap}@media (max-width:700px){.post-row{grid-template-columns:7.5rem 1fr}.post-thumb{width:7.5rem;height:4.5rem}.post-cat{grid-column:2;justify-self:start}}.post-page{padding:3.5rem 0 3.75rem}.post-page article{max-width:51.25rem}.post-page h1{font-size:var(--fs-h3);margin-bottom:.75rem}.post-hero{position:relative;width:100%;aspect-ratio:16/9;border-radius:.5rem;overflow:hidden;margin:1.5rem 0 2rem}.post-hero img{object-fit:cover}.post-body p{margin-bottom:1.2em}.post-back{display:inline-block;margin-top:2rem;font-family:var(--font-nav),sans-serif;font-size:.875rem}