*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{overflow-x:clip;margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:1.0625rem;line-height:1.6}h1,h2,h3,.brand,.footer-name{font-family:var(--font-head);line-height:1.15;margin:0}a{color:inherit}img,svg{display:block}.wrap{width:min(1120px,100% - 2.5rem);margin-inline:auto}.muted{color:var(--muted)}.skip{position:absolute;left:-999px;top:0;background:var(--accent);color:var(--accent-ink);padding:.6rem 1rem;z-index:100}.skip:focus{left:1rem;top:1rem}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}:root{--logo-purple: #51215b;--gold: #c99a4f;--gold-light: #f3dc9a}.site-header{position:sticky;top:0;z-index:20;background:var(--logo-purple);color:#fff;border-bottom:3px solid var(--gold)}.header-row{display:flex;align-items:center;gap:1rem;padding-block:.5rem}.brand{text-decoration:none;margin-right:auto;display:inline-flex;align-items:center;gap:.7rem;color:#fff}.brand-mark{height:48px;width:auto;flex:none}.brand-text{display:flex;flex-direction:column;line-height:1}.brand-big{font-family:var(--font-head);font-weight:700;font-size:1.45rem;letter-spacing:.01em;color:var(--gold-light)}.brand-small{font-family:var(--font-body);font-weight:700;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;margin-top:.25rem}.nav{display:none}.nav ul{display:flex;gap:1.6rem;list-style:none;margin:0;padding:0;white-space:nowrap}.nav a{text-decoration:none;font-size:.98rem;font-weight:600;color:#fff;padding-block:.3rem;border-bottom:2px solid transparent;transition:border-color .2s,color .2s}.nav a:hover{border-color:var(--gold);color:var(--gold-light)}@media(min-width:960px){.nav{display:block}.brand-mark{height:56px}}.header-actions{display:flex;gap:.5rem;align-items:center}.lang{display:inline-flex;gap:.35rem;align-items:center;font-size:.9rem;text-decoration:none}.call-short{display:none}@media(max-width:420px){.call-long{display:none}.call-short{display:inline}}.site-header :focus-visible{outline-color:var(--gold-light)}.btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--accent);color:var(--accent-ink);text-decoration:none;font-weight:600;padding:.8rem 1.25rem;border-radius:10px;border:2px solid var(--accent)}.btn{transition:filter .2s,transform .1s}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(1px)}.btn-gold{background:var(--gold);border-color:var(--gold);color:#2a1030}.btn-small{padding:.45rem .85rem;font-size:.95rem;min-height:40px}.btn-ghost{background:transparent;color:inherit;border-color:currentColor}.hero{background:repeating-linear-gradient(135deg,var(--hero-bg) 0 90px,color-mix(in srgb,var(--hero-bg) 88%,#b58ad0) 90px 180px);color:var(--hero-ink);padding-block:clamp(2.5rem,7vw,5.5rem)}.hero-grid{display:grid;gap:2.5rem;align-items:center}@media(min-width:900px){.hero-grid{grid-template-columns:1.4fr 1fr}}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.8rem;font-weight:700;margin:0 0 1rem;color:var(--gold-light)}.hero h1{font-size:clamp(2.3rem,5.5vw,3.9rem);letter-spacing:-.01em;text-wrap:balance}.lead{font-size:1.2rem;max-width:38rem;margin:1.25rem 0 2rem;opacity:.92}.cta-row{display:flex;flex-wrap:wrap;gap:.75rem}.hero-address{display:flex;gap:.5rem;align-items:center;font-style:normal;margin-top:1.5rem;opacity:.85}.section{padding-block:clamp(3rem,7vw,5rem)}.section.alt{background:var(--surface);border-block:1px solid var(--line)}.section-head{margin-bottom:.75rem}.section-head h2{text-wrap:balance}.section-head h2:after{content:"";display:block;width:56px;height:4px;border-radius:2px;background:var(--gold);margin-top:.7rem}.section h2{font-size:clamp(1.7rem,3.5vw,2.4rem)}.section-intro{color:var(--muted);max-width:44rem;margin:0 0 2rem}.team{list-style:none;margin:0;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.member{text-align:center;padding:1.5rem 1rem;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.member-name{font-weight:600;margin:0}.member-role{margin:.25rem 0 0;color:var(--muted);font-size:.95rem}.gallery{list-style:none;margin:0;padding:0;display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr)}@media(min-width:760px){.gallery{grid-template-columns:repeat(3,1fr);gap:1rem}}.photo{margin:0}.photo img{width:100%;height:auto;object-fit:cover;border-radius:14px;background:var(--line)}.photo figcaption{font-size:.85rem;color:var(--muted);margin-top:.45rem}.hero-photo img{border-radius:18px;box-shadow:0 18px 50px #00000059}.ratings{list-style:none;padding:0;margin:1.5rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem}.ratings a{display:inline-flex;gap:.4rem;align-items:center;text-decoration:none;font-size:.9rem;padding:.35rem .75rem;border-radius:999px;border:1px solid color-mix(in srgb,currentColor 30%,transparent)}.ratings svg{color:var(--gold-light);fill:var(--gold-light)}.split{display:grid;gap:2.5rem;align-items:start}@media(min-width:900px){.split{grid-template-columns:1.5fr 1fr}.split-rev{grid-template-columns:1fr 1.5fr}.split-rev>:first-child{order:2}}.prose{max-width:42rem;margin:0 0 1rem}.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin:1.75rem 0 0}.facts div{border-left:3px solid var(--accent);padding-left:.75rem}.facts dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.facts dd{margin:.15rem 0 0;font-weight:600}.quotes{list-style:none;margin:0;padding:0;display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:800px){.quotes{grid-template-columns:repeat(3,1fr)}}.quote{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:1.4rem;display:flex;flex-direction:column;gap:.75rem}.quote blockquote{margin:0}.quote blockquote p{margin:0;font-size:1.05rem}.quote-by{margin:auto 0 0;font-size:.88rem;font-weight:600}.quote-by span{font-weight:400;color:var(--muted)}.social-list,.footer-social{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem}.social-list a,.footer-social a{display:inline-flex;gap:.35rem;align-items:center}.small{font-size:.85rem}.two-col{display:grid;gap:3rem}@media(min-width:900px){.two-col{grid-template-columns:1fr 1fr}}.hours{width:100%;border-collapse:collapse}.hours th,.hours td{text-align:left;padding:.6rem 0;border-bottom:1px solid var(--line)}.hours th{font-weight:600}.hours td{color:var(--muted);text-align:right}.contact{margin:0;display:grid;gap:1rem}.contact dt{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.contact dd{margin:.2rem 0 0}.contact dd a{display:inline-flex;gap:.35rem;align-items:center}address{font-style:normal}.map{margin-top:2.5rem;border-radius:16px;overflow:hidden;border:1px solid var(--line);aspect-ratio:4 / 3}@media(min-width:700px){.map{aspect-ratio:16 / 9}}.map iframe{width:100%;height:100%;border:0}.site-footer{background:var(--hero-bg);color:var(--hero-ink);padding-block:2.5rem;font-size:.95rem}.site-footer p{margin:.3rem 0}.site-footer .muted{color:inherit;opacity:.7}.footer-name{font-size:1.3rem;font-weight:700}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.svc-grid{display:grid;gap:2rem 3.5rem;align-items:start}.svc-lists{display:grid;gap:2.25rem}@media(min-width:960px){.svc-grid{grid-template-columns:1.15fr 1fr}.svc-photos{align-self:center}}.svc-title{font-size:1.35rem;color:var(--accent)}.svc-intro{margin:.35rem 0 .75rem;color:var(--muted)}.svc-list{list-style:none;margin:0;padding:0}.svc-list li{display:grid;gap:.1rem;padding:.7rem 0;border-bottom:1px dashed color-mix(in srgb,var(--accent) 25%,transparent)}.svc-list li:first-child{border-top:1px dashed color-mix(in srgb,var(--accent) 25%,transparent)}.svc-name{font-weight:700}.svc-note{color:var(--muted);font-size:.97rem}@media(min-width:560px){.svc-list li{grid-template-columns:12rem 1fr;gap:1rem;align-items:baseline}}.svc-photos{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(min-width:960px){.svc-photos{gap:1rem}.svc-photos>:nth-child(2){margin-top:3rem}}.disclaimer{margin-top:.8rem!important}.site-header{transition:box-shadow .2s}.site-header.is-scrolled{box-shadow:0 8px 24px -14px #280a3299}.header-row{min-height:60px}.menu-btn{display:inline-grid;place-items:center;width:44px;height:44px;margin-right:-10px;padding:0;background:none;border:0;border-radius:6px;color:inherit;cursor:pointer;flex:none}.menu-bars{display:grid;gap:5px;width:22px}.menu-bars i{display:block;height:2px;border-radius:2px;background:currentColor;transition:transform .2s,opacity .2s}.menu-open .menu-bars i:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-open .menu-bars i:nth-child(2){opacity:0}.menu-open .menu-bars i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.menu-panel{background:var(--surface);color:var(--text);height:calc(100dvh - 63px);overflow-y:auto;overscroll-behavior:contain}.menu-panel[hidden]{display:none}.mnav-list{list-style:none;margin:0;padding:.25rem 0 0}.mnav-list li{display:block;margin:0;padding:0;border:0}.mnav-list a{display:block;padding:1rem 0;border-bottom:1px solid var(--line);color:var(--text);font-family:var(--font-head);font-weight:700;font-size:1.35rem;text-decoration:none}.menu-foot{display:grid;gap:1rem;justify-items:center;padding-block:1.4rem 1.8rem}.menu-call{width:100%;justify-content:center}.menu-lang{color:var(--text);font-size:.95rem}html.menu-lock{overflow:hidden}@media(max-width:959px){.header-row{gap:.6rem;padding-block:.3rem}.header-actions .lang{display:none}.brand-mark{height:40px}.brand-big{font-size:1.25rem}.brand-small{font-size:.62rem;letter-spacing:.16em}}@media(max-width:360px){.brand-mark{display:none}}@media(min-width:960px){.menu-btn,.menu-panel{display:none!important}.header-row{min-height:72px}}@media(prefers-reduced-motion:reduce){.menu-bars i,.site-header,.btn,.nav a{transition:none}}.brand-small,.brand-big{white-space:nowrap}@media(max-width:959px){.brand-small{letter-spacing:.08em}.brand{gap:.5rem}}@media(max-width:600px){.eyebrow{letter-spacing:.07em;font-size:.74rem}}button{font:inherit}@media(min-width:960px){.svc-grid{grid-template-columns:1fr 1fr}.svc-photos img{aspect-ratio:2 / 3!important}}@media(max-width:600px){.ratings a{font-size:.8rem;padding:.3rem .65rem}.hero .cta-row .btn{flex:1 1 auto;justify-content:center}}.site-footer a[href^="tel:"]{white-space:nowrap}.quote blockquote p:before{content:"“";display:block;font-family:var(--font-head);font-weight:700;font-size:2.6rem;line-height:.8;color:var(--gold);margin-bottom:.2rem}
