@import "https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,500;0,600;1,500&family=Jost:wght@300;400;500;600&display=swap";*{box-sizing:border-box}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;margin:0;font-family:Jost,sans-serif;line-height:1.6}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}h1,h2,h3,h4{margin:0;font-family:Playfair Display,serif;font-weight:600}p{margin:0}.site{--bg:#cdeeff;--bg-panel:#b8e2f8;--text:#2e4152;--text-soft:#4c6478;--accent:#2e4152;--accent-deep:#33506d;--card-bg:#fff;--border:#2e41522e;--btn-text:#cdeeff;background:var(--bg);color:var(--text);overflow-x:hidden}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--accent);margin-bottom:.75rem;font-size:.75rem;font-weight:500}.btn{letter-spacing:.14em;text-transform:uppercase;border:1px solid #0000;border-radius:2px;padding:.85rem 2.1rem;font-size:.78rem;font-weight:500;transition:opacity .2s,transform .2s;display:inline-block}.btn:hover{opacity:.88}.btn--primary{background:var(--accent);color:var(--btn-text)}.navbar{background:var(--bg);justify-content:space-between;align-items:center;padding:1rem 4vw;display:flex}.navbar__brand img{object-fit:cover;border:1px solid var(--border);border-radius:50%;width:64px;height:64px}.navbar__links{letter-spacing:.1em;text-transform:uppercase;gap:2.25rem;font-size:.8rem;display:flex}.navbar__links a{border-bottom:1px solid #0000;padding-bottom:4px;transition:border-color .2s}.navbar__links a:hover{border-color:var(--accent)}@media (width<=780px){.navbar__links{display:none}}.hero{align-items:center;min-height:88vh;display:flex;position:relative;overflow:hidden}.hero__image{position:absolute;inset:0}.hero__image img{object-fit:cover;width:100%;height:100%}.hero__scrim{background:linear-gradient(100deg,#2e4152b8 0%,#2e41526b 42%,#2e41521f 70%);position:absolute;inset:0}.site[data-theme=blue] .hero__scrim{background:linear-gradient(100deg,#1e2f3ed1 0%,#1e2f3e8f 45%,#1e2f3e38 75%)}.hero__content{z-index:2;color:#faf6ef;max-width:640px;padding:0 4vw;position:relative}.hero__content .eyebrow{color:#cfe0ec}.hero__content h1{color:#fff;font-size:clamp(2.4rem,5.5vw,4rem);line-height:1.12}.hero__content h1 em{color:#cfe0ec;font-style:italic}.hero__subtitle{color:#eef2f4;margin-top:1.1rem;margin-bottom:2.2rem;font-family:Playfair Display,serif;font-size:1.15rem;font-style:italic}.welcome{text-align:center;max-width:760px;margin:0 auto;padding:7rem 6vw 5rem}.welcome h2{margin-bottom:1.4rem;font-size:clamp(1.7rem,3vw,2.4rem)}.welcome p:not(.eyebrow){color:var(--text-soft);font-size:1.05rem}.services,.about,.experience,.gallery{text-align:center;padding:5rem 6vw}.services h2,.about h2,.experience h2,.gallery h2{max-width:720px;margin:0 auto 3rem;font-size:clamp(1.7rem,3vw,2.4rem)}.services{background:var(--bg-panel)}.services__grid{grid-template-columns:repeat(3,1fr);gap:1.75rem;max-width:1080px;margin:0 auto;display:grid}.service-card{background:var(--card-bg);border:1px solid var(--border);text-align:left;border-radius:4px;padding:2.5rem 1.75rem}.service-card h3{color:var(--accent-deep);margin-bottom:.9rem;font-size:1.25rem}.service-card p{color:var(--text-soft);font-size:.96rem}@media (width<=860px){.services__grid{grid-template-columns:1fr}}.about__intro{max-width:700px;color:var(--text-soft);margin:0 auto 3.5rem;font-size:1.05rem}.about__subhead{margin-bottom:2rem;font-size:1.3rem}.owners{text-align:left;grid-template-columns:.85fr 1.15fr;gap:2.5rem;max-width:1080px;margin:0 auto;display:grid}.owner-card{background:var(--card-bg);border:1px solid var(--border);text-align:left;border-radius:4px;padding:2.25rem 2rem}.owner-card h4{margin-bottom:.35rem;font-size:1.3rem}.owner-card__role{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;font-size:.78rem}.owner-card p:not(.owner-card__role){color:var(--text-soft);font-size:.96rem}@media (width<=780px){.owners{grid-template-columns:1fr}}.experience__intro{max-width:720px;color:var(--text-soft);margin:0 auto 3rem;font-size:1.02rem}.experience__grid{grid-template-columns:repeat(3,1fr);gap:1.75rem;max-width:900px;margin:0 auto 3.5rem;display:grid}.pillar{border-top:1px solid var(--border);padding-top:1.4rem}.pillar h3{color:var(--accent-deep);margin-bottom:.6rem;font-size:1.15rem}.pillar p{color:var(--text-soft);font-size:.94rem}.experience__quote{max-width:620px;color:var(--accent-deep);margin:0 auto;font-family:Playfair Display,serif;font-size:1.35rem;font-style:italic}@media (width<=780px){.experience__grid{grid-template-columns:1fr;max-width:420px}}.gallery__grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;max-width:1100px;margin:0 auto;display:grid}.gallery__item{aspect-ratio:4/5;border-radius:4px;overflow:hidden}.gallery__item img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.gallery__item:hover img{transform:scale(1.06)}@media (width<=780px){.gallery__grid{grid-template-columns:1fr}}.footer{background:var(--bg-panel);text-align:center;flex-direction:column;align-items:center;gap:1.1rem;padding:4.5rem 6vw 3rem;display:flex}.footer__brand{font-family:Playfair Display,serif;font-size:1.4rem;font-style:italic}.footer__contact{color:var(--text-soft);align-items:center;gap:.6rem;font-size:.92rem;display:flex}.footer__divider{color:var(--border)}.footer__social{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);gap:1.5rem;font-size:.75rem;display:flex}.footer__fine-print{color:var(--text-soft);margin-top:1.5rem;font-size:.75rem}.experience{background:0 0}.about{background:var(--bg-panel)}.pricing,.vendors{text-align:center;padding:5rem 6vw}.pricing h2,.vendors h2{max-width:720px;margin:0 auto 3rem;font-size:clamp(1.7rem,3vw,2.4rem)}.vendors{background:var(--bg-panel)}.pricing__grid{grid-template-columns:repeat(3,1fr);gap:1.75rem;max-width:1080px;margin:0 auto;display:grid}.pricing-card{background:var(--card-bg);border:1px solid var(--border);text-align:left;border-radius:4px;padding:2.5rem 1.75rem}.pricing-card h3{color:var(--accent-deep);margin-bottom:.5rem;font-size:1.25rem}.pricing-card__price{color:var(--accent);margin-bottom:.9rem;font-family:Playfair Display,serif;font-size:1.1rem;font-style:italic}.pricing-card p:not(.pricing-card__price){color:var(--text-soft);font-size:.96rem}.vendors__grid{grid-template-columns:repeat(3,1fr);gap:1.75rem;max-width:1080px;margin:0 auto;display:grid}.vendor-card{background:var(--card-bg);border:1px solid var(--border);text-align:left;border-radius:4px;padding:2rem 1.5rem;transition:transform .2s;display:block}.vendor-card:hover{transform:translateY(-3px)}.vendor-card img{object-fit:cover;border-radius:3px;width:100%;height:160px;margin-bottom:1rem}.vendor-card h3{color:var(--accent-deep);margin-bottom:.3rem;font-size:1.1rem}.vendor-card__category{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-bottom:.7rem;font-size:.75rem}.vendor-card p:not(.vendor-card__category){color:var(--text-soft);font-size:.92rem}.empty-state{color:var(--text-soft);max-width:500px;margin:0 auto 2rem;font-style:italic}@media (width<=860px){.pricing__grid,.vendors__grid{grid-template-columns:1fr}}
