:root{color-scheme:light;--ink: #18231f;--muted: #65736b;--paper: #fbf7ee;--surface: #efe7d8;--line: #dacdbb;--accent: #0d735f;--accent-strong: #084f42;--accent-soft: #d9eadf;--clay: #b46a45;--gold: #b7914e;--focus: #b75f23;--max-width: 1120px;--radius: 8px;font-family:Avenir,Avenir Next,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 86% 4%,rgba(180,106,69,.13),transparent 22rem),linear-gradient(180deg,#fffaf1 0%,var(--paper) 28rem);color:var(--ink);font-size:16px;line-height:1.6}img{display:block;max-width:100%}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip-link{left:1rem;position:fixed;top:1rem;transform:translateY(-150%);z-index:20;background:var(--ink);color:var(--paper);padding:.65rem .85rem;border-radius:var(--radius)}.skip-link:focus{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(23,33,29,.11);background:#fbfaf6ed;backdrop-filter:blur(16px)}.header-inner{width:min(100% - 2rem,var(--max-width));margin:0 auto;padding:.9rem 0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem}.brand{display:inline-flex;align-items:center;gap:.75rem;min-width:13rem;text-decoration:none}.brand-mark{display:inline-grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:var(--radius);background:var(--ink);color:var(--paper);font-size:.75rem;letter-spacing:.08em}.brand strong{display:block;line-height:1.1}.brand small{display:none;color:var(--muted);font-size:.78rem}.header-actions{display:contents}.nav-links{grid-column:1 / -1;width:100%;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;overflow:visible;padding-bottom:0;scrollbar-width:none}.nav-links::-webkit-scrollbar{display:none}.nav-links a,.business-menu summary,.return-link,.language-toggle{border-radius:999px;padding:.5rem .72rem;color:var(--muted);font-size:.92rem;font-weight:700;text-decoration:none;transition:background .16s ease,color .16s ease,transform .16s ease;white-space:nowrap}.nav-links a:hover,.business-menu summary:hover,.return-link:hover,.language-toggle:hover{background:var(--accent-soft);color:var(--accent-strong);transform:translateY(-1px)}.nav-links a[aria-current=page]{background:var(--ink);color:var(--paper)}.business-menu{position:relative}.business-menu summary{cursor:pointer;list-style:none}.business-menu summary::-webkit-details-marker{display:none}.business-menu summary:after{content:"▾";margin-left:.35rem;font-size:.72rem}.business-menu[open] summary{background:var(--ink);color:var(--paper)}.business-menu-panel{position:absolute;top:calc(100% + .45rem);left:0;z-index:30;min-width:14rem;border:1px solid var(--line);border-radius:var(--radius);background:#fffdf8;box-shadow:0 18px 45px #18231f24;padding:.35rem}.business-menu-panel a{display:block;border-radius:calc(var(--radius) - 2px);color:var(--ink);white-space:nowrap}.business-menu-panel a:hover{transform:none}.language-toggle{grid-column:2;grid-row:1;border:1px solid var(--line);color:var(--ink);white-space:nowrap}.business-header-inner{display:flex;justify-content:space-between}.business-brand{min-width:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.25rem,4vw,1.7rem);line-height:1.1}.business-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}.return-link{border:1px solid var(--line);color:var(--ink);display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .58rem;font-size:.78rem}main{min-height:65vh}.hero{width:min(100% - 2rem,var(--max-width));margin:0 auto;padding:clamp(4rem,10vw,8rem) 0 clamp(3rem,8vw,6rem)}.hero-home{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center}.hero-content{max-width:740px;animation:rise-in .52s ease both}.eyebrow{margin:0 0 .8rem;color:var(--accent-strong);font-size:.78rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08}h1{max-width:780px;margin-bottom:1.1rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,8vw,6rem);font-weight:500;letter-spacing:-.02em}h2{max-width:760px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.6rem);font-weight:500}h3{margin-bottom:.8rem;font-size:1.35rem}.lede{max-width:660px;color:var(--muted);font-size:clamp(1.08rem,2vw,1.28rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.9rem;border-radius:999px;padding:.78rem 1.05rem;font-weight:800;text-decoration:none;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--accent);color:#fff}.button.primary:hover{background:var(--accent-strong)}.button.secondary{border:1px solid var(--line);background:transparent;color:var(--ink)}.button.secondary:hover{border-color:var(--accent);color:var(--accent-strong)}.image-frame{margin:0;overflow:hidden;border-radius:var(--radius);background:var(--surface);box-shadow:0 22px 70px #18231f21}.image-frame img{width:100%;height:100%;object-fit:cover;transition:transform .38s ease,filter .38s ease}.image-frame:hover img{transform:scale(1.025);filter:saturate(1.04)}.hero-image{aspect-ratio:4 / 3;animation:rise-in .62s .12s ease both}.section{width:min(100% - 2rem,var(--max-width));margin:0 auto;padding:clamp(3rem,8vw,5rem) 0}.section-heading{margin-bottom:2rem}.service-grid{display:grid;grid-template-columns:1fr;gap:.8rem}.service-card{border:1px solid var(--line);border-radius:var(--radius);background:#fffcf5c7;padding:1.15rem;transition:border-color .16s ease,transform .16s ease,background .16s ease}.service-card:hover{border-color:var(--accent);background:#fffdf8;transform:translateY(-2px)}.service-card img{width:100%;height:clamp(8.5rem,16vw,11rem);object-fit:cover;margin-bottom:1rem;border-radius:calc(var(--radius) - 2px);border:1px solid rgba(24,35,31,.08)}.service-card p:first-child{margin-bottom:.55rem;color:var(--accent-strong);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.service-card p:not(:first-child){color:var(--muted)}.service-card a{color:var(--accent-strong);font-weight:800;text-decoration-thickness:.12em;text-underline-offset:.22em}.closing-band{margin-bottom:3rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.page-hero{display:grid;grid-template-columns:1fr;gap:2rem;align-items:center;padding-bottom:2rem}.page-image{aspect-ratio:16 / 10}.detail-section{padding-top:1rem}.detail-list{display:grid;gap:.75rem;max-width:820px}.detail-list article{display:grid;grid-template-columns:.75rem 1fr;gap:.9rem;align-items:start;border:1px solid var(--line);border-radius:var(--radius);background:#fffcf5b3;padding:1rem}.detail-list span{width:.55rem;height:.55rem;margin-top:.55rem;border-radius:50%;background:var(--accent)}.detail-list p{margin-bottom:0;color:var(--muted);font-size:1.08rem}.site-footer{width:min(100% - 2rem,var(--max-width));margin:0 auto;padding:2rem 0 2.5rem;border-top:1px solid var(--line);color:var(--muted);display:grid;gap:1rem}.site-footer strong{color:var(--ink)}.site-footer p{margin-bottom:0}.business-footer{display:block}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media(min-width:700px){.brand small{display:block}.hero-home{grid-template-columns:minmax(0,1.1fr) minmax(16rem,.7fr)}.page-hero{grid-template-columns:minmax(0,.9fr) minmax(18rem,.8fr)}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer{grid-template-columns:1fr 1.1fr;align-items:start}}@media(min-width:1000px){.header-inner{display:flex;justify-content:space-between}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.7rem;flex:1}.nav-links{flex:0 1 auto;padding-bottom:0}.service-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:480px){.header-inner{align-items:flex-start}.brand{min-width:0}.brand strong{max-width:9rem}.hero,.section,.site-footer,.header-inner{width:min(100% - 1.25rem,var(--max-width))}h1{font-size:clamp(2.55rem,16vw,3.5rem)}}
