@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--font-display:"Fraunces", Georgia, serif;--font-body:"Manrope", sans-serif;--bg:#f7f4ef;--surface:#fffcf8;--surface-2:#e8dfd3;--ink:#1a140c;--muted:#6a5a4c;--line:#ddd2c4;--wa:#1f8f56;--wa-hot:#187447}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;font-family:var(--font-body);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.45}#root{min-height:100dvh}img{max-width:100%}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--wa);outline-offset:2px}.site-header{z-index:40;background:color-mix(in srgb, var(--bg) 90%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.25rem;display:flex;position:sticky;top:0}.site-brand{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:1.3rem;font-weight:600;text-decoration:none}.site-nav{align-items:center;gap:.85rem;display:flex}.site-nav a{color:var(--muted);font-size:.88rem;font-weight:500;text-decoration:none}.site-nav a:hover{color:var(--ink)}.nav-wa{border-radius:.3rem;padding:.45rem .8rem;background:var(--wa)!important;color:#fff!important;font-weight:700!important}.nav-wa:hover{background:var(--wa-hot)!important}@media (width<=720px){.site-nav a:not(.nav-wa){display:none}}.wa-fab{z-index:45;background:var(--wa);color:#fff;border-radius:999px;place-items:center;width:3.5rem;height:3.5rem;text-decoration:none;transition:transform .2s,background .2s;display:grid;position:fixed;bottom:1rem;right:1rem;box-shadow:0 10px 28px #120e0b47}.wa-fab:hover{background:var(--wa-hot);transform:scale(1.05)}@media (width>=720px){.wa-fab{bottom:1.5rem;right:1.5rem}}.hero{color:#f6f1ea;align-items:flex-end;min-height:min(78vh,36rem);display:flex;position:relative;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-photo{object-fit:cover;filter:saturate(.92)contrast(1.02);width:100%;height:100%;display:block}.hero-shade{background:linear-gradient(#0e0a0859 0%,#0e0a08c7 100%);position:absolute;inset:0}.hero-overlay{z-index:1;max-width:40rem;padding:2.25rem 1.25rem 2.5rem;animation:.7s both rise;position:relative}.hero-kicker{color:#1a140c;letter-spacing:.06em;text-transform:uppercase;background:#e8c547;margin:0 0 .5rem;padding:.3rem .55rem;font-size:.72rem;font-weight:800;display:inline-block}.hero-brand{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:clamp(2.4rem,10vw,4.2rem);line-height:.98}.hero-tagline{color:#f6f1ead1;max-width:28ch;margin:.75rem 0 0;font-size:1.05rem;line-height:1.4}.btn-wa,.btn-outline-wa{border-radius:.3rem;justify-content:center;align-items:center;margin-top:1.35rem;padding:.85rem 1.15rem;font-weight:700;text-decoration:none;display:inline-flex}.btn-wa{background:var(--wa);color:#fff}.btn-wa:hover{background:var(--wa-hot)}.btn-wa-lg{width:100%;max-width:28rem;margin-top:0}.btn-outline-wa{border:1.5px solid var(--wa);color:var(--wa);background:0 0;margin-top:0}.btn-outline-wa:hover{background:var(--wa);color:#fff}.intro-card{z-index:2;background:var(--surface);border:1px solid var(--line);border-radius:.35rem;gap:1.1rem;margin:-1.75rem 1.25rem 0;padding:1.35rem 1.2rem 1.4rem;animation:.7s .1s both rise;display:grid;position:relative;box-shadow:0 16px 40px #140e0a1a}.intro-copy h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:1.45rem}.intro-copy p{color:var(--muted);margin:.4rem 0 0;line-height:1.5}.intro-meta{border-top:1px solid var(--line);gap:.85rem;margin:0;padding-top:.35rem;display:grid}.intro-meta div{gap:.15rem;display:grid}.intro-meta dt{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.intro-meta dd{margin:0;font-weight:560;line-height:1.4}.section{max-width:72rem;margin:0 auto;padding:3rem 1.25rem 1rem}.section-alt{background:color-mix(in srgb, var(--surface-2) 55%, transparent);max-width:none;padding-inline:0}.section-alt .section-head,.section-alt .category-bar,.section-alt .catalog-grid{max-width:72rem;margin-inline:auto;padding-inline:1.25rem}.section-head{margin-bottom:1.35rem}.section-head h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(1.7rem,4vw,2.2rem)}.section-head p{color:var(--muted);max-width:40ch;margin:.45rem 0 0;line-height:1.5}.category-bar{scrollbar-width:thin;gap:.45rem;margin-bottom:.35rem;padding-bottom:.85rem;display:flex;overflow-x:auto}.category-bar button{border:1px solid var(--line);background:var(--surface);color:var(--muted);font:inherit;cursor:pointer;border-radius:999px;flex:none;padding:.4rem .85rem;font-size:.85rem}.category-bar button.is-active{background:var(--ink);border-color:var(--ink);color:var(--bg)}.service-grid{grid-template-columns:1fr;gap:1rem;display:grid}.service-card{background:var(--surface);border:1px solid var(--line);border-radius:.3rem;flex-direction:column;display:flex;overflow:hidden}.service-media{aspect-ratio:16/10;background:var(--surface-2)}.service-media img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.service-body{flex-direction:column;flex:1;gap:.35rem;padding:1rem 1rem 1.15rem;display:flex}.service-body h3{font-family:var(--font-display);margin:0;font-size:1.25rem}.service-body p{color:var(--muted);flex:1;margin:0;font-size:.92rem;line-height:1.45}.service-body a{color:var(--wa);margin-top:.65rem;font-size:.9rem;font-weight:700;text-decoration:none}.service-body a:hover{text-decoration:underline}.catalog-grid{grid-template-columns:1fr;gap:.85rem;padding-bottom:1rem;display:grid}.catalog-item{aspect-ratio:3/4;background:var(--surface-2);border:1px solid var(--line);border-radius:.3rem;margin:0;position:relative;overflow:hidden}.catalog-item img{object-fit:cover;object-position:center top;width:100%;height:100%;transition:transform .45s;display:block}.catalog-item:hover img{transform:scale(1.03)}.catalog-item figcaption{color:#f6f1ea;background:linear-gradient(#0000,#0e0a08d1);flex-direction:column;gap:.2rem;padding:1.5rem .9rem .95rem;display:flex;position:absolute;inset:auto 0 0}.catalog-item span{letter-spacing:.05em;text-transform:uppercase;opacity:.8;font-size:.68rem}.catalog-item strong{font-family:var(--font-display);font-size:1.05rem;font-weight:600}.catalog-item a{color:#9de0b8;margin-top:.35rem;font-size:.85rem;font-weight:700;text-decoration:none}.catalog-item a:hover{text-decoration:underline}.about-text{max-width:42rem;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.65}.about-points{flex-wrap:wrap;gap:.5rem;margin:1.25rem 0 0;padding:0;list-style:none;display:flex}.about-points li{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:.45rem .75rem;font-size:.88rem;font-weight:600}.contact{text-align:left;padding-bottom:2rem}.contact-note{color:var(--muted);margin:.65rem 0 0}.address-link{color:inherit;text-underline-offset:.15em;text-decoration:underline}.address-link:hover{color:var(--ink)}.map-wrap{border:1px solid var(--line);background:var(--surface-2);aspect-ratio:16/11;border-radius:.35rem;max-width:42rem;margin-top:1.25rem;overflow:hidden}.map-wrap iframe{border:0;width:100%;height:100%;display:block}.map-open{color:var(--wa);margin-top:.75rem;font-size:.92rem;font-weight:700;text-decoration:none;display:inline-block}.map-open:hover{text-decoration:underline}.site-footer{border-top:1px solid var(--line);color:var(--muted);text-align:center;padding:1.5rem 1.25rem 5.5rem;font-size:.85rem}@media (width>=640px){.service-grid,.catalog-grid{grid-template-columns:repeat(2,1fr)}.intro-card{margin-inline:2rem;padding:1.6rem 1.6rem 1.5rem}}@media (width>=960px){.hero{min-height:min(82vh,40rem)}.hero-overlay{padding:3rem 3rem 3.25rem}.intro-card{grid-template-columns:1.3fr auto;align-items:center;column-gap:2rem;max-width:72rem;margin:-2.25rem auto 0}.intro-meta{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:1.25rem}.section,.section-alt .section-head,.section-alt .category-bar,.section-alt .catalog-grid{padding-inline:3rem}.service-grid{grid-template-columns:repeat(3,1fr);gap:1.15rem}.catalog-grid{grid-template-columns:repeat(3,1fr);gap:1rem}}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.app-shell{min-height:100dvh}
