:root{--paper:#f7f2e8;--paper-2:#efe6d4;--ink:#2a2521;--ink-soft:#5d5446;--barn:#7a2b21;--barn-deep:#5d1f18;--ochre:#b3893c;--line:rgba(42, 37, 33, 0.14);--display:"Cormorant Garamond", Georgia, "Times New Roman", serif;--body:"EB Garamond", Georgia, "Times New Roman", serif;--wrap:1140px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1.18rem;line-height:1.72;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:var(--barn);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{font-family:var(--display);font-weight:500;line-height:1.08;color:var(--ink);margin:0 0 .4em;letter-spacing:.2px}.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 28px}.eyebrow{font-family:var(--body);text-transform:uppercase;letter-spacing:.22em;font-size:.8rem;font-weight:500;color:var(--barn);margin:0 0 .8rem}.eyebrow--light{color:var(--ochre)}.skip-link{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--paper);padding:10px 16px;z-index:999}.skip-link:focus{left:12px;top:12px}.site-header{position:sticky;top:0;z-index:50;background:rgba(247,242,232,.92);backdrop-filter:saturate(140%)blur(8px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:20px}.brand img{height:34px;width:auto}.site-nav ul{display:flex;gap:26px;list-style:none;margin:0;padding:0}.site-nav a{color:var(--ink);font-size:.98rem;letter-spacing:.04em;padding:6px 0;position:relative}.site-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1.5px;background:var(--barn);transition:right .25s ease}.site-nav a:hover{text-decoration:none}.site-nav a:hover::after{right:0}.nav-toggle,.nav-burger{display:none}.hero{position:relative;color:#f7efe2;isolation:isolate}.hero-media{position:absolute;inset:0;z-index:-2;background-color:#2a2521;background-position:50% 38%;background-size:cover;background-repeat:no-repeat}.hero-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(30,24,20,.28) 0%,rgba(30,24,20,.12) 42%,rgba(34,22,16,.62) 100%)}.hero-content{text-align:center;padding-top:clamp(90px,16vh,180px);padding-bottom:clamp(80px,14vh,150px);display:flex;flex-direction:column;align-items:center}.hero-emblem{width:76px;height:auto;margin-bottom:22px;opacity:.96;filter:drop-shadow(0 2px 10px rgba(0,0,0,.35))}.hero-eyebrow{text-transform:uppercase;letter-spacing:.32em;font-size:.82rem;margin:0 0 18px;color:#e7d3a6}.hero h1{color:#fbf6ec;font-size:clamp(2.7rem,6.2vw,4.8rem);font-style:italic;font-weight:500;margin:0 0 .25em;max-width:16ch;text-shadow:0 2px 22px rgba(0,0,0,.35)}.hero-lede{font-size:clamp(1.15rem,2.2vw,1.5rem);max-width:34ch;margin:0 auto 32px;color:#f2e8d8}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.hero-scroll{margin-top:34px;color:#ecdcc0;font-size:.95rem;letter-spacing:.08em}.hero-scroll:hover{color:#fff;text-decoration:none}.btn{display:inline-block;font-family:var(--body);font-size:1rem;letter-spacing:.06em;padding:13px 26px;border-radius:2px;border:1.5px solid transparent;cursor:pointer;transition:all .2s ease}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn-instagram{background:var(--paper);color:var(--ink);border-color:var(--paper)}.btn-instagram:hover{background:#fff}.btn-facebook{background:0 0;color:#fbf6ec;border-color:rgba(251,246,236,.6)}.btn-facebook:hover{border-color:#fbf6ec;background:rgba(255,255,255,8%)}.btn-dark{background:var(--barn);color:#fbf6ec;border-color:var(--barn)}.btn-dark:hover{background:var(--barn-deep);border-color:var(--barn-deep)}.btn-ghost{background:0 0;color:var(--barn);border-color:var(--barn)}.btn-ghost:hover{background:var(--barn);color:#fbf6ec}.feature{padding:clamp(56px,9vw,104px)0;border-bottom:1px solid var(--line)}.feature:nth-of-type(even){background:var(--paper-2)}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,80px);align-items:center}.feature--reverse .feature-figure{order:-1}.feature-text h2{font-size:clamp(2rem,4vw,3rem)}.feature-text p{color:var(--ink-soft);margin:0 0 1rem}.feature-note{font-size:.98rem;font-style:italic;color:var(--ink-soft)}.feature-figure img{width:100%;height:100%;max-height:560px;object-fit:cover;border:1px solid var(--line);box-shadow:0 22px 50px -28px rgba(40,26,20,.55)}.link-arrow{font-weight:500}.follow{background:var(--barn-deep);color:#f4e7d2;text-align:center;padding:clamp(60px,9vw,100px)0}.follow h2{color:#fbf2e2;font-size:clamp(2.1rem,4.4vw,3.1rem)}.follow-lede{max-width:46ch;margin:0 auto 40px;color:#ead9bf}.follow-cards{display:flex;flex-wrap:wrap;gap:22px;justify-content:center}.follow-card{background:var(--paper);color:var(--ink);width:270px;max-width:100%;padding:32px 26px;border-radius:4px;display:flex;flex-direction:column;align-items:center;gap:6px;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 16px 40px -24px rgba(0,0,0,.6)}.follow-card:hover{text-decoration:none;transform:translateY(-4px);box-shadow:0 26px 50px -24px rgba(0,0,0,.7)}.follow-card__icon{color:var(--barn);margin-bottom:6px}.follow-card__label{font-family:var(--display);font-size:1.6rem}.follow-card__handle{color:var(--ink-soft);font-size:1rem}.contact{padding:clamp(56px,9vw,100px)0;background:var(--paper)}.contact-grid{display:grid;grid-template-columns:.9fr 1fr 1fr;gap:clamp(28px,4vw,48px);align-items:stretch}.contact-portrait{display:flex}.contact-portrait img{width:100%;height:100%;object-fit:cover;display:block;border:1px solid var(--line);box-shadow:0 22px 50px -28px rgba(40,26,20,.55)}.contact-info{display:flex;flex-direction:column}.contact-info h2{font-size:clamp(1.9rem,3.2vw,2.6rem)}.contact-details{font-style:normal;margin:0 0 1.2rem;line-height:1.6}.contact-details p{margin:0 0 .8rem}.contact-name{font-family:var(--display);font-size:1.4rem;color:var(--ink)}.contact-hours{color:var(--ink-soft);font-style:italic;max-width:42ch;margin:0 0 1.6rem}.contact-actions{display:grid;gap:12px;max-width:340px;margin-top:auto}.contact-actions .btn{text-align:center}.contact-map{overflow:hidden;min-height:300px;border:1px solid var(--line);border-radius:4px;background:var(--paper-2);display:flex;align-items:center;justify-content:center}.contact-map__hint{color:var(--ink-soft);font-style:italic;letter-spacing:.02em}.contact-map.is-loaded{background:0 0;display:block}.contact-map iframe{width:100%;height:100%;border:0;display:block}.gallery{padding:clamp(56px,9vw,100px)0;background:var(--paper-2);border-bottom:1px solid var(--line)}.gallery-head{text-align:center;margin-bottom:38px}.gallery-head h2{font-size:clamp(2rem,4vw,3rem)}.gallery-lede{color:var(--ink-soft);max-width:48ch;margin:0 auto}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{margin:0}.gallery-item img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;display:block;border:1px solid var(--line);border-radius:2px;box-shadow:0 16px 36px -26px rgba(40,26,20,.45);transition:transform .2s ease}.gallery-item img:hover{transform:translateY(-3px)}img.lb{cursor:pointer}img.lb:focus-visible{outline:2px solid var(--barn);outline-offset:3px}.lightbox[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:rgba(20,15,12,.92);padding:clamp(16px,4vw,48px)}.lightbox__stage{margin:0;display:flex;flex-direction:column;align-items:center;max-width:min(92vw,1100px)}.lightbox__img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:2px;box-shadow:0 30px 80px -30px rgba(0,0,0,.8)}.lightbox__caption{color:#e7dcc9;font-style:italic;margin-top:14px;font-size:.98rem;text-align:center}.lightbox__btn{position:fixed;z-index:1;width:52px;height:52px;border-radius:50%;cursor:pointer;border:1.5px solid rgba(255,255,255,.5);background:rgba(255,255,255,8%);color:#fbf6ec;display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease}.lightbox__btn:hover{background:rgba(255,255,255,.2);border-color:#fff}.lightbox__close{top:clamp(14px,3vw,28px);right:clamp(14px,3vw,28px)}.lightbox__prev{left:clamp(10px,3vw,28px);top:50%;transform:translateY(-50%)}.lightbox__next{right:clamp(10px,3vw,28px);top:50%;transform:translateY(-50%)}.footer-lang{display:flex;gap:14px;align-items:center}.footer-lang a{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#a99a82}.footer-lang a:hover{color:#f0e6d3;text-decoration:none}.footer-lang a[aria-current=true]{color:#f0e6d3;font-weight:600}.site-footer{background:#241d18;color:#d9cbb4;padding:56px 0 26px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}.footer-brand img{height:56px;width:auto;margin-bottom:14px}.footer-brand p{margin:0 0 .3rem;font-family:var(--display);font-size:1.25rem;color:#f0e6d3}.footer-muted{color:#a99a82;font-family:var(--body);font-size:1rem}.footer-col h3{color:#f0e6d3;font-size:1.2rem;margin-bottom:.6rem}.footer-col p{margin:0 0 .6rem;color:#c8b99f}.footer-col a{color:#e3d3b6}.footer-social{list-style:none;margin:0;padding:0}.footer-social li{margin-bottom:.4rem}.footer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:40px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);font-size:.92rem;color:#a99a82}.footer-bottom a{color:#cdbda0}@media(max-width:820px){.nav-burger{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:8px}.nav-burger span{width:26px;height:2px;background:var(--ink);transition:.25s}.site-nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--line);max-height:0;overflow:hidden;transition:max-height .3s ease}.nav-toggle:checked~.site-nav{max-height:380px}.site-nav ul{flex-direction:column;gap:0;padding:8px 28px 18px}.site-nav li{border-bottom:1px solid var(--line)}.site-nav a{display:block;padding:13px 0}.site-nav a::after{display:none}.feature-grid{grid-template-columns:1fr;gap:28px}.feature--reverse .feature-figure{order:0}.feature-figure img{max-height:380px}.contact-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:14px}.gallery-item:nth-child(n+7){display:none}.footer-grid{grid-template-columns:1fr;gap:28px}}@media(max-width:520px){.lightbox__prev,.lightbox__next{display:none}}