:root{--bg: #e7eee8;--bg-soft: #f4f7f3;--paper: #fbfaf6;--ink: #1e2b24;--muted: #5c6d63;--pine: #2f4538;--pine-deep: #24352b;--honey: #c4894a;--honey-deep: #a56f35;--line: #c3d0c7;--shadow: 0 18px 50px rgba(36, 53, 43, .12);--radius: 1.25rem;--font-display: "Petrona", Georgia, serif;--font-body: "Nunito", system-ui, sans-serif;--max: 70rem;--header-h: 4.25rem}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,#dfe8df 0%,transparent 55%),radial-gradient(900px 500px at 100% 0%,#e4ddd0 0%,transparent 45%),var(--bg);line-height:1.55;min-height:100vh}img{max-width:100%;display:block}a{color:var(--pine);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{color:var(--honey-deep)}.site-header{position:sticky;top:0;z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:color-mix(in srgb,var(--bg-soft) 86%,transparent);border-bottom:1px solid color-mix(in srgb,var(--line) 70%,transparent)}.site-header__inner{max-width:var(--max);margin:0 auto;padding:.85rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--header-h)}.brand{font-family:var(--font-display);font-weight:700;font-size:1.55rem;letter-spacing:.01em;color:var(--pine-deep);text-decoration:none;line-height:1.1}.brand span{display:block;font-family:var(--font-body);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-top:.15rem}.nav-toggle{display:none;border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:.45rem .9rem;font:inherit;font-weight:700;color:var(--pine);cursor:pointer}.site-nav{display:flex;flex-wrap:wrap;gap:.35rem 1rem;align-items:center}.site-nav a{text-decoration:none;color:var(--muted);font-weight:700;font-size:.95rem;position:relative}.site-nav a:after{content:"";position:absolute;left:0;bottom:-.2rem;width:100%;height:2px;background:var(--honey);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--pine-deep)}.site-nav a:hover:after,.site-nav a[aria-current=page]:after{transform:scaleX(1)}main{display:block}.bandeau{max-width:var(--max);margin:.75rem auto 0;padding:0 1.25rem;animation:rise-in .55s ease both}.bandeau__image{display:block;width:100%;height:auto;border-radius:1rem;box-shadow:var(--shadow);background:#dfe6df}.intro{max-width:var(--max);margin:0 auto;padding:2.25rem 1.25rem .5rem;animation:rise-in .7s ease both}.intro__grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:1.75rem 2rem;align-items:center}.intro__inner{max-width:38rem}.intro__brand{font-family:var(--font-display);font-size:clamp(2.6rem,6vw,3.8rem);font-weight:700;line-height:1;margin:0 0 .75rem;color:var(--pine-deep);letter-spacing:-.02em}.intro__lead{margin:0 0 1rem;color:var(--muted);font-size:1.12rem}.intro__phone{margin:0 0 1.35rem;font-size:1.15rem;font-weight:700;color:var(--pine-deep)}.intro__phone a{color:inherit;text-decoration:none}.intro__phone a:hover{color:var(--honey-deep);text-decoration:underline}.intro__actions{display:flex;flex-wrap:wrap;gap:.75rem}.intro__wordart{display:grid;justify-items:center;width:min(100%,24rem);justify-self:center}.intro__wordart-canvas,.intro__wordart .wordart{width:min(100%,24rem);height:26rem;background:transparent!important}.intro__wordart--pair{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:1rem;justify-content:center;width:100%;max-width:50rem}.intro__wordart--pair .intro__wordart-canvas{flex:1 1 0;min-width:0;width:auto;height:auto}.intro__wordart--pair canvas,.intro__wordart--pair svg{width:100%!important;height:auto!important}.intro__wordart canvas,.intro__wordart svg{background:transparent!important}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:999px;padding:.8rem 1.25rem;font-weight:700;text-decoration:none;border:1px solid transparent;transition:transform .2s ease,background .2s ease,color .2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--honey);color:#1f1a14}.btn-primary:hover{background:#d39a5a;color:#1f1a14}.btn-soft{background:var(--paper);border-color:var(--line);color:var(--pine-deep)}.btn-soft:hover{background:#fff;color:var(--pine-deep)}.btn-solid{background:var(--pine);color:#fff}.btn-solid:hover{background:var(--pine-deep);color:#fff}.contact-block a{font-weight:700}.contact-phone,.contact-phone a{font-size:1rem;font-weight:600;color:var(--muted)}.contact-phone a:hover{color:var(--pine)}.section{max-width:var(--max);margin:0 auto;padding:4rem 1.25rem}.section--narrow{max-width:48rem}.section--flush-top{padding-top:1rem}.section__title{font-family:var(--font-display);font-size:clamp(2rem,4vw,2.75rem);line-height:1.15;margin:0 0 .75rem;color:var(--pine-deep)}.section__intro{margin:0 0 2rem;color:var(--muted);font-size:1.08rem;max-width:38rem}.prose p,.prose li{color:var(--ink)}.prose p{margin:0 0 1rem}.prose h2,.prose h3{font-family:var(--font-display);color:var(--pine-deep);margin:2rem 0 .75rem}.prose ul{padding-left:1.2rem}.hours-grid{display:grid;gap:1rem}.hours-row{display:grid;grid-template-columns:11rem 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.hours-row strong{font-family:var(--font-display);font-size:1.2rem;color:var(--pine-deep)}.hours-row span.open{color:var(--pine);font-weight:700}.hours-row span.closed{color:#9a5b5b;font-weight:700}.team-list{display:grid;gap:2rem}.team-group h2{font-family:var(--font-display);font-size:1.5rem;margin:0 0 1rem;color:var(--pine)}.people{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1.25rem}.person{text-align:center}.person img{width:8.5rem;height:8.5rem;object-fit:cover;border-radius:50%;margin:0 auto .75rem;border:3px solid #fff;box-shadow:var(--shadow)}.person strong{display:block;font-size:1.02rem}.person span{color:var(--muted);font-size:.92rem}.gallery{position:relative;background:var(--pine-deep);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:800 / 531;max-height:70vh}.gallery__slide{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .45s ease;pointer-events:none}.gallery__slide.is-active{opacity:1;pointer-events:auto}.gallery__slide img{width:100%;height:100%;object-fit:cover}.gallery__caption{position:absolute;left:1rem;bottom:1rem;background:color-mix(in srgb,var(--pine-deep) 72%,transparent);color:#fff;padding:.45rem .8rem;border-radius:999px;font-weight:700;font-size:.95rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.gallery__nav{position:absolute;inset:auto .75rem 50% .75rem;display:flex;justify-content:space-between;transform:translateY(50%);pointer-events:none}.gallery__nav button{pointer-events:auto;width:2.6rem;height:2.6rem;border-radius:50%;border:0;background:#ffffffe6;color:var(--pine-deep);font-size:1.2rem;cursor:pointer;box-shadow:0 6px 18px #0000002e}.gallery__thumbs{display:flex;gap:.5rem;overflow-x:auto;padding:.85rem 0 0;scrollbar-width:thin}.gallery__thumbs button{flex:0 0 auto;border:2px solid transparent;padding:0;border-radius:.55rem;overflow:hidden;cursor:pointer;background:none;opacity:.7}.gallery__thumbs button.is-active,.gallery__thumbs button:hover{opacity:1;border-color:var(--honey)}.gallery__thumbs img{width:4.5rem;height:3rem;object-fit:cover}.photo-teaser{position:relative;display:block;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:3 / 2;background:var(--pine-deep);text-decoration:none;isolation:isolate}.photo-teaser+.photo-teaser{margin-top:1.25rem}.photo-teaser__image{width:100%;height:100%;object-fit:contain;transition:transform .5s ease}.photo-teaser:hover .photo-teaser__image,.photo-teaser:focus-visible .photo-teaser__image{transform:scale(1.03)}.photo-teaser:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,color-mix(in srgb,var(--pine-deep) 90%,transparent) 0%,color-mix(in srgb,var(--pine-deep) 62%,transparent) 40%,transparent 78%)}.photo-teaser:focus-visible{outline:3px solid var(--honey);outline-offset:3px}.photo-teaser__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;flex-direction:column;justify-content:center;gap:.6rem;padding:2rem 2.25rem;max-width:26rem}.photo-teaser__title{font-family:var(--font-display);font-size:clamp(1.4rem,3vw,1.9rem);font-weight:700;color:#fff;margin:0}.photo-teaser__text{margin:0;color:#ffffffd9;font-size:.98rem}.photo-teaser__cta{margin-top:.35rem;width:fit-content}.map-embed{border:0;width:100%;min-height:22rem;border-radius:var(--radius);box-shadow:var(--shadow)}.contact-block{font-size:1.1rem}.site-footer{margin-top:2rem;background:var(--pine-deep);color:#ffffffdb;padding:2.5rem 1.25rem}.site-footer__inner{max-width:var(--max);margin:0 auto;display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;align-items:end}.site-footer a{color:#fff;text-decoration:none;font-weight:600}.site-footer a:hover{color:#f0c890}.site-footer nav{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.site-footer p{margin:0;color:#ffffffb3;font-size:.95rem}.site-footer__meta,.site-footer__meta a{font-size:.88rem;color:#ffffff8c;font-weight:500;text-decoration:none}.site-footer__meta a:hover{color:#fffc}.page-hero{padding:3rem 1.25rem 0;max-width:var(--max);margin:0 auto;animation:rise-in .65s ease both}.page-hero h1{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,3.2rem);margin:0 0 .5rem;color:var(--pine-deep)}.page-hero p{margin:0;color:var(--muted);max-width:36rem;font-size:1.08rem}@keyframes rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(max-width:820px){.nav-toggle{display:inline-flex}.site-nav{display:none;position:absolute;top:calc(100% - 1px);left:0;right:0;background:var(--bg-soft);border-bottom:1px solid var(--line);padding:1rem 1.25rem 1.25rem;flex-direction:column;align-items:stretch;gap:.85rem}.site-nav.is-open{display:flex;animation:rise-in .25s ease both}.hours-row{grid-template-columns:1fr;gap:.25rem}.intro__grid{grid-template-columns:1fr}.intro__wordart,.intro__wordart-canvas,.intro__wordart .wordart{width:min(100%,20rem);height:22rem}.intro__wordart--pair{width:100%;max-width:26rem;height:auto}.intro__wordart--pair .intro__wordart-canvas{width:auto;height:auto}.photo-teaser__overlay{max-width:100%;padding:1.5rem}}
