:root{--bg: #ececec;--dark: #333333;--text: #555555;--text-strong: #444444;--white: #ffffff;--font-display: "Cormorant Garamond", "Times New Roman", Georgia, serif;--font-sans: "Poppins", "Century Gothic", "Segoe UI", system-ui, sans-serif;--gutter: 15px;--gallery-max: 960px;--quote-max: 760px;--card-max: 655px;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-weight:300;line-height:1.6;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero{position:relative;display:flex;align-items:center;justify-content:center;height:clamp(180px,max(30vh,19.3vw),380px);overflow:hidden;background:var(--dark)}.hero__image,.hero__overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.hero__image{object-fit:cover;object-position:center 35%}.hero__overlay{background:radial-gradient(ellipse 75% 65% at 50% 50%,#0000008c,#0000 72%),linear-gradient(180deg,#0003,#00000057)}.hero__content{position:relative;padding:0 var(--gutter);text-align:center;color:var(--white)}.hero__title{margin:0;font-family:var(--font-display);font-size:clamp(2.4rem,13vw,4rem);font-weight:400;line-height:1.05;letter-spacing:.02em;text-transform:uppercase;text-shadow:0 1px 3px rgba(0,0,0,.55),0 4px 26px rgba(0,0,0,.5)}.hero__tagline{margin:.35em 0 0;font-family:var(--font-display);font-size:clamp(.95rem,4.6vw,1.4rem);font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-shadow:0 1px 3px rgba(0,0,0,.8),0 2px 16px rgba(0,0,0,.65)}.page{padding:0 var(--gutter)}.page__actions{display:flex;justify-content:center;padding:3rem 0 2.5rem}.book-button{display:inline-block;max-width:100%;padding:.85em 2.1em;border:1px solid var(--dark);background:var(--dark);color:var(--white);font-family:var(--font-sans);font-size:.95rem;font-weight:500;letter-spacing:.08em;word-spacing:.22em;line-height:1.3;text-align:center;text-transform:uppercase;text-decoration:none;transition:background-color .2s ease,color .2s ease}.book-button:hover,.book-button:focus-visible{background:transparent;color:var(--dark)}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-width:var(--gallery-max);margin:0 auto}.gallery__item{margin:0}.gallery__image{width:100%;aspect-ratio:5 / 6;object-fit:cover;border-radius:4px;box-shadow:0 2px 10px #00000024}.testimonial{max-width:var(--quote-max);margin:0 auto;padding:2.5rem 0 3.5rem;color:var(--text);font-size:1rem;font-style:italic;line-height:1.65;text-align:center}.testimonial strong{color:var(--text-strong);font-weight:600}.about{max-width:var(--card-max);margin:1rem auto 0;background:var(--white);border-radius:4px;box-shadow:0 2px 14px #0000001a;overflow:hidden}.about__media{padding:2rem 2rem 0}.about__image{width:100%;aspect-ratio:1 / 1;object-fit:cover;object-position:center 30%}.about__body{padding:1.5rem 2rem 2.5rem}.about__heading{margin:0 0 1.2rem;color:var(--text);font-size:1.35rem;font-weight:300;line-height:1.3}.about__text{margin:0;font-size:1rem;font-style:italic;line-height:1.6;white-space:pre-line}.about__text strong{font-weight:600;font-style:italic}.instagram{display:flex;flex-direction:column;align-items:center;gap:1.75rem;padding:4rem 0 4.5rem;text-align:center}.instagram__icon{display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:var(--dark);color:var(--white);text-decoration:none;transition:transform .2s ease}.instagram__icon:hover,.instagram__icon:focus-visible{transform:scale(1.05)}.instagram__glyph{width:44px;height:44px}.instagram__heading{margin:0;color:var(--text);font-size:1.4rem;font-weight:300;line-height:1.35}.footer{padding:3rem var(--gutter) 3.5rem;background:var(--dark);color:var(--white);text-align:center}.footer__columns{display:flex;flex-direction:column;gap:2.25rem;max-width:1000px;margin:0 auto}.footer__column{display:flex;flex-direction:column;align-items:center;gap:.35rem}.footer__icon{width:26px;height:26px;margin-bottom:.4rem;color:var(--white)}.footer__label{margin:0;font-size:.95rem;font-weight:600;line-height:1.5}.footer__value{margin:0;font-size:.95rem;font-weight:300;line-height:1.5}.footer__hours{margin:0}.footer__hours-row+.footer__hours-row{margin-top:.35rem}.footer__link{font-size:.95rem;font-weight:300;text-decoration:none}.footer__link:hover,.footer__link:focus-visible{text-decoration:underline}.footer__address-line{display:block}.footer__instagram{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-top:2.5rem;text-decoration:none}.footer__instagram-badge{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--white);color:var(--dark)}.footer__instagram-glyph{width:34px;height:34px}.footer__instagram-text{font-size:1.2rem;font-weight:300}@media(min-width:768px){:root{--gutter: 24px}.hero__title{font-size:clamp(3.4rem,6.2vw,7.5rem)}.hero__tagline{font-size:clamp(1.05rem,1.5vw,1.85rem)}.page__actions{padding:4.5rem 0 3.5rem}.book-button{padding:1em 2.6em;font-size:.85rem}.gallery{grid-template-columns:repeat(4,1fr);gap:5px}.testimonial{padding:3.5rem 0 4.5rem;font-size:1.05rem}.about{display:flex;align-items:stretch;margin-top:2rem}.about__media{flex:0 0 196px;padding:0}.about__image{height:100%;aspect-ratio:auto}.about__body{flex:1;padding:1.75rem 2rem}.about__heading{margin-bottom:1rem;font-size:1.5rem}.about__text{font-size:.875rem}.instagram{display:grid;grid-template-areas:"heading heading" "icon    actions";grid-template-columns:auto auto;justify-content:center;align-items:center;column-gap:2.5rem;row-gap:3.5rem;padding:6rem 0 6.5rem}.instagram__heading{grid-area:heading;font-size:1.75rem}.instagram__icon{grid-area:icon;width:64px;height:64px}.instagram__glyph{width:34px;height:34px}.instagram__actions{grid-area:actions}.footer{padding:3.5rem var(--gutter) 3rem}.footer__columns{flex-direction:row;align-items:start;justify-content:center;gap:clamp(2rem,8vw,7rem)}.footer__column{flex:0 1 260px}.footer__label,.footer__value,.footer__link{font-size:.8rem}.footer__icon{width:22px;height:22px}.footer__instagram{flex-direction:row;justify-content:center;gap:1rem;margin-top:3rem}.footer__instagram-badge{width:44px;height:44px}.footer__instagram-glyph{width:24px;height:24px}.footer__instagram-text{font-size:1.05rem}}@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important}}
